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

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by bibliothek.gui.dock.themes.basic.BasicDockableDisplayer
                      extended by bibliothek.extension.gui.dock.theme.bubble.BubbleDisplayer
All Implemented Interfaces:
DockableDisplayer, ImageObserver, MenuContainer, Serializable, Accessible

@ColorCodes(value={"displayer.border.high.active","displayer.border.high.active.mouse","displayer.border.high.inactive","displayer.border.high.inactive.mouse","displayer.border.low.active","displayer.border.low.active.mouse","displayer.border.low.inactive","displayer.border.low.inactive.mouse"})
public class BubbleDisplayer
extends BasicDockableDisplayer

A DockableDisplayer drawing a border around its content, but leaves the side at which the title lies open.

Author:
Benjamin Sigg
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class bibliothek.gui.dock.themes.basic.BasicDockableDisplayer
BasicDockableDisplayer.Hints
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Nested classes/interfaces inherited from interface bibliothek.gui.dock.station.DockableDisplayer
DockableDisplayer.Location
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
BubbleDisplayer(DockStation station, Dockable dockable, DockTitle title)
          Creates a new displayer
 
Method Summary
protected  void addDockable(Dockable dockable, Component component)
          Inserts a component representing the current dockable into the layout.
protected  Component getComponent(Dockable dockable)
          Gets the Component which should be used to layout the current Dockable.
protected  Border getDefaultBorder()
          Gets the default border for this displayer.
 Insets getDockableInsets()
          Gets an estimate of the insets around the Dockable of this displayer compared to the whole size of this displayer.
protected  void pulse()
          Called by the animation when the colors changed and the displayer should be repainted.
protected  void removeDockable(Dockable dockable, Component component)
          Removes the Component which represents the current dockable.
 void setController(DockController controller)
          Sets the controller for which this displayer is used.
 void setDockable(Dockable dockable)
          Sets the Dockable which should be shown on this displayer.
 void setTitle(DockTitle title)
          Sets the title of this displayer.
protected  void updateAnimation()
          Sets the colors to which the animation should run.
protected  void updateBorder()
          Called when the hint, whether a border should be shown or not, has changed.
 
Methods inherited from class bibliothek.gui.dock.themes.basic.BasicDockableDisplayer
addDockableDisplayerListener, addTitle, doLayout, getComponent, getComponent, getContent, getContentMinimumSize, getController, getDefaultBorderHint, getDockable, getHints, getStation, getTitle, getTitleLocation, init, isRespectBorderHint, isSingleTabShowInnerBorder, isSingleTabShowOuterBorder, listeners, orientation, removeDockableDisplayerListener, removeTitle, setDecorator, setDefaultBorderHint, setRespectBorderHint, setSingleTabShowInnerBorder, setSingleTabShowOuterBorder, setStation, setTitleLocation, titleContains, updateDecorator
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BubbleDisplayer

public BubbleDisplayer(DockStation station,
                       Dockable dockable,
                       DockTitle title)
Creates a new displayer

Parameters:
station - the station for which this displayer will be used
dockable - the Dockable which will be shown on this displayer, might be null
title - the title to show on this displayer, might be null
Method Detail

updateAnimation

protected void updateAnimation()
Sets the colors to which the animation should run.


pulse

protected void pulse()
Called by the animation when the colors changed and the displayer should be repainted.


setController

public void setController(DockController controller)
Description copied from interface: DockableDisplayer
Sets the controller for which this displayer is used. That property must be set by the client. Note that there is no guarantee, that a client sets this property.

Specified by:
setController in interface DockableDisplayer
Overrides:
setController in class BasicDockableDisplayer
Parameters:
controller - the controller, can be null

addDockable

protected void addDockable(Dockable dockable,
                           Component component)
Description copied from class: BasicDockableDisplayer
Inserts a component representing the current dockable into the layout. This method is never called twice unless BasicDockableDisplayer.removeDockable(Dockable, Component) is called before. Note that the name "add" is inspired by the method add of Container.

Overrides:
addDockable in class BasicDockableDisplayer
Parameters:
dockable - the dockable to add, may be null
component - the new Component, may be null

removeDockable

protected void removeDockable(Dockable dockable,
                              Component component)
Description copied from class: BasicDockableDisplayer
Removes the Component which represents the current dockable.

Overrides:
removeDockable in class BasicDockableDisplayer
Parameters:
dockable - the element to remove, may be null
component - the component, may be null

getComponent

protected Component getComponent(Dockable dockable)
Description copied from class: BasicDockableDisplayer
Gets the Component which should be used to layout the current Dockable.

Overrides:
getComponent in class BasicDockableDisplayer
Parameters:
dockable - the current Dockable, never null
Returns:
the component representing dockable

setTitle

public void setTitle(DockTitle title)
Description copied from interface: DockableDisplayer
Sets the title of this displayer. If the title is set to null, no title is visible. The displayer will change the orientation of the title.

Specified by:
setTitle in interface DockableDisplayer
Overrides:
setTitle in class BasicDockableDisplayer
Parameters:
title - the title or null

setDockable

public void setDockable(Dockable dockable)
Description copied from interface: DockableDisplayer
Sets the Dockable which should be shown on this displayer. A value of null means that no Dockable should be visible at all.

Specified by:
setDockable in interface DockableDisplayer
Overrides:
setDockable in class BasicDockableDisplayer
Parameters:
dockable - the child, can be null

updateBorder

protected void updateBorder()
Description copied from class: BasicDockableDisplayer
Called when the hint, whether a border should be shown or not, has changed.

Overrides:
updateBorder in class BasicDockableDisplayer

getDefaultBorder

protected Border getDefaultBorder()
Description copied from class: BasicDockableDisplayer
Gets the default border for this displayer. That can either be a new object or an old border. It should not be null. The standard implementation just returns a new instance of of BevelBorder.

Overrides:
getDefaultBorder in class BasicDockableDisplayer
Returns:
the default border to be used on this displayer

getDockableInsets

public Insets getDockableInsets()
Description copied from interface: DockableDisplayer
Gets an estimate of the insets around the Dockable of this displayer compared to the whole size of this displayer.

Specified by:
getDockableInsets in interface DockableDisplayer
Overrides:
getDockableInsets in class BasicDockableDisplayer
Returns:
the estimate of the insets