bibliothek.extension.gui.dock.theme.bubble
Class BubbleStackDockComponent

java.lang.Object
  extended by bibliothek.gui.dock.station.stack.tab.AbstractTabPane<T,M,I>
      extended by bibliothek.gui.dock.station.stack.CombinedStackDockComponent<BubbleTab,BubbleTabMenu,CombinedInfoComponent>
          extended by bibliothek.extension.gui.dock.theme.bubble.BubbleStackDockComponent
All Implemented Interfaces:
StackDockComponent, TabPane

public class BubbleStackDockComponent
extends CombinedStackDockComponent<BubbleTab,BubbleTabMenu,CombinedInfoComponent>

A StackDockComponent used by a BubbleTheme. This component can animate its tabs.

Author:
Benjamin Sigg

Nested Class Summary
 
Nested classes/interfaces inherited from class bibliothek.gui.dock.station.stack.CombinedStackDockComponent
CombinedStackDockComponent.Meta
 
Field Summary
 
Fields inherited from interface bibliothek.gui.dock.station.stack.tab.TabPane
LAYOUT_MANAGER
 
Constructor Summary
BubbleStackDockComponent(StackDockComponentParent parent)
          Creates a new component.
 
Method Summary
 DockStation getStation()
          Gets the station on which this component is used.
 boolean hasBorder()
          Whether this kind of component already has a border.
 boolean isSingleTabComponent()
          Tells whether this StackDockComponent should be shown even if the StackDockStation has only one child.
protected  void menuRemoved(BubbleTabMenu menu)
          Informs this pane that menu will never be used again and all resources associated with menu should be freed.
 BubbleTabMenu newMenu()
          Creates a new TabMenu that has this as parent.
protected  BubbleTab newTab(Dockable dockable)
          Creates a new Tab that has this as parent and represents dockable.
 void setController(DockController controller)
          Connects this pane with controller.
protected  void tabRemoved(BubbleTab tab)
          Informs this pane that tab will never be used again and all resources associated with tab should be freed.
 
Methods inherited from class bibliothek.gui.dock.station.stack.CombinedStackDockComponent
addChangeListener, addTab, addToMenu, createBackground, createContentBorderModifier, createContentPane, createDefaultRepresentation, createLayerAt, getAvailableArea, getBoundsAt, getComponent, getContentAt, getDockableAt, getInfoHandler, getLayerAt, getMenuHandler, getSelectedBounds, getSelectedIndex, getTabCount, getTabHandler, getZOrder, insertTab, moveTab, putOnTab, remove, removeAll, removeChangeListener, removeFromMenu, repaint, revalidate, setComponentAt, setIconAt, setSelectedBounds, setSelectedDockable, setSelectedIndex, setTitleAt, setTooltipAt, setZOrder
 
Methods inherited from class bibliothek.gui.dock.station.stack.tab.AbstractTabPane
addTabPaneListener, createMenu, destroyMenu, discardComponentsAndRebuild, doLayout, fireAdded, fireInfoComponentChanged, fireRemoved, fireSelectionChanged, getController, getDockable, getDockableCount, getDockables, getInfoComponent, getLayoutManager, getMenu, getMenuList, getMenus, getMinimumSize, getOnTab, getPreferredSize, getSelectedDockable, getTab, getTabPlacement, getTabs, getTabsList, getVisibleTab, getVisibleTabCount, indexOf, indexOfVisible, insert, listeners, move, putInMenu, removeTabPaneListener, setInfoComponent, setLayoutManager, setTabPlacement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface bibliothek.gui.dock.station.stack.StackDockComponent
setTabPlacement
 

Constructor Detail

BubbleStackDockComponent

public BubbleStackDockComponent(StackDockComponentParent parent)
Creates a new component.

Parameters:
parent - the station on which this component is used
Method Detail

getStation

public DockStation getStation()
Gets the station on which this component is used.

Returns:
the parent of this component

newTab

protected BubbleTab newTab(Dockable dockable)
Description copied from class: AbstractTabPane
Creates a new Tab that has this as parent and represents dockable. The new tab should not be stored in any collection.

Specified by:
newTab in class AbstractTabPane<BubbleTab,BubbleTabMenu,CombinedInfoComponent>
Parameters:
dockable - the element for which a new tab is required
Returns:
the new tab

tabRemoved

protected void tabRemoved(BubbleTab tab)
Description copied from class: AbstractTabPane
Informs this pane that tab will never be used again and all resources associated with tab should be freed. This method is only called if tab is invisible.

Specified by:
tabRemoved in class AbstractTabPane<BubbleTab,BubbleTabMenu,CombinedInfoComponent>
Parameters:
tab - the tab to destroy

newMenu

public BubbleTabMenu newMenu()
Description copied from class: AbstractTabPane
Creates a new TabMenu that has this as parent.

Specified by:
newMenu in class AbstractTabPane<BubbleTab,BubbleTabMenu,CombinedInfoComponent>
Returns:
the new menu

menuRemoved

protected void menuRemoved(BubbleTabMenu menu)
Description copied from class: AbstractTabPane
Informs this pane that menu will never be used again and all resources associated with menu should be freed. This method is only called if menu is invisible.

Specified by:
menuRemoved in class AbstractTabPane<BubbleTab,BubbleTabMenu,CombinedInfoComponent>
Parameters:
menu - the destroyed menu

setController

public void setController(DockController controller)
Description copied from class: AbstractTabPane
Connects this pane with controller.

Specified by:
setController in interface StackDockComponent
Overrides:
setController in class CombinedStackDockComponent<BubbleTab,BubbleTabMenu,CombinedInfoComponent>
Parameters:
controller - the realm in which this pane works, may be null

hasBorder

public boolean hasBorder()
Description copied from interface: StackDockComponent
Whether this kind of component already has a border.

Returns:
true if this has a border, false if the parent should paint one.

isSingleTabComponent

public boolean isSingleTabComponent()
Description copied from interface: StackDockComponent
Tells whether this StackDockComponent should be shown even if the StackDockStation has only one child.

Returns:
true if this component should always be shown