edu.stanford.smi.protegex.owl.ui.components.rdflist
Class RDFListComponent

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byedu.stanford.smi.protegex.owl.ui.components.AbstractPropertyValuesComponent
                  extended byedu.stanford.smi.protegex.owl.ui.components.rdflist.RDFListComponent
All Implemented Interfaces:
edu.stanford.smi.protege.util.Disposable, ImageObserver, MenuContainer, PropertyValuesComponent, Serializable

public class RDFListComponent
extends AbstractPropertyValuesComponent
implements edu.stanford.smi.protege.util.Disposable

The default widget for properties of type rdf:List (or a subclass of rdf:List). It looks similar to a normal InstanceListWidget but operates on a linked RDF list.

It is possible to subclass this widget class to operate on simulated lists with first and rest properties.

Author:
Holger Knublauch
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  ResourceSelectionAction addAction
           
private  Action createAction
           
private  Action deleteAction
           
private  JList list
           
private  DefaultListModel listModel
           
private  Action moveDownAction
           
private  Action moveUpAction
           
private  List registeredTo
          The List of ListInstances where this is currently registered to
private  Action removeAction
           
private  PropertyValueListener valueListener
          A FrameListener to all nodes of the current list
private  Action viewAction
           
 
Fields inherited from class edu.stanford.smi.protegex.owl.ui.components.AbstractPropertyValuesComponent
 
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.Container
 
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
RDFListComponent(RDFProperty predicate)
           
 
Method Summary
private  void addItem(edu.stanford.smi.protege.model.Frame frame)
           
 void appendListValue(RDFResource li, edu.stanford.smi.protege.model.Instance value)
           
 void dispose()
           
protected  edu.stanford.smi.protege.model.Instance getFirst(edu.stanford.smi.protege.model.Instance li)
           
protected  RDFProperty getFirstProperty()
           
protected  RDFSNamedClass getListClass()
           
private  RDFResource getListElement(int index)
           
 RDFResource getListResource()
           
protected  RDFResource getNil()
           
protected  RDFResource getRest(RDFResource li)
           
protected  RDFProperty getRestProperty()
           
 int getRowCount()
           
 Collection getSelection()
           
protected  void handleCreateAction()
           
private  void handleDelete()
           
 boolean isAddEnabled()
           
 boolean isCreateEnabled()
           
 boolean isDeleteEnabled()
           
 boolean isMoveDownEnabled()
           
 boolean isMoveUpEnabled()
           
 boolean isRemoveEnabled()
           
private  void refill()
           
private  void registerPropertyValueListener()
          Registers the valueListener at all nodes in the list.
private  void removeListValue(RDFResource resource, RDFProperty property, RDFResource li, int index)
           
 void setSelectedRow(int row)
           
 void setSubject(RDFResource subject)
           
private  void swapValues(int a, int b)
           
private  void unregisterPropertyValueListener()
           
private  void updateActions()
           
 void valuesChanged()
           
 
Methods inherited from class edu.stanford.smi.protegex.owl.ui.components.AbstractPropertyValuesComponent
getEditor, getLabel, getObject, getObjects, getObjects, getOWLModel, getPredicate, getSubject, getSubjectType, hasHasValueRestriction, hasOnlyEditableValues, isEnumerationProperty, showResource
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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

addAction

private ResourceSelectionAction addAction

createAction

private Action createAction

deleteAction

private Action deleteAction

list

private JList list

listModel

private DefaultListModel listModel

moveDownAction

private Action moveDownAction

moveUpAction

private Action moveUpAction

registeredTo

private List registeredTo
The List of ListInstances where this is currently registered to


removeAction

private Action removeAction

valueListener

private PropertyValueListener valueListener
A FrameListener to all nodes of the current list


viewAction

private Action viewAction
Constructor Detail

RDFListComponent

public RDFListComponent(RDFProperty predicate)
Method Detail

addItem

private void addItem(edu.stanford.smi.protege.model.Frame frame)

appendListValue

public void appendListValue(RDFResource li,
                            edu.stanford.smi.protege.model.Instance value)

dispose

public void dispose()
Specified by:
dispose in interface edu.stanford.smi.protege.util.Disposable

getFirst

protected edu.stanford.smi.protege.model.Instance getFirst(edu.stanford.smi.protege.model.Instance li)

getFirstProperty

protected RDFProperty getFirstProperty()

getListClass

protected RDFSNamedClass getListClass()

getListElement

private RDFResource getListElement(int index)

getListResource

public RDFResource getListResource()

getNil

protected RDFResource getNil()

getRest

protected RDFResource getRest(RDFResource li)

getRestProperty

protected RDFProperty getRestProperty()

getRowCount

public int getRowCount()

getSelection

public Collection getSelection()

handleCreateAction

protected void handleCreateAction()

handleDelete

private void handleDelete()

isAddEnabled

public boolean isAddEnabled()

isCreateEnabled

public boolean isCreateEnabled()

isDeleteEnabled

public boolean isDeleteEnabled()

isMoveDownEnabled

public boolean isMoveDownEnabled()

isMoveUpEnabled

public boolean isMoveUpEnabled()

isRemoveEnabled

public boolean isRemoveEnabled()

refill

private void refill()

registerPropertyValueListener

private void registerPropertyValueListener()
Registers the valueListener at all nodes in the list.


removeListValue

private void removeListValue(RDFResource resource,
                             RDFProperty property,
                             RDFResource li,
                             int index)

setSelectedRow

public void setSelectedRow(int row)

setSubject

public void setSubject(RDFResource subject)
Specified by:
setSubject in interface PropertyValuesComponent
Overrides:
setSubject in class AbstractPropertyValuesComponent

swapValues

private void swapValues(int a,
                        int b)

updateActions

private void updateActions()

unregisterPropertyValueListener

private void unregisterPropertyValueListener()

valuesChanged

public void valuesChanged()
Specified by:
valuesChanged in interface PropertyValuesComponent