## org.emboss.jemboss.gui.filetree
Class DragTree

    java.lang.Object
      |
      +--java.awt.Component
            |
            +--java.awt.Container
                  |
                  +--javax.swing.JComponent
                        |
                        +--javax.swing.JTree
                              |
                              +--org.emboss.jemboss.gui.filetree.DragTree

All Implemented Interfaces:
  javax.accessibility.Accessible, java.awt.dnd.DragGestureListener, java.awt.dnd.DragSourceListener, java.awt.dnd.DropTargetListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.Scrollable, java.io.Serializable

public class DragTree
extends javax.swing.JTree
implements java.awt.dnd.DragGestureListener, java.awt.dnd.DragSourceListener, java.awt.dnd.DropTargetListener

Creates a local file tree for Jemboss. This acts as a drag source and sink for files.

See Also:
  Serialized Form

Inner classes inherited from class javax.swing.JTree
`javax.swing.JTree.AccessibleJTree, javax.swing.JTree.DynamicUtilTreeNode, javax.swing.JTree.EmptySelectionModel, javax.swing.JTree.TreeModelHandler, javax.swing.JTree.TreeSelectionRedirector`

Inner classes inherited from class javax.swing.JComponent
`javax.swing.JComponent.AccessibleJComponent, javax.swing.JComponent.ActionStandin, javax.swing.JComponent.IntVector, javax.swing.JComponent.KeyboardState`

Inner classes inherited from class java.awt.Container
`java.awt.Container.AccessibleAWTContainer`

Inner classes inherited from class java.awt.Component
`java.awt.Component.AccessibleAWTComponent, java.awt.Component.AWTTreeLock`

Field Summary
`(package private) java.awt.Cursor` `cbusy`
`(package private) java.awt.Cursor` `cdone`
`static javax.swing.tree.DefaultTreeModel` `model`

Fields inherited from class javax.swing.JTree

`ANCHOR_SELECTION_PATH_PROPERTY, CELL_EDITOR_PROPERTY, CELL_RENDERER_PROPERTY, cellEditor, cellRenderer, editable, EDITABLE_PROPERTY, EXPANDS_SELECTED_PATHS_PROPERTY, INVOKES_STOP_CELL_EDITING_PROPERTY, invokesStopCellEditing, LARGE_MODEL_PROPERTY, largeModel, LEAD_SELECTION_PATH_PROPERTY, ROOT_VISIBLE_PROPERTY, rootVisible, ROW_HEIGHT_PROPERTY, rowHeight, SCROLLS_ON_EXPAND_PROPERTY, scrollsOnExpand, SELECTION_MODEL_PROPERTY, selectionModel, selectionRedirector, SHOWS_ROOT_HANDLES_PROPERTY, showsRootHandles, TOGGLE_CLICK_COUNT_PROPERTY, toggleClickCount, TREE_MODEL_PROPERTY, treeModel, treeModelListener, VISIBLE_ROW_COUNT_PROPERTY, visibleRowCount`

Fields inherited from class javax.swing.JComponent
`_bounds, accessibleContext, listenerList, paintingChild, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

Fields inherited from class java.awt.Container
`component, containerListener, layoutMgr, listeningBoundsChildren, listeningChildren, ncomponents`

Fields inherited from class java.awt.Component

`actionListenerK, adjustmentListenerK, appContext, background, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, componentListener, componentListenerK, componentOrientation, containerListenerK, cursor, dropTarget, enabled, eventMask, focusListener, focusListenerK, font, foreground, graphicsConfig, hasFocus, height, hierarchyBoundsListener, hierarchyBoundsListenerK, hierarchyListener, hierarchyListenerK, incRate, inputMethodListener, inputMethodListenerK, isInc, isPacked, itemListenerK, keyListener, keyListenerK, LEFT_ALIGNMENT, locale, LOCK, metrics, minSize, mouseListener, mouseListenerK, mouseMotionListener, mouseMotionListenerK, newEventsOnly, ownedWindowK, parent, peer, peerFont, popups, prefSize, RIGHT_ALIGNMENT, textListenerK, TOP_ALIGNMENT, valid, visible, width, windowClosingException, windowListenerK, x, y`

Fields inherited from interface java.awt.image.ImageObserver
`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

Constructor Summary
`DragTree(java.io.File rt, javax.swing.JFrame f, uk.ac.mrc.hgmp.embreo.EmbreoParams mysettings)`

