[23Q1T1] Fade-out Node Glyphs#12664
Conversation
Fade-out behavior to GlyphStackPanel hosting the icon/frozen glyphs.
- added new png icons to be used in Node State visualization - implemented the frozen glyph as part of the glyph stack panel - the frozen glyph will be triggered upon freezing the node
- Node Color Overlay border zoom fade in and out styles added to allow overlay to be displayed using the same ZoomToBooleanConverter value (0.4) as the other UI elements - Added a nodeColorOverlayZoomOut border to kick in after the zoomed out value is achieved - The previous only border renamed from nodeColorOverlay to nodeColorOverlayZoomIn - This allows one border to display Frozen/PreviewOff states when Zoom > 0.4 and another border to display Frozen/PreviewOff/Warning/Error/Info when Zoom < 0.4 - Added a HandleColorOverlayChange method to handle both WarningBarColor and NodeOverlayColor triggers - Added GetBorderColor() method to assign both the correct color overlay to the zoomed out border and the correct glyph to be display in preparation for the glyphs implementation - Further added a lot of infrastructure to handle the glyph display
|
You have one failing test: DynamoCoreWpfTests.NodeViewCustomizationTests.WatchImageCoreContainsImage |
|
Looks good. Looks like you are close to also enabling the display of the glyphs? Do you want to include that in this PR or in a separate PR? Can you also look into adding a few tests? |
|
Thanks, Jorgen. Only the .xaml part left more or less, let's do it in the same PR. I'd love to add tests, but I have two main problems in that regard - a conceptual and a knowledge-based one. I started reading through the existing tests and getting a holistic enough view of the code base to allow me to write a test looks .. a bit intimidating at the moment. On the conceptual level, I would appreciate your support on what should be a well-placed test? I think I only have 1 method so far I'd like tested, but I am not sure if I am right or wrong. I will finish up the code and before I get on with the tests, I will maybe chase you up for a quick chat on Slack? |
|
Great, sounds like a plan. Ping me when you want to chat. |
- Added Glyphs to Zoomed-Out State - Added 3 New Converters - Opacity of the frozen Border now bound to the zoomed state to correctly account for the initial starting frame (the Style animation then handles the behavior over time) - The Grid hosting the 3 Glyphs is a bit wonky, makes sure the Warning/Error/Info states are always the first Icon, even if there are 1, 2 or 3 visible icons
- more prominent color for frozen glyph #8EDCFF
- changed priority for frozen and preview off border. Now will correctly prioritize Frozen over Preview-Off when zoomed out
- added a VM test to check Node View Model state border colors for NoWarning, Hidden, Frozen, Warning, Error states - added the ZoomNodeColorStates.dyn test file containing all possible states to test against - TODO - add test case for Info once it's released
- the Gird containing all zoom state icons will now collapse if zoom level is over 0.4 (zoomed-in). - this should incur less performance increase (before glyphs were simply given 0 opacity). - added a similar visibility collapse control to the color border signifying the different states (hidden, frozen, info, warning, error) - the border will now collapse if zoom level is over 0.4
- added a new View Model test to check if the Image Sources for the state glyphs are set correctly
- added a test to assert that the elements shown in the zoomed-out (less than 0.4) node state are collapsed, and visible in the zoomed-in (more than 0.4) state
|
@dnenov There is one failing test but it is unrelated to your work. I have restarted the tests. |
Purpose
The first step of implementing the changes to the Color Coding behavior of Dynamo Nodes. This PR adds fade-out behavior to the stack panel containing the visual-cue glyphs (preview/frozen).
Commit 4 - Glyphs Overlay Implementation (2 options for glyph position)
(preferred)
Commit 3



Commit 2
Commit 1
Declarations
Check these if you believe they are true
*.resxfilesRelease Notes
Updates the visual-cue glyph behavior when zoomed-in/out.
Reviewers
@sm6srw
FYI
@Amoursol