public void setLayout( ScreenDockStation station, ScreenDockStationLayout layout, Map<Integer, Dockable> children, PlaceholderStrategy placeholders ) { for( int i = station.getDockableCount()-1; i >= 0; i-- ) station.removeDockable( i ); if( layout instanceof RetroScreenDockStationLayout ){ RetroScreenDockStationLayout retro = (RetroScreenDockStationLayout) layout; for( int i = 0, n = retro.size(); i<n; i++ ){ Dockable dockable = children.get( retro.id( i ) ); if( dockable != null ){ Rectangle location = new Rectangle( retro.x( i ), retro.y( i ), retro.width( i ), retro.height( i )); station.addDockable( dockable, location, true ); } } } else{ station.setPlaceholders( layout.getPlaceholders().filter( placeholders ), children ); } }