JGraphpad Pro
v6.0.5.0


com.jgraph.pad.factory
Class JGraphpadPane

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended bycom.jgraph.pad.factory.JGraphpadPane
All Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable

public class JGraphpadPane
extends JPanel

Main application panel consisting of a menubar and toolbar, two tabbed panes, one on the left and one on the bottom, a desktop pane in the center, and a status bar.

See Also:
Serialized Form

Nested Class Summary
static class JGraphpadPane.BottomTabFactoryMethod
          Provides a factory method to construct the bottom tab of an editor pane.
static class JGraphpadPane.DocumentTracker
          Utility class to establish a listener in a editor's document model and update an editor pane.
static class JGraphpadPane.FactoryMethod
          Provides a factory method to construct an editor pane.
static class JGraphpadPane.LeftTabFactoryMethod
          Provides a factory method to construct the left tab of an editor pane.
 
Nested classes inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  JDesktopPane desktopPane
          Holds the desktop pane.
protected  JGraphEditor editor
          References the enclosing editor.
protected  Map internalFrames
          Maps from diagrams to internal frames.
static String KEY_DESKTOPPANE
          Defines the key used to identify the navigator split divider location.
static String KEY_LEFTSPLIT
          Defines the key used to identify the left split divider location.
static String KEY_NAVIGATORSPLIT
          Defines the key used to identify the right split divider location.
static String KEY_RIGHTSPLIT
          Defines the key used to identify the right split divider location.
static String NODENAME_DESKTOPPOPUPMENU
          Nodename to be used for the desktop popup menu configuration.
static String NODENAME_INTERNALFRAMEPOPUPMENU
          Nodename to be used for the desktop popup menu configuration.
 
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
JGraphpadPane(JGraphEditor editor)
          Constructs a new editor pane for the specified enclosing editor.
 
Method Summary
 void addDiagram(JGraphEditorDiagram diagram)
          Creates a diagram pane using JGraphEditorFactory.createDiagramPane(JGraphEditorDiagram), configures it using configureDiagramPane(JGraphEditorDiagramPane, JGraphEditorDiagram) and adds it the the tabbed pane of the internal frame for the parent file.
 void addFile(JGraphEditorFile file)
          Adds an internal frame for the specified file to the desktop pane.
 void addLibrary(JGraphpadLibrary library)
          Adds the specified library to the library pane.
protected  void configureDiagramPane(JGraphEditorDiagramPane diagramPane, JGraphEditorDiagram diagram)
          Configures the newly created diagram pane to reflect the properties of the specified diagram.
protected  JTabbedPane getDiagramContainer(JInternalFrame frame)
           
protected  String getFileTitle(JGraphEditorFile file)
          Hook for subclassers to return the internal frame title for a file.
 JInternalFrame getInternalFrame(Object file)
           
 void removeDiagram(JGraphEditorFile previousParent, JGraphEditorDiagram diagram)
          Removes the diagram pane for the specified diagram from the tabbed pane in the previous parent's internal frame.
 void removeFile(JGraphEditorFile file)
          Removes the internal frame for the specified file from the desktop pane.
static void setProperty(Map objects, String property, Object value)
          Utility method to set the property of an object using reflection.
 void updateDiagramTitle(JGraphEditorDiagram diagram)
          Updates the tab title for the specified diagram in the tabbed pane of the parent's internal frame.
 void updateFileTitle(JGraphEditorFile file)
          Updates the internal frame title for the specified file.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, 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, getPreferredSize, 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, paint, 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, 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, imageUpdate, 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

NODENAME_DESKTOPPOPUPMENU

public static String NODENAME_DESKTOPPOPUPMENU
Nodename to be used for the desktop popup menu configuration.


NODENAME_INTERNALFRAMEPOPUPMENU

public static String NODENAME_INTERNALFRAMEPOPUPMENU
Nodename to be used for the desktop popup menu configuration.


KEY_DESKTOPPANE

public static String KEY_DESKTOPPANE
Defines the key used to identify the navigator split divider location.