Method Summary
`javax.swing.tree.DefaultMutableTreeNode` `addObject(java.lang.String child, java.lang.String path)` Adding a file (or directory) to the file tree manager.
`void` `dragDropEnd(java.awt.dnd.DragSourceDropEvent e)`
`void` `dragEnter(java.awt.dnd.DragSourceDragEvent e)`
`void` `dragEnter(java.awt.dnd.DropTargetDragEvent e)`
`void` `dragExit(java.awt.dnd.DragSourceEvent e)`
`void` `dragExit(java.awt.dnd.DropTargetEvent e)`
`void` `dragGestureRecognized(java.awt.dnd.DragGestureEvent e)`
`void` `dragOver(java.awt.dnd.DragSourceDragEvent e)`
`void` `dragOver(java.awt.dnd.DropTargetDragEvent e)` When a suitable DataFlavor is offered over a remote file node the node is highlighted/selected and the drag accepted.
`void` `drop(java.awt.dnd.DropTargetDropEvent e)`
`void` `dropActionChanged(java.awt.dnd.DragSourceDragEvent e)`
`void` `dropActionChanged(java.awt.dnd.DropTargetDragEvent e)`
`java.lang.String` `getFilename()`
`FileNode` `getNodename()`
`javax.swing.tree.DefaultTreeModel` `getTreeModel()`
`boolean` `isFileSelection()`
`void` `newRoot(java.lang.String newRoot)`
`static void` `showFilePane(java.lang.String filename)` Opens a JFrame with the file contents displayed.

Methods inherited from class javax.swing.JTree

`<clinit>, addSelectionInterval, addSelectionPath, addSelectionPaths, addSelectionRow, addSelectionRows, addTreeExpansionListener, addTreeSelectionListener, addTreeWillExpandListener, cancelEditing, clearSelection, clearToggledPaths, collapsePath, collapseRow, convertValueToText, createTreeModel, createTreeModelListener, expandPath, expandRow, fireTreeCollapsed, fireTreeExpanded, fireTreeWillCollapse, fireTreeWillExpand, fireValueChanged, getAccessibleContext, getAnchorSelectionPath, getCellEditor, getCellRenderer, getClosestPathForLocation, getClosestRowForLocation, getDefaultTreeModel, getDescendantToggledPaths, getEditingPath, getExpandedDescendants, getExpandsSelectedPaths, getInvokesStopCellEditing, getLastSelectedPathComponent, getLeadSelectionPath, getLeadSelectionRow, getMaxSelectionRow, getMinSelectionRow, getModel, getPathBetweenRows, getPathBounds, getPathForLocation, getPathForRow, getPreferredScrollableViewportSize, getRowBounds, getRowCount, getRowForLocation, getRowForPath, getRowHeight, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getScrollsOnExpand, getSelectionCount, getSelectionModel, getSelectionPath, getSelectionPaths, getSelectionRows, getShowsRootHandles, getToggleClickCount, getToolTipText, getUI, getUIClassID, getVisibleRowCount, hasBeenExpanded, isCollapsed, isCollapsed, isEditable, isEditing, isExpanded, isExpanded, isFixedRowHeight, isLargeModel, isPathEditable, isPathSelected, isRootVisible, isRowSelected, isSelectionEmpty, isVisible, makeVisible, paramString, removeDescendantSelectedPaths, removeDescendantSelectedPaths, removeDescendantToggledPaths, removeSelectionInterval, removeSelectionPath, removeSelectionPaths, removeSelectionRow, removeSelectionRows, removeTreeExpansionListener, removeTreeSelectionListener, removeTreeWillExpandListener, scrollPathToVisible, scrollRowToVisible, setAnchorSelectionPath, setCellEditor, setCellRenderer, setEditable, setExpandedState, setExpandsSelectedPaths, setInvokesStopCellEditing, setLargeModel, setLeadSelectionPath, setModel, setRootVisible, setRowHeight, setScrollsOnExpand, setSelectionInterval, setSelectionModel, setSelectionPath, setSelectionPaths, setSelectionRow, setSelectionRows, setShowsRootHandles, setToggleClickCount, setUI, setVisibleRowCount, startEditingAtPath, stopEditing, treeDidChange, updateUI`

Methods inherited from class javax.swing.JComponent

`_paintImmediately, addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, alwaysOnTop, checkIfChildObscuredBySibling, componentInputMapChanged, computeVisibleRect, computeVisibleRect, compWriteObjectNotify, contains, createToolTip, disable, enable, enableSerialization, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getCreatedDoubleBuffer, getDebugGraphicsOptions, getGraphics, getHeight, getInputMap, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyBindings, processKeyBindingsForAllComponents, processKeyEvent, processMouseMotionEvent, putClientProperty, rectangleIsObscured, rectangleIsObscuredBySibling, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setCreatedDoubleBuffer, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPaintingChild, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, shouldDebugGraphics, superProcessMouseMotionEvent, unregisterKeyboardAction, update`

Methods inherited from class java.awt.Container

