Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

T1.1 Code Migration #4

Merged
merged 7 commits into from
Jul 3, 2020
Merged

T1.1 Code Migration #4

merged 7 commits into from
Jul 3, 2020

Conversation

SHKnudsen
Copy link
Owner

Purpose

This PR adds functionality to Migrate existing Python 2 code to Python 3 compatible code. It also adds a new VisualDifferenceViewer to show the changes being made by the migration.
image

Declarations

Check these if you believe they are true

  • The codebase is in a better state after this PR
  • Is documented according to the standards
  • The level of testing this PR includes is appropriate
  • User facing strings, if any, are extracted into *.resx files
  • All tests pass using the self-service CI.
  • Snapshot of UI changes, if any.
  • Changes to the API follow Semantic Versioning and are documented in the API Changes document.

public PythonMigrationAssistantViewModel(PythonNode pythonNode)
{
OldCode = pythonNode.Script;
MigrateCode();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unsure how long does it take to migrate a very large script, but calling this on ctor might slow down window opening time.
Maybe make MigrateCode() public and call it on migration assistant window Opened event?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

only thing i'd say different would be to call it before the window opens, otherwise we have to add a Migrating code... state to handle potentially long times before anything is available to be displayed.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just realised if we call it before, it's same as is now 😂 . might be overkill to add the loading/migrating state since it's be super-fast on most cases and might be visible only for a split second.

Copy link

@radumg radumg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some suggestions for code readability and clean-up

@SHKnudsen SHKnudsen merged commit 9e29adc into T1.1-CodeMigration Jul 3, 2020
SHKnudsen added a commit that referenced this pull request Jul 21, 2020
* T1.1 Code Migration (#4)

* add ScriptMigrator

* Add visual difference viewer

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* extension and test updates

* add 2to3 icon

* comment updates

* GraphPythonDependencies changes

* make event internal

* fix build failure

* update license files, MigrationAssitantClicked event and PythonMigrationAssistantTests

* update licence files
@SHKnudsen SHKnudsen deleted the T1.1_CodeAnalysis branch July 23, 2020 08:31
SHKnudsen added a commit that referenced this pull request Jul 23, 2020
…ynamoDS#10915)

* T1.1 Code Migration (#4)

* add ScriptMigrator

* Add visual difference viewer

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update PythonMigrationViewExtension.csproj

* T1.2 accept/reject code changes (#5)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* update engine version when migrating code

* extension and test updates

* add 2to3 icon

* comment updates

* GraphPythonDependencies changes

* make event internal

* fix build failure

* update license files, MigrationAssitantClicked event and PythonMigrationAssistantTests

* clean up

* update licence files

* make MigrateCode internal

* comments update

* unsubscribe from ScriptEditorWindow closed
SHKnudsen added a commit that referenced this pull request Aug 5, 2020
* T1.1 Code Migration (#4)

* add ScriptMigrator

* Add visual difference viewer

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update PythonMigrationViewExtension.csproj

* T1.2 accept/reject code changes (#5)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* update engine version when migrating code

* extension and test updates

* T1.3 save python2 backup file on migration (#6)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* add mechanisme to save Python 2 backup

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* small clean ups

* Update PythonMigrationAssistantViewModel.cs

* add 2to3 icon

* comment updates

* GraphPythonDependencies changes

* make event internal

* fix build failure

* update license files, MigrationAssitantClicked event and PythonMigrationAssistantTests

* clean up

* clean up

* update licence files

* make MigrateCode internal

* comments update

* unsubscribe from ScriptEditorWindow closed

* Add 'Before' and 'After' properties (for some reason they where gone)

* refactor internal methods to bail early

* rename IronPython dependency method

* switch custom node python deps eval to short-circuit and add xml comment

* rename & move CPython deps method around

* prep support for handling dyn and dyf in migration backup

* handle dyf vs dyn difference in migration backup

events were not properly getting triggered when opening custom nodes either, fixed that too

* notify user that a backup file is created on Python migration

* fix tests

test project was unloaded

* move CustomNodeItem class as private to the warning dialog that needs it

* mark the PythonNode script setter for migration as Obsolet

this is so it raises warnings in the compiler and that anyone using this will know not to depend on a temporary feature

* change migration assistant viewmodel to depend on workspace and pathmanager not DynamoViewModel

* DYN-2990 address accessing null reference

fixes DYN-2990

* remove prism reference

* add note to obsolete MigrateCode method

* move migration assistant viewmodel to its namesake namespace

* make GraphPythonDependencies depend on interfaces instead of general ViewLoadedParams

* revert graph python dependency evaluation logic to not be short-circuited

this is because the dependency map dictionary is used in the UI warnings modal

* update comment

* fix botched namespace change

* move 'More info' button on script editor window

* comment updates + add automated test for backup functionality

* Update migrate_2to3.py

* Update PythonMigrationAssistantViewModel.cs

Co-authored-by: Radu Gidei <[email protected]>
SHKnudsen added a commit that referenced this pull request Aug 5, 2020
… scrollviewers (DynamoDS#10932)

* T1.1 Code Migration (#4)

* add ScriptMigrator

* Add visual difference viewer

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update PythonMigrationViewExtension.csproj

* T1.2 accept/reject code changes (#5)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* update engine version when migrating code

* extension and test updates

* T1.3 save python2 backup file on migration (#6)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* add mechanisme to save Python 2 backup

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* small clean ups

* Update PythonMigrationAssistantViewModel.cs

* add 2to3 icon

* comment updates

* GraphPythonDependencies changes

* make event internal

* fix build failure

* update license files, MigrationAssitantClicked event and PythonMigrationAssistantTests

* clean up

* clean up

* update licence files

* make MigrateCode internal

* comments update

* unsubscribe from ScriptEditorWindow closed

* Add 'Before' and 'After' properties (for some reason they where gone)

* Modify the VisualDifferenceViewer so text wraps instead of using scroll viewers

* remove diffplex.wpf reference

* refactor internal methods to bail early

* rename IronPython dependency method

* switch custom node python deps eval to short-circuit and add xml comment

* rename & move CPython deps method around

* prep support for handling dyn and dyf in migration backup

* handle dyf vs dyn difference in migration backup

events were not properly getting triggered when opening custom nodes either, fixed that too

* notify user that a backup file is created on Python migration

* fix tests

test project was unloaded

* move CustomNodeItem class as private to the warning dialog that needs it

* mark the PythonNode script setter for migration as Obsolet

this is so it raises warnings in the compiler and that anyone using this will know not to depend on a temporary feature

* change migration assistant viewmodel to depend on workspace and pathmanager not DynamoViewModel

* DYN-2990 address accessing null reference

fixes DYN-2990

* remove prism reference

* add note to obsolete MigrateCode method

* move migration assistant viewmodel to its namesake namespace

* make GraphPythonDependencies depend on interfaces instead of general ViewLoadedParams

* revert graph python dependency evaluation logic to not be short-circuited

this is because the dependency map dictionary is used in the UI warnings modal

* update comment

* fix botched namespace change

* parametrise the differ window initial width

* Modify the VisualDifferenceViewer so text wraps instead of using scroll viewers

* remove diffplex.wpf reference

* Python.NET binaries update (PR9) (DynamoDS#10945)

* Improve namespace listing using CPython3 engine (DynamoDS#10950)

Namespace listing using dir would only provide non meaningful results
using the CPython3 engine. This is now fixed by preloading names by
default globally.

* parametrise the differ window initial width

* resolve conflict between the 2 python migration viewmodels

* adjust initial window widths to keep text same wrapping

also allow for slightly larger vertical height for Before/After label as it was hard to spot

* update diff colours to Dynamo pallette

* update splitter colour in side diff layout to be black

* upgrade the inline display mode to also show fragments

* update sizing of diff viewer

* Update PythonMigrationViewExtensionTests.cs

Co-authored-by: Radu Gidei <[email protected]>
Co-authored-by: Martin Misol Monzo <[email protected]>
SHKnudsen added a commit that referenced this pull request Aug 10, 2020
* T1.1 Code Migration (#4)

* add ScriptMigrator

* Add visual difference viewer

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update PythonMigrationViewExtension.csproj

* T1.2 accept/reject code changes (#5)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* update engine version when migrating code

* extension and test updates

* T1.3 save python2 backup file on migration (#6)

* add ScriptMigrator

* Add visual difference viewer

* Added methods for updating the ScriptEditors with the migrated code

* Update PythonMigrationViewExtension.cs

* add mechanisme to save Python 2 backup

* Add tooltip description to migration assistant

* updates

* comment updates

* comment updates

* Update ScriptEditorWindow.xaml.cs

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationViewExtension.csproj

* comment updates

* Revert "comment updates"

This reverts commit 2d2332a.

* comment updates

* Update PythonMigrationAssistantViewModel.cs

* comment updates 2

* small clean ups

* Update PythonMigrationAssistantViewModel.cs

* add 2to3 icon

* comment updates

* GraphPythonDependencies changes

* make event internal

* fix build failure

* update license files, MigrationAssitantClicked event and PythonMigrationAssistantTests

* clean up

* clean up

* update licence files

* make MigrateCode internal

* comments update

* unsubscribe from ScriptEditorWindow closed

* Add 'Before' and 'After' properties (for some reason they where gone)

* Modify the VisualDifferenceViewer so text wraps instead of using scroll viewers

* remove diffplex.wpf reference

* Migration assistant warning dialog

* refactor internal methods to bail early

* rename IronPython dependency method

* switch custom node python deps eval to short-circuit and add xml comment

* rename & move CPython deps method around

* prep support for handling dyn and dyf in migration backup

* handle dyf vs dyn difference in migration backup

events were not properly getting triggered when opening custom nodes either, fixed that too

* notify user that a backup file is created on Python migration

* fix tests

test project was unloaded

* move CustomNodeItem class as private to the warning dialog that needs it

* mark the PythonNode script setter for migration as Obsolet

this is so it raises warnings in the compiler and that anyone using this will know not to depend on a temporary feature

* change migration assistant viewmodel to depend on workspace and pathmanager not DynamoViewModel

* DYN-2990 address accessing null reference

fixes DYN-2990

* remove prism reference

* add note to obsolete MigrateCode method

* move migration assistant viewmodel to its namesake namespace

* make GraphPythonDependencies depend on interfaces instead of general ViewLoadedParams

* revert graph python dependency evaluation logic to not be short-circuited

this is because the dependency map dictionary is used in the UI warnings modal

* update comment

* fix botched namespace change

* parametrise the differ window initial width

* Modify the VisualDifferenceViewer so text wraps instead of using scroll viewers

* remove diffplex.wpf reference

* Python.NET binaries update (PR9) (DynamoDS#10945)

* Improve namespace listing using CPython3 engine (DynamoDS#10950)

Namespace listing using dir would only provide non meaningful results
using the CPython3 engine. This is now fixed by preloading names by
default globally.

* parametrise the differ window initial width

* resolve conflict between the 2 python migration viewmodels

* adjust initial window widths to keep text same wrapping

also allow for slightly larger vertical height for Before/After label as it was hard to spot

* update diff colours to Dynamo pallette

* update splitter colour in side diff layout to be black

* upgrade the inline display mode to also show fragments

* update sizing of diff viewer

* update warning dialog

* migration assistant warning save setting

* Update PythonMigrationAssistantViewModel.cs

* add dynamo version to file path

* comment updates

* only create warning dismiss file if accepted

* comments updates 2

* Update PythonMigrationViewExtension.csproj

* Update PythonMigrationAssistantViewModel.cs

* add is test mode to legal message

* comment updates

* comment updates 2

* update migration assistant disclaimer window title

Co-authored-by: Radu Gidei <[email protected]>
Co-authored-by: Martin Misol Monzo <[email protected]>
SHKnudsen pushed a commit that referenced this pull request Aug 22, 2021
* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: aparajit-pratap <[email protected]>
SHKnudsen added a commit that referenced this pull request Sep 1, 2021
* Node Redesign (DynamoDS#11892)

* DYN-3768-SurveyWindowUI (DynamoDS#11834)

* DYN-3768-SurveyWindowUI

I created 3 resources for the two titles of the SurveyWindow and one for the text content.
I modified the CustomRichTextBox because hyperlink names separated by spaces were not supported then I did some changes and now are working.
I added the RatingControl UI and the SurveyPopup UI and some used styles in the DynamoModern.xaml.
Finally I added a instance of the Survey in the DynamoView.xaml.cs and now a survey popup will be displayed just for testing purposes.

* DYN-3768-SurveyWindowUI Code Review

I added several comments in SurveyPopupViewModel and RatingControl and removed a comment Survey

* DYN-3768-SurveyWindowUI Code Review2

Updated the DependencyProperty name to Value

* Update and rename 4_stdlib.md to 4_builtinpackages.md (DynamoDS#11850)

* Update and rename 4_stdlib.md to 4_builtinpackages.md

* Update 4_builtinpackages.md

* Add ways to pass Analytics Host Entitlement info for out of process integrators (DynamoDS#11841)

* Initial Commit

* Add ParentId to update manager

* Updates

* Add CLI support

* Add unit tests

* Update tests

* Update HostContextInfo type usage

* Comments to use struct

* Move properties out of update manager

* Update

* Comments

* Comments

* update test

* Force Dynamo to run on nvidia graphics card to address helix crash with multiple monitors (DynamoDS#11855)

* enable nvidia graphics card for helix

* make new field private

* Triggering Node AutoComplete on input port should not destroy the connection. (DynamoDS#11859)

* Extension fix (DynamoDS#11861)

DYN-3773

* Upgrade Helix to 2.17.0. (DynamoDS#11860)

* DYN-3834-GeoScaling-GraphRun (DynamoDS#11845)

* DYN-3834-GeoScaling-GraphRun

There was an issue that when the Geometry Scaling was updated in a very large graph the Preferences panel was blocked not allowing the user to close it. I think this behavior was because when the Preference panel was opened immediately a graph run was executed (without changing anything in the Preferences panel).
I was NOT able to reproduce the Preferences panel freezing behavior but we noticed that the graph execution was always happening when the Preferences panel was opened (when nothing was changed), then I did a fix in a way that the selected radio button (in geometry scaling section) is updated every time a new workspace is created or a dyn file is loaded (as is happening with the WorkspaceModel.ScaleFactor), so the graph run will be executed just when the ScaleFactor is changed.

* DYN-3834-GeoScaling-GraphRun Code Review

Unsubscribing from the WorkspaceSettingsChanged when the PreferencesViewModel is cleared.

* DYN-3834-GeoScaling-GraphRun Code Review

Making method private due that is just used in the same class.

* DYN-3834-GeoScaling-GraphRun Code Review

I did some changes so only when the ScaleFactor was changed a graph run will be executed when the Preferences dialog is closed

* DYN-3834-GeoScaling-GraphRun Code Review2

Replacing the call to ForceRunCancelCommand method for MarkNodesAsModifiedAndRequestRun due that the first one was executing the graph when the RunMode = Manual at the moment of updating the Geometry Scaling in the other hand with the MarkNodesAsModifiedAndRequestRun doesn't happen that behavior.

* Pin Note to Node (DynamoDS#11840)

* Pin to node squashed commit

* Changes for pin to node pr

* Add spacing to pin icon

* Retain pin node in copy paste, also correct spacing between note pin icon and text

* Move selection to command

* Place PIN_WIDTH as constant

* Fix distance in unit tests

* update libG for perimeter curves refactor (DynamoDS#11870)

Co-authored-by: pinzart <[email protected]>

* add test for dyn-3628 fix (DynamoDS#11872)

* add dump bytecode debug mode (DynamoDS#11871)

* add dump bytecode debug mode

* DYN-3815 - Prevent reloading of packages unless there are new packages in list of package paths (DynamoDS#11835)

* initial commit - WIP

* fixes for extraneous notifications and duplicate nodes

* cleanup

* revert unchanged file

* fix new package logic

* remove unused property

* fix some tests

* revert unchanged file

* fix remaining tests

* obsolete property

* cleanup

* edit obsoletion message

* load loose custom node defn files by simply adding root path

* add unit tests

* review comments

* revert rename of public API

* unsub events in tests

* DYN-3834-GeoScaling-UnitTest (DynamoDS#11867)

* DYN-3834-GeoScaling-UnitTest

I added one unit tests with two parameters, one is for validating that when RunMode=Manual and the MarkNodesAsModifiedAndRequestRun() method is called the graph execution is NOT kicked off.
The other when the RunMode=Automatic and the MarkNodesAsModifiedAndRequestRun() method is called the graph execution is kicked off.

* DYN-3834-GeoScaling-UnitTest Code Review

I had to split the tests in two (one for Automatic and other for Manual) due that the Resources strings can not be used as a parameters in nUnit Tests parameters (since parameters expected should be constant values).

* DYN-3834-GeoScaling-UnitTest Code Review2

Adding extra assert before validating the node warning state.
A comment was updated reflecting the behavior when RunType = Manual

* Pin to Node Selection Behaivior (DynamoDS#11874)

* Pin to node squashed commit

* Changes for pin to node pr

* Add spacing to pin icon

* Retain pin node in copy paste, also correct spacing between note pin icon and text

* Move selection to command

* Place PIN_WIDTH as constant

* Fix distance in unit tests

* Selection behaviour corrected

* Limit pin to node behaviour

* Add tooltip for Pin to node command,
Enable Pin To Node only when a node and a note is selected

* Add test to PinToNodeCommand.canExecute

* Update ScopeIf description (DynamoDS#11876)

* Update ScopeIf description

* ScopeIf Description Update

* Update Resources.Designer.cs

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* fix node autocomplete crash (DynamoDS#11887)

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: Roberto T <[email protected]>
Co-authored-by: Michael Kirschner <[email protected]>
Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: aparajit-pratap <[email protected]>
Co-authored-by: reddyashish <[email protected]>
Co-authored-by: Ashish Aggarwal <[email protected]>
Co-authored-by: Jorgen Dahl <[email protected]>
Co-authored-by: Martin Stacey <[email protected]>
Co-authored-by: pinzart90 <[email protected]>
Co-authored-by: pinzart <[email protected]>
Co-authored-by: Sol Amour <[email protected]>

* Wire modifications (DynamoDS#11897)

* Wire modifications (#23)

* Got hidden wire implementation working with View->ConnectorDisplay

* Watch node behaviour modified.

* Added image resources. Corrected hover/unhover of watch icon based on whether data passing through meets a requirement of 5 or more items.

* WirePin: Model, ViewModel, View. Placeable/removable via ContextMenus.

* Modified 'RunSharedParams' functionality to work properly.

* Basic implementation of pins. Multi-control point bezier implemented. Need to implement a segmented version between pairs of pins.

* Added WirePinViewModel discard functionality: DiscardAllWirePins()

* Expected behaviour when deleting nodes (pins delete). Provision for opaque/halftone pins/watch icon depending on wire visibility.

* Redrawing Watch (hover) icon at the midpoint when there are pins on the wire.

* This fixes the 'WatchHoverIcon' when there are pins/ when they are removed. Previously when removing pins the icon was drawn in the wrong place.

* Cleanup of unused code.

* Clearup + pin highlighting behaviour.

* Serialization/Deserialization of pins achieved.

* 'Wire' to 'Connector' rename throughout for more consistency with the existing codebase.

* Fixed unwanted duplicate pin placement (the one at the origin).

* Discarded unused methods. Fixed pin multi-selection functionality.

* Fixes to hidden wire display when pin selected.

* Preview behaviour of wires fixed when a pin is selected (similar to that of nodes). RaisePropertyChanged(nameof(Property)) throughout ConnectorViewModel.

* Basic implementation of 'Autolayout' which includes ConnectorPins.

* Delete AssemblySharedInfo.

* Remove unnecessary files/ file changes.

* Delete unnecessary change.

* Removed unnecessary files/file changes.

* Delete unneeded change.

* Revert "Delete unneeded change."

This reverts commit 090fb18.

* Revert "Merge branch 'Wire-Modifications' of https://github.com/M-JULIANI/Dynamo into Wire-Modifications"

This reverts commit 23dc696, reversing
changes made to 06378f0.

* Reverted unneeded changes.

* Reverting unneeded changes.

* Removing unneeded changes.

* Removing unneeded changes.

* Unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Various PR fixes.

* Reverted Resharper renaming of various comments.

* PR fixes.

* PR fixes.

* ConnectorPin visibility fixed (follows Connector visibility).

* Fixed PR issues.

* Ironed out edge condition- AutoLayout _seems_ to work without any errors thrown at the moment.

* PR Cleanup and Autolayout edge case fixes.

* Ensures ConnectorPins cannot be copied and pasted (like notes & nodes) but rather have to be placed deliberately.

* Functionality added to preserve pins when 'WatchIcon' is clicked and Watch Node is placed. Previously they were discarded.

* Cleanup.

* Added correct ConnectorPin icons for 'selected' and 'hidden' visibility. Got Undo/Redo functionality working partially.

* Got 'undo' working for when a connector is pinned.

* Undo/redo functionality between OOTB nodes and between custom nodes.

* Cleanup.

* Cleanup

* Cleanup.

* Cleanup.

* Cleanup.

* Cleanup.

* Fixes.

* Fixes.

* Fixes.

* Fixes.

* Small fixes.

* Removed unused argument.

* Fixes.

* Small PR fixes.

* PR fix.

* Small fixes to ensure toggle between pline/bezier connectors and correct pin visibility.

* fix breaks

* Update RecordedTests.cs

* PR fixes.

* Connector anchor behaviour implemented.

* Added wire hover behaviour (grey outline). Updated 'default' icon behaviour (onhover).

* Updates to jive with unit tests.

* Bug fix related to pin removal/ watch node placement.

* Fixes. Updated pin position/ transform in xaml to achieve correct alignment with GraphLayout routines.

* Undo/redo bug fixed.

* PR comment fixes.

* PR comments fixed.

* PR fixes.

* PR fixes.

* PR fixes.

* fix coreWpf csproj file after rebase

Co-authored-by: Sylvester Knudsen <[email protected]>

* Wire modifications unit tests revised (DynamoDS#11899)

* Wire modifications (#23)

* Got hidden wire implementation working with View->ConnectorDisplay

* Watch node behaviour modified.

* Added image resources. Corrected hover/unhover of watch icon based on whether data passing through meets a requirement of 5 or more items.

* WirePin: Model, ViewModel, View. Placeable/removable via ContextMenus.

* Modified 'RunSharedParams' functionality to work properly.

* Basic implementation of pins. Multi-control point bezier implemented. Need to implement a segmented version between pairs of pins.

* Added WirePinViewModel discard functionality: DiscardAllWirePins()

* Expected behaviour when deleting nodes (pins delete). Provision for opaque/halftone pins/watch icon depending on wire visibility.

* Redrawing Watch (hover) icon at the midpoint when there are pins on the wire.

* This fixes the 'WatchHoverIcon' when there are pins/ when they are removed. Previously when removing pins the icon was drawn in the wrong place.

* Cleanup of unused code.

* Clearup + pin highlighting behaviour.

* Serialization/Deserialization of pins achieved.

* 'Wire' to 'Connector' rename throughout for more consistency with the existing codebase.

* Fixed unwanted duplicate pin placement (the one at the origin).

* Discarded unused methods. Fixed pin multi-selection functionality.

* Fixes to hidden wire display when pin selected.

* Preview behaviour of wires fixed when a pin is selected (similar to that of nodes). RaisePropertyChanged(nameof(Property)) throughout ConnectorViewModel.

* Basic implementation of 'Autolayout' which includes ConnectorPins.

* Delete AssemblySharedInfo.

* Remove unnecessary files/ file changes.

* Delete unnecessary change.

* Removed unnecessary files/file changes.

* Delete unneeded change.

* Revert "Delete unneeded change."

This reverts commit 090fb18.

* Revert "Merge branch 'Wire-Modifications' of https://github.com/M-JULIANI/Dynamo into Wire-Modifications"

This reverts commit 23dc696, reversing
changes made to 06378f0.

* Reverted unneeded changes.

* Reverting unneeded changes.

* Removing unneeded changes.

* Removing unneeded changes.

* Unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Various PR fixes.

* Reverted Resharper renaming of various comments.

* PR fixes.

* PR fixes.

* ConnectorPin visibility fixed (follows Connector visibility).

* Fixed PR issues.

* Ironed out edge condition- AutoLayout _seems_ to work without any errors thrown at the moment.

* PR Cleanup and Autolayout edge case fixes.

* Ensures ConnectorPins cannot be copied and pasted (like notes & nodes) but rather have to be placed deliberately.

* Functionality added to preserve pins when 'WatchIcon' is clicked and Watch Node is placed. Previously they were discarded.

* Cleanup.

* Added correct ConnectorPin icons for 'selected' and 'hidden' visibility. Got Undo/Redo functionality working partially.

* Got 'undo' working for when a connector is pinned.

* Undo/redo functionality between OOTB nodes and between custom nodes.

* Cleanup.

* Cleanup

* Cleanup.

* Cleanup.

* Cleanup.

* Cleanup.

* Fixes.

* Fixes.

* Fixes.

* Fixes.

* Small fixes.

* Removed unused argument.

* Fixes.

* Small PR fixes.

* PR fix.

* Small fixes to ensure toggle between pline/bezier connectors and correct pin visibility.

* fix breaks

* Update RecordedTests.cs

* PR fixes.

* Connector anchor behaviour implemented.

* Added wire hover behaviour (grey outline). Updated 'default' icon behaviour (onhover).

* Updates to jive with unit tests.

* Bug fix related to pin removal/ watch node placement.

* Fixes. Updated pin position/ transform in xaml to achieve correct alignment with GraphLayout routines.

* Undo/redo bug fixed.

* PR comment fixes.

* PR comments fixed.

* PR fixes.

* PR fixes.

* PR fixes.

* Unit tests re-added.

* Unit tests updated.

Co-authored-by: Sylvester Knudsen <[email protected]>

* Update DynamoColorsAndBrushes.xaml, which was accidentally tampered with. (DynamoDS#11928)

We accidentally deleted some key lines of code having to do with the styling of nodes.

* Node visual refresh updates (DynamoDS#11933)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Node visual refresh updates (DynamoDS#11941)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Node informational states (#4) (DynamoDS#11910)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: aparajit-pratap <[email protected]>

* Wire Behaviour UI fixes (DynamoDS#11946)

* Update DynamoColorsAndBrushes.xaml, which was accidentally tampered with.

We accidentally deleted some key lines of code having to do with the styling of nodes.

* PR fixes. Button rectangular border removed, hover state for polyline connectors disabled, instantiation location of pins fixed.

- Button rectangular border removed.
- Hover state for polyline connectors disabled.
- Instantiation location of pins fixed.
- Connector tooltip behaviour to match that of temporary hover icons.

* PR fix.

* This makes more sense as a static member than a const.

* PR fixes.

* PR fixes.

* PR fixes.

* Update UIDispatcher usage (DynamoDS#11951)

* Fix the build by adding back missing code (DynamoDS#11952)

* Fix two regressions (DynamoDS#11953)

* Wire Behaviour UI fixes (DynamoDS#11954)

* Wire UI Fixes

 1. Made wire tooltip highest ZIndex.
 2. Made first line of tooltip bold, the rest is regular
 3. Added a clickable item under View-> Connectors to turn tooltip on/off.

* Added comments.

* Update CommandLineTests.cs (DynamoDS#11955)

* Graph Layout regression test fixed. (DynamoDS#11956)

* Update ConnectorAnchorView.xaml (DynamoDS#11969)

* Remove Extra Files (DynamoDS#11970)

* Node visual refresh updates (DynamoDS#11973)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Node visual refresh updates (DynamoDS#11977)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Reponse to comments

Co-authored-by: Ollie Green <[email protected]>
Co-authored-by: Roberto T <[email protected]>
Co-authored-by: Michael Kirschner <[email protected]>
Co-authored-by: aparajit-pratap <[email protected]>
Co-authored-by: reddyashish <[email protected]>
Co-authored-by: Ashish Aggarwal <[email protected]>
Co-authored-by: Jorgen Dahl <[email protected]>
Co-authored-by: Martin Stacey <[email protected]>
Co-authored-by: pinzart90 <[email protected]>
Co-authored-by: pinzart <[email protected]>
Co-authored-by: Sol Amour <[email protected]>
Co-authored-by: Marco Juliani <[email protected]>
Co-authored-by: Sylvester Knudsen <[email protected]>
SHKnudsen added a commit that referenced this pull request Sep 2, 2021
…ynamoDS#12003)

* Node Redesign (DynamoDS#11892)

* DYN-3768-SurveyWindowUI (DynamoDS#11834)

* DYN-3768-SurveyWindowUI

I created 3 resources for the two titles of the SurveyWindow and one for the text content.
I modified the CustomRichTextBox because hyperlink names separated by spaces were not supported then I did some changes and now are working.
I added the RatingControl UI and the SurveyPopup UI and some used styles in the DynamoModern.xaml.
Finally I added a instance of the Survey in the DynamoView.xaml.cs and now a survey popup will be displayed just for testing purposes.

* DYN-3768-SurveyWindowUI Code Review

I added several comments in SurveyPopupViewModel and RatingControl and removed a comment Survey

* DYN-3768-SurveyWindowUI Code Review2

Updated the DependencyProperty name to Value

* Update and rename 4_stdlib.md to 4_builtinpackages.md (DynamoDS#11850)

* Update and rename 4_stdlib.md to 4_builtinpackages.md

* Update 4_builtinpackages.md

* Add ways to pass Analytics Host Entitlement info for out of process integrators (DynamoDS#11841)

* Initial Commit

* Add ParentId to update manager

* Updates

* Add CLI support

* Add unit tests

* Update tests

* Update HostContextInfo type usage

* Comments to use struct

* Move properties out of update manager

* Update

* Comments

* Comments

* update test

* Force Dynamo to run on nvidia graphics card to address helix crash with multiple monitors (DynamoDS#11855)

* enable nvidia graphics card for helix

* make new field private

* Triggering Node AutoComplete on input port should not destroy the connection. (DynamoDS#11859)

* Extension fix (DynamoDS#11861)

DYN-3773

* Upgrade Helix to 2.17.0. (DynamoDS#11860)

* DYN-3834-GeoScaling-GraphRun (DynamoDS#11845)

* DYN-3834-GeoScaling-GraphRun

There was an issue that when the Geometry Scaling was updated in a very large graph the Preferences panel was blocked not allowing the user to close it. I think this behavior was because when the Preference panel was opened immediately a graph run was executed (without changing anything in the Preferences panel).
I was NOT able to reproduce the Preferences panel freezing behavior but we noticed that the graph execution was always happening when the Preferences panel was opened (when nothing was changed), then I did a fix in a way that the selected radio button (in geometry scaling section) is updated every time a new workspace is created or a dyn file is loaded (as is happening with the WorkspaceModel.ScaleFactor), so the graph run will be executed just when the ScaleFactor is changed.

* DYN-3834-GeoScaling-GraphRun Code Review

Unsubscribing from the WorkspaceSettingsChanged when the PreferencesViewModel is cleared.

* DYN-3834-GeoScaling-GraphRun Code Review

Making method private due that is just used in the same class.

* DYN-3834-GeoScaling-GraphRun Code Review

I did some changes so only when the ScaleFactor was changed a graph run will be executed when the Preferences dialog is closed

* DYN-3834-GeoScaling-GraphRun Code Review2

Replacing the call to ForceRunCancelCommand method for MarkNodesAsModifiedAndRequestRun due that the first one was executing the graph when the RunMode = Manual at the moment of updating the Geometry Scaling in the other hand with the MarkNodesAsModifiedAndRequestRun doesn't happen that behavior.

* Pin Note to Node (DynamoDS#11840)

* Pin to node squashed commit

* Changes for pin to node pr

* Add spacing to pin icon

* Retain pin node in copy paste, also correct spacing between note pin icon and text

* Move selection to command

* Place PIN_WIDTH as constant

* Fix distance in unit tests

* update libG for perimeter curves refactor (DynamoDS#11870)

Co-authored-by: pinzart <[email protected]>

* add test for dyn-3628 fix (DynamoDS#11872)

* add dump bytecode debug mode (DynamoDS#11871)

* add dump bytecode debug mode

* DYN-3815 - Prevent reloading of packages unless there are new packages in list of package paths (DynamoDS#11835)

* initial commit - WIP

* fixes for extraneous notifications and duplicate nodes

* cleanup

* revert unchanged file

* fix new package logic

* remove unused property

* fix some tests

* revert unchanged file

* fix remaining tests

* obsolete property

* cleanup

* edit obsoletion message

* load loose custom node defn files by simply adding root path

* add unit tests

* review comments

* revert rename of public API

* unsub events in tests

* DYN-3834-GeoScaling-UnitTest (DynamoDS#11867)

* DYN-3834-GeoScaling-UnitTest

I added one unit tests with two parameters, one is for validating that when RunMode=Manual and the MarkNodesAsModifiedAndRequestRun() method is called the graph execution is NOT kicked off.
The other when the RunMode=Automatic and the MarkNodesAsModifiedAndRequestRun() method is called the graph execution is kicked off.

* DYN-3834-GeoScaling-UnitTest Code Review

I had to split the tests in two (one for Automatic and other for Manual) due that the Resources strings can not be used as a parameters in nUnit Tests parameters (since parameters expected should be constant values).

* DYN-3834-GeoScaling-UnitTest Code Review2

Adding extra assert before validating the node warning state.
A comment was updated reflecting the behavior when RunType = Manual

* Pin to Node Selection Behaivior (DynamoDS#11874)

* Pin to node squashed commit

* Changes for pin to node pr

* Add spacing to pin icon

* Retain pin node in copy paste, also correct spacing between note pin icon and text

* Move selection to command

* Place PIN_WIDTH as constant

* Fix distance in unit tests

* Selection behaviour corrected

* Limit pin to node behaviour

* Add tooltip for Pin to node command,
Enable Pin To Node only when a node and a note is selected

* Add test to PinToNodeCommand.canExecute

* Update ScopeIf description (DynamoDS#11876)

* Update ScopeIf description

* ScopeIf Description Update

* Update Resources.Designer.cs

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* fix node autocomplete crash (DynamoDS#11887)

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: Roberto T <[email protected]>
Co-authored-by: Michael Kirschner <[email protected]>
Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: aparajit-pratap <[email protected]>
Co-authored-by: reddyashish <[email protected]>
Co-authored-by: Ashish Aggarwal <[email protected]>
Co-authored-by: Jorgen Dahl <[email protected]>
Co-authored-by: Martin Stacey <[email protected]>
Co-authored-by: pinzart90 <[email protected]>
Co-authored-by: pinzart <[email protected]>
Co-authored-by: Sol Amour <[email protected]>

* Wire modifications (DynamoDS#11897)

* Wire modifications (#23)

* Got hidden wire implementation working with View->ConnectorDisplay

* Watch node behaviour modified.

* Added image resources. Corrected hover/unhover of watch icon based on whether data passing through meets a requirement of 5 or more items.

* WirePin: Model, ViewModel, View. Placeable/removable via ContextMenus.

* Modified 'RunSharedParams' functionality to work properly.

* Basic implementation of pins. Multi-control point bezier implemented. Need to implement a segmented version between pairs of pins.

* Added WirePinViewModel discard functionality: DiscardAllWirePins()

* Expected behaviour when deleting nodes (pins delete). Provision for opaque/halftone pins/watch icon depending on wire visibility.

* Redrawing Watch (hover) icon at the midpoint when there are pins on the wire.

* This fixes the 'WatchHoverIcon' when there are pins/ when they are removed. Previously when removing pins the icon was drawn in the wrong place.

* Cleanup of unused code.

* Clearup + pin highlighting behaviour.

* Serialization/Deserialization of pins achieved.

* 'Wire' to 'Connector' rename throughout for more consistency with the existing codebase.

* Fixed unwanted duplicate pin placement (the one at the origin).

* Discarded unused methods. Fixed pin multi-selection functionality.

* Fixes to hidden wire display when pin selected.

* Preview behaviour of wires fixed when a pin is selected (similar to that of nodes). RaisePropertyChanged(nameof(Property)) throughout ConnectorViewModel.

* Basic implementation of 'Autolayout' which includes ConnectorPins.

* Delete AssemblySharedInfo.

* Remove unnecessary files/ file changes.

* Delete unnecessary change.

* Removed unnecessary files/file changes.

* Delete unneeded change.

* Revert "Delete unneeded change."

This reverts commit 090fb18.

* Revert "Merge branch 'Wire-Modifications' of https://github.com/M-JULIANI/Dynamo into Wire-Modifications"

This reverts commit 23dc696, reversing
changes made to 06378f0.

* Reverted unneeded changes.

* Reverting unneeded changes.

* Removing unneeded changes.

* Removing unneeded changes.

* Unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Various PR fixes.

* Reverted Resharper renaming of various comments.

* PR fixes.

* PR fixes.

* ConnectorPin visibility fixed (follows Connector visibility).

* Fixed PR issues.

* Ironed out edge condition- AutoLayout _seems_ to work without any errors thrown at the moment.

* PR Cleanup and Autolayout edge case fixes.

* Ensures ConnectorPins cannot be copied and pasted (like notes & nodes) but rather have to be placed deliberately.

* Functionality added to preserve pins when 'WatchIcon' is clicked and Watch Node is placed. Previously they were discarded.

* Cleanup.

* Added correct ConnectorPin icons for 'selected' and 'hidden' visibility. Got Undo/Redo functionality working partially.

* Got 'undo' working for when a connector is pinned.

* Undo/redo functionality between OOTB nodes and between custom nodes.

* Cleanup.

* Cleanup

* Cleanup.

* Cleanup.

* Cleanup.

* Cleanup.

* Fixes.

* Fixes.

* Fixes.

* Fixes.

* Small fixes.

* Removed unused argument.

* Fixes.

* Small PR fixes.

* PR fix.

* Small fixes to ensure toggle between pline/bezier connectors and correct pin visibility.

* fix breaks

* Update RecordedTests.cs

* PR fixes.

* Connector anchor behaviour implemented.

* Added wire hover behaviour (grey outline). Updated 'default' icon behaviour (onhover).

* Updates to jive with unit tests.

* Bug fix related to pin removal/ watch node placement.

* Fixes. Updated pin position/ transform in xaml to achieve correct alignment with GraphLayout routines.

* Undo/redo bug fixed.

* PR comment fixes.

* PR comments fixed.

* PR fixes.

* PR fixes.

* PR fixes.

* fix coreWpf csproj file after rebase

Co-authored-by: Sylvester Knudsen <[email protected]>

* Wire modifications unit tests revised (DynamoDS#11899)

* Wire modifications (#23)

* Got hidden wire implementation working with View->ConnectorDisplay

* Watch node behaviour modified.

* Added image resources. Corrected hover/unhover of watch icon based on whether data passing through meets a requirement of 5 or more items.

* WirePin: Model, ViewModel, View. Placeable/removable via ContextMenus.

* Modified 'RunSharedParams' functionality to work properly.

* Basic implementation of pins. Multi-control point bezier implemented. Need to implement a segmented version between pairs of pins.

* Added WirePinViewModel discard functionality: DiscardAllWirePins()

* Expected behaviour when deleting nodes (pins delete). Provision for opaque/halftone pins/watch icon depending on wire visibility.

* Redrawing Watch (hover) icon at the midpoint when there are pins on the wire.

* This fixes the 'WatchHoverIcon' when there are pins/ when they are removed. Previously when removing pins the icon was drawn in the wrong place.

* Cleanup of unused code.

* Clearup + pin highlighting behaviour.

* Serialization/Deserialization of pins achieved.

* 'Wire' to 'Connector' rename throughout for more consistency with the existing codebase.

* Fixed unwanted duplicate pin placement (the one at the origin).

* Discarded unused methods. Fixed pin multi-selection functionality.

* Fixes to hidden wire display when pin selected.

* Preview behaviour of wires fixed when a pin is selected (similar to that of nodes). RaisePropertyChanged(nameof(Property)) throughout ConnectorViewModel.

* Basic implementation of 'Autolayout' which includes ConnectorPins.

* Delete AssemblySharedInfo.

* Remove unnecessary files/ file changes.

* Delete unnecessary change.

* Removed unnecessary files/file changes.

* Delete unneeded change.

* Revert "Delete unneeded change."

This reverts commit 090fb18.

* Revert "Merge branch 'Wire-Modifications' of https://github.com/M-JULIANI/Dynamo into Wire-Modifications"

This reverts commit 23dc696, reversing
changes made to 06378f0.

* Reverted unneeded changes.

* Reverting unneeded changes.

* Removing unneeded changes.

* Removing unneeded changes.

* Unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Various PR fixes.

* Reverted Resharper renaming of various comments.

* PR fixes.

* PR fixes.

* ConnectorPin visibility fixed (follows Connector visibility).

* Fixed PR issues.

* Ironed out edge condition- AutoLayout _seems_ to work without any errors thrown at the moment.

* PR Cleanup and Autolayout edge case fixes.

* Ensures ConnectorPins cannot be copied and pasted (like notes & nodes) but rather have to be placed deliberately.

* Functionality added to preserve pins when 'WatchIcon' is clicked and Watch Node is placed. Previously they were discarded.

* Cleanup.

* Added correct ConnectorPin icons for 'selected' and 'hidden' visibility. Got Undo/Redo functionality working partially.

* Got 'undo' working for when a connector is pinned.

* Undo/redo functionality between OOTB nodes and between custom nodes.

* Cleanup.

* Cleanup

* Cleanup.

* Cleanup.

* Cleanup.

* Cleanup.

* Fixes.

* Fixes.

* Fixes.

* Fixes.

* Small fixes.

* Removed unused argument.

* Fixes.

* Small PR fixes.

* PR fix.

* Small fixes to ensure toggle between pline/bezier connectors and correct pin visibility.

* fix breaks

* Update RecordedTests.cs

* PR fixes.

* Connector anchor behaviour implemented.

* Added wire hover behaviour (grey outline). Updated 'default' icon behaviour (onhover).

* Updates to jive with unit tests.

* Bug fix related to pin removal/ watch node placement.

* Fixes. Updated pin position/ transform in xaml to achieve correct alignment with GraphLayout routines.

* Undo/redo bug fixed.

* PR comment fixes.

* PR comments fixed.

* PR fixes.

* PR fixes.

* PR fixes.

* Unit tests re-added.

* Unit tests updated.

Co-authored-by: Sylvester Knudsen <[email protected]>

* Update DynamoColorsAndBrushes.xaml, which was accidentally tampered with. (DynamoDS#11928)

We accidentally deleted some key lines of code having to do with the styling of nodes.

* Node visual refresh updates (DynamoDS#11933)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Node visual refresh updates (DynamoDS#11941)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Node informational states (#4) (DynamoDS#11910)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: aparajit-pratap <[email protected]>

* Wire Behaviour UI fixes (DynamoDS#11946)

* Update DynamoColorsAndBrushes.xaml, which was accidentally tampered with.

We accidentally deleted some key lines of code having to do with the styling of nodes.

* PR fixes. Button rectangular border removed, hover state for polyline connectors disabled, instantiation location of pins fixed.

- Button rectangular border removed.
- Hover state for polyline connectors disabled.
- Instantiation location of pins fixed.
- Connector tooltip behaviour to match that of temporary hover icons.

* PR fix.

* This makes more sense as a static member than a const.

* PR fixes.

* PR fixes.

* PR fixes.

* Update UIDispatcher usage (DynamoDS#11951)

* Fix the build by adding back missing code (DynamoDS#11952)

* Fix two regressions (DynamoDS#11953)

* Wire Behaviour UI fixes (DynamoDS#11954)

* Wire UI Fixes

 1. Made wire tooltip highest ZIndex.
 2. Made first line of tooltip bold, the rest is regular
 3. Added a clickable item under View-> Connectors to turn tooltip on/off.

* Added comments.

* Update CommandLineTests.cs (DynamoDS#11955)

* Graph Layout regression test fixed. (DynamoDS#11956)

* Update ConnectorAnchorView.xaml (DynamoDS#11969)

* Remove Extra Files (DynamoDS#11970)

* Node visual refresh updates (DynamoDS#11973)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Node visual refresh updates (DynamoDS#11977)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Reponse to comments

* Group improvements to the graph view (DynamoDS#11912)

* initial commit

* wip

* clean up

* remove leftovers

* UndoRedo behaviour + grouped groups cut out + general fixes

* update images

* fix CopyPaste + few minor bugs

* minor clean ups

* Group improvements unit tests (#29)

* WIP

* view model tests

* initial commit

* wip

* clean up

* remove leftovers

* UndoRedo behaviour + grouped groups cut out + general fixes

* update images

* fix CopyPaste + few minor bugs

* minor clean ups

* Update SerializationTests.cs

* Update SerializationTests.cs

* comment updates

* comment updates

* fix GetOutputPorts errors

* fix serialization

* Update WorkspaceModel.cs

* remove grid style (not needed anymore)

* Remove BelongsToGroup property from ModelBase

* Update AnnotationViewModel.cs

* fix setting the graph to have unsaved changes on graph open

* disable drag and drop on collapsed groups

* fix spelling mistake

* Node informational states (DynamoDS#11983)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

* Fixes UI bug

* Switched out vector-based info/warning/error icons for .png equivalents.

* Removes reference to WindowsBase in DynamoCore and flags many properties in the InfoBubbleViewModel as obsolete.

* Updates

* Minor graphical updates

* Updates in response to feedback

Adds new resource strings.
Adds a ToolTip for the node context menu.
Makes node context menu visible for all nodes.
Fixes error bubble Z Index issue.
Adds chevron to error bubble design.
Unsubscribes from NodeMessages.CollectionChanged on InfoBubbleViewModel's Dispose method.

Co-authored-by: aparajit-pratap <[email protected]>

* Code Cleanup (DynamoDS#11984)

* Code Cleanup

* Call Dispose() on ConnectorAnchorViewModel

* Node redesign timeouts (DynamoDS#11986)

* Code Cleanup

* Call Dispose() on ConnectorAnchorViewModel

* unsub collection change

* formatting
fix broken path to pin icon

* revert schema change

* revert schema change in serialization as well

* actually dispose annotationviewmodels

Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: michael kirschner <[email protected]>

* Connector View Model Dispose (DynamoDS#11991)

* ConnectorViewModel dispose

* More Dispose spots

* Revert Node States Changes

* Fix build

* Initial Commit

* UI Fix

Co-authored-by: Ollie Green <[email protected]>
Co-authored-by: Roberto T <[email protected]>
Co-authored-by: Michael Kirschner <[email protected]>
Co-authored-by: aparajit-pratap <[email protected]>
Co-authored-by: reddyashish <[email protected]>
Co-authored-by: Ashish Aggarwal <[email protected]>
Co-authored-by: Jorgen Dahl <[email protected]>
Co-authored-by: Martin Stacey <[email protected]>
Co-authored-by: pinzart90 <[email protected]>
Co-authored-by: pinzart <[email protected]>
Co-authored-by: Sol Amour <[email protected]>
Co-authored-by: Marco Juliani <[email protected]>
Co-authored-by: Sylvester Knudsen <[email protected]>
Co-authored-by: michael kirschner <[email protected]>
SHKnudsen added a commit that referenced this pull request Oct 27, 2021
* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Node Redesign (DynamoDS#11892)

* DYN-3768-SurveyWindowUI (DynamoDS#11834)

* DYN-3768-SurveyWindowUI

I created 3 resources for the two titles of the SurveyWindow and one for the text content.
I modified the CustomRichTextBox because hyperlink names separated by spaces were not supported then I did some changes and now are working.
I added the RatingControl UI and the SurveyPopup UI and some used styles in the DynamoModern.xaml.
Finally I added a instance of the Survey in the DynamoView.xaml.cs and now a survey popup will be displayed just for testing purposes.

* DYN-3768-SurveyWindowUI Code Review

I added several comments in SurveyPopupViewModel and RatingControl and removed a comment Survey

* DYN-3768-SurveyWindowUI Code Review2

Updated the DependencyProperty name to Value

* Update and rename 4_stdlib.md to 4_builtinpackages.md (DynamoDS#11850)

* Update and rename 4_stdlib.md to 4_builtinpackages.md

* Update 4_builtinpackages.md

* Add ways to pass Analytics Host Entitlement info for out of process integrators (DynamoDS#11841)

* Initial Commit

* Add ParentId to update manager

* Updates

* Add CLI support

* Add unit tests

* Update tests

* Update HostContextInfo type usage

* Comments to use struct

* Move properties out of update manager

* Update

* Comments

* Comments

* update test

* Force Dynamo to run on nvidia graphics card to address helix crash with multiple monitors (DynamoDS#11855)

* enable nvidia graphics card for helix

* make new field private

* Triggering Node AutoComplete on input port should not destroy the connection. (DynamoDS#11859)

* Extension fix (DynamoDS#11861)

DYN-3773

* Upgrade Helix to 2.17.0. (DynamoDS#11860)

* DYN-3834-GeoScaling-GraphRun (DynamoDS#11845)

* DYN-3834-GeoScaling-GraphRun

There was an issue that when the Geometry Scaling was updated in a very large graph the Preferences panel was blocked not allowing the user to close it. I think this behavior was because when the Preference panel was opened immediately a graph run was executed (without changing anything in the Preferences panel).
I was NOT able to reproduce the Preferences panel freezing behavior but we noticed that the graph execution was always happening when the Preferences panel was opened (when nothing was changed), then I did a fix in a way that the selected radio button (in geometry scaling section) is updated every time a new workspace is created or a dyn file is loaded (as is happening with the WorkspaceModel.ScaleFactor), so the graph run will be executed just when the ScaleFactor is changed.

* DYN-3834-GeoScaling-GraphRun Code Review

Unsubscribing from the WorkspaceSettingsChanged when the PreferencesViewModel is cleared.

* DYN-3834-GeoScaling-GraphRun Code Review

Making method private due that is just used in the same class.

* DYN-3834-GeoScaling-GraphRun Code Review

I did some changes so only when the ScaleFactor was changed a graph run will be executed when the Preferences dialog is closed

* DYN-3834-GeoScaling-GraphRun Code Review2

Replacing the call to ForceRunCancelCommand method for MarkNodesAsModifiedAndRequestRun due that the first one was executing the graph when the RunMode = Manual at the moment of updating the Geometry Scaling in the other hand with the MarkNodesAsModifiedAndRequestRun doesn't happen that behavior.

* Pin Note to Node (DynamoDS#11840)

* Pin to node squashed commit

* Changes for pin to node pr

* Add spacing to pin icon

* Retain pin node in copy paste, also correct spacing between note pin icon and text

* Move selection to command

* Place PIN_WIDTH as constant

* Fix distance in unit tests

* update libG for perimeter curves refactor (DynamoDS#11870)

Co-authored-by: pinzart <[email protected]>

* add test for dyn-3628 fix (DynamoDS#11872)

* add dump bytecode debug mode (DynamoDS#11871)

* add dump bytecode debug mode

* DYN-3815 - Prevent reloading of packages unless there are new packages in list of package paths (DynamoDS#11835)

* initial commit - WIP

* fixes for extraneous notifications and duplicate nodes

* cleanup

* revert unchanged file

* fix new package logic

* remove unused property

* fix some tests

* revert unchanged file

* fix remaining tests

* obsolete property

* cleanup

* edit obsoletion message

* load loose custom node defn files by simply adding root path

* add unit tests

* review comments

* revert rename of public API

* unsub events in tests

* DYN-3834-GeoScaling-UnitTest (DynamoDS#11867)

* DYN-3834-GeoScaling-UnitTest

I added one unit tests with two parameters, one is for validating that when RunMode=Manual and the MarkNodesAsModifiedAndRequestRun() method is called the graph execution is NOT kicked off.
The other when the RunMode=Automatic and the MarkNodesAsModifiedAndRequestRun() method is called the graph execution is kicked off.

* DYN-3834-GeoScaling-UnitTest Code Review

I had to split the tests in two (one for Automatic and other for Manual) due that the Resources strings can not be used as a parameters in nUnit Tests parameters (since parameters expected should be constant values).

* DYN-3834-GeoScaling-UnitTest Code Review2

Adding extra assert before validating the node warning state.
A comment was updated reflecting the behavior when RunType = Manual

* Pin to Node Selection Behaivior (DynamoDS#11874)

* Pin to node squashed commit

* Changes for pin to node pr

* Add spacing to pin icon

* Retain pin node in copy paste, also correct spacing between note pin icon and text

* Move selection to command

* Place PIN_WIDTH as constant

* Fix distance in unit tests

* Selection behaviour corrected

* Limit pin to node behaviour

* Add tooltip for Pin to node command,
Enable Pin To Node only when a node and a note is selected

* Add test to PinToNodeCommand.canExecute

* Update ScopeIf description (DynamoDS#11876)

* Update ScopeIf description

* ScopeIf Description Update

* Update Resources.Designer.cs

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* fix node autocomplete crash (DynamoDS#11887)

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: Roberto T <[email protected]>
Co-authored-by: Michael Kirschner <[email protected]>
Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: aparajit-pratap <[email protected]>
Co-authored-by: reddyashish <[email protected]>
Co-authored-by: Ashish Aggarwal <[email protected]>
Co-authored-by: Jorgen Dahl <[email protected]>
Co-authored-by: Martin Stacey <[email protected]>
Co-authored-by: pinzart90 <[email protected]>
Co-authored-by: pinzart <[email protected]>
Co-authored-by: Sol Amour <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

* Fixes UI bug

* Switched out vector-based info/warning/error icons for .png equivalents.

* Wire modifications (DynamoDS#11897)

* Wire modifications (#23)

* Got hidden wire implementation working with View->ConnectorDisplay

* Watch node behaviour modified.

* Added image resources. Corrected hover/unhover of watch icon based on whether data passing through meets a requirement of 5 or more items.

* WirePin: Model, ViewModel, View. Placeable/removable via ContextMenus.

* Modified 'RunSharedParams' functionality to work properly.

* Basic implementation of pins. Multi-control point bezier implemented. Need to implement a segmented version between pairs of pins.

* Added WirePinViewModel discard functionality: DiscardAllWirePins()

* Expected behaviour when deleting nodes (pins delete). Provision for opaque/halftone pins/watch icon depending on wire visibility.

* Redrawing Watch (hover) icon at the midpoint when there are pins on the wire.

* This fixes the 'WatchHoverIcon' when there are pins/ when they are removed. Previously when removing pins the icon was drawn in the wrong place.

* Cleanup of unused code.

* Clearup + pin highlighting behaviour.

* Serialization/Deserialization of pins achieved.

* 'Wire' to 'Connector' rename throughout for more consistency with the existing codebase.

* Fixed unwanted duplicate pin placement (the one at the origin).

* Discarded unused methods. Fixed pin multi-selection functionality.

* Fixes to hidden wire display when pin selected.

* Preview behaviour of wires fixed when a pin is selected (similar to that of nodes). RaisePropertyChanged(nameof(Property)) throughout ConnectorViewModel.

* Basic implementation of 'Autolayout' which includes ConnectorPins.

* Delete AssemblySharedInfo.

* Remove unnecessary files/ file changes.

* Delete unnecessary change.

* Removed unnecessary files/file changes.

* Delete unneeded change.

* Revert "Delete unneeded change."

This reverts commit 090fb18.

* Revert "Merge branch 'Wire-Modifications' of https://github.com/M-JULIANI/Dynamo into Wire-Modifications"

This reverts commit 23dc696, reversing
changes made to 06378f0.

* Reverted unneeded changes.

* Reverting unneeded changes.

* Removing unneeded changes.

* Removing unneeded changes.

* Unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Various PR fixes.

* Reverted Resharper renaming of various comments.

* PR fixes.

* PR fixes.

* ConnectorPin visibility fixed (follows Connector visibility).

* Fixed PR issues.

* Ironed out edge condition- AutoLayout _seems_ to work without any errors thrown at the moment.

* PR Cleanup and Autolayout edge case fixes.

* Ensures ConnectorPins cannot be copied and pasted (like notes & nodes) but rather have to be placed deliberately.

* Functionality added to preserve pins when 'WatchIcon' is clicked and Watch Node is placed. Previously they were discarded.

* Cleanup.

* Added correct ConnectorPin icons for 'selected' and 'hidden' visibility. Got Undo/Redo functionality working partially.

* Got 'undo' working for when a connector is pinned.

* Undo/redo functionality between OOTB nodes and between custom nodes.

* Cleanup.

* Cleanup

* Cleanup.

* Cleanup.

* Cleanup.

* Cleanup.

* Fixes.

* Fixes.

* Fixes.

* Fixes.

* Small fixes.

* Removed unused argument.

* Fixes.

* Small PR fixes.

* PR fix.

* Small fixes to ensure toggle between pline/bezier connectors and correct pin visibility.

* fix breaks

* Update RecordedTests.cs

* PR fixes.

* Connector anchor behaviour implemented.

* Added wire hover behaviour (grey outline). Updated 'default' icon behaviour (onhover).

* Updates to jive with unit tests.

* Bug fix related to pin removal/ watch node placement.

* Fixes. Updated pin position/ transform in xaml to achieve correct alignment with GraphLayout routines.

* Undo/redo bug fixed.

* PR comment fixes.

* PR comments fixed.

* PR fixes.

* PR fixes.

* PR fixes.

* fix coreWpf csproj file after rebase

Co-authored-by: Sylvester Knudsen <[email protected]>

* Wire modifications unit tests revised (DynamoDS#11899)

* Wire modifications (#23)

* Got hidden wire implementation working with View->ConnectorDisplay

* Watch node behaviour modified.

* Added image resources. Corrected hover/unhover of watch icon based on whether data passing through meets a requirement of 5 or more items.

* WirePin: Model, ViewModel, View. Placeable/removable via ContextMenus.

* Modified 'RunSharedParams' functionality to work properly.

* Basic implementation of pins. Multi-control point bezier implemented. Need to implement a segmented version between pairs of pins.

* Added WirePinViewModel discard functionality: DiscardAllWirePins()

* Expected behaviour when deleting nodes (pins delete). Provision for opaque/halftone pins/watch icon depending on wire visibility.

* Redrawing Watch (hover) icon at the midpoint when there are pins on the wire.

* This fixes the 'WatchHoverIcon' when there are pins/ when they are removed. Previously when removing pins the icon was drawn in the wrong place.

* Cleanup of unused code.

* Clearup + pin highlighting behaviour.

* Serialization/Deserialization of pins achieved.

* 'Wire' to 'Connector' rename throughout for more consistency with the existing codebase.

* Fixed unwanted duplicate pin placement (the one at the origin).

* Discarded unused methods. Fixed pin multi-selection functionality.

* Fixes to hidden wire display when pin selected.

* Preview behaviour of wires fixed when a pin is selected (similar to that of nodes). RaisePropertyChanged(nameof(Property)) throughout ConnectorViewModel.

* Basic implementation of 'Autolayout' which includes ConnectorPins.

* Delete AssemblySharedInfo.

* Remove unnecessary files/ file changes.

* Delete unnecessary change.

* Removed unnecessary files/file changes.

* Delete unneeded change.

* Revert "Delete unneeded change."

This reverts commit 090fb18.

* Revert "Merge branch 'Wire-Modifications' of https://github.com/M-JULIANI/Dynamo into Wire-Modifications"

This reverts commit 23dc696, reversing
changes made to 06378f0.

* Reverted unneeded changes.

* Reverting unneeded changes.

* Removing unneeded changes.

* Removing unneeded changes.

* Unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Removed unneeded changes.

* Various PR fixes.

* Reverted Resharper renaming of various comments.

* PR fixes.

* PR fixes.

* ConnectorPin visibility fixed (follows Connector visibility).

* Fixed PR issues.

* Ironed out edge condition- AutoLayout _seems_ to work without any errors thrown at the moment.

* PR Cleanup and Autolayout edge case fixes.

* Ensures ConnectorPins cannot be copied and pasted (like notes & nodes) but rather have to be placed deliberately.

* Functionality added to preserve pins when 'WatchIcon' is clicked and Watch Node is placed. Previously they were discarded.

* Cleanup.

* Added correct ConnectorPin icons for 'selected' and 'hidden' visibility. Got Undo/Redo functionality working partially.

* Got 'undo' working for when a connector is pinned.

* Undo/redo functionality between OOTB nodes and between custom nodes.

* Cleanup.

* Cleanup

* Cleanup.

* Cleanup.

* Cleanup.

* Cleanup.

* Fixes.

* Fixes.

* Fixes.

* Fixes.

* Small fixes.

* Removed unused argument.

* Fixes.

* Small PR fixes.

* PR fix.

* Small fixes to ensure toggle between pline/bezier connectors and correct pin visibility.

* fix breaks

* Update RecordedTests.cs

* PR fixes.

* Connector anchor behaviour implemented.

* Added wire hover behaviour (grey outline). Updated 'default' icon behaviour (onhover).

* Updates to jive with unit tests.

* Bug fix related to pin removal/ watch node placement.

* Fixes. Updated pin position/ transform in xaml to achieve correct alignment with GraphLayout routines.

* Undo/redo bug fixed.

* PR comment fixes.

* PR comments fixed.

* PR fixes.

* PR fixes.

* PR fixes.

* Unit tests re-added.

* Unit tests updated.

Co-authored-by: Sylvester Knudsen <[email protected]>

* Update DynamoColorsAndBrushes.xaml, which was accidentally tampered with. (DynamoDS#11928)

We accidentally deleted some key lines of code having to do with the styling of nodes.

* Node visual refresh updates (DynamoDS#11933)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Removes reference to WindowsBase in DynamoCore and flags many properties in the InfoBubbleViewModel as obsolete.

* Node visual refresh updates (DynamoDS#11941)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Node informational states (#4) (DynamoDS#11910)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: aparajit-pratap <[email protected]>

* Wire Behaviour UI fixes (DynamoDS#11946)

* Update DynamoColorsAndBrushes.xaml, which was accidentally tampered with.

We accidentally deleted some key lines of code having to do with the styling of nodes.

* PR fixes. Button rectangular border removed, hover state for polyline connectors disabled, instantiation location of pins fixed.

- Button rectangular border removed.
- Hover state for polyline connectors disabled.
- Instantiation location of pins fixed.
- Connector tooltip behaviour to match that of temporary hover icons.

* PR fix.

* This makes more sense as a static member than a const.

* PR fixes.

* PR fixes.

* PR fixes.

* Update UIDispatcher usage (DynamoDS#11951)

* Fix the build by adding back missing code (DynamoDS#11952)

* Fix two regressions (DynamoDS#11953)

* Wire Behaviour UI fixes (DynamoDS#11954)

* Wire UI Fixes

 1. Made wire tooltip highest ZIndex.
 2. Made first line of tooltip bold, the rest is regular
 3. Added a clickable item under View-> Connectors to turn tooltip on/off.

* Added comments.

* Update CommandLineTests.cs (DynamoDS#11955)

* Graph Layout regression test fixed. (DynamoDS#11956)

* Update ConnectorAnchorView.xaml (DynamoDS#11969)

* Remove Extra Files (DynamoDS#11970)

* Node visual refresh updates (DynamoDS#11973)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Node visual refresh updates (DynamoDS#11977)

* Adjustments made to node height, code block syntax colouring, output port arrows.

* Updates UI

* Responds to latest feedback from Autodesk

Changes path-based icons to PNGs.
Updates Code Block syntax highlighting colors and font to monospace.
Adds some extra new strings into Resources.
Fixes bug where unnamed port that shows output port chevron control could lead to the user being presented with a double-chevron port.
DynamoTextBox now has a minimum width set.
Slight adjustment to the sizes of various node parts.
All node icons should now load successfully.

* Code block minor pixel edits

Ensuring all code block elements align as they need to.
Tested with 200 outputs.

* Minor UI fixes

* Removing redundant code

* Updates some failing tests.

Switches .Cast<MenuItem> to .OfType<MenuItem> in many instances.

* Removes node informational states icons - these appear in another branch

* Responds to PR comments

* Fixes many failing regression tests. Adjusts Artifakt font location.

* Update Defect_MAGN_904.xml

* Update PortViewModel.cs

* Resets command interval in 2 recorded tests.

* Same again

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Fixes bugs and makes requested adjustments

Connected Break Connection / Hide Wires to Commands.
Added a tick for Context Menu items like 'Hidden' / 'Frozen'
Fixed Integer / Number slider visual input bug
Fixed Node Context Menu double separator bug
Fixed ToolTip spacing
Fixed Node Preview / Hidden eye icon not showing up bug
Adjusted Connector colour when selected to be same blue as node selection border.
Adjusted port names color to be same as node header
Adjusted Port default value marker to be same blue as port is connected border color
Adjusted node default icon to new icon from Jingyi
Fixed Code block 'Enter code here' vertical alignment
Adjusted AvalonEdit line numbers to fade them out a bit more

* Reponse to comments

* Updates

* Minor graphical updates

* Updates in response to feedback

Adds new resource strings.
Adds a ToolTip for the node context menu.
Makes node context menu visible for all nodes.
Fixes error bubble Z Index issue.
Adds chevron to error bubble design.
Unsubscribes from NodeMessages.CollectionChanged on InfoBubbleViewModel's Dispose method.

* Group improvements to the graph view (DynamoDS#11912)

* initial commit

* wip

* clean up

* remove leftovers

* UndoRedo behaviour + grouped groups cut out + general fixes

* update images

* fix CopyPaste + few minor bugs

* minor clean ups

* Group improvements unit tests (#29)

* WIP

* view model tests

* initial commit

* wip

* clean up

* remove leftovers

* UndoRedo behaviour + grouped groups cut out + general fixes

* update images

* fix CopyPaste + few minor bugs

* minor clean ups

* Update SerializationTests.cs

* Update SerializationTests.cs

* comment updates

* comment updates

* fix GetOutputPorts errors

* fix serialization

* Update WorkspaceModel.cs

* remove grid style (not needed anymore)

* Remove BelongsToGroup property from ModelBase

* Update AnnotationViewModel.cs

* fix setting the graph to have unsaved changes on graph open

* disable drag and drop on collapsed groups

* fix spelling mistake

* Node informational states (DynamoDS#11983)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

* Fixes UI bug

* Switched out vector-based info/warning/error icons for .png equivalents.

* Removes reference to WindowsBase in DynamoCore and flags many properties in the InfoBubbleViewModel as obsolete.

* Updates

* Minor graphical updates

* Updates in response to feedback

Adds new resource strings.
Adds a ToolTip for the node context menu.
Makes node context menu visible for all nodes.
Fixes error bubble Z Index issue.
Adds chevron to error bubble design.
Unsubscribes from NodeMessages.CollectionChanged on InfoBubbleViewModel's Dispose method.

Co-authored-by: aparajit-pratap <[email protected]>

* Updates - removing MenuItem collection.

* Code Cleanup (DynamoDS#11984)

* Code Cleanup

* Call Dispose() on ConnectorAnchorViewModel

* Node redesign timeouts (DynamoDS#11986)

* Code Cleanup

* Call Dispose() on ConnectorAnchorViewModel

* unsub collection change

* formatting
fix broken path to pin icon

* revert schema change

* revert schema change in serialization as well

* actually dispose annotationviewmodels

Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: michael kirschner <[email protected]>

* Minor graphical update to alert undismissal menu.

* Tidy up

* Update InfoBubbleView.xaml.cs

* Connector View Model Dispose (DynamoDS#11991)

* ConnectorViewModel dispose

* More Dispose spots

* Fixes Bugs

Updates InfoBubbleViewModel ZIndex property to the desired behaviour (dynamically linked to node ZIndex + 1).
Removes the de/serialization of Dismissed Alerts for now.

* Node informational states (#4) (DynamoDS#11910)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* Updates UI

* WIP changes

* ViewModel logic working as per mockup

* Node redesign (#3)

* Updates node styling

* Updates UI

Adds Artifakt font, changes colors, port/header height config, code block editor colours.

* Update UI

* Updates UI

* Updates UI

* Updates UI

* Ports visual states are working.

* Revert "Ports visual states are working."

* Revert "Revert "Ports visual states are working.""

This reverts commit 3557726.

* Updates UI

* Updates ContextMenu style

* Updates UI

* Updates UI

* Updates ComboBox and Output Ports style for Code Blocks

* Loads icon to node header

* Updates UI

* Updates UI

* Updates UI

* Bug fixes and responding to comments

* DYN-3875: Restore LocalPackages property in PreferencesViewModel (DynamoDS#11881)

* restore property in PreferencesViewModel

* add regression test for installedpackagesview

* fix test

* remove setting datacontext for installed packages view control as it is inherited

* undo unnecessary changes

* more cleanup

* Updates UI

* fix node autocomplete crash (DynamoDS#11887)

* Minor UI changes to Autodesk feedback

* Temporarily disabled dismissed alerts features

* Minor UI fix to the nodes' GlyphStackPanel

Co-authored-by: aparajit-pratap <[email protected]>

* Updates

* Updates node informational states

* Minor fixes

* Removed INodeInformationalState interface, no longer needed.

* Restored previously-removed commands in InfoBubbleCommand.cs

* Typo fix and restoring old NodeInfoBubbleViewModel methods to original state.

* Added comments, minor (old) API restoration work

* Renaming, refactoring and added 2 tests.

* Removed new constructor for OutputMessage.

Class is no longer being used for Informational States.

* Minor fixes.

Removed outdated and unused collection on NodeModel.
Changed command name to be less confusing.

* Update

* Responds to comments

* Removed unneeded references

* Reponse to comments

* Removed 'else' from method body

* two more

Co-authored-by: aparajit-pratap <[email protected]>

Co-authored-by: aparajit-pratap <[email protected]>

* Fixed duplicate code

* Remakes latest updates

* Fixes merge mess

* Removes unnecessary references

* Lazy loading of ErrorBubbles

* Removes redundant code

* Restores warning un-dismissed capability in node context menu.

* Adds comments

* Update InfoBubbleTests.cs

* Fixes NoteViewTests

* Update WorkspaceView.xaml.cs

Co-authored-by: aparajit-pratap <[email protected]>
Co-authored-by: Roberto T <[email protected]>
Co-authored-by: Michael Kirschner <[email protected]>
Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: reddyashish <[email protected]>
Co-authored-by: Ashish Aggarwal <[email protected]>
Co-authored-by: Jorgen Dahl <[email protected]>
Co-authored-by: Martin Stacey <[email protected]>
Co-authored-by: pinzart90 <[email protected]>
Co-authored-by: pinzart <[email protected]>
Co-authored-by: Sol Amour <[email protected]>
Co-authored-by: Aaron (Qilong) <[email protected]>
Co-authored-by: Marco Juliani <[email protected]>
Co-authored-by: Sylvester Knudsen <[email protected]>
Co-authored-by: michael kirschner <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants