net.infonode.docking
Class View

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

public class View
extends DockingWindow

A view is a docking window containing a component.

A view can also contain a title bar that can be shown on either side of the view component. The title bar is made visible by setting the visible property in the ViewTitleBarProperties in the ViewProperties for this view. The title bar automatically inherits the view's title and icon but it's possible to specify a specific title and icon for the title bar in the ViewTitleBarProperties in the ViewProperties for this view.

Version:
$Revision: 1.66 $
Author:
$Author: jesper $
See Also:
ViewProperties, ViewTitleBarProperties, 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
View(java.lang.String title, javax.swing.Icon icon, java.awt.Component component)
          Constructor.
 
Method Summary
protected  DropAction acceptInteriorDrop(java.awt.Point p, DockingWindow window)
           
protected  PropertyMap createPropertyObject()
           
protected  DropAction doAcceptDrop(java.awt.Point p, DockingWindow window)
           
protected  void doRemoveWindow(DockingWindow window)
           
protected  void doReplace(DockingWindow oldWindow, DockingWindow newWindow)
           
 DockingWindow getChildWindow(int index)
          Returns the child window with index index.
 int getChildWindowCount()
          Returns the number of child windows.
 java.awt.Component getComponent()
          Gets the component inside the view.
 java.util.List getCustomTabComponents()
           Returns a list containing the custom window tab components.
 java.util.List getCustomTitleBarComponents()
           Returns a list containing the custom view title bar components.
 javax.swing.Icon getIcon()
          Returns the icon for this window.
protected  PropertyMap getPropertyObject()
           
 ViewProperties getViewProperties()
          Returns the property values for this view.
 boolean isFocusCycleRoot()
           
protected  boolean needsTitleWindow()
           
 void restoreFocus()
          Restores focus to the last focused child component or, if no child component has had focus, the first focusable component inside the view.
protected  void rootChanged(RootWindow oldRoot, RootWindow newRoot)
           
 void setComponent(java.awt.Component component)
          Sets the component inside the view.
protected  void setFocused(boolean focused)
           
 java.lang.String toString()
           
protected  void update()
           
protected  void updateButtonVisibility()
           
protected  void write(java.io.ObjectOutputStream out, WriteContext context)
           
protected  void write(java.io.ObjectOutputStream out, WriteContext context, ViewWriter viewWriter)
           
 
Methods inherited from class net.infonode.docking.DockingWindow
acceptChildDrop, acceptSplitDrop, acceptsSplitWith, addListener, addTabMouseButtonListener, addWindow, addWindowItem, afterWindowRemoved, beforeDrop, beginOptimize, beginUpdateModel, childInsideTab, childRemoved, cleanUpModel, clearChildrenFocus, clearFocus, close, closeWithAbort, createTabWindow, detach, dock, dockWithAbort, endOptimize, endUpdateModel, fireTitleChanged, fireViewFocusChanged, fireWindowHidden, fireWindowShown, getAncestors, getBestFittedWindow, getChildEdgeDepth, getChildWindowIndex, getContentWindow, getEdgeDepth, getLastFocusedChildWindow, getLocationWindow, getOptimizedWindow, getPopupMenuFactory, getPreferredFocusChild, getPreferredMinimizeDirection, getRootWindow, 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, notifyListeners, oldRead, optimizeAfter, optimizeWindowLayout, readLocations, removeChildWindow, removeListener, removeTabMouseButtonListener, removeWindow, replaceChildWindow, restore, restoreWithAbort, setLastMinimizedDirection, setPopupMenuFactory, setPreferredMinimizeDirection, showChildWindow, showsWindowTitle, split, split, startDrag, storeAncestors, undock, undockWithAbort, updateWindowItem, updateWindowItem, updateWindowItems, writeLocations
 
Methods inherited from class net.infonode.gui.panel.BasePanel
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, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

View

public View(java.lang.String title,
            javax.swing.Icon icon,
            java.awt.Component component)
Constructor.

Parameters:
title - the title of the view
icon - the icon for the view
component - the component to place inside the view
Method Detail

getCustomTabComponents

public java.util.List getCustomTabComponents()

Returns a list containing the custom window tab components. Changes to the list will be propagated to the tab.

The custom tab components will be shown after the window title when the window tab is highlighted. The components are shown in the same order as they appear in the list. The custom tab components container layout is rotated with the tab direction.

Returns:
a list containing the custom tab components, list elements are of type JComponent
Since:
IDW 1.3.0

getCustomTitleBarComponents

public java.util.List getCustomTitleBarComponents()

Returns a list containing the custom view title bar components. Changes to the list will be propagated to the title bar.

The custom title bar components will be shown after the view title in the title bar but before the close, minimize and restore buttons. The components are shown in the same order as they appear in the list. The custom title bar components container layout is rotated with the title bar direction.

Note: The components are only shon if the title bar is visible, see ViewTitleBarProperties.

Returns:
a list containing the custom title bar components, list elements are of type JComponent
Since:
IDW 1.4.0

getComponent

public java.awt.Component getComponent()
Gets the component inside the view.

Returns:
the component inside the view
Since:
IDW 1.1.0

setComponent

public void setComponent(java.awt.Component component)
Sets the component inside the view.

Overrides:
setComponent in class BasePanel
Parameters:
component - the component to place inside the view
Since:
IDW 1.1.0

getViewProperties

public ViewProperties getViewProperties()
Returns the property values for this view.

Returns:
the property values for this view

update

protected void update()
Specified by:
update 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

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

isFocusCycleRoot

public boolean isFocusCycleRoot()
Overrides:
isFocusCycleRoot in class java.awt.Container

restoreFocus

public void restoreFocus()
Restores focus to the last focused child component or, if no child component has had focus, the first focusable component inside the view.

Overrides:
restoreFocus in class DockingWindow
Since:
IDW 1.1.0

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

write

protected void write(java.io.ObjectOutputStream out,
                     WriteContext context)
              throws java.io.IOException
Throws:
java.io.IOException

doAcceptDrop

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

acceptInteriorDrop

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

toString

public java.lang.String toString()
Overrides:
toString in class DockingWindow

setFocused

protected void setFocused(boolean focused)
Overrides:
setFocused in class DockingWindow

rootChanged

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

getPropertyObject

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

createPropertyObject

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

needsTitleWindow

protected boolean needsTitleWindow()
Overrides:
needsTitleWindow in class DockingWindow

updateButtonVisibility

protected void updateButtonVisibility()
Overrides:
updateButtonVisibility 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