microsoft / microsoft/automatic-graph-layout
How to "sync" two GraphViewers
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 1.5k
- Forks
- 319
- Avg merge
- 38m
- Merged PRs (30d)
- 1
Description
Hi!
I have project, with two DockPanels on top of each others (and I have bound GraphViewers to both of them), on the same window, and I have two separate GraphViewers, one in each of them (and I have bound GraphViewers to both of DockPanels them). I'm currently drawing stuff on both of them, one is for "background" nodes and one is for "foreground" stuff. This is because I want to draw nodes in specific places, but let the routing algorithm do it's thing without these extra nodes causing troubles. In other words, I have made an annotation nodes by using another GraphViewer underneath the first GraphViewer (by setting the background to transparent).
My question is: is there a way to "sync" these two layers? I mean, I need them to be the same size and exactly the same position all the time. Right now, if I put stuff to (0,0) coordinates in both GraphViewers, nodes seem to be slightly offset in the output.
Also, is there a way to "mirror" mouse movements to the other GraphViewer? So when I drag and zoom the first layer, the layer below acts accordingly?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names two GraphViewers and DockPanels as the relevant entry points. Start by checking how each viewer handles size, position, dragging, and zooming; done means both layers remain aligned and the lower layer mirrors interactions with the first.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- desktop, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100