ARoad0.Gui2
Class GraphicNoThanView

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 ARoad0.Gui2.GraphicView
                      extended by ARoad0.Gui2.GraphicNoThanView
All Implemented Interfaces:
MVC_View, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class GraphicNoThanView
extends GraphicView

This class is responsible for displaying a set of Sources and one access Target, and to show if all the rights of all the sources on this target are above or not a No-More-Than right criterion, and below or not a No-Less-Than right criterion. Using StringRight.compareTo() between the rights, the right internal key is the first compared property if the rights have the same sens. Thus, this method may detect the criterion right is not fulfilled while the effective right has no direct path to the criterion right, in the network of rights. This is a defensive behavior, which may be considered too restrictive in some cases. On the other hand, the Access Road user gets the effective right in the 'See why' text. He may so decide the gravity to get no fulfillment.

The target is displayed at the top of the view. It is processed as another BaseObject to show in a GraphicNode, as usual for GraphicViews. If it is null, the criteria rights are not displayed. The two criteria rights use two GraphicTexts to switch the color between green and red, following the result of each rights analysis.

This class overrides some GraphicView methods: resetGraphicView(), drawArrowsAndRights(). It overrides several methods of its parent GraphicEPRView: initialize(), buildUpArrowsAndRights(), setGraphicNodes(), resetRights(), setWhyText().

It has some specific methods for allowing its GraphicViewListener to detect any change in the criteria states. This is used for instance to update the frame icon of the GraphicNoThanView frame. It has also a specific method to detect when an Source has an excluded Source, to draw this Source node in gray rather than in blue. See the superclass GraphicView to understand this class.

See Also:
NoThanViewInBaseImpl, GraphicView, GraphicEPRView, 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
protected static java.awt.geom.Point2D.Float ARROW_END
           
protected static java.awt.geom.Point2D.Float ARROW_START
           
protected static int ARROW_WIDTH_SHIFT
           
protected static int EP_ORIGINE_HEIGHT
           
protected static int EP_ORIGINE_WIDTH
           
protected  GraphicText lessCriterion_
          The GraphicText which displays the less criterion right in green or red.
protected  GraphicText moreCriterion_
          The GraphicText which displays the more criterion right in green or red.
protected static java.lang.String NO_LESS_RIGHT_GRAPHICTEXT_BOUNDS_KEY
          The key in GraphicView.m_GraphicNodesBounds_ for the GraphicText of the no-less-than right.
protected static java.lang.String NO_MORE_RIGHT_GRAPHICTEXT_BOUNDS_KEY
          The key in GraphicView.m_GraphicNodesBounds_ for the GraphicText of the no-more-than right.
protected static int RIGHTS_ORIGINE_HEIGTH
           
protected static int RIGHTS_ORIGINE_WIDTH
           
protected static int TARGET_ORIGINE_HEIGTH
           
protected static int TARGET_ORIGINE_WIDTH
           
 
Fields inherited from class ARoad0.Gui2.GraphicView
ARROW_HEAD_ANGLE, ARROW_HEAD_LENGTH, BASIC_STROKE, BORDER, DASHED_DOUBLEWIDTH_STROKE, DASHED_STROKE, DOUBLEWIDTH_STROKE, dragSourceNodeName_, dragTargetNodeName_, INITIAL_CAPACITY, l_allNodesInLinks_, l_currentArrowsAndRightsStarts_, l_LinksAndRights_, l_rightsRelatedBaseObjects_, m_GraphicNodes_, m_GraphicNodesBounds_, m_l_DisplayableLinks_, mouseDragged_, NODE_DISTANCE, nodesNumber_, NULL_SHAPE_ARRAY, PRIME, RIGHTS_SHIFT, viewInBase_, WAITING_TEXT, whyText_
 
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
GraphicNoThanView()
          This constructor is only for the subclasses, if any.
GraphicNoThanView(NoThanViewInBase _view, java.util.Map _m_positionIndex)
          This constructor adds all the _view objects in this panel, each associated to a GraphicNode.
 
Method Summary
protected  java.lang.Object[] buildUpArrowsAndRights(java.util.Map _m_l_DisplayableLinks, java.util.Map _m_gNodeBoundsModel)
          Build up the links and rights to put in l_LinksAndRights_, to be painted by GraphicView.drawArrowsAndRights().
protected  void drawArrowsAndRights(java.awt.Graphics2D _g2)
          Draws the single arrow, the comments and rights with BeamerManager.plainFont from the values in l_LinksAndRights_ and l_currentArrowsAndRightsStarts_.
 void finalizeForGui()
          Invoked by resetGraphicView() and ViewTreeBaseListenerImpl to finalize the instance and set is a a new object before the initialization, with the exception of whyText_ that is set to null to indicate the finalizing operation.
