edu.northwestern.at.wordhoard.swing.annotations
Class AnnotationEditor

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 edu.northwestern.at.utils.swing.ModalDialog
                          extended by edu.northwestern.at.wordhoard.swing.annotations.AnnotationEditor
All Implemented Interfaces:
CutCopyPaste, SelectAll, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class AnnotationEditor
extends ModalDialog
implements CutCopyPaste, SelectAll

Simple text editor for annotations.

See Also:
Serialized Form

Nested Class Summary
protected static class AnnotationEditor.PermissionItem
           
 
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  SmallComboBox accessComboBox
           
protected  boolean canceled
          True if user hits cancel button.
protected  javax.swing.JPanel contentPanel
          Content pane for editor.
 XTextArea editor
          The text area holding the text being edited.
static java.awt.Font font
          The font.
static int fontCharWidth
          Width of a single character in the font.
protected  SmallComboBox groupComboBox
           
protected  java.lang.String newTitle
          Default title for new file.
protected  java.util.HashMap perms
           
protected  boolean readOnly
          True if readonly.
protected  AuthoredTextAnnotation remoteAnnotation
          The annotation.
static int tabSize
          Tab size in columns.
protected  java.lang.String title
          Current title for editor.
 
Fields inherited from class edu.northwestern.at.utils.swing.ModalDialog
usePlatformPositionForDefaultButton
 
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
AnnotationEditor(AuthoredTextAnnotation remoteAnnotation)
          Create annotation editor.
 
Method Summary
 java.lang.String convertTextToString(TextWrapped text)
          Converts Text to a String.
 void copy()
          Copy to clipboard.
protected  javax.swing.JPanel createControlPanel(java.awt.Font theFont)
          Create the control panel.
protected  XTextArea createEditor()
          Create an XTextArea to hold the document text.
protected  javax.swing.JPanel createGroupPanel(java.awt.Font theFont, AuthoredTextAnnotation annotation)
          Create the group panel.
 void cut()
          Cut to clipboard.
protected  void doNew(java.awt.event.ActionEvent e)
          Performs new action.
protected  javax.swing.JTextArea getEditor()
          Return the editor contained in this panel.
protected  java.lang.String getEditorText()
          Return the editor text as a string.
 boolean isCanceled()
          Return true if editing canceled.
 boolean isCopyEnabled()
          Is copy enabled?
 boolean isCutEnabled()
          Is cut enabled?
 boolean isPasteEnabled()
          Is paste enabled?
 boolean isSelectAllEnabled()
          Checks if "select all" enabled.
 boolean isTextSelected()
          Is anything selected which can be cut/copied?
 boolean isUnselectEnabled()
          Is unselect enabled?
 void paste()
          Paste from clipboard.
 void selectAll()
          Selects all text.
 void unselect()
          Unselect selection.
 
Methods inherited from class edu.northwestern.at.utils.swing.ModalDialog
add, add, add, add, add, addButton, addDefaultButton, fixDefaultButtonPosition, getUsePlatformPositionForDefaultButton, paintImmediately, setInitialFocus, setUsePlatformPositionForDefaultButton, setVisible, show, showUnpacked, showUnpacked
 
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, 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

remoteAnnotation

protected AuthoredTextAnnotation remoteAnnotation
The annotation.


canceled

protected boolean canceled
True if user hits cancel button.


newTitle

protected java.lang.String newTitle
Default title for new file.


title

protected java.lang.String title
Current title for editor.


tabSize

public static final int tabSize
Tab size in columns.

See Also:
Constant Field Values

readOnly

protected final boolean readOnly
True if readonly.

See Also:
Constant Field Values

contentPanel

protected javax.swing.JPanel contentPanel
Content pane for editor.


font

public static final java.awt.Font font
The font.


fontCharWidth

public static int fontCharWidth
Width of a single character in the font.


editor

public XTextArea editor
The text area holding the text being edited.


perms

protected java.util.HashMap perms

groupComboBox

protected SmallComboBox groupComboBox

accessComboBox

protected SmallComboBox accessComboBox
Constructor Detail

AnnotationEditor

public AnnotationEditor(AuthoredTextAnnotation remoteAnnotation)
                 throws PersistenceException
Create annotation editor.

Parameters:
remoteAnnotation - The annotation to edit.
Throws:
PersistenceException
Method Detail

isCanceled

public boolean isCanceled()
Return true if editing canceled.


createEditor

protected XTextArea createEditor()
Create an XTextArea to hold the document text.


getEditor

protected javax.swing.JTextArea getEditor()
Return the editor contained in this panel.


getEditorText

protected java.lang.String getEditorText()
Return the editor text as a string.


createGroupPanel

protected javax.swing.JPanel createGroupPanel(java.awt.Font theFont,
                                              AuthoredTextAnnotation annotation)
Create the group panel.

Returns:
The group panel.

createControlPanel

protected javax.swing.JPanel createControlPanel(java.awt.Font theFont)
Create the control panel.

Returns:
The control panel.

doNew

protected void doNew(java.awt.event.ActionEvent e)
Performs new action.


cut

public void cut()
Cut to clipboard.

Specified by:
cut in interface CutCopyPaste

copy

public void copy()
Copy to clipboard.

Specified by:
copy in interface CutCopyPaste

paste

public void paste()
Paste from clipboard.

Specified by:
paste in interface CutCopyPaste

isCutEnabled

public boolean isCutEnabled()
Is cut enabled?

Specified by:
isCutEnabled in interface CutCopyPaste

isCopyEnabled

public boolean isCopyEnabled()
Is copy enabled?

Specified by:
isCopyEnabled in interface CutCopyPaste

isPasteEnabled

public boolean isPasteEnabled()
Is paste enabled?

Specified by:
isPasteEnabled in interface CutCopyPaste

isTextSelected

public boolean isTextSelected()
Is anything selected which can be cut/copied?

Specified by:
isTextSelected in interface CutCopyPaste

unselect

public void unselect()
Unselect selection.

Specified by:
unselect in interface SelectAll

isUnselectEnabled

public boolean isUnselectEnabled()
Is unselect enabled?

Specified by:
isUnselectEnabled in interface SelectAll

selectAll

public void selectAll()
Selects all text.

Specified by:
selectAll in interface SelectAll

isSelectAllEnabled

public boolean isSelectAllEnabled()
Checks if "select all" enabled.

Specified by:
isSelectAllEnabled in interface SelectAll
Returns:
returns true if select all enabled.

convertTextToString

public java.lang.String convertTextToString(TextWrapped text)
Converts Text to a String.

Returns:
The text.