Page Index Toggle Pages: 1 [2]  Send TopicPrint
Hot Topic (More than 10 Replies) Several questions about routing (Read 12723 times)
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several questions about routing
Reply #15 - Sep 22nd, 2010 at 10:14am
Print Post  
The DiagramLink class has AllowMoveStart and AllowMoveEnd properties in our controls for other platforms, I suppose we can port them to Silverlight for the 1.8 release.
  
Back to top
 
IP Logged
 
Necroman
YaBB Newbies
*
Offline


I love YaBB 1G - SP1!

Posts: 49
Joined: Jul 27th, 2009
Re: Several questions about routing
Reply #16 - Sep 22nd, 2010 at 1:26pm
Print Post  
Link to the mentioned LayeredLayout bug with simple reproduction code:
http://mindfusion.eu/Forum/YaBB.pl?board=fcnet_brep;action=display;num=128516190...
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several questions about routing
Reply #17 - Sep 22nd, 2010 at 5:56pm
Print Post  
This should fix the table double-loop problem and adds AllowMoveStart and AllowMoveEnd properties to DiagramLink:
https://mindfusion.eu/_beta/diaglite18_tblloops.zip

I hope that helps,
Stoyan
  
Back to top
 
IP Logged
 
Necroman
YaBB Newbies
*
Offline


I love YaBB 1G - SP1!

Posts: 49
Joined: Jul 27th, 2009
Re: Several questions about routing
Reply #18 - Sep 23rd, 2010 at 6:08pm
Print Post  
It works, thanks!
Another related question - is there a way to set minimal distance between nodes in subgraphs aftrer using layeredLayout MultipleGraphsPlacement = MultipleGraphsPlacement.Vertical, even thought layer and node distance is set to 30, the distances between nodes from different groups are about 5 px somewhere...

Also maybe a bug - adding new link into diagram does not work as expected (sometimes?) The node.outgoinglinks an incoming links does not contain all links related to the node. I created simple method which is called after all link creation and it fixes almost all problems Smiley
Code
Select All
     public static void FixLink(DiagramLink link)
        {
            if (!link.Origin.OutgoingLinks.Contains(link)) link.Origin.OutgoingLinks.Add(link);
            if (!link.Destination.IncomingLinks.Contains(link)) link.Destination.IncomingLinks.Add(link);
        } 


I guess adding link to these collection should be automatic feature of the diagram... well, it is not.

And another small problem - when using LinearGradientBrush for table node caption background, its positioned for the whole node, not just for the caption - if the node is long. the gradient is almost invisible. If there are no cells, the gradient is perfect.
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several questions about routing
Reply #19 - Sep 24th, 2010 at 7:59am
Print Post  
Hi,

You should set the Margins property to specify the distance between subgraphs.

For TableNodes and TreeViewNodes the links are added to the link collections of the respective row or tree item, when their target is that row or item. The link's target could be also the whole node, without associating it with a specific row, and then it should appear in the node's collections. You could use the GetAllLinks method to find all links related to a table, even if their target is a child row.

I hope that helps,
Stoyan
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Several questions about routing
Reply #20 - Sep 25th, 2010 at 12:53pm
Print Post  
This version fills only the caption bar with CaptionBackBrush:
https://mindfusion.eu/_beta/diaglite_captionback.zip

Now you might also need to set the table's Brush, it is semi-transparent by default.

I hope that helps,
Stoyan
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1 [2] 
Send TopicPrint