Class Navigateur

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--Navigateur

class Navigateur
extends javax.swing.JFrame
implements java.awt.event.ComponentListener, java.awt.event.ActionListener

Interface graphique et application principale de Janx.

Version:
1.1
Author:
Cécile Michelou & Daniele Raffo
See Also:
Serialized Form

Inner classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AWTTreeLock
 
Field Summary
(package private)  javax.swing.JTree arbre
           
(package private)  javax.swing.JScrollPane arbreScroll
           
(package private) static java.lang.String fichierClasslist
           
(package private) static Graph graphe
           
(package private)  javax.swing.JPanel heritage
           
(package private)  javax.swing.JScrollPane heritageScroll
           
(package private)  javax.swing.JSplitPane panneau1
           
(package private)  javax.swing.JSplitPane panneau2
           
(package private) static java.util.Vector schemaDeclaration
           
(package private)  javax.swing.JTable table
           
(package private)  javax.swing.JScrollPane tableScroll
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, defaultCloseOperation, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
base, CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, frameSerializedDataVersion, HAND_CURSOR, icon, ICONIFIED, mbManagement, menuBar, MOVE_CURSOR, N_RESIZE_CURSOR, nameCounter, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, ownedWindows, resizable, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, serialVersionUID, state, SW_RESIZE_CURSOR, TEXT_CURSOR, title, W_RESIZE_CURSOR, WAIT_CURSOR, weakThis
 
Fields inherited from class java.awt.Window
active, base, focusMgr, inputContext, nameCounter, OPENED, ownedWindowList, serialVersionUID, state, warningString, weakThis, windowListener, windowSerializedDataVersion
 
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
Navigateur()
          Crée la fenetre de l'application.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent event)
          Gére les actions sur le menu.
(package private)  void afficheArbre(java.lang.String fichierCL)
          Affiche l'arborescence des classes décrite dans un fichier classlist.
 java.lang.String chargeProprietes()
          Charge le fichier de proprietés Janx.cfg, qui contient le nom du fichier classlist à charger au demarrage.
 void componentHidden(java.awt.event.ComponentEvent e)
           
 void componentMoved(java.awt.event.ComponentEvent e)
           
 void componentResized(java.awt.event.ComponentEvent e)
           
 void componentShown(java.awt.event.ComponentEvent e)
           
(package private)  javax.swing.JTree creeArbre(java.util.Vector arborescence, java.lang.String etiquette)
          Crée l'arborescence des fichiers .class .
 java.lang.String demandeFichierClasslist()
          Montre le filechooser pour la choix d'un fichier classlist.
(package private)  void effectueReflexion(java.lang.String classe, java.lang.String nomNoeud)
          Effectue l'introspection d'une classe et en affiche les membres (dans une JTable) et la hierarchie d'heritage (dans un Graph).
static void main(java.lang.String[] args)
           
 void montreAbout()
          Montre un écran avec les noms des auteurs.
 void sauvegardeProprietes()
          Sauvegarde le nom du dernier fichier classlist utilisé, dans le fichier de configuration Janx.cfg.
(package private) static void visualiseClassesDeclarantes(java.lang.String membre)
          Dans le graphe d'heritage, change les couleurs des classes qui déclarent ou masquent un membre.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, createRootPaneException, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
, addNotify, addToFrameList, constructComponentName, finalize, getCursorType, getFrames, getIconImage, getMenuBar, getState, getTitle, initIDs, isResizable, postProcessKeyEvent, readObject, remove, removeFromFrameList, removeNotify, setCursor, setIconImage, setMenuBar, setResizable, setState, setTitle, writeObject
 