private  java.awt.Point[] getGraphicNodesPositionsForSources()
          Gets an array of 9-positions for the layout of the GraphicNoThanView Eligible Parties, with their coordinates from the GraphicView origine point.
protected  void initialize()
          Initializes nodesNumber_ (not used in this clss), m_l_DisplayableLinks_, l_allNodesInLinks_, nodesNumber_, moreCriterion_ and lessCrietria_ and set the GraphicNodes locations.
 boolean isGreenForLess()
          The green color for the drawn text is InternalFrame.FORECOLOR_3, else it is a red color: InternalFrame.FORECOLOR_4.
 boolean isGreenForMore()
          The green color for the drawn text is InternalFrame.FORECOLOR_3, else it is a red color: InternalFrame.FORECOLOR_4.
protected  boolean isReducedSource(ImmutableSource _sour)
          Called by GraphicGroup, GraphicAccount, GraphicActor.
 void mouseReleased(java.awt.event.MouseEvent _e)
          No operation in any case.
protected  void resetCriteria(java.util.Map _m_l_DisplayableLinks)
          Sets the criterion right and the green/red color on each right criteria.
 void resetRights()
          Draws the two right colors after a change in the rights, without changing in GraphicNodes and the arrow.
protected  void setGraphicNodeLocations(ImmutableName _newNodeName, java.util.Map _m_GraphicNodesPosition)
          Called only by resetGraphicView().
protected  void setGraphicNodes()
          The GraphicNodes there are for the target and the sources, but not for the GraphicTexts which are updated with the rights.
 void setRightsRelatedBaseObjects(java.util.HashSet _l_baseObjects)
          These BaseObjects are provided by the gWork classes, and cannot be view objects.
 javax.swing.JTextPane setWhyText()
          Provides the comments that the program generates in this method to explain the view rights.
 
Methods inherited from class ARoad0.Gui2.GraphicView
addWaitingMessage, getAllNodesInLinks, getEorDataModel, getExportImage, getHiddenNodesInLinks, getIndexesOfNodeLocations, getLinksHashCode, getMaximumSize, getMinimumSize, getPreferredSize, getRightsRelatedBaseObjects, getSelectedObjectOnMouseClicked, getWhyText, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, paintComponent, removeWaitingMessage, resetGraphicView, setGraphicNodesPositions, setIndexesOfNodeLocations, setPoint2DForArrowAndRights, setViewSize
 
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, getNextFocusableComponent, getPopupLocation, 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, 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
 

Field Detail

moreCriterion_

protected GraphicText moreCriterion_
The GraphicText which displays the more criterion right in green or red. It is a Graphicnode but is not in m_GraphicNodes_, m_GraphicNodesBounds_ since it cannot be moved.


lessCriterion_

protected GraphicText lessCriterion_
The GraphicText which displays the less criterion right in green or red. It is a Graphicnode but is not in m_GraphicNodes_, m_GraphicNodesBounds_ since it cannot be moved.


NO_MORE_RIGHT_GRAPHICTEXT_BOUNDS_KEY

protected static final java.lang.String NO_MORE_RIGHT_GRAPHICTEXT_BOUNDS_KEY
The key in GraphicView.m_GraphicNodesBounds_ for the GraphicText of the no-more-than right.

See Also:
Constant Field Values

NO_LESS_RIGHT_GRAPHICTEXT_BOUNDS_KEY

protected static final java.lang.String NO_LESS_RIGHT_GRAPHICTEXT_BOUNDS_KEY
The key in GraphicView.m_GraphicNodesBounds_ for the GraphicText of the no-less-than right.

See Also:
Constant Field Values

EP_ORIGINE_WIDTH

protected static final int EP_ORIGINE_WIDTH
See Also:
Constant Field Values

EP_ORIGINE_HEIGHT

protected static final int EP_ORIGINE_HEIGHT
See Also:
Constant Field Values

TARGET_ORIGINE_WIDTH

protected static final int TARGET_ORIGINE_WIDTH
See Also:
Constant Field Values

TARGET_ORIGINE_HEIGTH

protected static final int TARGET_ORIGINE_HEIGTH
See Also:
Constant Field Values

ARROW_END

protected static java.awt.geom.Point2D.Float ARROW_END

ARROW_START

protected static final java.awt.geom.Point2D.Float ARROW_START

ARROW_WIDTH_SHIFT

protected static final int ARROW_WIDTH_SHIFT
See Also:
Constant Field Values

RIGHTS_ORIGINE_WIDTH

protected static final int RIGHTS_ORIGINE_WIDTH
See Also:
Constant Field Values

RIGHTS_ORIGINE_HEIGTH

protected static final int RIGHTS_ORIGINE_HEIGTH
See Also:
Constant Field Values
Constructor Detail

