freemind.view.mindmapview
Class NodeView

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JLabel
                  extended byfreemind.view.mindmapview.NodeView
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.swing.SwingConstants
Direct Known Subclasses:
MoveableNodeView, RootNodeView

public abstract class NodeView
extends javax.swing.JLabel

This class represents a single Node of a MindMap (in analogy to TreeCellRenderer).

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected static java.awt.Color dragColor
           
static int DRAGGED_OVER_NO
           
static int DRAGGED_OVER_SIBLING
           
static int DRAGGED_OVER_SON
           
static int DRAGGED_OVER_SON_LEFT
          For RootNodeView.
protected  EdgeView edge
           
protected  int isDraggedOver
           
protected  MapView map
           
protected  MindMapNode model
           
protected static java.awt.Color selectedColor
          the Color of the Rectangle of a selected Node
protected  int treeHeight
           
protected  int treeWidth
           
protected  int upperChildShift
           
 
Fields inherited from class javax.swing.JLabel
labelFor
 
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 javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
protected NodeView(MindMapNode model, MapView map)
           
 
Method Summary
protected  void addToMap()
           
 boolean dropAsSibling(double xCoord)
           
 boolean dropPosition(double xCoord)
           
 int getAdditionalCloudHeigth()
          Calculates the tree height increment because of the clouds.
protected static java.awt.Color getAntiColor1(java.awt.Color c)
          Ermittelt zu einer Farbe eine andere Farbe, die sich m�glichst gut von dieser abhebt.
protected static java.awt.Color getAntiColor2(java.awt.Color c)
          Ermittelt zu einer Farbe eine andere Farbe, die sich m�glichst gut von dieser abhebt.
 java.util.LinkedList getChildrenViews()
          This method returns the NodeViews that are children of this node.
 void getCoordinates(java.util.LinkedList inList)
          Returns the coordinates occupied by the node and its children as a vector of four point per node.
 int getDraggedOver()
           
 int getExtendedHeight()
          get height including folding symbol
protected  int getExtendedHeight(int h)
          get height including folding symbol
 int getExtendedWidth()
          get width including folding symbol
protected  int getExtendedWidth(int w)
           
 int getExtendedX()
          get x coordinate including folding symbol
 int getExtendedY()
          get y coordinate including folding symbol
 int getHGap()
           
 boolean getIsLong()
           
 java.awt.Point getLinkPoint(java.awt.Point declination)
          Returns the Point where the Links should arrive the Node.
 MindMapNode getModel()
           
 NodeMotionListenerView getMotionListenerView()
           
protected  NodeView getNextPage()
           
protected  NodeView getNextSibling()
           
protected  NodeView getNextSiblingSingle()
           
protected  NodeView getParentView()
           
 java.awt.Dimension getPreferredSize()
           
protected  NodeView getPreviousPage()
           
protected  NodeView getPreviousSibling()
           
protected  NodeView getPreviousSiblingSingle()
           
protected  java.awt.Color getSelectedColor()
           
 int getShift()
           
protected  java.util.LinkedList getSiblingViews()
           
 int getTreeHeight()
           
 int getTreeWidth()
           
 int getUpperChildShift()
           
 int getVGap()
           
 int getZoomedFoldingSymbolHalfWidth()
           
 boolean isChildOf(NodeView myNodeView)
           
 boolean isInFollowLinkRegion(double xCoord)
           
 boolean isInVerticalRegion(double xCoord, double p)
          Determines whether or not the xCoord is in the part p of the node: if node is on the left: part [1-p,1] if node is on the right: part[ 0,p] of the total width.
 boolean isLeft()
          Is the node left of root?
 boolean isParentOf(NodeView myNodeView)
           
 boolean isRoot()
           
protected  boolean isSelected()
           
 boolean isSiblingOf(NodeView myNodeView)
           
protected static NodeView newNodeView(MindMapNode model, MapView map)
          Factory method which creates the right NodeView for the model.
 void paint(java.awt.Graphics graphics)
           
