org.PingOO.DLAI.lib.directorytree
Class DirectoryComponentTreeCellRenderer

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JLabel
                          |
                          +--javax.swing.tree.DefaultTreeCellRenderer
                                |
                                +--org.PingOO.DLAI.lib.PWidget.DefaultPTreeCellRenderer
                                      |
                                      +--org.PingOO.DLAI.lib.directorytree.DirectoryComponentTreeCellRenderer
Direct Known Subclasses:
UGMTreeCellRenderer

public class DirectoryComponentTreeCellRenderer
extends DefaultPTreeCellRenderer

Defines the tree renderer used to display the LDAP directory.

Since:
PingOO 2.0
Version:
2.0
Author:
Fabrice Bouyé (bouye@cur-archamps.fr)
See Also:
DefaultPTreeCellRenderer, Serialized Form

Inner classes inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
Inner classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent, javax.swing.JComponent.IntVector, javax.swing.JComponent.KeyboardBinding, javax.swing.JComponent.KeyboardState
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AWTTreeLock
 
Field Summary
private static javax.swing.Icon ADMINISTRATOR_ALIAS_ICON
          Icon for an administrator alias.
private static javax.swing.Icon GROUP_NODE_COLLAPSED_ICON
          Icon for a collapsed root node.
private static javax.swing.Icon GROUP_NODE_EXPANDED_ICON
          Icon for an expanded group node.
private static javax.swing.Icon PEOPLE_HOME_ICON
          Icon for an people home.
private static javax.swing.Icon RESOURCE_ALIAS_ICON
          Icon for a resource alias.
private static javax.swing.Icon RESOURCE_SHEET_ICON
          Icon for a resource sheet.
private static javax.swing.Icon ROOT_NODE_COLLAPSED_ICON
          Icon for a collapsed root node.
private static javax.swing.Icon ROOT_NODE_EXPANDED_ICON
          Icon for an expanded root node.
private static javax.swing.Icon USER_ALIAS_ICON
          Icon for a user alias.
private static javax.swing.Icon USER_SHEET_ICON
          Icon for a user sheet.
 
Fields inherited from class org.PingOO.DLAI.lib.PWidget.DefaultPTreeCellRenderer
defaultFocusBorder, defaultNonFocusBorder
 
Fields inherited from class javax.swing.tree.DefaultTreeCellRenderer
backgroundNonSelectionColor, backgroundSelectionColor, borderSelectionColor, closedIcon, drawsFocusBorderAroundIcon, hasFocus, leafIcon, openIcon, selected, textNonSelectionColor, textSelectionColor
 
Fields inherited from class javax.swing.JLabel
defaultIcon, disabledIcon, disabledIconSet, horizontalAlignment, horizontalTextPosition, iconTextGap, LABELED_BY_PROPERTY, labelFor, mnemonic, text, uiClassID, verticalAlignment, verticalTextPosition
 
Fields inherited from class javax.swing.JComponent
_bounds, accessibleContext, alignmentX, alignmentY, ANCESTOR_USING_BUFFER, ancestorNotifier, autoscroller, border, changeSupport, clientProperties, flags, HAS_FOCUS, IS_DOUBLE_BUFFERED, IS_OPAQUE, IS_PAINTING_TILE, KEYBOARD_BINDINGS_KEY, listenerList, maximumSize, minimumSize, NEXT_FOCUS, paintImmediatelyClip, preferredSize, readObjectCallbacks, REQUEST_FOCUS_DISABLED, tmpRect, TOOL_TIP_TEXT_KEY, ui, uiClassID, UNDEFINED_CONDITION, vetoableChangeSupport, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Container
component, containerListener, containerSerializedDataVersion, dispatcher, layoutMgr, maxSize, ncomponents, serialVersionUID
 