GraphicNoThanView

public GraphicNoThanView()
This constructor is only for the subclasses, if any.


GraphicNoThanView

public GraphicNoThanView(NoThanViewInBase _view,
                         java.util.Map _m_positionIndex)
                  throws ProcessError,
                         java.lang.InterruptedException
This constructor adds all the _view objects in this panel, each associated to a GraphicNode. Set the JPanel size, its GraphicNodes, the two Sources and excluded Sources rectangles, construct the single arrow from the Sources rectangle to the target, and the No-More-Than/No-Less-Than criteria states to be drawn in paintComponents(). The main work is done there by buildUpArrowsAndRights(), so that the paint action is fast. Any BaseObject updating is done by GraphicViewBaseListenerImpl, which resets the instance through resetRights() and resetGraphicView(). Does not call the parent constructor. Called by ActionOpenGraphicView.openViewInGui() in the event dispatch thread.

Parameters:
_view - NoThanViewInBase to associate to this instance.
_m_positionIndex - is the map (name, Integer) returned by getIndexesOfNodeLocations() at the previous view opening. May be null.
Throws:
ProcessError - if there is a loop in the rights searching
java.lang.InterruptedException
Method Detail

isGreenForMore

public final boolean isGreenForMore()
The green color for the drawn text is InternalFrame.FORECOLOR_3, else it is a red color: InternalFrame.FORECOLOR_4. A null target does not change the result.

Returns:
_true if the current text color is green for the more criterion, false if it is red

isGreenForLess

public final boolean isGreenForLess()
The green color for the drawn text is InternalFrame.FORECOLOR_3, else it is a red color: InternalFrame.FORECOLOR_4. A null target does not change the result.

Returns:
true if the current text color is green for the less criterion, false if it is red

setWhyText

public final javax.swing.JTextPane setWhyText()
Provides the comments that the program generates in this method to explain the view rights. It explains the first access path which does not fulfill one of the view criteria. This method is also used to test if the instance has been finalized. Its height is used by the GraphicViewBaseListener. Overrides the GraphicEPRView method

Overrides:
setWhyText in class GraphicView
Returns:
the text which explains the rights in the view. Null if finalized. Empty at the GraphicNoThanView initialization.

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent _e)
No operation in any case. Overrides the GraphicView method

Specified by:
mouseReleased in interface java.awt.event.MouseListener
Overrides:
mouseReleased in class GraphicView
Parameters:
_e - is the event

resetRights

public final void resetRights()
                       throws ProcessError,
                              java.lang.InterruptedException
Draws the two right colors after a change in the rights, without changing in GraphicNodes and the arrow.

This class is designed to be updated, as any JComponent, by the event dispatch thread for most of the operations, but it allows the rights updating in a worker thread, through the call of this method.

Called in a worker thread by GraphicViewBaseListener.changeTabView() and changeFrameView(), GraphicViewPropertyEditor.propertyChange(). Calls RightsFactory_Facade.detectNoThanRights(). This method must be followed by a call to repaint() in the event dispatch thread. Overrides the super method.

Overrides:
resetRights in class GraphicView
Throws:
ProcessError - if there is a loop in the rights search
java.lang.InterruptedException

setRightsRelatedBaseObjects

public final void setRightsRelatedBaseObjects(java.util.HashSet _l_baseObjects)
These BaseObjects are provided by the gWork classes, and cannot be view objects. Called by the gWork core algorithms. Overrides the super method to remove the view BaseObjects.

Overrides:
setRightsRelatedBaseObjects in class GraphicView
Parameters:
_l_baseObjects - BaseObject set. May be null.

finalizeForGui

public final void finalizeForGui()
Invoked by resetGraphicView() and ViewTreeBaseListenerImpl to finalize the instance and set is a a new object before the initialization, with the exception of whyText_ that is set to null to indicate the finalizing operation. Overrides the super method and calls it.

Overrides:
finalizeForGui in class GraphicView

buildUpArrowsAndRights

protected final java.lang.Object[] buildUpArrowsAndRights(java.util.Map _m_l_DisplayableLinks,
                                                          java.util.Map _m_gNodeBoundsModel)
Build up the links and rights to put in l_LinksAndRights_, to be painted by GraphicView.drawArrowsAndRights(). There are 3 Line2Ds for the arrow, one String for each of the two titles and one GraphicText for each of the two right criteria. The GraphicTexts are not used in drawArrowsAndRights(). Called by the contructor in this class and by GraphicView.resetGraphicView(). Not called by resetRights() and the super class method GraphicView.mouseReleased() which are overridden. Calls the static method GraphicEPRView.setArrowHead(). The absolute position of the GraphicText is set in the initialize() method, and not there like for the other objects. Overrides the super method.