KEY_LEFTSPLIT

public static String KEY_LEFTSPLIT
Defines the key used to identify the left split divider location.


KEY_RIGHTSPLIT

public static String KEY_RIGHTSPLIT
Defines the key used to identify the right split divider location. setting.


KEY_NAVIGATORSPLIT

public static String KEY_NAVIGATORSPLIT
Defines the key used to identify the right split divider location. setting.


desktopPane

protected JDesktopPane desktopPane
Holds the desktop pane.


internalFrames

protected Map internalFrames
Maps from diagrams to internal frames.


editor

protected JGraphEditor editor
References the enclosing editor.

Constructor Detail

JGraphpadPane

public JGraphpadPane(JGraphEditor editor)
Constructs a new editor pane for the specified enclosing editor.

Parameters:
editor - The editor that contains the pane.
Method Detail

addFile

public void addFile(JGraphEditorFile file)
Adds an internal frame for the specified file to the desktop pane. The getFileTitle(JGraphEditorFile) method is used to determine the title for the internal frame.

Parameters:
file - The file to be added.

getInternalFrame

public JInternalFrame getInternalFrame(Object file)

removeFile

public void removeFile(JGraphEditorFile file)
Removes the internal frame for the specified file from the desktop pane.

Parameters:
file - The file to be removed.

updateFileTitle

public void updateFileTitle(JGraphEditorFile file)
Updates the internal frame title for the specified file. The getFileTitle(JGraphEditorFile) method is used to determine the title for the internal frame.

Parameters:
file - The file who's internal frame should be updated.

getDiagramContainer

protected JTabbedPane getDiagramContainer(JInternalFrame frame)

addDiagram

public void addDiagram(JGraphEditorDiagram diagram)
Creates a diagram pane using JGraphEditorFactory.createDiagramPane(JGraphEditorDiagram), configures it using configureDiagramPane(JGraphEditorDiagramPane, JGraphEditorDiagram) and adds it the the tabbed pane of the internal frame for the parent file. The JGraphEditorDiagram.getName() method is used to set the tab's title.

Parameters:
diagram - The diagram to be added.

addLibrary

public void addLibrary(JGraphpadLibrary library)
Adds the specified library to the library pane.

Parameters:
library - The library to be added.

configureDiagramPane

protected void configureDiagramPane(JGraphEditorDiagramPane diagramPane,
                                    JGraphEditorDiagram diagram)
Configures the newly created diagram pane to reflect the properties of the specified diagram. This also installs a listener to keep the properties of the diagram up-to-date with the graph for the next creation after persistence.

Parameters:
diagramPane - The diagram pane to be configured.
diagram - The diagram to be configured.

setProperty

public static void setProperty(Map objects,
                               String property,
                               Object value)
Utility method to set the property of an object using reflection.

Parameters:
objects - Maps from prefixes to objects.
property - The name of the property to be changed.
value - The value of the property to be set.

removeDiagram

public void removeDiagram(JGraphEditorFile previousParent,
                          JGraphEditorDiagram diagram)
Removes the diagram pane for the specified diagram from the tabbed pane in the previous parent's internal frame.

Parameters:
previousParent - The previous parent file of the removed diagram.
diagram - The diagram to be removed.

updateDiagramTitle

public void updateDiagramTitle(JGraphEditorDiagram diagram)
Updates the tab title for the specified diagram in the tabbed pane of the parent's internal frame. The JGraphEditorDiagram.getName() method is used to set the tab's title.

Parameters:
diagram - The diagram who's tab should be updated.

getFileTitle

protected String getFileTitle(JGraphEditorFile file)
Hook for subclassers to return the internal frame title for a file. This implementation returns String.valueOf(file) appending an asterisk (*) if JGraphEditorFile.isModified() returns true.

Parameters:
file - The file to return the title for.
Returns:
Return the title for file.

JGraphpad Pro
v6.0.5.0


Copyright (C) 2005 JGraph.com. All rights reserved.