apollo.gui.annotinfo
Class FeatureEditorDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by apollo.gui.annotinfo.FeatureEditorDialog
All Implemented Interfaces:
DataLoadListener, AnnotationChangeListener, ControlledObjectI, FeatureSelectionListener, FeatureNavigationI, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class FeatureEditorDialog
extends javax.swing.JFrame
implements ControlledObjectI, AnnotationChangeListener, FeatureSelectionListener, DataLoadListener, FeatureNavigationI

FeatureEditorDialog Editor for comments, gene and transcript names, etc Editing is disabled in browser mode. In browser mode just used to view the comments. FeatureNavigationI interface is for internal FeatureTreePanel to call featureSelected on FeatureEditorDialog.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected static java.awt.Color bgColor
           
protected static org.apache.log4j.Logger logger
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
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, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Method Summary
 void addNotify()
           
 void dispose()
          disposes commentator, then calls super.dispose (Window)
static void disposeAllEditors()
          Dispose all FeatureEditorDialogs currently in existence.
 void featureSelected(SeqFeatureI sf)
          Listen to selections from the tree view and respond to FeatureSelection events.
protected  void fireAnnotEvent(AnnotationChangeEvent ace)
           
protected  AnnotatedFeatureI getAnnot(SeqFeatureI sf)
           
 Controller getController()
          Gets the Controller for the object
 java.lang.Object getControllerWindow()
          Shouldnt this return Window - would we ever want a non-window?
protected  ApolloNameAdapterI getNameAdapter(AnnotatedFeatureI annot)
           
protected  Transcript getTranscript()
           
 boolean handleAnnotationChangeEvent(AnnotationChangeEvent evt)
          Calls setFeature with new annotation.
 boolean handleDataLoadEvent(DataLoadEvent e)
           
 boolean handleFeatureSelectionEvent(FeatureSelectionEvent evt)
           
 boolean needsAutoRemoval()
          If getControllerWindow is non null, and needsAutoRemoval is true then Controller will automatically remove the ControlledObjectI as a listener when its ControllerWindow is closing.
 void setController(Controller c)
          Sets the Controller for the object
 void setSelectionManager(SelectionManager sm)
          Set selection manager, controller for selection.
static void showTextEditor(SeqFeatureI sf, GuiCurationState s)
           
static void testNameUndo(junit.framework.TestCase testCase)
           
 void windowClosed(java.awt.event.WindowEvent e)
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, show, toBack, 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, paint, 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, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, 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, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

logger

protected static final org.apache.log4j.Logger logger

bgColor

protected static java.awt.Color bgColor
Method Detail

showTextEditor

public static void showTextEditor(SeqFeatureI sf,
                                  GuiCurationState s)

featureSelected

public void featureSelected(SeqFeatureI sf)
Listen to selections from the tree view and respond to FeatureSelection events. This is the method from the interface FeatureNavigationI that allows FeatureTreePanel to set the selection of FeatureEditorDialog. This is solely used by FeatureTreePanel

Specified by:
featureSelected in interface FeatureNavigationI

getTranscript

protected Transcript getTranscript()

dispose

public void dispose()
disposes commentator, then calls super.dispose (Window)

Overrides:
dispose in class java.awt.Window

windowClosed

public void windowClosed(java.awt.event.WindowEvent e)

disposeAllEditors

public static void disposeAllEditors()
Dispose all FeatureEditorDialogs currently in existence. Keeps track of all instances for this purpose


getAnnot

protected AnnotatedFeatureI getAnnot(SeqFeatureI sf)

setController

public void setController(Controller c)
Description copied from interface: ControlledObjectI
Sets the Controller for the object

Specified by:
setController in interface ControlledObjectI

getController

public Controller getController()
Description copied from interface: ControlledObjectI
Gets the Controller for the object

Specified by:
getController in interface ControlledObjectI

setSelectionManager

public void setSelectionManager(SelectionManager sm)
Set selection manager, controller for selection. Set up listener to transcript panel feature list selection. Selecting a a gene in genePanel causes a transcript to get selected which then causes this inner listener to be called. oldAnnot has to get set to new gene here i believe


addNotify

public void addNotify()
Overrides:
addNotify in class java.awt.Frame

getControllerWindow

public java.lang.Object getControllerWindow()
Description copied from interface: ControlledObjectI
Shouldnt this return Window - would we ever want a non-window?

Specified by:
getControllerWindow in interface ControlledObjectI

needsAutoRemoval

public boolean needsAutoRemoval()
Description copied from interface: ControlledObjectI
If getControllerWindow is non null, and needsAutoRemoval is true then Controller will automatically remove the ControlledObjectI as a listener when its ControllerWindow is closing. If getControllerWindow is null needsAutoRemoval is meaningless. Rename this removeAsListenerOnWindowClose?

Specified by:
needsAutoRemoval in interface ControlledObjectI

handleAnnotationChangeEvent

public boolean handleAnnotationChangeEvent(AnnotationChangeEvent evt)
Calls setFeature with new annotation. This triggers a recloning of the gene (via GeneEditPanel.loadSelectedFeature), which wipes out any uncommitted edits to the old clone. This is erroneous. The old clone needs to be preserved or copied.

Specified by:
handleAnnotationChangeEvent in interface AnnotationChangeListener

handleFeatureSelectionEvent

public boolean handleFeatureSelectionEvent(FeatureSelectionEvent evt)
Specified by:
handleFeatureSelectionEvent in interface FeatureSelectionListener

handleDataLoadEvent

public boolean handleDataLoadEvent(DataLoadEvent e)
Specified by:
handleDataLoadEvent in interface DataLoadListener

fireAnnotEvent

protected void fireAnnotEvent(AnnotationChangeEvent ace)

getNameAdapter

protected ApolloNameAdapterI getNameAdapter(AnnotatedFeatureI annot)

testNameUndo

public static void testNameUndo(junit.framework.TestCase testCase)