protected  void paintBackground(java.awt.Graphics2D graphics, java.awt.Dimension size, java.awt.Color color)
           
 void paintDragOver(java.awt.Graphics2D graphics, java.awt.Dimension size)
           
 void paintFoldingMark(java.awt.Graphics2D g)
          draw folding symbol
 void paintSelected(java.awt.Graphics2D graphics, java.awt.Dimension size)
           
protected  void removeFromMap()
           
 void requestFocus()
           
 void setBounds(int x, int y)
           
 void setDraggedOver(int draggedOver)
           
 void setDraggedOver(java.awt.Point p)
           
protected  void setLeft(boolean left)
           
protected  void setMap(MapView map)
           
protected  void setModel(MindMapNode model)
           
protected  void setRendering(java.awt.Graphics2D g)
           
 void setTreeHeight(int i)
          sets the shift of the tree root node relative to the middle of the tree because of the light shift of the children nodes.
 void setTreeWidth(int i)
           
 void setUpperChildShift(int treeShift)
           
 boolean updateCursor(double xCoord)
           
 void updateToolTip()
          Updates the tool tip of the node.
 
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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
 

Field Detail

model

protected MindMapNode model

map

protected MapView map

edge

protected EdgeView edge

selectedColor

protected static final java.awt.Color selectedColor
the Color of the Rectangle of a selected Node


dragColor

protected static final java.awt.Color dragColor

treeWidth

protected int treeWidth

treeHeight

protected int treeHeight

upperChildShift

protected int upperChildShift

DRAGGED_OVER_NO

public static final int DRAGGED_OVER_NO
See Also:
Constant Field Values

DRAGGED_OVER_SON

public static final int DRAGGED_OVER_SON
See Also:
Constant Field Values

DRAGGED_OVER_SIBLING

public static final int DRAGGED_OVER_SIBLING
See Also:
Constant Field Values

DRAGGED_OVER_SON_LEFT

public static final int DRAGGED_OVER_SON_LEFT
For RootNodeView.

See Also:
Constant Field Values

isDraggedOver

protected int isDraggedOver
Constructor Detail

NodeView

protected NodeView(MindMapNode model,
                   MapView map)
Method Detail

setDraggedOver

public void setDraggedOver(int draggedOver)

setDraggedOver

public void setDraggedOver(java.awt.Point p)

getDraggedOver

public int getDraggedOver()

addToMap

protected void addToMap()

removeFromMap

protected void removeFromMap()

newNodeView

protected static NodeView newNodeView(MindMapNode model,
                                      MapView map)
Factory method which creates the right NodeView for the model.


dropAsSibling

public boolean dropAsSibling(double xCoord)

isInVerticalRegion

public boolean isInVerticalRegion(double xCoord,
                                  double p)
Determines whether or not the xCoord is in the part p of the node: if node is on the left: part [1-p,1] if node is on the right: part[ 0,p] of the total width.


dropPosition

public boolean dropPosition(double xCoord)
Returns:
true if should be on the left, false otherwise.

isInFollowLinkRegion

public boolean isInFollowLinkRegion(double xCoord)

updateCursor

public boolean updateCursor(double xCoord)
Parameters:
xCoord -
Returns:
true if a link is to be displayed and the curser is the hand now.

isRoot

public boolean isRoot()

getIsLong

public boolean getIsLong()

isSiblingOf

public boolean isSiblingOf(NodeView myNodeView)

isChildOf

public boolean isChildOf(NodeView myNodeView)

isParentOf

public boolean isParentOf(NodeView myNodeView)

getModel

public MindMapNode getModel()

getCoordinates

public void getCoordinates(java.util.LinkedList inList)
Returns the coordinates occupied by the node and its children as a vector of four point per node.


getPreferredSize

public java.awt.Dimension getPreferredSize()

getExtendedWidth

public int getExtendedWidth()
get width including folding symbol


getExtendedHeight

