Class GraphPanel

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Panel
                    |
                    +--GraphPanel

class GraphPanel
extends java.awt.Panel
implements java.lang.Runnable, java.awt.event.MouseListener, java.awt.event.MouseMotionListener

Géreur du dessin du Graphe.

See Also:
Serialized Form

Inner classes inherited from class java.awt.Component
java.awt.Component.AWTTreeLock
 
Field Summary
(package private)  java.awt.Color arcColor1
           
(package private)  java.awt.Color arcColor2
           
(package private)  java.awt.Color arcColor3
           
(package private)  java.awt.Color declaredColor
           
(package private)  java.awt.Color edgeColor
           
(package private)  Edge[] edges
           
(package private)  java.awt.Color fixedColor
           
(package private)  Graph graph
           
(package private)  java.awt.Color maskedColor
           
(package private)  int nedges
           
(package private)  int ninterf
           
(package private)  int nnodes
           
(package private)  java.awt.Color nodeColor
           
(package private)  Node[] nodes
           
(package private)  java.awt.Graphics offgraphics
           
(package private)  java.awt.Image offscreen
           
(package private)  java.awt.Dimension offscreensize
           
(package private)  Node pick
           
(package private)  boolean pickfixed
           
(package private)  java.lang.Thread relaxer
           
(package private)  java.awt.Color selectColor
           
(package private)  java.awt.Color stressColor
           
 
Fields inherited from class java.awt.Panel
base, nameCounter, serialVersionUID
 
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
(package private) GraphPanel(Graph graph)
          Construit le dessin d'un graphe.
 
Method Summary
(package private)  void addEdge(java.lang.String from, java.lang.String to, int len)
          Crée un lien entre deux étiquettes du graphe.
(package private)  int addNode(java.lang.String lbl, boolean classe)
          Crée et ajoute le noeud dans le graphe.
(package private)  int findNode(java.lang.String lbl)
          Cherche un noeud du graphe.
(package private)  int findNode(java.lang.String lbl, boolean classe)
          Cherche un noeud du graphe, si il n'existe pas il est créé.
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
          Réagit au clic de souris sur une étiquette.
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
          Réagit au clic de souris sur une étiquette en bougeant l'étiquette la plus proche vers l'endroit où a cliqué la souris.
 void mouseReleased(java.awt.event.MouseEvent e)
          Réagit au relachement de souris.
 void paintNode(java.awt.Graphics g, Node n, java.awt.FontMetrics fm)
          Crée l'étiquette du graphe selon le nom et la couleur désirée.
(package private)  void relax()
          Calcul le placement optimal des étiquettes du graphe.
 void run()
          Demarre le placement optimal des étiquettes du graphe.
 void start()
          Demarre le placement optimal des étiquettes du graphe.
 void stop()
          Arrete le placement optimal des étiquettes du graphe.
 void update(java.awt.Graphics g)
          Met à jour les changements qui ont eu lieu sur le graphe.
 
Methods inherited from class java.awt.Panel
, addNotify, constructComponentName
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyOrientation, countComponents, deliverEvent, dispatchEventImpl, dispatchEventToSelf, doLayout, eventEnabled, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getCursorTarget, getInsets, getLayout, getMaximumSize, getMinimumSize, getMouseEventTarget, getPreferredSize, getWindow, initIDs, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPrint, list, list, locate, minimumSize, nextFocus, paint, paintComponents, paramString, postProcessKeyEvent, postsOldMouseEvents, preferredSize, preProcessKeyEvent, print, printComponents, printHeavyweightComponents, printOneComponent, processContainerEvent, processEvent, proxyEnableEvents, proxyRequestFocus, readObject, remove, remove, removeAll, removeContainerListener, removeNotify, setCursor, setFocusOwner, setFont, setLayout, transferFocus, updateCursor, validate, validateTree, writeObject
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, areInputMethodsEnabled, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputContext, getInputMethodRequests, getIntrinsicCursor, getLocale, getLocation, getLocation, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getSize, getToolkit, getToolkitImpl, getTreeLock, getWidth, getWindowForObject, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isEnabledImpl, isFocusTraversable, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, remove, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, 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

graph

Graph graph

nnodes

int nnodes

nodes

Node[] nodes

nedges

int nedges

edges

Edge[] edges

ninterf

int ninterf

relaxer

java.lang.Thread relaxer

pick

Node pick

pickfixed

boolean pickfixed

offscreen

java.awt.Image offscreen

offscreensize

java.awt.Dimension offscreensize

offgraphics

java.awt.Graphics offgraphics

fixedColor

final java.awt.Color fixedColor

selectColor

final java.awt.Color selectColor

edgeColor

final java.awt.Color edgeColor

nodeColor

final java.awt.Color nodeColor

stressColor

final java.awt.Color stressColor

arcColor1

final java.awt.Color arcColor1

arcColor2

final java.awt.Color arcColor2

arcColor3

final java.awt.Color arcColor3

declaredColor

final java.awt.Color declaredColor

maskedColor

final java.awt.Color maskedColor
Constructor Detail

GraphPanel

GraphPanel(Graph graph)
Construit le dessin d'un graphe.
Parameters:
graph - graphe que l'on dessine
Method Detail

findNode

int findNode(java.lang.String lbl)
Cherche un noeud du graphe.
Parameters:
lbl - nom du noeud recherché
Returns:
l'emplacement du noeud dans le graphe

findNode

int findNode(java.lang.String lbl,
             boolean classe)
Cherche un noeud du graphe, si il n'existe pas il est créé.
Parameters:
lbl - nom du noeud recherché
classe - indique si le noeud créé contient une classe
Returns:
l'emplacement du noeud dans le graphe

addNode

int addNode(java.lang.String lbl,
            boolean classe)
Crée et ajoute le noeud dans le graphe.
Parameters:
lbl - nom du noeud à créé
classe - indique si le noeud créé contient une classe
Returns:
l'emplacement du noeud dans le graphe

addEdge

void addEdge(java.lang.String from,
             java.lang.String to,
             int len)
Crée un lien entre deux étiquettes du graphe.
Parameters:
to - nom de l'étiquette de départ
classe - nom de l'étiquette d'arrivée
len - longueur du lien

run

public void run()
Demarre le placement optimal des étiquettes du graphe.
Specified by:
run in interface java.lang.Runnable

relax

void relax()
Calcul le placement optimal des étiquettes du graphe.

paintNode

public void paintNode(java.awt.Graphics g,
                      Node n,
                      java.awt.FontMetrics fm)
Crée l'étiquette du graphe selon le nom et la couleur désirée.
Parameters:
g - contexte graphique du dessin du graphe
n - noeud considéré
fm - taille des caractéres du nom du noeud

update

public void update(java.awt.Graphics g)
Met à jour les changements qui ont eu lieu sur le graphe.
Overrides:
update in class java.awt.Container
Parameters:
g - contexte graphique du dessin du graphe

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Réagit au clic de souris sur une étiquette en bougeant l'étiquette la plus proche vers l'endroit où a cliqué la souris.
Specified by:
mousePressed in interface java.awt.event.MouseListener
Parameters:
e - évenement associé au clic

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Réagit au relachement de souris.
Specified by:
mouseReleased in interface java.awt.event.MouseListener
Parameters:
e - évenement associé au relachement du bouton de la souris

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Réagit au clic de souris sur une étiquette.
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener
Parameters:
e - évenement associé au clic

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

start

public void start()
Demarre le placement optimal des étiquettes du graphe.

stop

public void stop()
Arrete le placement optimal des étiquettes du graphe.