Quintiq file version 2.0
|
#parent: #root
|
Method MoveAfter (LibOpt_UIGraphNode node, LibOpt_UIGraphNode after, Boolean reposition_children)
|
{
|
TextBody:
|
[*
|
if( after <> node
|
and ( isnull( after ) or after <> node.Previous() )
|
and ( not isnull( after ) or not isnull( node.Previous() ) ) )
|
{
|
if( isnull( node ) )
|
{
|
node.UIGraphRow().MoveFirst( node );
|
}
|
else
|
{
|
node.UIGraphRow().MoveAfter( node, after );
|
}
|
|
// Set column
|
traverse( node, UIGraphRow.UIGraphNode, n )
|
{
|
n.Column( guard( n.Previous().Column() + 1, 0 ) );
|
}
|
|
// Reset arcs
|
traverse( this, UIGraphNode.Incoming.UIGraphArcPoint, p )
|
{
|
p.X( 0 );
|
p.Y( 0 );
|
if( not isnull( p.Next() ) and not isnull( p.Previous() ) )
|
{
|
p.Delete();
|
}
|
}
|
|
traverse( this, UIGraphNode, n )
|
{
|
n.RelativelyPositionOutgoingArcs();
|
}
|
|
if( reposition_children )
|
{
|
rows := selectsortedset( this, UIGraphRow, row, row.RowNr() > node.UIGraphRow().RowNr(), row.RowNr() );
|
traverse( rows, Elements, row )
|
{
|
row.SortTopDown();
|
}
|
}
|
|
this.DrawAfterSequence();
|
}
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|