/** * Can be called by {@link DockStation#aside(AsideRequest)} if <code>request</code> contains a * location that points toward <code>item</code>. The method first tries to call * {@link DockStation#aside(AsideRequest)} of the {@link Dockable} represented by * <code>item</code>, and if that fails it tries to call {@link Combiner#aside(AsideRequest)}. * @param item the item which should contain the new location * @param combiner the {@link Combiner} to ask if there is no {@link DockStation} to ask, not <code>null</code> * @param request information about the location to create */ public <T extends PlaceholderListItem<Dockable>> void combine( DockablePlaceholderList<T>.Item item, Combiner combiner, AsideRequest request ){ PlaceholderListItem<Dockable> handle = item.getDockable(); Path placeholder = request.getPlaceholder(); if( placeholder != null ){ item.add( placeholder ); } if( handle != null ){ DockStation station = handle.asDockable().asDockStation(); if( station != null ){ request.forward( station ); return; } } PlaceholderMap childLayout = item.getPlaceholderMap(); AsideAnswer answer = request.forward( combiner, childLayout ); if( !answer.isCanceled() ){ item.setPlaceholderMap( answer.getLayout() ); } } }
/** * Can be called by {@link DockStation#aside(AsideRequest)} if <code>request</code> contains a * location that points toward <code>item</code>. The method first tries to call * {@link DockStation#aside(AsideRequest)} of the {@link Dockable} represented by * <code>item</code>, and if that fails it tries to call {@link Combiner#aside(AsideRequest)}. * @param item the item which should contain the new location * @param combainer the {@link Combiner} to ask if there is no {@link DockStation} to ask, not <code>null</code> * @param request information about the location to create */ public <T extends PlaceholderListItem<Dockable>> void combine( DockablePlaceholderList<T>.Item item, Combiner combiner, AsideRequest request ){ PlaceholderListItem<Dockable> handle = item.getDockable(); Path placeholder = request.getPlaceholder(); if( placeholder != null ){ item.add( placeholder ); } if( handle != null ){ DockStation station = handle.asDockable().asDockStation(); if( station != null ){ request.forward( station ); return; } } PlaceholderMap childLayout = item.getPlaceholderMap(); AsideAnswer answer = request.forward( combiner, childLayout ); if( !answer.isCanceled() ){ item.setPlaceholderMap( answer.getLayout() ); } } }
@Override public boolean aside( AsideRequest request ){ if( request.getPlaceholder() != null ){ addPlaceholder( request.getPlaceholder() ); DockStation station = getDockable().asDockStation(); if( station == null ){ AsideAnswer answer = request.forward( getStation().getCombiner(), getPlaceholderMap() ); if( answer.isCanceled() ){ return false; } setPlaceholderMap( answer.getLayout() ); } else{ AsideAnswer answer = request.forward( station ); if( answer.isCanceled() ){ return false; } } } return true; }
@Override public boolean aside( AsideRequest request ){ if( request.getPlaceholder() != null ){ addPlaceholder( request.getPlaceholder() ); AsideAnswer answer = request.forward( getStation().getCombiner(), getPlaceholderMap() ); if( answer.isCanceled() ){ return false; } setPlaceholderMap( answer.getLayout() ); } return true; }
AsideAnswer answer; if( station != null ){ answer = request.forward( station ); answer = request.forward( getCombiner(), layout ); if( !answer.isCanceled() ){ info.bestLeaf.setPlaceholderMap( answer.getLayout() ); AsideAnswer answer = request.forward( getCombiner(), placeholder.getPlaceholderMap() ); if( !answer.isCanceled() ){ info.bestLeaf.setPlaceholderMap( answer.getLayout() );
AsideAnswer answer; if( station != null ){ answer = request.forward( station ); answer = request.forward( getCombiner(), layout ); if( !answer.isCanceled() ){ info.bestLeaf.setPlaceholderMap( answer.getLayout() ); AsideAnswer answer = request.forward( getCombiner(), placeholder.getPlaceholderMap() ); if( !answer.isCanceled() ){ info.bestLeaf.setPlaceholderMap( answer.getLayout() );
Dockable existing = dockables.getModel().getColumn( column ).getDockable( line ); if( existing.asDockStation() != null ){ AsideAnswer answer = request.forward( existing.asDockStation() ); if( answer.isCanceled() ){ return;
AsideAnswer answer = request.forward( stack ); if( answer.isCanceled() ){ return;
DockStation station = handle.asDockable().asDockStation(); if( station != null ){ AsideAnswer answer = request.forward( station ); if( answer.isCanceled() ){ return;