`add, add, add, add, add, addContainerListener, addImpl, adjustListeningChildren, applyOrientation, checkGD, countComponents, createChildHierarchyEvents, createHierarchyEvents, deliverEvent, dispatchEventImpl, dispatchEventToSelf, doLayout, eventEnabled, findComponentAt, findComponentAt, findComponentAt, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getLayout, getMouseEventTarget, getWindow, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPaint, lightweightPrint, list, list, locate, minimumSize, nextFocus, numListening, paintComponents, paintHeavyweightComponents, postProcessKeyEvent, postsOldMouseEvents, preferredSize, preProcessKeyEvent, printComponents, printHeavyweightComponents, processContainerEvent, processEvent, proxyEnableEvents, proxyRequestFocus, remove, remove, removeAll, removeContainerListener, setFocusOwner, setLayout, transferFocus, validate, validateTree`

Methods inherited from class java.awt.Component

`action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, areInputMethodsEnabled, bounds, checkImage, checkImage, checkWindowClosingException, coalesceEvents, constructComponentName, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getAccessibleIndexInParent, getAccessibleStateSet, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen_NoTreeLock, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getToolkit, getToolkitImpl, getTreeLock, gotFocus, handleEvent, imageUpdate, inside, isDisplayable, isEnabled, isEnabledImpl, isLightweight, isRecursivelyVisible, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resetGC, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### model

    public static javax.swing.tree.DefaultTreeModel model

### cbusy

    final java.awt.Cursor cbusy

### cdone

    final java.awt.Cursor cdone

Constructor Detail

### DragTree

    public DragTree(java.io.File rt,
                    javax.swing.JFrame f,
                    uk.ac.mrc.hgmp.embreo.EmbreoParams mysettings)

Method Detail

### newRoot

    public void newRoot(java.lang.String newRoot)

### dragGestureRecognized

    public void dragGestureRecognized(java.awt.dnd.DragGestureEvent e)

  Specified by:
    `dragGestureRecognized` in interface `java.awt.dnd.DragGestureListener`

### dragDropEnd

    public void dragDropEnd(java.awt.dnd.DragSourceDropEvent e)

  Specified by:
    `dragDropEnd` in interface `java.awt.dnd.DragSourceListener`

### dragEnter

    public void dragEnter(java.awt.dnd.DragSourceDragEvent e)

  Specified by:
    `dragEnter` in interface `java.awt.dnd.DragSourceListener`

### dragExit

    public void dragExit(java.awt.dnd.DragSourceEvent e)

  Specified by:
    `dragExit` in interface `java.awt.dnd.DragSourceListener`

### dragOver

    public void dragOver(java.awt.dnd.DragSourceDragEvent e)

  Specified by:
    `dragOver` in interface `java.awt.dnd.DragSourceListener`

### dropActionChanged

    public void dropActionChanged(java.awt.dnd.DragSourceDragEvent e)

  Specified by:
    `dropActionChanged` in interface `java.awt.dnd.DragSourceListener`

### dragEnter

    public void dragEnter(java.awt.dnd.DropTargetDragEvent e)

  Specified by:
    `dragEnter` in interface `java.awt.dnd.DropTargetListener`

### drop

    public void drop(java.awt.dnd.DropTargetDropEvent e)

  Specified by:
    `drop` in interface `java.awt.dnd.DropTargetListener`

### dragOver

    public void dragOver(java.awt.dnd.DropTargetDragEvent e)

  When a suitable DataFlavor is offered over a remote file node the node is highlighted/selected and the drag accepted. Otherwise the drag is rejected.
  Specified by:
    `dragOver` in interface `java.awt.dnd.DropTargetListener`

### dropActionChanged

    public void dropActionChanged(java.awt.dnd.DropTargetDragEvent e)

  Specified by:
    `dropActionChanged` in interface `java.awt.dnd.DropTargetListener`

### dragExit

    public void dragExit(java.awt.dnd.DropTargetEvent e)

  Specified by:
    `dragExit` in interface `java.awt.dnd.DropTargetListener`

### getFilename

    public java.lang.String getFilename()

### getNodename

    public FileNode getNodename()

### isFileSelection

    public boolean isFileSelection()

### getTreeModel

    public javax.swing.tree.DefaultTreeModel getTreeModel()

### addObject

    public javax.swing.tree.DefaultMutableTreeNode addObject(java.lang.String child,
                                                             java.lang.String path)

  Adding a file (or directory) to the file tree manager. This looks to see if the directory has already been opened and updates the filetree if it has.
  Parameters:
    `file` - to add to the tree

### showFilePane

    public static void showFilePane(java.lang.String filename)

  Opens a JFrame with the file contents displayed.
  Parameters:
    `the` - file name