com.javadocking.visualizer
Class LineMinimizer

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 com.javadocking.visualizer.LineMinimizer
All Implemented Interfaces:
Visualizer, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class LineMinimizer
extends javax.swing.JPanel
implements Visualizer

A visualizer that shows minimized dockables in a line at a the bottom borer of a panel. The minimized dockables cannot be dragged.

Information on using line minimizers is in How to Use Visualizers (Minimizers and Maximizers) in The Sanaware Developer Guide.

Author:
Heidi Rakels.
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
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
LineMinimizer()
          Constructs a visualizer that shows minimized dockables in a line at the border.
LineMinimizer(java.awt.Component content)
          Constructs a visualizer that shows minimized dockables in a line at the border.
 
Method Summary
 boolean canVisualizeDockable(Dockable dockableToVisualize)
          Determines if a dockable can be visualized by this visualizer.
 java.awt.Component getContent()
          Gets the content of this panel.
 int getHeaderPosition()
           Gets the position that has to be used for creating the minimize headers with the method SwComponentFactory.createMinimizeHeader(Dockable, int).
 int getState()
          Determines the state of the dockables that are visualized by this visualizer.
 Dockable getVisualizedDockable(int index)
          Gets the visualized dockable with the specified index.
 int getVisualizedDockableCount()
          Gets the number of visualized dockables of this visualizer.
 void loadProperties(java.lang.String prefix, java.util.Properties properties, java.util.Map dockablesMap, java.awt.Window owner)
          Loads the properties of this maximizer.
 void removeVisualizedDockable(Dockable dockableToRemove)
          Removes the visualized dockables from this visualizer.
 void saveProperties(java.lang.String prefix, java.util.Properties properties)
          Saves the properties of this maximizer.
 void setContent(java.awt.Component component)
          Sets a component as content of this panel.
 void setHeaderPosition(int newHeaderPosition)
          Sets the position that has to be used for creating the minimize headers with the method SwComponentFactory.createMinimizeHeader(Dockable, int).
 void visualizeDockable(Dockable dockableToVisualize)
          Adds a dockable to this visualizer.
 
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, getBaseline, getBaselineResizeBehavior, 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, isPaintingForPrint, 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

LineMinimizer

public LineMinimizer()
Constructs a visualizer that shows minimized dockables in a line at the border.


LineMinimizer

public LineMinimizer(java.awt.Component content)
Constructs a visualizer that shows minimized dockables in a line at the border.

Parameters:
content - The normal content of the panel.
Method Detail

canVisualizeDockable

public boolean canVisualizeDockable(Dockable dockableToVisualize)
Description copied from interface: Visualizer
Determines if a dockable can be visualized by this visualizer.

Specified by:
canVisualizeDockable in interface Visualizer
Parameters:
dockableToVisualize - The dockable whose content has to be visualized. May not be nul.
Returns:
True if the dockable can be visualized, lse otherwise.

visualizeDockable

public void visualizeDockable(Dockable dockableToVisualize)
Description copied from interface: Visualizer
Adds a dockable to this visualizer.

Specified by:
visualizeDockable in interface Visualizer
Parameters:
dockableToVisualize - The dockable whose content has to be visualized. May not be nul.

getState

public int getState()
Description copied from interface: Visualizer
Determines the state of the dockables that are visualized by this visualizer.

Specified by:
getState in interface Visualizer
Returns:
The state of the dockables that are visualized by this visualizer. The special state is a constant defined by DockableState, but not DockableState.NORMAL or DockableState.CLOSED.

getVisualizedDockableCount

public int getVisualizedDockableCount()
Description copied from interface: Visualizer
Gets the number of visualized dockables of this visualizer.

Specified by:
getVisualizedDockableCount in interface Visualizer
Returns:
The number of visualized dockables of this visualizer.

getVisualizedDockable

public Dockable getVisualizedDockable(int index)
                               throws java.lang.IndexOutOfBoundsException
Description copied from interface: Visualizer
Gets the visualized dockable with the specified index.

Specified by:
getVisualizedDockable in interface Visualizer
Returns:
The visualized dockable with the specified index.
Throws:
java.lang.IndexOutOfBoundsException - If the index is out of range (index < 0 || index >= getvisualizedDockableCount()).

removeVisualizedDockable

public void removeVisualizedDockable(Dockable dockableToRemove)
Description copied from interface: Visualizer
Removes the visualized dockables from this visualizer.

Specified by:
removeVisualizedDockable in interface Visualizer

loadProperties

public void loadProperties(java.lang.String prefix,
                           java.util.Properties properties,
                           java.util.Map dockablesMap,
                           java.awt.Window owner)
                    throws java.io.IOException
Loads the properties of this maximizer. The dockables that were maximized, when the model was saved, are not maximized again.

Specified by:
loadProperties in interface Visualizer
Parameters:
prefix - The prefix of the names of the properties that have been intended for this visualizer.
properties - The properties object that contains the properties for this visualizer. It can contain also properties for other objects, but they will have another prefix.
dockablesMap - A mapping that contains the available dockables.
  • map key: the ID of the dockable (java.lang.String).
  • map value: the dockable (Dockable).
owner - The owner window of the visualizer in the dock model (DockModel).
Throws:
java.io.IOException - If an error occures while decoding the properties.

saveProperties

public void saveProperties(java.lang.String prefix,
                           java.util.Properties properties)
Saves the properties of this maximizer. The dockables that are maximized, are not saved.

Specified by:
saveProperties in interface Visualizer
Parameters:
prefix - The prefix for the property names.
properties - The properties object to which the properties should be added.

setContent

public void setContent(java.awt.Component component)
Sets a component as content of this panel.

Parameters:
component - The new content component.
Throws:
java.lang.IllegalStateException - If there is already a content.
java.lang.NullPointerException - If the component is null.

getContent

public java.awt.Component getContent()
Gets the content of this panel.

Returns:
The content from this panel, if there is one; otherwise null.

getHeaderPosition

public int getHeaderPosition()

Gets the position that has to be used for creating the minimize headers with the method SwComponentFactory.createMinimizeHeader(Dockable, int).

The default value is Position.TOP.

Returns:
The position that has to be used for creating the minimize headers with the method SwComponentFactory.createMinimizeHeader(Dockable, int). Possible values are constants defined by the class Position, i.e.:

setHeaderPosition

public void setHeaderPosition(int newHeaderPosition)
Sets the position that has to be used for creating the minimize headers with the method SwComponentFactory.createMinimizeHeader(Dockable, int).

Parameters:
newHeaderPosition - The position that has to be used for creating the minimize headers with the method SwComponentFactory.createMinimizeHeader(Dockable, int). Possible values are constants defined by the class Position, i.e.: