ix.iview
Class ConstraintEditor

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--ix.iview.ConstraintEditor
All Implemented Interfaces:
javax.accessibility.Accessible, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.awt.event.MouseListener, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants
Direct Known Subclasses:
ConditionEffectEditor, OrderingEditor, SpecEditor

public abstract class ConstraintEditor
extends javax.swing.JFrame
implements java.awt.event.MouseListener

An abstract class with useful things for building constraint editors. The editor is implemented as a frame using Boxes and JButtons.

The editor can be created with no arguments or with a given object which will be set as the current object to which the constraint applies. Subsequently, the object in the editor can be set using the setObject method.

Concrete editors that extend this class should implement the following methods:

The rest can be handled by the generic methods defined in this class. For an example of an implementing class see TPRelationEditor.

See Also:
Serialized Form

Inner classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Inner classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Inner classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
 
Field Summary
protected  java.awt.Component butBox
           
protected  javax.swing.JButton cancelBut
           
protected  java.util.ArrayList constraintListeners
           
 java.lang.Object currentObject
           
protected  javax.swing.JLabel label
           
protected  javax.swing.JPanel mainPanel
           
protected  javax.swing.JButton moreBut
           
protected  javax.swing.JButton okBut
           
protected  java.lang.Object original
           
protected  java.awt.Component relsBox
           
 
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, icon, ICONIFIED, mbManagement, menuBar, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, ownedWindows, resizable, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, title, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Window
inputContext, OPENED, ownedWindowList, state, warningString, windowListener
 
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, parent, peer, peerFont, popups, prefSize, RIGHT_ALIGNMENT, textListenerK, TOP_ALIGNMENT, valid, visible, width, windowClosingException, windowListenerK, x, y
 
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
 
Constructor Summary
ConstraintEditor(java.lang.String message)
          As above but with a default title.
ConstraintEditor(java.lang.String title, java.lang.String message)
          Creates an editor with the title for specifying constraints.
ConstraintEditor(java.lang.String title, java.lang.String message, java.lang.Object object)
          Creates an editor for specifying time point relations of the given object.
 
Method Summary
 void addConstraintListener(ConstraintListener listener)
          Fills the controls with relevant object-sensitive information.
 void closeEditor()
           
protected abstract  java.lang.Object collectConstraint()
           
protected abstract  void initFromObject()
           
 boolean isEditing()
           
protected abstract  java.awt.Component makeRels()
          Does nothing for the abstract class.
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void removeConstraintListener(ConstraintListener listener)
           
protected abstract  void setFromObject(java.lang.Object original)
           
 void setMessage(java.lang.String message)
           
 void setObject(java.lang.Object object)
          Sets the object whose components (children) are to be realted.
 void setOriginal(java.lang.Object original)
          Set this to the original value (non-null) to get edit-bahaviour rather than add-behaviour.
 void start()
           
 boolean start(java.lang.Object object)
           
 void start(java.lang.Object object, java.lang.Object original)
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
, addNotify, addToFrameList, constructComponentName, finalize, getCursorType, getFrames, getIconImage, getMenuBar, getState, getTitle, isResizable, postProcessKeyEvent, remove, removeFromFrameList, removeNotify, setCursor, setIconImage, setMenuBar, setResizable, setState, setTitle
 
Methods inherited from class java.awt.Window
addOwnedWindow, addWindowListener, adjustListeningChildren, applyResourceBundle, applyResourceBundle, connectOwnedWindow, dispatchEventImpl, dispose, eventEnabled, getFocusOwner, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, hide, isActive, isShowing, nextFocus, pack, postEvent, postWindowEvent, preProcessKeyEvent, processEvent, removeOwnedWindow, removeWindowListener, resetGC, setCursor, setFocusOwner, show, toBack, toFront, transferFocus
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyOrientation, checkGD, countComponents, createChildHierarchyEvents, createHierarchyEvents, deliverEvent, dispatchEventToSelf, doLayout, findComponentAt, findComponentAt, findComponentAt, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getMouseEventTarget, getPreferredSize, getWindow, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPaint, lightweightPrint, list, list, locate, minimumSize, numListening, paint, paintComponents, paintHeavyweightComponents, postsOldMouseEvents, preferredSize, print, printComponents, printHeavyweightComponents, processContainerEvent, proxyEnableEvents, proxyRequestFocus, remove, removeAll, removeContainerListener, setFont, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, areInputMethodsEnabled, bounds, checkImage, checkImage, checkWindowClosingException, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getAccessibleIndexInParent, getAccessibleStateSet, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen_NoTreeLock, getLocationOnScreen, getName, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getSize, getToolkitImpl, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isEnabledImpl, isFocusTraversable, isLightweight, isOpaque, isRecursivelyVisible, 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, processMouseEvent, processMouseMotionEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
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

mainPanel

protected javax.swing.JPanel mainPanel

relsBox

protected java.awt.Component relsBox

butBox

protected java.awt.Component butBox

okBut

protected javax.swing.JButton okBut

cancelBut

protected javax.swing.JButton cancelBut

moreBut

protected javax.swing.JButton moreBut

label

protected javax.swing.JLabel label

constraintListeners

protected java.util.ArrayList constraintListeners

currentObject

public java.lang.Object currentObject

original

protected java.lang.Object original
Constructor Detail

ConstraintEditor

public ConstraintEditor(java.lang.String title,
                        java.lang.String message)
Creates an editor with the title for specifying constraints. Creates space for components for specifying the constraints and creates two buttons (Ok, Cancel)

ConstraintEditor

public ConstraintEditor(java.lang.String message)
As above but with a default title.

ConstraintEditor

public ConstraintEditor(java.lang.String title,
                        java.lang.String message,
                        java.lang.Object object)
Creates an editor for specifying time point relations of the given object. As ConstraintEditor() but with a given object.
Parameters:
object - the object whose sub-activities are to be related
Method Detail

isEditing

public boolean isEditing()

setMessage

public void setMessage(java.lang.String message)

setObject

public void setObject(java.lang.Object object)
               throws java.lang.NullPointerException
Sets the object whose components (children) are to be realted. Fills the activity lists of the panel with the children of the object.
Parameters:
object - the object whose children are to be related

setOriginal

public void setOriginal(java.lang.Object original)
Set this to the original value (non-null) to get edit-bahaviour rather than add-behaviour.

start

public void start()

start

public boolean start(java.lang.Object object)

start

public void start(java.lang.Object object,
                  java.lang.Object original)

addConstraintListener

public void addConstraintListener(ConstraintListener listener)
Fills the controls with relevant object-sensitive information. To be implemented by the sub-class. E.g. fill ordering editor with the sub-activities of the refinement.

removeConstraintListener

public void removeConstraintListener(ConstraintListener listener)

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

closeEditor

public void closeEditor()

makeRels

protected abstract java.awt.Component makeRels()
Does nothing for the abstract class. For a concrete class this makes all items on the panel used to specify parts of the constraint.

initFromObject

protected abstract void initFromObject()

setFromObject

protected abstract void setFromObject(java.lang.Object original)

collectConstraint

protected abstract java.lang.Object collectConstraint()