Methods inherited from class java.awt.Window
addOwnedWindow, addWindowListener, applyResourceBundle, applyResourceBundle, connectOwnedWindow, dispatchEventImpl, dispose, eventEnabled, getFocusOwner, getInputContext, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, hide, isActive, isShowing, nextFocus, ownedInit, pack, postEvent, postWindowEvent, preProcessKeyEvent, processEvent, removeOwnedWindow, removeWindowListener, setCursor, setFocusOwner, setWarningString, show, toBack, toFront, transferFocus
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyOrientation, countComponents, deliverEvent, dispatchEventToSelf, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getCursorTarget, getInsets, getLayout, getMaximumSize, getMinimumSize, getMouseEventTarget, getPreferredSize, getWindow, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPrint, list, list, locate, minimumSize, paint, paintComponents, postsOldMouseEvents, preferredSize, print, printComponents, printHeavyweightComponents, printOneComponent, processContainerEvent, proxyEnableEvents, proxyRequestFocus, remove, removeAll, removeContainerListener, setFont, updateCursor, validate, validateTree
 
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, getInputMethodRequests, getIntrinsicCursor, getLocation, getLocation, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getSize, getToolkitImpl, getTreeLock, getWidth, getWindowForObject, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isEnabledImpl, isFocusTraversable, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processInputMethodEvent, processMouseEvent, processMouseMotionEvent, 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, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

fichierClasslist

static java.lang.String fichierClasslist

schemaDeclaration

static java.util.Vector schemaDeclaration

graphe

static Graph graphe

arbre

javax.swing.JTree arbre

table

javax.swing.JTable table

heritage

javax.swing.JPanel heritage

arbreScroll

javax.swing.JScrollPane arbreScroll

tableScroll

javax.swing.JScrollPane tableScroll

heritageScroll

javax.swing.JScrollPane heritageScroll

panneau1

javax.swing.JSplitPane panneau1

panneau2

javax.swing.JSplitPane panneau2
Constructor Detail

Navigateur

public Navigateur()
           throws java.lang.Exception
Crée la fenetre de l'application.
Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent event)
Gére les actions sur le menu.
Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
event - l'evenement arrivé

componentHidden

public void componentHidden(java.awt.event.ComponentEvent e)
Specified by:
componentHidden in interface java.awt.event.ComponentListener

componentMoved

public void componentMoved(java.awt.event.ComponentEvent e)
Specified by:
componentMoved in interface java.awt.event.ComponentListener

componentResized

public void componentResized(java.awt.event.ComponentEvent e)
Specified by:
componentResized in interface java.awt.event.ComponentListener

componentShown

public void componentShown(java.awt.event.ComponentEvent e)
Specified by:
componentShown in interface java.awt.event.ComponentListener

creeArbre

javax.swing.JTree creeArbre(java.util.Vector arborescence,
                            java.lang.String etiquette)
Crée l'arborescence des fichiers .class .
Parameters:
arborescence - une structure contenante les noms des répertoires et les noms des fichiers .class contenus
etiquette - le nom à afficher sur la racine
Returns:
l'arbre des répertoires et des fichier .class

demandeFichierClasslist

public java.lang.String demandeFichierClasslist()
Montre le filechooser pour la choix d'un fichier classlist.
Returns:
le nom du fichier selectionné, ou null si l'utilisateur a cliqué sur Cancel

chargeProprietes

public java.lang.String chargeProprietes()
Charge le fichier de proprietés Janx.cfg, qui contient le nom du fichier classlist à charger au demarrage.
Returns:
le nom du fichier classlist contenu dans Janx.cfg, ou null en cas d'erreur de I/O

sauvegardeProprietes

public void sauvegardeProprietes()
Sauvegarde le nom du dernier fichier classlist utilisé, dans le fichier de configuration Janx.cfg.

effectueReflexion

void effectueReflexion(java.lang.String classe,
                       java.lang.String nomNoeud)
Effectue l'introspection d'une classe et en affiche les membres (dans une JTable) et la hierarchie d'heritage (dans un Graph).
Parameters:
classe - le nom du fichier .class de la classe à reflecter
nomNoeud - le nom de la branche contenante la classe. Cela est nécessaire seulement si le fichier classe est contenu dans un Java Archive

visualiseClassesDeclarantes

static void visualiseClassesDeclarantes(java.lang.String membre)
Dans le graphe d'heritage, change les couleurs des classes qui déclarent ou masquent un membre.
Parameters:
membre - le membre concerné

afficheArbre

void afficheArbre(java.lang.String fichierCL)
            throws java.lang.NullPointerException,
                   java.io.IOException
Affiche l'arborescence des classes décrite dans un fichier classlist.
Parameters:
fichierCL - un fichier classlist

montreAbout

public void montreAbout()
Montre un écran avec les noms des auteurs.

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception