net.infonode.docking
Class SplitWindow

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 net.infonode.gui.panel.BaseContainer
                      extended by net.infonode.gui.panel.BasePanel
                          extended by net.infonode.docking.DockingWindow
                              extended by net.infonode.docking.SplitWindow
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class SplitWindow
extends DockingWindow

A window with a split pane that contains two child windows.

Version:
$Revision: 1.50 $
Author:
$Author: jesper $
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
private  DockingWindow leftWindow
           
private  DockingWindow rightWindow
           
private  SimpleSplitPane splitPane
           
 
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
  SplitWindow(boolean horizontal)
          Creates a split window.
  SplitWindow(boolean horizontal, DockingWindow leftWindow, DockingWindow rightWindow)
          Creates a split window with with the given child windows.
  SplitWindow(boolean horizontal, float dividerLocation, DockingWindow leftWindow, DockingWindow rightWindow)
          Creates a split window with with the given child windows.
protected SplitWindow(boolean horizontal, float dividerLocation, DockingWindow leftWindow, DockingWindow rightWindow, SplitWindowItem windowItem)
           
 
Method Summary
protected  PropertyMap createPropertyObject()
           
protected  DropAction doAcceptDrop(java.awt.Point p, DockingWindow window)
           
protected  void doRemoveWindow(DockingWindow window)
           
protected  void doReplace(DockingWindow oldWindow, DockingWindow newWindow)
           
protected  int getChildEdgeDepth(DockingWindow window, Direction dir)
           
 DockingWindow getChildWindow(int index)
          Returns the child window with index index.
 int getChildWindowCount()
          Returns the number of child windows.
 float getDividerLocation()
          Returns the divider location as a fraction of this split window's size.
 javax.swing.Icon getIcon()
          Returns the icon for this window.
 DockingWindow getLeftWindow()
          Returns the left/upper child window.
protected  PropertyMap getPropertyObject()
           
 DockingWindow getRightWindow()
          Returns the right/lower child window.
 SplitWindowProperties getSplitWindowProperties()
          Returns the property values for this split window.
private  DockingWindow[] getWindows()
           
 boolean isHorizontal()
          Returns true if this SplitWindow is a horizontal split, otherwise it's vertical.
protected  DockingWindow newRead(java.io.ObjectInputStream in, ReadContext context, ViewReader viewReader)
           
protected  DockingWindow oldRead(java.io.ObjectInputStream in, ReadContext context)
           
protected  void optimizeWindowLayout()
           
(package private)  void removeWindowComponent(DockingWindow window)
           
(package private)  void restoreWindowComponent(DockingWindow window)
           
protected  void rootChanged(RootWindow oldRoot, RootWindow newRoot)
           
 void setDividerLocation(float dividerLocation)
          Sets the divider location as a fraction of this split window's size.
 void setHorizontal(boolean horizontal)
          Sets the split to horizontal or vertical.
 void setWindows(DockingWindow leftWindow, DockingWindow rightWindow)
          Sets the child windows of this split window.
protected  void update()
           
protected  void updateWindowItem(RootWindow rootWindow)
           
protected  void write(java.io.ObjectOutputStream out, WriteContext context, ViewWriter viewWriter)
           
 
Methods inherited from class net.infonode.docking.DockingWindow
acceptChildDrop, acceptDrop, acceptInteriorDrop, acceptSplitDrop, acceptsSplitWith, addListener, addTabMouseButtonListener, addWindow, addWindowItem, afterWindowRemoved, beforeDrop, beginOptimize, beginUpdateModel, childGainedFocus, childInsideTab, childRemoved, cleanUpModel, clearChildrenFocus, clearFocus, close, closeWithAbort, createTabWindow, detach, dock, dockWithAbort, endOptimize, endUpdateModel, fireTabWindowMouseButtonEvent, fireTabWindowMouseButtonEvent, fireTitleChanged, fireViewFocusChanged, fireWindowDocked, fireWindowDocked, fireWindowDocking, fireWindowHidden, fireWindowMaximized, fireWindowMaximizing, fireWindowMinimized, fireWindowMinimizing, fireWindowRestored, fireWindowRestoring, fireWindowShown, fireWindowUndocked, fireWindowUndocking, getAncestors, getBestFittedWindow, getChildDropFilter, getChildWindowIndex, getContentWindow, getDefaultDropAction, getEdgeDepth, getInsertTabDropFilter, getInteriorDropFilter, getLastFocusedChildWindow, getLocationWindow, getOptimizedWindow, getPopupMenuFactory, getPreferredFocusChild, getPreferredMinimizeDirection, getRootWindow, getSplitDropFilter, getTab, getTitle, getUpdateModel, getWindowItem, getWindowParent, getWindowProperties, hasParent, init, insideTab, internalClose, internalReplaceChildWindow, isChildShowingInRootWindow, isClosable, isDockable, isMaximizable, isMaximized, isMinimizable, isMinimized, isRestorable, isShowingInRootWindow, isUndockable, isUndocked, makeVisible, maximize, maximizeWithAbort, minimize, minimize, minimizeWithAbort, minimizeWithAbort, needsTitleWindow, notifyListeners, optimizeAfter, readLocations, removeChildWindow, removeListener, removeTabMouseButtonListener, removeWindow, replaceChildWindow, restore, restoreFocus, restoreWithAbort, setFocused, setLastMinimizedDirection, setPopupMenuFactory, setPreferredMinimizeDirection, showChildWindow, showPopupMenu, showsWindowTitle, split, split, startDrag, storeAncestors, toString, undock, undockWithAbort, updateButtonVisibility, updateWindowItems, writeLocations
 
Methods inherited from class net.infonode.gui.panel.BasePanel
setComponent, setSouthComponent
 
Methods inherited from class net.infonode.gui.panel.BaseContainer
paintComponent, setBackground, setFont, setForeground, setOpaque, setUI
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, 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, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, 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, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

splitPane

private SimpleSplitPane splitPane

leftWindow

private DockingWindow leftWindow

rightWindow

private DockingWindow rightWindow
Constructor Detail

SplitWindow

public SplitWindow(boolean horizontal)
Creates a split window.

Parameters:
horizontal - true if the split is horizontal

SplitWindow

public SplitWindow(boolean horizontal,
                   DockingWindow leftWindow,
                   DockingWindow rightWindow)
Creates a split window with with the given child windows.

Parameters:
horizontal - true if the split is horizontal
leftWindow - the left/upper window
rightWindow - the right/lower window

SplitWindow

public SplitWindow(boolean horizontal,
                   float dividerLocation,
                   DockingWindow leftWindow,
                   DockingWindow rightWindow)
Creates a split window with with the given child windows.

Parameters:
horizontal - true if the split is horizontal
dividerLocation - the divider location, 0 - 1
leftWindow - the left/upper window
rightWindow - the right/lower window

SplitWindow

protected SplitWindow(boolean horizontal,
                      float dividerLocation,
                      DockingWindow leftWindow,
                      DockingWindow rightWindow,
                      SplitWindowItem windowItem)
Method Detail

getSplitWindowProperties

public SplitWindowProperties getSplitWindowProperties()
Returns the property values for this split window.

Returns:
the property values for this split window

getLeftWindow

public DockingWindow getLeftWindow()
Returns the left/upper child window.

Returns:
the left/upper child window

getRightWindow

public DockingWindow getRightWindow()
Returns the right/lower child window.

Returns:
the right/lower child window

setDividerLocation

public void setDividerLocation(float dividerLocation)
Sets the divider location as a fraction of this split window's size.

Parameters:
dividerLocation - the divider location as a fraction of this split window's size

getDividerLocation

public float getDividerLocation()
Returns the divider location as a fraction of this split window's size.

Returns:
the divider location as a fraction of this split window's size

setWindows

public void setWindows(DockingWindow leftWindow,
                       DockingWindow rightWindow)
Sets the child windows of this split window.

Parameters:
leftWindow - the left/upper child window
rightWindow - the right/lower child window

isHorizontal

public boolean isHorizontal()
Returns true if this SplitWindow is a horizontal split, otherwise it's vertical.

Returns:
true if this SplitWindow is a horizontal split, otherwise it's vertical
Since:
IDW 1.2.0

setHorizontal

public void setHorizontal(boolean horizontal)
Sets the split to horizontal or vertical.

Parameters:
horizontal - if true the split is set to horizontal, otherwise vertical
Since:
IDW 1.2.0

update

protected void update()
Specified by:
update in class DockingWindow

optimizeWindowLayout

protected void optimizeWindowLayout()
Overrides:
optimizeWindowLayout in class DockingWindow

getChildWindow

public DockingWindow getChildWindow(int index)
Description copied from class: DockingWindow
Returns the child window with index index.

Specified by:
getChildWindow in class DockingWindow
Parameters:
index - the child window index
Returns:
the child window

rootChanged

protected void rootChanged(RootWindow oldRoot,
                           RootWindow newRoot)
Overrides:
rootChanged in class DockingWindow

getWindows

private DockingWindow[] getWindows()

getChildWindowCount

public int getChildWindowCount()
Description copied from class: DockingWindow
Returns the number of child windows.

Specified by:
getChildWindowCount in class DockingWindow
Returns:
the number of child windows

getIcon

public javax.swing.Icon getIcon()
Description copied from class: DockingWindow
Returns the icon for this window.

Specified by:
getIcon in class DockingWindow
Returns:
the icon

doReplace

protected void doReplace(DockingWindow oldWindow,
                         DockingWindow newWindow)
Specified by:
doReplace in class DockingWindow

doRemoveWindow

protected void doRemoveWindow(DockingWindow window)
Specified by:
doRemoveWindow in class DockingWindow

oldRead

protected DockingWindow oldRead(java.io.ObjectInputStream in,
                                ReadContext context)
                         throws java.io.IOException
Overrides:
oldRead in class DockingWindow
Throws:
java.io.IOException

updateWindowItem

protected void updateWindowItem(RootWindow rootWindow)
Overrides:
updateWindowItem in class DockingWindow

getPropertyObject

protected PropertyMap getPropertyObject()
Specified by:
getPropertyObject in class DockingWindow

createPropertyObject

protected PropertyMap createPropertyObject()
Specified by:
createPropertyObject in class DockingWindow

removeWindowComponent

void removeWindowComponent(DockingWindow window)
Specified by:
removeWindowComponent in class DockingWindow

restoreWindowComponent

void restoreWindowComponent(DockingWindow window)
Specified by:
restoreWindowComponent in class DockingWindow

getChildEdgeDepth

protected int getChildEdgeDepth(DockingWindow window,
                                Direction dir)
Overrides:
getChildEdgeDepth in class DockingWindow

doAcceptDrop

protected DropAction doAcceptDrop(java.awt.Point p,
                                  DockingWindow window)
Overrides:
doAcceptDrop in class DockingWindow

write

protected void write(java.io.ObjectOutputStream out,
                     WriteContext context,
                     ViewWriter viewWriter)
              throws java.io.IOException
Overrides:
write in class DockingWindow
Throws:
java.io.IOException

newRead

protected DockingWindow newRead(java.io.ObjectInputStream in,
                                ReadContext context,
                                ViewReader viewReader)
                         throws java.io.IOException
Throws:
java.io.IOException