|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectbibliothek.gui.dock.station.stack.tab.AbstractTabPane<T,M,I>
bibliothek.gui.dock.station.stack.CombinedStackDockComponent<T,M,I>
T - the type of the tabsM - the type of the menusI - the type of the additinal info panelpublic abstract class CombinedStackDockComponent<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>
A StackDockComponent which is a combination of other components.
This class also implements TabPane and thus supports the
TabLayoutManager.
| Nested Class Summary | |
|---|---|
protected class |
CombinedStackDockComponent.Meta
Meta information about a Dockable that is shown on this
CombinedStackDockComponent. |
| Field Summary |
|---|
| Fields inherited from interface bibliothek.gui.dock.station.stack.tab.TabPane |
|---|
LAYOUT_MANAGER, USE_SMALL_MINIMUM_SIZE |
| Constructor Summary | |
|---|---|
CombinedStackDockComponent()
Constructs a new component. |
|
| Method Summary | |
|---|---|
void |
addStackDockComponentListener(StackDockComponentListener listener)
Adds a listener to this component, it will be called if the selection changes. |
void |
addTab(String title,
Icon icon,
Component comp,
Dockable dockable)
Adds a new child at an unspecified location. |
protected void |
addToMenu(M menu,
Dockable dockable)
Adds dockable somewhere to menu |
protected void |
clearTabs()
Removes all tabs from the internal data structure. Subclasses may override this method to be informed about the exact time when a tab changes, but the overriden method must call the original method. |
protected BackgroundAlgorithm |
createBackground(CombinedStackDockComponent<T,M,I> self)
Creates the background algorithm that is used for this component. |
protected BorderForwarder |
createContentBorderModifier(Dockable dockable,
JComponent component)
Creates a BorderForwarder for the content component for the tab of dockable |
protected CombinedStackDockContentPane |
createContentPane(CombinedStackDockComponent<T,M,I> self)
Creates the content pane for this component. |
DockElementRepresentative |
createDefaultRepresentation(DockElement target)
Creates and returns a new DockElementRepresentative representing target,
the new representation is to be used to cover all the empty areas on this StackDockComponent. |
protected Component |
createLayerAt(Component component,
Dockable dockable)
Creates a layer between component and this panel. |
protected void |
fireTabChanged(Dockable dockable)
Calls StackDockComponentListener.tabChanged(StackDockComponent, Dockable) on all listeners that
are currently registered. |
Rectangle |
getAvailableArea()
Gets the area in which all the Tabs, TabMenus and
the visible Dockable (TabPane.setSelectedBounds(Rectangle))
must find their place. |
Rectangle |
getBoundsAt(int index)
Gets the location and size of the graphical element that allows the user to select the index'th child. |
JComponent |
getComponent()
Gets a Component on which the children of this
StackDockComponent will be displayed. |
TabConfiguration |
getConfiguration(Dockable child)
Forwards child to the current TabConfigurations, in order to
get the matching TabConfiguration. |
protected CombinedStackDockComponent.Meta |
getContentAt(int index)
Gets the meta information about the components at location index |
Dockable |
getDockableAt(int index)
Gets the Dockable which was placed at the index'th position. |
int |
getIndexOfTabAt(Point mouseLocation)
Gets the index of the tab that is beneath mouseLocation. |
CombinedHandler<AbstractTabPaneComponent> |
getInfoHandler()
Gets a handler for info components. |
Component |
getLayerAt(int index)
Gets the index'th Component on this tab. |
CombinedHandler<CombinedMenu> |
getMenuHandler()
Gets a handler for menus. |
Dimension |
getMinimumSize()
Gets the minimal size required to have a big enough TabPane.getAvailableArea() to show
all content. |
Dimension |
getMinimumSize(Dockable dockable)
Gets the minimum size that is required to show the child dockable. |
T |
getOnTab(Dockable dockable)
Gets the tab-button for dockable, if no tab-button
for dockable exists a new button should be created. |
Dimension |
getPreferredSize()
Gets the preferred size required to have a big enough TabPane.getAvailableArea() to show
all content. |
Dimension |
getPreferredSize(Dockable dockable)
Gets the preferred size that is required to show the child dockable. |
Rectangle |
getSelectedBounds()
Gets the boundaries the selected Dockable
has (independent of whether such a Dockable exists). |
int |
getSelectedIndex()
Gets the index of the currently selected dockable |
DockElementRepresentative |
getTabAt(int index)
Gets an element representing the tab of the Dockable at index. |
int |
getTabCount()
Gets the number of children that are added to this StackDockComponent. |
CombinedHandler<CombinedTab> |
getTabHandler()
Gets a handler for tabs. |
protected int |
getZOrder(Component component)
Gets the z order of component. |
void |
insertTab(String title,
Icon icon,
Component comp,
Dockable dockable,
int index)
Adds a new child at the location index. |
void |
moveTab(int source,
int destination)
Moves the tab at source to location destination. |
T |
putOnTab(Dockable dockable)
Informs this pane that its child dockable should have a
tab-button. |
protected T |
putTab(Dockable dockable,
T tab)
Associates tab with dockable. |
void |
remove(int index)
Removes the index'th element of this pane. |
void |
removeAll()
Removes all elements from this pane. |
protected void |
removeFromMenu(M menu,
Dockable dockable)
Removes dockable from menu. |
void |
removeStackDockComponentListener(StackDockComponentListener listener)
Removes listener from this component. |
protected T |
removeTab(Dockable dockable)
Removes the tab of dockable from the internal data structure. |
void |
repaint()
Repaints the contents of this component. |
void |
revalidate()
Called when the layout of this pane has become invalid, the default behavior is to call AbstractTabPane.doLayout(). |
void |
setComponentAt(int index,
Component component)
Sets the component which should be shown at tab index. |
void |
setController(DockController controller)
Connects this pane with controller. |
protected void |
setEnabledAt(Dockable dockable,
boolean enabled)
Changes the enabled state of the item dockable. |
void |
setIconAt(int index,
Icon newIcon)
Sets the icon of the child at location index. |
void |
setSelectedBounds(Rectangle bounds)
Sets the boundaries of the selected Dockable. |
void |
setSelectedDockable(Dockable dockable)
Selects the child dockable of this pane as the one visible
element. |
void |
setSelectedIndex(int index)
Selects the component at location index. |
void |
setTitleAt(int index,
String newTitle)
Sets the title of the child at location index. |
void |
setTooltipAt(int index,
String newTooltip)
Sets the tooltip of the child at location index. |
protected void |
setZOrder(Component component,
int order)
Sets the z order of component, as higher the z order
as later the component is painted, as more components it can overlap. |
| Methods inherited from class bibliothek.gui.dock.station.stack.tab.AbstractTabPane |
|---|
addTabPaneListener, createMenu, destroyMenu, discardComponentsAndRebuild, doLayout, fireAdded, fireControllerChanged, fireInfoComponentChanged, fireRemoved, fireSelectionChanged, getController, getDockable, getDockableCount, getDockables, getDockTabPlacement, getInfoComponent, getLayoutManager, getMenu, getMenuList, getMenus, getSelectedDockable, getTab, getTabs, getTabsList, getVisibleTab, getVisibleTabCount, indexOf, indexOfVisible, insert, listeners, menuRemoved, move, newMenu, newTab, putInMenu, removeTabPaneListener, setDockTabPlacement, setInfoComponent, setLayoutManager, tabRemoved |
| 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 |
|---|
getDockTabPlacement, hasBorder, isSingleTabComponent, setDockTabPlacement |
| Constructor Detail |
|---|
public CombinedStackDockComponent()
| Method Detail |
|---|
protected CombinedStackDockContentPane createContentPane(CombinedStackDockComponent<T,M,I> self)
this component. This method
may be called by the constructor.
self - this
nullprotected BackgroundAlgorithm createBackground(CombinedStackDockComponent<T,M,I> self)
this component. This method
may be called by the constructor.
self - this
nullpublic void revalidate()
AbstractTabPaneAbstractTabPane.doLayout(). Subclasses may override to
update the layout lazily.
revalidate in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>public void repaint()
public void addStackDockComponentListener(StackDockComponentListener listener)
StackDockComponent
addStackDockComponentListener in interface StackDockComponentlistener - the new listener, not nullpublic void removeStackDockComponentListener(StackDockComponentListener listener)
StackDockComponentlistener from this component.
removeStackDockComponentListener in interface StackDockComponentlistener - the listener to removeprotected void fireTabChanged(Dockable dockable)
StackDockComponentListener.tabChanged(StackDockComponent, Dockable) on all listeners that
are currently registered.
dockable - the element whose tab changedpublic void setController(DockController controller)
AbstractTabPanecontroller.
setController in interface StackDockComponentsetController in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>controller - the realm in which this pane works, may be nullpublic TabConfiguration getConfiguration(Dockable child)
child to the current TabConfigurations, in order to
get the matching TabConfiguration.
child - some child of this StackDockComponent
TabConfiguration that should be used for its tabpublic CombinedHandler<CombinedTab> getTabHandler()
CombinedTabs from this component in order to change
their visibility.
public CombinedHandler<CombinedMenu> getMenuHandler()
CombinedMenus from this component in order to change
their visibility.
public CombinedHandler<AbstractTabPaneComponent> getInfoHandler()
AbstractTabPaneComponents from this component in order to change
their visibility.
public Rectangle getAvailableArea()
TabPaneTabs, TabMenus and
the visible Dockable (TabPane.setSelectedBounds(Rectangle))
must find their place.
getAvailableArea in interface TabPanewidth and
height 1.public Dimension getMinimumSize()
AbstractTabPaneTabPane.getAvailableArea() to show
all content.
getMinimumSize in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>public Dimension getPreferredSize()
AbstractTabPaneTabPane.getAvailableArea() to show
all content.
getPreferredSize in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>public Rectangle getSelectedBounds()
TabPaneselected Dockable
has (independent of whether such a Dockable exists).
getSelectedBounds in interface TabPanenullpublic void setSelectedBounds(Rectangle bounds)
TabPaneselected Dockable.
setSelectedBounds in interface TabPanebounds - the boundaries of the selected childpublic int getSelectedIndex()
StackDockComponent
getSelectedIndex in interface StackDockComponentpublic void setSelectedIndex(int index)
StackDockComponentindex.
setSelectedIndex in interface StackDockComponentindex - the index of the selected componentpublic void setSelectedDockable(Dockable dockable)
AbstractTabPanedockable of this pane as the one visible
element.
setSelectedDockable in interface TabPanesetSelectedDockable in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>dockable - the newly selected element, can be nullpublic Rectangle getBoundsAt(int index)
StackDockComponentindex'th child.
getBoundsAt in interface StackDockComponentindex - the index of the child
null
if the element is not directly visiblepublic int getIndexOfTabAt(Point mouseLocation)
StackDockComponentmouseLocation.
getIndexOfTabAt in interface StackDockComponentmouseLocation - the location of the mouse on the component
-1public int getTabCount()
StackDockComponent
getTabCount in interface StackDockComponent
public void addTab(String title,
Icon icon,
Component comp,
Dockable dockable)
StackDockComponent
addTab in interface StackDockComponenttitle - the title of the childicon - an icon to display for the child or nullcomp - the new child to displaydockable - the Dockable for which the tab is used
public void insertTab(String title,
Icon icon,
Component comp,
Dockable dockable,
int index)
StackDockComponentindex.
insertTab in interface StackDockComponenttitle - the title of the childicon - an icon to display for the child or nullcomp - the new child to displaydockable - the Dockable for which the tab is usedindex - the index that the new child should havepublic Dimension getMinimumSize(Dockable dockable)
TabPanedockable.
getMinimumSize in interface TabPanedockable - one of the children of this pane
dockablepublic Dimension getPreferredSize(Dockable dockable)
TabPanedockable.
getPreferredSize in interface TabPanedockable - one of the children of this pane
dockablepublic Dockable getDockableAt(int index)
StackDockComponentDockable which was placed at the index'th position.
getDockableAt in interface StackDockComponentindex - the position of the element
public DockElementRepresentative getTabAt(int index)
StackDockComponentDockable at index.
getTabAt in interface StackDockComponentindex - the index of some child of this stack
null if no tab exists or tabs cannot be used as DockElementRepresentatives
public void moveTab(int source,
int destination)
StackDockComponentsource to location destination.
moveTab in interface StackDockComponentsource - the item to movedestination - the target destinationpublic void remove(int index)
AbstractTabPaneindex'th element of this pane.
remove in interface StackDockComponentremove in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>index - the index of the element to removepublic void removeAll()
AbstractTabPane
removeAll in interface StackDockComponentremoveAll in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>public T putOnTab(Dockable dockable)
TabPanedockable should have a
tab-button. This TabPane may create a new Tab
or reuse an existing Tab. Reusing an existing tab is
recommended. If dockable was part of a TabMenu,
then it should be removed from that menu.dockable already is on a tab then this tab should be reused.
putOnTab in interface TabPaneputOnTab in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>dockable - the element which needs a tab-button
Tab that is only used for dockablepublic T getOnTab(Dockable dockable)
TabPanedockable, if no tab-button
for dockable exists a new button should be created. Reusing
existing tabs is recommended. Other than TabPane.putOnTab(Dockable) this
method must not affect any TabMenu showing Dockable.
getOnTab in interface TabPanegetOnTab in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>dockable - the element whose tab is requested
dockable
protected T putTab(Dockable dockable,
T tab)
AbstractTabPanetab with dockable. this method
modifies the internal data structure in order to store the change.
putTab in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>dockable - the key for the tab-maptab - the value for the tab-map
dockableprotected T removeTab(Dockable dockable)
AbstractTabPanedockable from the internal data structure.
removeTab in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>dockable - the key of the element to be removed from the tab-mapprotected void clearTabs()
AbstractTabPane
clearTabs in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>
protected void addToMenu(M menu,
Dockable dockable)
AbstractTabPanedockable somewhere to menu
addToMenu in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>menu - a menu of this panedockable - a new child of menu
protected void removeFromMenu(M menu,
Dockable dockable)
AbstractTabPanedockable from menu.
removeFromMenu in class AbstractTabPane<T extends CombinedTab,M extends CombinedMenu,I extends CombinedInfoComponent>menu - some menu of this panedockable - a child of menu
protected Component createLayerAt(Component component,
Dockable dockable)
component and this panel. The
object component is a representation of dockable
but not necessarily dockable itself. The default
behavior of this method is to return component.
component - the representation of dockabledockable - the element for which a new layer is created
component
or componentpublic Component getLayerAt(int index)
Component on this tab. This Component
is not a Dockable but a layer between dockable and this panel.
index - the index of a tab.
protected CombinedStackDockComponent.Meta getContentAt(int index)
index
index - the index of a tab
public void setTitleAt(int index,
String newTitle)
StackDockComponentindex.
setTitleAt in interface StackDockComponentindex - the index of the childnewTitle - the new title
public void setTooltipAt(int index,
String newTooltip)
StackDockComponentindex.
setTooltipAt in interface StackDockComponentindex - the index of the childnewTooltip - the new tooltip, can be null
public void setIconAt(int index,
Icon newIcon)
StackDockComponentindex.
setIconAt in interface StackDockComponentindex - the index of the childnewIcon - the new icon, null if no icon
should be displayed
public void setComponentAt(int index,
Component component)
StackDockComponentindex.
setComponentAt in interface StackDockComponentindex - the index where to show componentcomponent - the new content, not null
protected void setEnabledAt(Dockable dockable,
boolean enabled)
dockable.
dockable - the tab whose state is to be changedenabled - the new enabled statepublic JComponent getComponent()
StackDockComponentComponent on which the children of this
StackDockComponent will be displayed.
getComponent in interface StackDockComponentComponent
protected void setZOrder(Component component,
int order)
component, as higher the z order
as later the component is painted, as more components it can overlap.
component - some child of this paneorder - the orderprotected int getZOrder(Component component)
component.
component - some child of this pane
public DockElementRepresentative createDefaultRepresentation(DockElement target)
StackDockComponentDockElementRepresentative representing target,
the new representation is to be used to cover all the empty areas on this StackDockComponent.
createDefaultRepresentation in interface StackDockComponenttarget - the target for the new representative, may or may not be a child of this component, not null
null if this StackDockComponent does not allow to
use its free spaces
protected BorderForwarder createContentBorderModifier(Dockable dockable,
JComponent component)
BorderForwarder for the content component for the tab of dockable
dockable - the item that is showncomponent - the component which is influenced
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||