Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a
ViewHandler
base class to theview
widget andsubclasses
for each of the different viewsThe
ViewHandler
has methodsrender
,renderWikified
,createTextNode
,createWikifiedTextNode
,createFakeWidget
andrefresh
- EDIT: and now alsorefreshWikified
These methods are used by more than one of the different subclasses.
The subclasses are initialised if they're needed.
There's still a big
switch
statement in theViewWidget
'sgetView
method to find the view and initialise the correct subclass, maybe there's a better method to do so but I haven't found one.Each subclass has its own
getValue
method.The wikified views also have dedicated
render
andrefresh
methods.I hope I got this right this time 😸
Please review and test and leave me some comments if this is the right approach and what could be simplified.
I had to read about subclassing for this and am not 100% sure if I got it right.