Overrides:
buildUpArrowsAndRights in class GraphicView
Parameters:
_m_l_DisplayableLinks - is the map of DisplayableLinks lists (one per pair) associated to the view.
_m_gNodeBoundsModel - is the map of the node bounds for the shapes in the GraphicNoThanView. No use there.
Returns:
Object[] to draw in paintComponent(), with both the arrow at absolute positionning (1 Shape for the line and 2 Shapes for the head) and the titles and criteria rights (1 String and 1 GraphicText).

setGraphicNodeLocations

protected final void setGraphicNodeLocations(ImmutableName _newNodeName,
                                             java.util.Map _m_GraphicNodesPosition)
Called only by resetGraphicView(). Overrides GraphicView to do nothing since the initialize() method does the job. Overrides the super method.

Overrides:
setGraphicNodeLocations in class GraphicView
Parameters:
_newNodeName - name of the base object to add. May be null.
_m_GraphicNodesPosition - is the map of the old locations. May be empty.

resetCriteria

protected final void resetCriteria(java.util.Map _m_l_DisplayableLinks)
Sets the criterion right and the green/red color on each right criteria. If the view target is null or if there is no view Sources, the GraphicText BaseObjects are set to null and the criteria rights are not visible in the view. Called by buildUpArrowsAndRights() and resetRights().

Parameters:
_m_l_DisplayableLinks - is the map of DisplayableLinks lists (one per pair) associated to the view. If empty, the colors are green.

initialize

protected final void initialize()
                         throws ProcessError,
                                java.lang.InterruptedException
Initializes nodesNumber_ (not used in this clss), m_l_DisplayableLinks_, l_allNodesInLinks_, nodesNumber_, moreCriterion_ and lessCrietria_ and set the GraphicNodes locations. In m_GraphicNodesBounds_, moreCriterion_ and lessCriterion_ are put with the keys NameImpl("") to be activated through a mouse click. Does not initialize l_NoSourceTargets_, l_accessTargetEP_, noSourceTargetsCount_, sourcesCount_. Called by the constructor and resetGraphicView(). Calls RightsFactory_Facade.detectNoThanRights(). Synchronized on viewInBase_. Overrides the super method.

Overrides:
initialize in class GraphicView
Throws:
InterruptedException, - ProcessError if there is a loop in the rights search
ProcessError
java.lang.InterruptedException

setGraphicNodes

protected final void setGraphicNodes()
The GraphicNodes there are for the target and the sources, but not for the GraphicTexts which are updated with the rights. Sets the GraphicNodes in a 9-positions layout for the Eligible Parties, and sets the target GraphicNode in the JPanel, with their absolute coordinates. The nodes for GroupIDs are drawn first. GraphicNodes for GroupID or UserID are drawn in grey rather than blue if they are associated to an excluded EP. The excluded sources are not drawn as GraphicNodes; they are in the 'See why' text. Calls super.setGraphicNodesPositions(). Called by initialize(). Clears then updates m_GraphicNodes_, updates m_GraphicNodesBounds_. Overrides the super method.

Overrides:
setGraphicNodes in class GraphicView

isReducedSource

protected final boolean isReducedSource(ImmutableSource _sour)
Called by GraphicGroup, GraphicAccount, GraphicActor.

Parameters:
_sour - an access source
Returns:
true if _sour is a reduced EP in the NoThanViewInBase

drawArrowsAndRights

protected final void drawArrowsAndRights(java.awt.Graphics2D _g2)
Draws the single arrow, the comments and rights with BeamerManager.plainFont from the values in l_LinksAndRights_ and l_currentArrowsAndRightsStarts_. The GraphicNodes are painted by paintComponent() and getExportImage() and they call this method. This method is designed to be fast, since Shapes and Strings to draw has been put in the l_LinksAndRights_ array by buildUpArrowsAndRights() before the call of this method. The two titles ('No-More-Than right:' and 'No-Less-Than right:') are in dark grey. The two right texts are in green or red, following the compliance with the criterion, but they are not in l_LinksAndRights_, since they are added to the GraphicView by initialize(). Uses antialiasing on shapes and texts. Caution: Swing calls always GraphicView.drawArrowsAndRights() before this method, and l_LinksAndRights_ is often null at this moment. Called by paintComponent(). Overrides the super method. Overrides the ViewInBase method.

Overrides:
drawArrowsAndRights in class GraphicView
Parameters:
_g2 - is the Graphics2D to draw

getGraphicNodesPositionsForSources

private final java.awt.Point[] getGraphicNodesPositionsForSources()
Gets an array of 9-positions for the layout of the GraphicNoThanView Eligible Parties, with their coordinates from the GraphicView origine point. Called by setGraphicNodes().

Returns:
the array of node positions, in the correct order.