Resizable Swim Lanes at Fixed Positions

I need to create a view with three swimlanes (Left, Middle, Right) such that Left and Right occupy a fixed width that is proportional to the width of the view and Middle occupies all of the remaining width. The Left and Right swimlanes layout their child objects vertically (with vertical scroll bars appearing if needed) and the Middle swimlane uses a custom force layout (with horizontal and vertical scroll bars appearing if needed).

I'm using swimlanes because the user can link objects from Left to Middle or from Middle to Right. However, the behavior of this layout is more like 3 panels or views, essentially docking the Left and Right panels to their respective view edges.
I'm having trouble approaching this, because it's not clear when to position the swimlanes, and then how to configure them. I've created a custom SwimLane class patterned after the NodeLinkDemo4 sample, and I've created three instances and attached them to my derived GoDocument class. But it's unclear where to go from here.
Any help/direction would be greatly appreciated.

First question: win or web?

Windows. We also plan to implement a SilverLight version.

If you’re planning a Silverlight version, it’s probably easier to do the Windows version with GoXam / WPF.



Or even Silverlight Out of Browser, and just do it once.



But… with the Swimlanes class in NodeLinkDemo… You can set the Lanes.Orientation to Horizontal to get lanes across instead of up and down. You can set the sizes of the Background of each SwimLane to change the sizes.



There isn’t a way (that we have a sample of) to do scrolling of individual lanes within the pool. That’s probably easier under GoXam.

The problem isn’t really sizing the swimlanes - it seems incorrect to treat an object that is part of the document as though it were a view. The problem would seem to get worse as the user scrolls around in the document, etc.

Since views can contain their own objects, I'm wondering if it might be better to create a view with a single pane in the middle containing the document (with wide margins on either side), and then attach some of the objects to the view itself and the rest to the document. Would it then be possible to draw links from the objects in the view to the objects in the document? Do you have an example of such an approach?
Alternatively, I saw in one of the other threads a suggestion to create swimlanes as a "Background object", but there was no additional information provided. Can you perhaps elaborate on that approach?

We don’t support scrolling of multiple panes (or lanes) within a view. We have a couple of scrolling node classes, but that’s at a different level.



If you want to connect links across panes, objects have to be a part of the same Document/View pair. (you couldn’t slap a separate GoView down on top of another one and connect things between them.)

ok… we talked about this a bit here. Here’s a scheme.



  1. using 3 separate Subgraphs (and you might use SwimLane)


  2. turn off GoView Scrollbars.


  3. put 2 scrollbars outside the GoView (one on each side) and connect the “Scrolling” action to moving the location of the associated SwimLane.