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

DocumentationBrowserViewExtension Upgrade + Insert #13414

Merged

Conversation

dnenov
Copy link
Collaborator

@dnenov dnenov commented Oct 20, 2022

Purpose

This PR covers the work done in two directions:

  • DocumentationBrowserViewExtension Upgrade
  • Insert Functionality (new File Menu Item)

DocumentationBrowserViewExtension

  • Update the UI to modernize and align with the current design language of Dynamo
  • New functionality - interactive image panel with zoom in, zoom out and pan function
  • New functionality - insert dynamo example graph associated with node help information
  • New functionality - Warning notification message displays in the Documentation Browser UI

general usage_part 1
general usage_part 2
general usage_part 3

Insert

  • New File Menu Item - Dynamo now allows users to insert .dyn or .dyf (to confirm) in the current workspace environment.

insert

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.
  • This PR modifies some build requirements and the readme is updated

Release Notes

(FILL ME IN) Brief description of the fix / enhancement. Mandatory section

Reviewers

@reddyashish

FYIs

@Amoursol

- updated the MarkdownStyling.html containing the css for styling the browser
- first updates to the NodeDocumentationHtmlGenerator to test the styling
- adopting the components of the new UI design
- location of markdown part of the document moved to the Node Information sections (first expander)
- work on the table containing Inputs and Outputs
- css style changes
- dpi script change to allow for 100% width
- restyling of inputs and outputs table done
- slight changes to the left/right margin of the body
- added the initial Image navigation implementation in javascript
- KNOWN ISSUES - HTML Sanitize will remove 'position: absolute/relative' from CSS code. Current workaround is very patchy and a better solution needs to be found
- button restyling WIP
- zoom-in/zoom-out recenters image (WIP)
- now reads the layoutspec.json by using the ILayoutSpecSource interface
- added a Func to ILayoutSpec to allow for the layoutspec.json to be retrieved after all extensions are loaded
- zooming in/out of image in browser javascript implementation
- styling WIP
- whitelisted CSS position property in Md2HtmlSanitizer
- added icons to image navigation buttons
- added an eventhandler to button click handling Insert function
- WIP Insert file from path
- the full workflow now inserts a graph with all the relevant Annotations
- the functionality was added in the DynamoModel class
- now tries to find the corresponding Dynamo graph from the MarkDown location (fallback_docks folder)
…BrowserViewExtension

- added a command to help 'dissolve' nested group into their parent group
- improved the logic when inserting links into file using the DocumentationBrowserViewExtension
- progression work on 'Insert' function
- will only allow for .dyn files to be inserted in HomeWorkspaceModel
- will only prompt for .dyf files to be inserted in CustomNodeWorkspaceModel
- the *.* option will still allow you to potentially mix-and-match, needs testing
- when inserting no longer prompts the user to save the current progress
- added notifications when flipping RunType to Manual before insertion
- small fix for the location of notes outside group in DocumentaionBrowser routine
- added a test for the new Insert function
@reddyashish reddyashish marked this pull request as ready for review October 25, 2022 20:34
- aligning the style of the image control buttons to the existing workspace visual controls in Dynamo
- changes to existing tooltips regarding RunSettings dropdown
- new ? info tooltip added to Preferences panel inline with Default Run Settings
- now raises a toast notification when failing to insert a graph due to nodes already existing in the workspace
@reddyashish
Copy link
Contributor

@dnenov Looks like there is one test that is failing: CheckThatEmbeddedHtmlContentDoesNotSanitize.

- added properties used in MarkdownStyling.html
- removed unnecessary 'include' statements for the DocumentationBrowser project
- cleaned up unused code
Copy link
Contributor

@reddyashish reddyashish left a comment

Choose a reason for hiding this comment

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

Thanks @dnenov. Looks good with some comments.

- API break - introduced a separate overload to fix the potential issue
- used localized resource instead of hard-coded value
@reddyashish
Copy link
Contributor

- fixed expected result for CanCreateNodeDocumenationHtmlFromNodeAnnotationEventArgsWithPackageNodeWithAddtionalDocumentation
@reddyashish
Copy link
Contributor

@reddyashish reddyashish merged commit ef6b0c1 into DynamoDS:master Nov 1, 2022
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.

2 participants