org.opensourcephysics.tools
Class JarTreeDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by org.opensourcephysics.tools.JarTreeDialog
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class JarTreeDialog
extends javax.swing.JDialog

This is a JDialog that displays and controls a checkbox jar tree.

Version:
1.0
Author:
Douglas Brown
See Also:
Serialized Form

Nested Class Summary
protected  class JarTreeDialog.JarRenderer
          A cell renderer to display jar and file nodes.
protected  class JarTreeDialog.SelectionEdit
          A class to undo/redo tree node selections.
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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  CheckTreeManager checkManager
           
protected  javax.swing.Icon fileIcon
           
protected  boolean ignoreEvents
           
protected  javax.swing.Icon jarFileIcon
           
protected  javax.swing.Icon jarFolderIcon
           
protected  javax.swing.Icon jarIcon
           
protected  JarTreeModel jarModel
           
protected  javax.swing.JTree jarTree
           
protected  javax.swing.JButton languagesButton
           
protected  javax.swing.JButton okButton
           
protected  int prevRow
           
protected  javax.swing.JButton redoButton
           
protected  java.io.File rootFile
           
protected  javax.swing.tree.TreePath[] selectionPaths
           
protected  javax.swing.JButton undoButton
           
protected  javax.swing.undo.UndoManager undoManager
           
protected  javax.swing.undo.UndoableEditSupport undoSupport
           
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JarTreeDialog(java.awt.Frame owner, java.io.File root)
          Constructor.
 
Method Summary
protected  void createGUI()
          Creates the GUI.
 javax.swing.tree.TreePath[] getSelectionPaths()
          Gets the selected paths as TreePaths that start with the root.
 java.lang.String[] getSelectionRelativePaths()
          Gets the selected paths as relative path strings.
protected  void refresh()
          Refreshes the buttonbar.
 void setSelectionPaths(javax.swing.tree.TreePath[] treePaths)
          Sets the selected TreePaths.
 void setSelectionRelativePaths(java.lang.String[] paths)
          Sets the selected relative path strings.
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

rootFile

protected java.io.File rootFile

jarModel

protected JarTreeModel jarModel

jarTree

protected javax.swing.JTree jarTree

checkManager

protected CheckTreeManager checkManager

selectionPaths

protected javax.swing.tree.TreePath[] selectionPaths

undoSupport

protected javax.swing.undo.UndoableEditSupport undoSupport

undoManager

protected javax.swing.undo.UndoManager undoManager

okButton

protected javax.swing.JButton okButton

undoButton

protected javax.swing.JButton undoButton

redoButton

protected javax.swing.JButton redoButton

languagesButton

protected javax.swing.JButton languagesButton

ignoreEvents

protected boolean ignoreEvents

prevRow

protected int prevRow

jarIcon

protected javax.swing.Icon jarIcon

jarFileIcon

protected javax.swing.Icon jarFileIcon

jarFolderIcon

protected javax.swing.Icon jarFolderIcon

fileIcon

protected javax.swing.Icon fileIcon
Constructor Detail

JarTreeDialog

public JarTreeDialog(java.awt.Frame owner,
                     java.io.File root)
Constructor.

Parameters:
owner - the owner frame
root - the root directory
Method Detail

getSelectionRelativePaths

public java.lang.String[] getSelectionRelativePaths()
Gets the selected paths as relative path strings.

Returns:
an array of string paths relative to the root directory

setSelectionRelativePaths

public void setSelectionRelativePaths(java.lang.String[] paths)
Sets the selected relative path strings.

Parameters:
paths - an array of string paths relative to the root directory

getSelectionPaths

public javax.swing.tree.TreePath[] getSelectionPaths()
Gets the selected paths as TreePaths that start with the root.

Returns:
an array of selected TreePaths

setSelectionPaths

public void setSelectionPaths(javax.swing.tree.TreePath[] treePaths)
Sets the selected TreePaths.

Parameters:
treePaths - an array of TreePaths that start with the root

refresh

protected void refresh()
Refreshes the buttonbar.


createGUI

protected void createGUI()
Creates the GUI.