Fields inherited from class java.awt.Component
actionListenerK, adjustmentListenerK, appContext, assert, background, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, changeSupport, componentListener, componentListenerK, componentOrientation, componentSerializedDataVersion, containerListenerK, cursor, dropTarget, enabled, eventMask, focusListener, focusListenerK, font, foreground, hasFocus, height, incRate, inputMethodListener, inputMethodListenerK, isInc, isPacked, itemListenerK, keyListener, keyListenerK, LEFT_ALIGNMENT, locale, LOCK, minSize, mouseListener, mouseListenerK, mouseMotionListener, mouseMotionListenerK, name, nameExplicitlySet, newEventsOnly, ownedWindowK, parent, peer, peerFont, popups, prefSize, RIGHT_ALIGNMENT, serialVersionUID, textListenerK, TOP_ALIGNMENT, valid, visible, width, windowListenerK, x, y
 
Constructor Summary
DirectoryComponentTreeCellRenderer()
          Constructs a new renderer.
 
Method Summary
static javax.swing.Icon getIconForComponent(DirectoryComponent value)
          Determines the icon to use in order to represent a directory component when rendering a directory tree.
static javax.swing.Icon getIconForComponent(DirectoryComponent value, boolean isExpanded)
          Determines the icon to use in order to represent a directory component when rendering a directory tree.
static javax.swing.Icon getIconForComponent(java.lang.String type)
          Determines the icon to use in order to represent a directory component when rendering a directory tree.
static javax.swing.Icon getIconForComponent(java.lang.String type, boolean isExpanded)
          Determines the icon to use in order to represent a directory component when rendering a directory tree.
 java.awt.Component getTreeCellRendererComponent(javax.swing.JTree tree, java.lang.Object value, boolean isSelected, boolean isExpanded, boolean isLeaf, int row, boolean hasFocus)
          Configures the renderer based on the passed in components.
 
Methods inherited from class javax.swing.tree.DefaultTreeCellRenderer
getBackgroundNonSelectionColor, getBackgroundSelectionColor, getBorderSelectionColor, getClosedIcon, getDefaultClosedIcon, getDefaultLeafIcon, getDefaultOpenIcon, getLabelStart, getLeafIcon, getOpenIcon, getPreferredSize, getTextNonSelectionColor, getTextSelectionColor, paint, setBackground, setBackgroundNonSelectionColor, setBackgroundSelectionColor, setBorderSelectionColor, setClosedIcon, setFont, setLeafIcon, setOpenIcon, setTextNonSelectionColor, setTextSelectionColor
 
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, updateUI, writeObject
 
Methods inherited from class javax.swing.JComponent
_paintImmediately, , addAncestorListener, addNotify, addPropertyChangeListener, addVetoableChangeListener, adjustPaintFlags, alwaysOnTop, bindingForKeyStroke, computeVisibleRect, computeVisibleRect, contains, createToolTip, enableSerialization, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperties, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getFlag, getGraphics, getHeight, getInsets, getInsets, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, keyboardBindings, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paintWithBuffer, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyBindings, processKeyBindingsForAllComponents, processKeyEvent, processMouseMotionEvent, putClientProperty, readObject, rectangleIsObscured, registerKeyboardAction, registerKeyboardAction, registerWithKeyboardManager, removeAncestorListener, removeNotify, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFlag, setForeground, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVisible, shouldDebugGraphics, superProcessMouseMotionEvent, unregisterKeyboardAction, unregisterWithKeyboardManager, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyOrientation, countComponents, deliverEvent, dispatchEventImpl, dispatchEventToSelf, doLayout, eventEnabled, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getLayout, getMouseEventTarget, getWindow, initIDs, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPrint, list, list, locate, minimumSize, nextFocus, paintComponents, postProcessKeyEvent, postsOldMouseEvents, preferredSize, preProcessKeyEvent, print, printComponents, printOneComponent, processContainerEvent, processEvent, proxyEnableEvents, proxyRequestFocus, remove, remove, removeAll, removeContainerListener, setFocusOwner, setLayout, transferFocus, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, areInputMethodsEnabled, bounds, checkImage, checkImage, coalesceEvents, constructComponentName, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getToolkit, getToolkitImpl, getTreeLock, getWindowForObject, gotFocus, handleEvent, hide, imageUpdate, inside, isDisplayable, isEnabled, isEnabledImpl, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

ROOT_NODE_COLLAPSED_ICON

