edu.cmu.minorthird.text.gui
Class OnlineClassifierDocumentEditor

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by edu.cmu.minorthird.text.gui.ViewerTracker
                  extended by edu.cmu.minorthird.text.gui.OnlineClassifierDocumentEditor
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.swing.event.ListSelectionListener

public class OnlineClassifierDocumentEditor
extends ViewerTracker

Interactivly edit the documents for an OnlineLearning Experiment

Author:
Cameron Williams
See Also:
Serialized Form

Nested Class Summary
 class OnlineClassifierDocumentEditor.EditedSpan
          Stores a documentSpan, its label, its index, and whether or not it has been added to the Classifier
protected  class OnlineClassifierDocumentEditor.MoveOnlineDocumentCursor
          Move through list of spans
 
Nested classes/interfaces inherited from class edu.cmu.minorthird.text.gui.ViewerTracker
ViewerTracker.ContextWidthSlider, ViewerTracker.MoveDocumentCursor, ViewerTracker.SaveLabelsAction
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
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
 ClassifierAnnotator ann
           
 java.util.List<OnlineClassifierDocumentEditor.EditedSpan> editedSpans
           
static java.lang.String LABEL_DOCUMENT
           
 OnlineClassifierDocumentEditor ocdEditor
           
 
Fields inherited from class edu.cmu.minorthird.text.gui.ViewerTracker
contextWidth, contextWidthSlider, documentList, documentSpan, downButton, DUMMY_ID, editedDoc, editLabels, editorHolder, editorPane, saveAsFile, saveButton, spanPainter, statusMsg, upButton, viewEntireDocument, viewLabels
 
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
OnlineClassifierDocumentEditor(OnlineTextClassifierLearner learner, TextLabels viewLabels, TextBaseViewer tbViewer, MutableTextLabels editLabels, javax.swing.JList documentList, edu.cmu.minorthird.text.gui.SpanPainter spanPainter, StatusMessage statusMsg)
           
 
Method Summary
 void AddDocuments()
          Adds all the documents that have been edited but not already added to the classifier
 boolean checkIfAdded(int docID)
          Check if the documentSpan with docID has already been added to the classifier
 java.lang.String checkLabel(int docID)
          Returns the label of the document if it has been labeled
protected  void documentMessage(int nextCursor)
           
 boolean editDocument(Span s, java.lang.String label, int docID)
          Labels a document - unless the document has already been added to the classifier
protected  void loadSpan(Span span)
           
protected  void loadSpanHook()
          Overload this to do something special when a new document is loaded.
 void saveAnn(java.io.File file, java.lang.String format)
           
 void setReadOnly(boolean readOnly)
          Set mode to read-only or not.
 void setTypesBeingEdited(java.lang.String inType, java.lang.String outType)
          Declare which types are being edited.
 
Methods inherited from class edu.cmu.minorthird.text.gui.ViewerTracker
importDocumentListMarkup, nullSpan, setContextWidth, setSaveAs, setViewEntireDocument, updateViewLabels, valueChanged
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, 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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, 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

LABEL_DOCUMENT

public static final java.lang.String LABEL_DOCUMENT
See Also:
Constant Field Values

ocdEditor

public OnlineClassifierDocumentEditor ocdEditor

editedSpans

public java.util.List<OnlineClassifierDocumentEditor.EditedSpan> editedSpans

ann

public ClassifierAnnotator ann
Constructor Detail

OnlineClassifierDocumentEditor

public OnlineClassifierDocumentEditor(OnlineTextClassifierLearner learner,
                                      TextLabels viewLabels,
                                      TextBaseViewer tbViewer,
                                      MutableTextLabels editLabels,
                                      javax.swing.JList documentList,
                                      edu.cmu.minorthird.text.gui.SpanPainter spanPainter,
                                      StatusMessage statusMsg)
Parameters:
viewLabels - a superset of editLabels which may include some additional read-only information
editLabels - the labels being modified
documentList - the document Span being edited is associated with the selected entry of the documentList.
spanPainter - used to repaint documentList elements
statusMsg - a JLabel used for status messages.
Method Detail

setReadOnly

public void setReadOnly(boolean readOnly)
Set mode to read-only or not. In read-only mode, the document viewed has the same highlighting as in the documentList. In write mode, the "truth" spans are shown, and the "guess" spans are imported.


setTypesBeingEdited

public void setTypesBeingEdited(java.lang.String inType,
                                java.lang.String outType)
Declare which types are being edited.


loadSpanHook

protected void loadSpanHook()
Description copied from class: ViewerTracker
Overload this to do something special when a new document is loaded.

Overrides:
loadSpanHook in class ViewerTracker

saveAnn

public void saveAnn(java.io.File file,
                    java.lang.String format)
             throws java.io.IOException
Throws:
java.io.IOException

documentMessage

protected void documentMessage(int nextCursor)

loadSpan

protected void loadSpan(Span span)
Overrides:
loadSpan in class ViewerTracker

checkIfAdded

public boolean checkIfAdded(int docID)
Check if the documentSpan with docID has already been added to the classifier


checkLabel

public java.lang.String checkLabel(int docID)
Returns the label of the document if it has been labeled


editDocument

public boolean editDocument(Span s,
                            java.lang.String label,
                            int docID)
Labels a document - unless the document has already been added to the classifier


AddDocuments

public void AddDocuments()
Adds all the documents that have been edited but not already added to the classifier