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.
Refactor for
ControlsLayer
.Now you can use multiple controls type for same model (OnHover AND/OR OnSelection AND/OR AlwaysOn).
I also added the "AlwaysOn" type, since I have already seen similar requests here. Well, I also needed a similar type for controls.
I used reflection (
foreach (ControlsType type in (ControlsType[])Enum.GetValues(typeof(ControlsType)))
) in some places for future refactor. if suddenly an additional type of controls is needed, which is not currently noticed, or if it is generally decided to use custom controls types.I don
t think, if it will slow down performance a lot. If it
s not acceptable - i`ll rewrite it using 3 different lists.Such a pull request is necessary to implement business requirements regarding the display of information on a node at the time of editing and the ability to use additional. buttons when selecting a node. However, the previous implementation limited our capabilities. I'm guessing that someone has already had a similar problem.
p.s. failed tests "DiagramCanvasTests" is not my fault. It was broken in "development" branch.