dash-cytoscape icon indicating copy to clipboard operation
dash-cytoscape copied to clipboard

Feature: Leaflet mapping and context menu

Open mtwichan opened this issue 3 years ago • 1 comments

About

This is a new feature for Dash-cytoscape which includes integration with Leaflet.js and a context menu feature.

Description of changes

Users can render their cytoscape graphs on Leaflet map using any tile server supported by Leaflet. This, also allows users to graph Cytoscape nodes using latitude and longitude coordinates. Additionally, they can create context menus that appear on right-click, with or without the Leaflet map.

The context menu is fully customizable. Developers have full control of what options are shown in the context menu and the business logic associated with clicking on that context menu selection.

cytoscape-leaflet-dash

Pre-Merge checklist

  • [x] The project was correctly built with npm run build:all.
  • [ ] If there was any conflict, it was solved correctly.
  • [ ] All changes were documented in CHANGELOG.md.
  • [ ] All tests on CircleCI have passed.
  • [ ] All Percy visual changes have been approved.
  • [ ] Two people have :dancer:'d the pull request. You can be one of these people if you are a Dash Cytoscape core contributor.

Reference Issues

Leaflet feature: https://github.com/zyphr-solutions/dash-cytoscape/pull/2 Context menu feature: https://github.com/zyphr-solutions/dash-cytoscape/pull/1

Other comments

This feature was created in collaboration with @plotly and reviewed by @alexcjohnson

mtwichan avatar Oct 03 '21 23:10 mtwichan

Waiting on @kinimesi to complete the following before we can merge the PR:

The order of execution of tasks should be the following:

  1. Solve: https://github.com/plotly/dash-cytoscape/issues/159
  2. Test new Dash Cytoscape features and write tests for the features
  3. Add any new features and bug fixes to Dash Cytoscape CHANGELOG and any other relevant Dash Cytoscape release/versioning files. The new version will be 0.4.0
  4. Merge :tada:
  5. Write documentation for new Dash Cytoscape features (contextMenu & leaflet)
  6. Ping when finished so I can write a release statement for the Plotly forums and newsletter, and so that Plotly can push to PyPi

CC: @alexcjohnson @kully @jackparmer

mtwichan avatar Dec 08 '21 18:12 mtwichan

Closing this PR in favour of #200 and #196

Farkites avatar Jan 23 '24 10:01 Farkites