private static final javax.swing.Icon ROOT_NODE_COLLAPSED_ICON
Icon for a collapsed root node.

ROOT_NODE_EXPANDED_ICON

private static final javax.swing.Icon ROOT_NODE_EXPANDED_ICON
Icon for an expanded root node.

GROUP_NODE_COLLAPSED_ICON

private static final javax.swing.Icon GROUP_NODE_COLLAPSED_ICON
Icon for a collapsed root node.

GROUP_NODE_EXPANDED_ICON

private static final javax.swing.Icon GROUP_NODE_EXPANDED_ICON
Icon for an expanded group node.

USER_SHEET_ICON

private static final javax.swing.Icon USER_SHEET_ICON
Icon for a user sheet.

USER_ALIAS_ICON

private static final javax.swing.Icon USER_ALIAS_ICON
Icon for a user alias.

ADMINISTRATOR_ALIAS_ICON

private static final javax.swing.Icon ADMINISTRATOR_ALIAS_ICON
Icon for an administrator alias.

PEOPLE_HOME_ICON

private static final javax.swing.Icon PEOPLE_HOME_ICON
Icon for an people home.

RESOURCE_SHEET_ICON

private static final javax.swing.Icon RESOURCE_SHEET_ICON
Icon for a resource sheet.

RESOURCE_ALIAS_ICON

private static final javax.swing.Icon RESOURCE_ALIAS_ICON
Icon for a resource alias.
Constructor Detail

DirectoryComponentTreeCellRenderer

public DirectoryComponentTreeCellRenderer()
Constructs a new renderer.
A PObserver is set on this class.
Method Detail

getTreeCellRendererComponent

public java.awt.Component getTreeCellRendererComponent(javax.swing.JTree tree,
                                                       java.lang.Object value,
                                                       boolean isSelected,
                                                       boolean isExpanded,
                                                       boolean isLeaf,
                                                       int row,
                                                       boolean hasFocus)
Configures the renderer based on the passed in components.
The value is set from messaging value with toString().
The foreground color is set based on the selection and the icon is set based on on leaf and expanded.
Parameters:
tree - the tree inside wich the component is to be rendered.
value - The object to render.
isSelected - indicates if value is selected.
isExpanded - Indicates if value is expanded.
isLeaf - Indicates if value is a leaf.
row - Indicates the row of value.
hasFocus - Indicates if value has the focus.
Returns:
The Component that the renderer uses to draw the value
Overrides:
getTreeCellRendererComponent in class DefaultPTreeCellRenderer

getIconForComponent

public static javax.swing.Icon getIconForComponent(DirectoryComponent value,
                                                   boolean isExpanded)
Determines the icon to use in order to represent a directory component when rendering a directory tree.
If the component has an icon, it will be used, otherwise, the renderer will get its default icon for this type of component.
Parameters:
value - The directory component to render.
isExpanded - true if the component is currently expanded.
Returns:
The correct icon or an empty icon if the component has no defined icon.

getIconForComponent

public static javax.swing.Icon getIconForComponent(DirectoryComponent value)
Determines the icon to use in order to represent a directory component when rendering a directory tree.
If the component has an icon, it will be used, otherwise, the renderer will get its default icon for this type of component.
Parameters:
value - The directory component to render.
Returns:
The correct icon or an empty icon if the has no defined icon.

getIconForComponent

public static javax.swing.Icon getIconForComponent(java.lang.String type)
Determines the icon to use in order to represent a directory component when rendering a directory tree.
If the component has an icon, it will be used, otherwise, the renderer will get its default icon for this type of component.
Parameters:
type - The type of the component to render.
Returns:
The correct icon or an empty icon if the component has no defined icon, null if the class is not a directory component class.

getIconForComponent

public static javax.swing.Icon getIconForComponent(java.lang.String type,
                                                   boolean isExpanded)
Determines the icon to use in order to represent a directory component when rendering a directory tree.
If the component has an icon, it will be used, otherwise, the renderer will get its default icon for this type of component
Parameters:
type - The type of the component to render.
isExpanded - true if the component is currently expanded.
Returns:
The correct icon or an empty icon if the component has no defined icon, null if the class is not a directory component class.