public abstract class WorkspaceEditor extends JInternalFrame implements ActionListener
WorkspaceManager
, which provides some
rudimentary inter-editor coordination, persistence support, and other
useful facilities.WorkspaceManager
,
Serialized FormModifier and Type | Class and Description |
---|---|
private class |
WorkspaceEditor._ButtonListener |
private class |
WorkspaceEditor._FocusListener |
private class |
WorkspaceEditor._KeyListener |
private class |
WorkspaceEditor._MouseListener |
JInternalFrame.AccessibleJInternalFrame, JInternalFrame.JDesktopIcon
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Modifier and Type | Field and Description |
---|---|
private WorkspaceEditor._ButtonListener |
actionListener |
private KButton |
b_cancel |
private KButton |
b_save |
private boolean |
changesMade |
private JTextComponent |
curFocus |
private boolean |
editable |
private Component |
firstComponent |
private WorkspaceEditor._FocusListener |
focusAdapter |
private WorkspaceEditor._KeyListener |
keyAdapter |
private KLabel |
l_comment |
private WorkspaceManager |
manager |
private WorkspaceEditor._MouseListener |
mouseAdapter |
protected Object |
object
The problem domain object associated with this editor.
|
private KPanel |
pane |
closable, CONTENT_PANE_PROPERTY, desktopIcon, FRAME_ICON_PROPERTY, frameIcon, GLASS_PANE_PROPERTY, iconable, IS_CLOSED_PROPERTY, IS_ICON_PROPERTY, IS_MAXIMUM_PROPERTY, IS_SELECTED_PROPERTY, isClosed, isIcon, isMaximum, isSelected, LAYERED_PANE_PROPERTY, maximizable, MENU_BAR_PROPERTY, resizable, ROOT_PANE_PROPERTY, rootPane, rootPaneCheckingEnabled, title, TITLE_PROPERTY
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
WorkspaceEditor()
Construct a new
WorkspaceEditor with a default window title. |
WorkspaceEditor(String title)
Construct a new editable
WorkspaceEditor with the given
window title. |
WorkspaceEditor(String title,
boolean editable)
Construct a new
WorkspaceEditor with the given window
title and editable mode. |
Modifier and Type | Method and Description |
---|---|
private void |
_hide() |
void |
actionPerformed(ActionEvent evt)
Handle events.
|
void |
beginFocus()
Give keyboard focus to the first text input component in this editor.
|
protected abstract Component |
buildEditingUI()
Build the editing UI.
|
protected JMenuBar |
buildMenuBar()
Construct the menu bar for this editor.
|
void |
copy()
Invoke a copy action on this editor.
|
void |
cut()
Invoke a cut action on this editor.
|
protected void |
fireStateChanged()
Fire an editor state changed event.
|
Object |
getObject()
Get the current problem domain object associated with this editor, or
null if there is no object associated with the editor. |
protected WorkspaceManager |
getWorkspaceManager()
Get the
WorkspaceManager for this editor. |
boolean |
hasUnsavedChanges()
Determine if this editor is displaying unsaved changes.
|
boolean |
isEditable()
Determine if the editor is editable.
|
void |
paste()
Invoke a paste action on this editor.
|
protected void |
registerMouseInputComponent(Component c)
Register a mouse input component.
|
protected void |
registerTextInputComponent(JTextComponent c)
Register a text input component.
|
abstract boolean |
save()
Persist the edits made in this editor.
|
protected void |
setChangesMade(boolean flag)
Set the changes made flag on this editor.
|
protected void |
setComment(String comment)
Set the comment that appears in the top portion of the editor.
|
void |
setObject(Object object)
Set the problem domain object to be associated with this editor.
|
(package private) void |
setWorkspaceManager(WorkspaceManager manager) |
protected void |
startEditing()
Start editing in this editor.
|
protected void |
stopEditing()
Start editing in this editor.
|
protected abstract void |
updateEditingUI()
Update the editing UI.
|
addImpl, addInternalFrameListener, createRootPane, dispose, doDefaultCloseAction, fireInternalFrameEvent, getAccessibleContext, getContentPane, getDefaultCloseOperation, getDesktopIcon, getDesktopPane, getFocusCycleRootAncestor, getFocusOwner, getFrameIcon, getGlassPane, getInternalFrameListeners, getJMenuBar, getLastCursor, getLayer, getLayeredPane, getMenuBar, getMostRecentFocusOwner, getNormalBounds, getRootPane, getTitle, getUI, getUIClassID, getWarningString, hide, isClosable, isClosed, isFocusCycleRoot, isIcon, isIconifiable, isMaximizable, isMaximum, isResizable, isRootPaneCheckingEnabled, isSelected, moveToBack, moveToFront, pack, paintComponent, paramString, remove, removeInternalFrameListener, reshape, restoreSubcomponentFocus, setClosable, setClosed, setContentPane, setCursor, setDefaultCloseOperation, setDesktopIcon, setFocusCycleRoot, setFrameIcon, setGlassPane, setIcon, setIconifiable, setJMenuBar, setLayer, setLayer, setLayeredPane, setLayout, setMaximizable, setMaximum, setMenuBar, setNormalBounds, setResizable, setRootPane, setRootPaneCheckingEnabled, setSelected, setTitle, setUI, show, toBack, toFront, updateUI
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, 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, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, 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
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree
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, 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, 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, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
private boolean changesMade
private WorkspaceEditor._KeyListener keyAdapter
private WorkspaceEditor._MouseListener mouseAdapter
private WorkspaceEditor._FocusListener focusAdapter
private WorkspaceEditor._ButtonListener actionListener
private Component firstComponent
private boolean editable
private JTextComponent curFocus
private WorkspaceManager manager
public WorkspaceEditor()
WorkspaceEditor
with a default window title.
It is created as editable.public WorkspaceEditor(String title)
WorkspaceEditor
with the given
window title.title
- The title for the editor's window.public WorkspaceEditor(String title, boolean editable)
WorkspaceEditor
with the given window
title and editable mode.title
- The title for the editor's window.editable
- A flag specifying whether the editor will be editable.final void setWorkspaceManager(WorkspaceManager manager)
protected final WorkspaceManager getWorkspaceManager()
WorkspaceManager
for this editor. The method will
return null
if the editor has not yet been added to a
workspace (that is, a JDesktopPane
).protected abstract Component buildEditingUI()
protected abstract void updateEditingUI()
protected void setComment(String comment)
protected JMenuBar buildMenuBar()
null
, which signifies that no menubar is needed.public final void beginFocus()
registerTextInputComponent()
.public void actionPerformed(ActionEvent evt)
actionPerformed
in interface ActionListener
public final Object getObject()
null
if there is no object associated with the editor.setObject(java.lang.Object)
public final void setObject(Object object)
updateEditingUI()
.object
- The new object to be associated with this editor.getObject()
public final boolean hasUnsavedChanges()
true
if there are unsaved changes, and
setChangesMade(boolean)
protected final void setChangesMade(boolean flag)
flag
- The new value for the flag.hasUnsavedChanges()
public abstract boolean save()
true
if the save was successful and
false
otherwise.public final boolean isEditable()
true
if the editor is editable, and
false
otherwise.protected final void registerTextInputComponent(JTextComponent c)
true
when one occurs.c
- The component to register.registerMouseInputComponent(java.awt.Component)
protected final void registerMouseInputComponent(Component c)
true
when one occurs.c
- The component to register.registerTextInputComponent(javax.swing.text.JTextComponent)
protected void startEditing()
stopEditing()
protected void stopEditing()
startEditing()
public final void copy()
public final void cut()
public final void paste()
protected final void fireStateChanged()
private void _hide()
WebARTS Library Licensed Under the GNU - General Public License. Other Libraries licensed under their respective Open Source Licenses