public int getExtendedHeight()
get height including folding symbol


getExtendedWidth

protected int getExtendedWidth(int w)

getExtendedHeight

protected int getExtendedHeight(int h)
get height including folding symbol


getExtendedX

public int getExtendedX()
get x coordinate including folding symbol


getExtendedY

public int getExtendedY()
get y coordinate including folding symbol


setBounds

public void setBounds(int x,
                      int y)

requestFocus

public void requestFocus()

paintFoldingMark

public void paintFoldingMark(java.awt.Graphics2D g)
draw folding symbol


paint

public void paint(java.awt.Graphics graphics)

paintSelected

public void paintSelected(java.awt.Graphics2D graphics,
                          java.awt.Dimension size)

paintBackground

protected void paintBackground(java.awt.Graphics2D graphics,
                               java.awt.Dimension size,
                               java.awt.Color color)

paintDragOver

public void paintDragOver(java.awt.Graphics2D graphics,
                          java.awt.Dimension size)

getAdditionalCloudHeigth

public int getAdditionalCloudHeigth()
Calculates the tree height increment because of the clouds.


isSelected

protected boolean isSelected()

isLeft

public boolean isLeft()
Is the node left of root?


setLeft

protected void setLeft(boolean left)

setModel

protected void setModel(MindMapNode model)

setMap

protected void setMap(MapView map)

getParentView

protected NodeView getParentView()

getChildrenViews

public java.util.LinkedList getChildrenViews()
This method returns the NodeViews that are children of this node.


getSiblingViews

protected java.util.LinkedList getSiblingViews()

getLinkPoint

public java.awt.Point getLinkPoint(java.awt.Point declination)
Returns the Point where the Links should arrive the Node. THIS SHOULD BE DECLARED ABSTRACT AND BE DONE IN BUBBLENODEVIEW ETC.


getNextPage

protected NodeView getNextPage()

getPreviousPage

protected NodeView getPreviousPage()

getNextSibling

protected NodeView getNextSibling()

getPreviousSibling

protected NodeView getPreviousSibling()

getNextSiblingSingle

protected NodeView getNextSiblingSingle()

getPreviousSiblingSingle

protected NodeView getPreviousSiblingSingle()

updateToolTip

public void updateToolTip()
Updates the tool tip of the node.


setRendering

protected void setRendering(java.awt.Graphics2D g)

getTreeHeight

public int getTreeHeight()
Returns:
the shift of the tree root node relative to the middle of the tree because of the light shift of the children nodes

setTreeHeight

public void setTreeHeight(int i)
sets the shift of the tree root node relative to the middle of the tree because of the light shift of the children nodes.


getTreeWidth

public int getTreeWidth()

setTreeWidth

public void setTreeWidth(int i)

getZoomedFoldingSymbolHalfWidth

public int getZoomedFoldingSymbolHalfWidth()

getSelectedColor

protected java.awt.Color getSelectedColor()
Returns:
returns the color that should used to select the node.

getAntiColor1

protected static java.awt.Color getAntiColor1(java.awt.Color c)
Ermittelt zu einer Farbe eine andere Farbe, die sich m�glichst gut von dieser abhebt. Diese Farbe unterscheidet sich auch von getAntiColor2(java.awt.Color).

Since:
PPS 1.1.1

getAntiColor2

protected static java.awt.Color getAntiColor2(java.awt.Color c)
Ermittelt zu einer Farbe eine andere Farbe, die sich m�glichst gut von dieser abhebt. Diese Farbe unterscheidet sich von getAntiColor1(java.awt.Color).

Since:
PPS 1.1.1

getShift

public int getShift()
Returns:
Returns the sHIFT.

getVGap

public int getVGap()
Returns:
Returns the VGAP.

getHGap

public int getHGap()

getUpperChildShift

public int getUpperChildShift()

setUpperChildShift

public void setUpperChildShift(int treeShift)

getMotionListenerView

public NodeMotionListenerView getMotionListenerView()