@Override public void evolve( SplitDockTree<Dockable>.Key key, boolean checkValidity, Map<Leaf, Dockable> linksToSet ){ SplitDockTree<Dockable> tree = key.getTree(); setPlaceholders( tree.getPlaceholders( key ) ); setPlaceholderMap( tree.getPlaceholderMap( key ) ); if( tree.isHorizontal( key )){ orientation = SplitDockStation.Orientation.HORIZONTAL; setLeft( create( tree.getLeft( key ), checkValidity, linksToSet )); setRight( create( tree.getRight( key ), checkValidity, linksToSet )); setDivider( tree.getDivider( key )); } else{ orientation = SplitDockStation.Orientation.VERTICAL; setLeft( create( tree.getTop( key ), checkValidity, linksToSet )); setRight( create( tree.getBottom( key ), checkValidity, linksToSet )); setDivider( tree.getDivider( key )); } }
((Node)node).setDivider( (left + gap/2) / (double)(left + right + gap)); return left + gap + right;
split.setLeft( this ); split.setRight( newChild ); split.setDivider( 1 - node.getSize() ); split.setRight( this ); split.setOrientation( orientation ); split.setDivider( node.getSize() );
int gap = gap( (Node)node, map ); ((Node)node).setDivider( (left + gap/2) / (double)(left + right + gap)); return left + gap + right;
node.setDivider(divider); parent.setChild(node, location);
node.setDivider(divider); parent.setChild(node, location);
leaf.setPlaceholders( getPlaceholders() ); Node node = createNode( -1 ); node.setDivider( 0.5 ); if( width > height ){ node.setOrientation( Orientation.HORIZONTAL );
divider = Math.min( 1.0, Math.max( 0.0, divider ) ); node.setDivider( divider ); divider = Math.min( 1.0, Math.max( 0.0, divider ) ); node.setDivider( divider );
divider = Math.min( 1.0, Math.max( 0.0, divider ) ); node.setDivider( divider ); divider = Math.min( 1.0, Math.max( 0.0, divider ) ); node.setDivider( divider );
node.setDivider( divider );