Move Actions-related interfaces into their own packages for clarity#420
Closed
JordanMartinez wants to merge 3 commits intoFXMisc:masterfrom
JordanMartinez:decoupleModelFromInterfaces
Closed
Move Actions-related interfaces into their own packages for clarity#420JordanMartinez wants to merge 3 commits intoFXMisc:masterfrom JordanMartinez:decoupleModelFromInterfaces
JordanMartinez wants to merge 3 commits intoFXMisc:masterfrom
JordanMartinez:decoupleModelFromInterfaces
Conversation
Contributor
Author
|
Can I get some feedback on this approach? A few questions I have:
|
Contributor
Author
|
This was accomplished to a lesser degree of detailedness via #461. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 is a proposal for how we could better separate the actions of the view/model from their implementations' code. In other words, rather than having a
GenericStyledAreathat is 1000 lines of code long, most of which is filled with properties, javadoc, and other implementation details, making it difficult for new users to figure out how to use the code immediately, we can move that to their own corresponding interface so that it's easier to find all the relevant methods one can call on an area.StyleableSequencewas added so that a futureGenericRichArea(non-styled area) could become the new base area more easily by simply removing that interface from the base classes and adding it to subclasses.GenericStyledArea) could have two interfaces: 1)ViewActionsfor other view-related actions (e.g. scrolling, showing a specific line, etc.) and 2)ViewNavigationfor other navigation that can only be done in the view, not model (e.g.lineStart/End, notparagraphStart/Endin Update method & behavior: lineStart/End, not paragraphStart/End #419).StyledTextAreaBehavior(e.g. selectWord, deletePrevWord, deleteNextWord, etc.) could be added to these interfaces so that developers who are implementing their own custom behavior can create them much faster.