ix.iview
Class AConstructFramePanel
java.lang.Object
|
+--java.awt.Component
|
+--java.awt.Container
|
+--javax.swing.JComponent
|
+--javax.swing.JPanel
|
+--ix.iview.AConstructFramePanel
- All Implemented Interfaces:
- javax.accessibility.Accessible, java.awt.event.ActionListener, ConstructFraming, java.util.EventListener, FramePanel, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
- Direct Known Subclasses:
- ActionEditorPanel, AROEditorPanel, GlobalFramePanel, GrammarEditorPanel, SimpleEditorPanel
- public abstract class AConstructFramePanel
- extends javax.swing.JPanel
- implements ConstructFraming, java.awt.event.ActionListener
An editor/viewer panel for named domain constructs.
The editor will not let you update a current construct yet, because we have
not yet worked out how to manage the impact this would have on other
modules that use the domain.
The editor will let you add new constructs (if you have changed an old one,
change the name to save it).
The construct name, pattern, and comments are currently simply strings. They
can all be edited by typing into their fields. The pattern should not stay
as a string - it should change into something a bit more constrained.
This will be changed when the construct models have been sorted out.
Nodes and constraints can be added, deleted, and cleared, either
using the buttons or using keys (enter or insert for add, delete for
delete).
Nodes are simple LLists for the moment. Adding a node
expects the user to type in a pattern (currently just a string) and it will
generate a number for the node. Deleting nodes will also
delete any constraints in which the deleted node participates.
The only constraints currently known are ordering constraints. Adding
constraints will bring up an editor that lets the user select activities
and time-points. For the moment, these "proper" constraints are translated
into simple versions because other modules cannot handle anything more
complex. A simple constraint "( )" stands for
"( End Before Begin ). The constraint editor and the
DomainEditor are ready to provide and manage "proper" constraints, but we
will not provide them until other modules can deal with them.
Example code for using the DomainEditorPanel:
...
editorPanel = new DomainEditorPanel(this);
mainJPanel.add(editorPanel);
pack();
editorPanel.setUIDomain(uiDomain);
...
- See Also:
- Serialized Form
Inner classes inherited from class javax.swing.JPanel |
javax.swing.JPanel.AccessibleJPanel |
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 |
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, 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 |
Method Summary |
abstract void |
actionPerformed(java.awt.event.ActionEvent ae)
Wakes up the ActionListener with a user action. |
boolean |
beforeClosing()
|
boolean |
beforeOpening()
|
boolean |
beforeSwitching()
Notes the current panel's contents in the current construct before
switching. |
void |
clear()
|
abstract boolean |
frameActionPerformed(java.awt.event.ActionEvent event)
Tries to process an action generated in the panel's frame. |
Domain |
getDomain()
Gets the current Domain. |
ix.iview.domain.UIDomain |
getUIDomain()
Gets the current UIDomain. |
abstract ix.iview.domain.UIObject |
makeNewConstruct()
Makes a new construct of the panel's type. |
abstract void |
newConstruct()
Makes a new construct of the panel's type and gets ready to edit it. |
protected abstract ix.iview.domain.UIObject |
noteConstruct()
Note the contents of the panel into the current object. |
protected void |
noteDraftConstruct(ix.iview.domain.UIObject uio)
Note the UIObject in the (right) draft domain |
void |
registerListKeys(javax.swing.JComponent comp,
java.lang.String commandEnd)
|
void |
setConstruct(IXObject object)
Sets the given construct to be viewed/edited. |
void |
setUIConstruct(ix.iview.domain.UIObject object)
Sets the given UI construct to be viewed/edited. |
void |
setUIDomain(ix.iview.domain.UIDomain uid)
Sets the current UIDomain. |
protected void |
setupEditor()
Sets the panel's layout and dimensions and the main panel's layout. |
protected abstract javax.swing.JPanel |
setupMainPanel()
|
protected void |
setupOuterPanel()
|
Methods inherited from class javax.swing.JPanel |
, getAccessibleContext, getUIClassID, paramString, 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, 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 |
parent
public DomainEditor parent
- The panels parent - a DomainEditor
scrollPane
protected javax.swing.JScrollPane scrollPane
mainPanel
protected javax.swing.JPanel mainPanel
formPanel
protected IFormPanel formPanel
AConstructFramePanel
public AConstructFramePanel()
- Creates an editor panel with the given parent.
Creates all panel components, the mouse listener, and the relation editor.
- Parameters:
parent
- the DomainEditor frame that the panel belons to. Used
mainly to keep toggle buttons and menus in synch
AConstructFramePanel
public AConstructFramePanel(DomainEditor theParent)
setupEditor
protected void setupEditor()
- Sets the panel's layout and dimensions and the main panel's layout.
setupOuterPanel
protected void setupOuterPanel()
setupMainPanel
protected abstract javax.swing.JPanel setupMainPanel()
registerListKeys
public void registerListKeys(javax.swing.JComponent comp,
java.lang.String commandEnd)
setConstruct
public void setConstruct(IXObject object)
- Sets the given construct to be viewed/edited.
Makes a UI object unless there is already one, displays its details in the
relevant fields of the editor, and remembers the UI object as current.
- Specified by:
setConstruct
in interface ConstructFraming
- Parameters:
object
- the object to be viewed/edited
setUIConstruct
public void setUIConstruct(ix.iview.domain.UIObject object)
- Sets the given UI construct to be viewed/edited.
Displays the ojbect's details in the relevant fields of the editor,
and remembers the object as current.
- Specified by:
setUIConstruct
in interface ConstructFraming
- Parameters:
object
- the UIObject to be viewed/edited
getDomain
public Domain getDomain()
- Description copied from interface:
ConstructFraming
- Gets the current Domain.
- Specified by:
getDomain
in interface ConstructFraming
getUIDomain
public ix.iview.domain.UIDomain getUIDomain()
- Description copied from interface:
ConstructFraming
- Gets the current UIDomain.
- Specified by:
getUIDomain
in interface ConstructFraming
setUIDomain
public void setUIDomain(ix.iview.domain.UIDomain uid)
- Description copied from interface:
ConstructFraming
- Sets the current UIDomain.
- Specified by:
setUIDomain
in interface ConstructFraming
clear
public void clear()
beforeClosing
public boolean beforeClosing()
beforeOpening
public boolean beforeOpening()
beforeSwitching
public boolean beforeSwitching()
- Notes the current panel's contents in the current construct before
switching.
- Returns:
- true if the switch should still take place, false to cancel the
switch.
noteDraftConstruct
protected void noteDraftConstruct(ix.iview.domain.UIObject uio)
- Note the UIObject in the (right) draft domain
newConstruct
public abstract void newConstruct()
- Description copied from interface:
ConstructFraming
- Makes a new construct of the panel's type and gets ready to edit it.
- Specified by:
newConstruct
in interface ConstructFraming
makeNewConstruct
public abstract ix.iview.domain.UIObject makeNewConstruct()
- Description copied from interface:
ConstructFraming
- Makes a new construct of the panel's type.
- Specified by:
makeNewConstruct
in interface ConstructFraming
frameActionPerformed
public abstract boolean frameActionPerformed(java.awt.event.ActionEvent event)
- Description copied from interface:
ConstructFraming
- Tries to process an action generated in the panel's frame.
- Specified by:
frameActionPerformed
in interface ConstructFraming
- Following copied from interface:
ix.iview.ConstructFraming
- Returns:
- true if the event is recognised, false if not.
actionPerformed
public abstract void actionPerformed(java.awt.event.ActionEvent ae)
- Wakes up the ActionListener with a user action.
This is called when a KeyStroke happens in which the ActionListener
registered its interest.
- Specified by:
actionPerformed
in interface java.awt.event.ActionListener
noteConstruct
protected abstract ix.iview.domain.UIObject noteConstruct()
- Note the contents of the panel into the current object.