Giter Site home page Giter Site logo

UI - pan/zoom enhancements about rover HOT 6 OPEN

vgheo avatar vgheo commented on May 29, 2024
UI - pan/zoom enhancements

from rover.

Comments (6)

vgheo avatar vgheo commented on May 29, 2024

Currently there already is "Save Graph" button on top-left.
I see two options to add new buttons ( ie "Reset View", maybe others... )

A/ add buttons in row with "Save Graph"
B/ move them as buttons in a "toolbox"

  • icons+tooltips
  • top-right, vertical placement / other?

from rover.

vgheo avatar vgheo commented on May 29, 2024

Actually - having the "show relations" mode active by default and on mouse over is pretty annoying.
User intent should be to select a resource so that they see details, but currently the UI hides most of the diagram if i move the pointer - so i must refrain from moving.

Could we change to

  • by default - panning mode
  • "show relations" - activated by keypress (eg )
    • OR - on click ? (but that currently also doing "show in details box")

from rover.

im2nguyen avatar im2nguyen commented on May 29, 2024

Hey @vgheo, your proposals seems good! I think having different modes (panning, selecting, zooming) as well as reseting the view will improve the usability.

I currently don't have the bandwidth to implement this right now, but if you open up a PR with this implementation, I'll be more than happy to review and merge it 😄

from rover.

vgheo avatar vgheo commented on May 29, 2024

@im2nguyen - I want to contribute this change - just want to make sure that you agree with the functionality

from rover.

vgheo avatar vgheo commented on May 29, 2024

PROPOSAL - v2

Panning mode

Mouse drag (with no key pressed) - panning

Highlight and select mode

( Currently this mode is active by default)

Hold Ctrl

  • on mouse over - highlight relations
  • on click - select element

Zoom by selection

  • Ctrl+drag - define rectangle
  • zoom to that rectangle on mouse-up

Reset view

Button: "Reset view"

  • resets view to initial state - all fits

NOTE: New buttons - added in line with existing "Save Graph"

from rover.

vgheo avatar vgheo commented on May 29, 2024

rover is using vue-cytoscape integration for the graph rendering

Components API | vue-cytoscape

pan/zoom logic is likely to be configured on the component

https://github.com/im2nguyen/rover/blob/main/ui/src/components/Graph/Graph.vue#L399

from rover.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.