@Override public void actionsRemoved( DockActionSource source, int firstIndex, int lastIndex ){ if( source.getDockActionCount() == 0 ){ fireRemoved( 0, lastIndex+1 ); } else{ fireRemoved( firstIndex+1, lastIndex+1 ); } }
@Override public boolean hasNext(){ if( separatorSent ){ return inner.hasNext(); } else{ return getDockActionCount() > 0; } }
@Override public void addDockActionSourceListener( DockActionSourceListener listener ){ if( !hasListeners() ){ source.addDockActionSourceListener( this.listener ); } super.addDockActionSourceListener( listener ); }
/** * Gets the {@link DockActionSource} which should be used for <code>dockable</code>. * @param dockable the element whose actions are shown * @return all the actions */ protected DockActionSource getActionSourceFor( Dockable dockable ){ return new LineDockActionSource( dockable.getGlobalActionOffers() ); }
@Override public void removeDockActionSourceListener( DockActionSourceListener listener ){ super.removeDockActionSourceListener( listener ); if( !hasListeners() ){ source.removeDockActionSourceListener( this.listener ); } }