Package jadex.base.gui
Class ObjectTreeModel
- java.lang.Object
- 
- jadex.base.gui.ObjectTreeModel
 
- 
- All Implemented Interfaces:
- javax.swing.tree.TreeModel
 
 public class ObjectTreeModel extends java.lang.Object implements javax.swing.tree.TreeModelTree model for inspecting objects.
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description classObjectTreeModel.ObjectInspectorNodeTreeModel node for java object inspectionstatic classObjectTreeModel.ObjectTreeCellRendererOAV tree cell renderer displays right icons.
 - 
Field SummaryFields Modifier and Type Field Description protected static booleanenableObjectInspectionflag to indicate if java objects should be inspectable in the tree TO DO: make configurable via GUI?protected static javax.swing.UIDefaultsiconsThe image icons.protected java.util.Listinspectorslist for all created Attribute inspector nodesprotected java.util.SetlistenersThe listeners.protected booleannotifyThe pending notification flag.protected ObjectTreeModel.ObjectInspectorNoderootThe root node.protected intuuidcounterUUID counter
 - 
Constructor SummaryConstructors Constructor Description ObjectTreeModel(java.lang.Object root)Create new OAV tree model.
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddTreeModelListener(javax.swing.event.TreeModelListener l)Add a listener to the model.protected voidfireTreeStructureChanged(java.lang.Object[] treePath)Regenerate subtree if a node was replacedjava.lang.ObjectgetChild(java.lang.Object parent, int index)Get the given child of a node.intgetChildCount(java.lang.Object parent)Get the number of children of the given node.protected intgetIndexForChild(java.util.List children, java.lang.Object child)Get the index for a child in children list, beginning with index=0protected intgetIndexForChild(java.util.List children, java.lang.Object child, int start)Returns the FIRST occurrence of child in given children list.intgetIndexOfChild(java.lang.Object parent, java.lang.Object child)Get the index of a given child.protected intgetNextNodeUUID()Generate a unique id for ObjectNode'sjava.lang.ObjectgetRoot()Get the root node of the tree.protected static booleanisInspectable(java.lang.Class clazz, boolean inspectObjectClass)Decide if java object should be inspectable.protected static booleanisInspectable(java.lang.Object obj)Decide if java object should be inspectable.booleanisLeaf(java.lang.Object node)Check if a node is a leaf node.protected voidrefreshInspectorNodes()Refresh all displayed attributesvoidremoveTreeModelListener(javax.swing.event.TreeModelListener l)Remove a listener from the model.protected booleantestInspectorNodesListEquals(java.util.List l1, java.util.List l2)Tests if two lists of Inspector nodes (e.g.voidvalueForPathChanged(javax.swing.tree.TreePath path, java.lang.Object newValue)Called by user changes (when the tree is editable).
 
- 
- 
- 
Field Detail- 
enableObjectInspectionprotected static final boolean enableObjectInspection flag to indicate if java objects should be inspectable in the tree TO DO: make configurable via GUI?- See Also:
- Constant Field Values
 
 - 
iconsprotected static final javax.swing.UIDefaults icons The image icons.
 - 
rootprotected ObjectTreeModel.ObjectInspectorNode root The root node.
 - 
listenersprotected java.util.Set listeners The listeners.
 - 
notifyprotected boolean notify The pending notification flag.
 - 
inspectorsprotected java.util.List inspectors list for all created Attribute inspector nodes
 - 
uuidcounterprotected int uuidcounter UUID counter
 
- 
 - 
Method Detail- 
getRootpublic java.lang.Object getRoot() Get the root node of the tree.- Specified by:
- getRootin interface- javax.swing.tree.TreeModel
 
 - 
getChildCountpublic int getChildCount(java.lang.Object parent) Get the number of children of the given node.- Specified by:
- getChildCountin interface- javax.swing.tree.TreeModel
 
 - 
getChildpublic java.lang.Object getChild(java.lang.Object parent, int index)Get the given child of a node.- Specified by:
- getChildin interface- javax.swing.tree.TreeModel
 
 - 
getIndexOfChildpublic int getIndexOfChild(java.lang.Object parent, java.lang.Object child)Get the index of a given child.- Specified by:
- getIndexOfChildin interface- javax.swing.tree.TreeModel
 
 - 
isLeafpublic boolean isLeaf(java.lang.Object node) Check if a node is a leaf node.- Specified by:
- isLeafin interface- javax.swing.tree.TreeModel
 
 - 
addTreeModelListenerpublic void addTreeModelListener(javax.swing.event.TreeModelListener l) Add a listener to the model.- Specified by:
- addTreeModelListenerin interface- javax.swing.tree.TreeModel
 
 - 
removeTreeModelListenerpublic void removeTreeModelListener(javax.swing.event.TreeModelListener l) Remove a listener from the model.- Specified by:
- removeTreeModelListenerin interface- javax.swing.tree.TreeModel
 
 - 
valueForPathChangedpublic void valueForPathChanged(javax.swing.tree.TreePath path, java.lang.Object newValue)Called by user changes (when the tree is editable).- Specified by:
- valueForPathChangedin interface- javax.swing.tree.TreeModel
 
 - 
getNextNodeUUIDprotected int getNextNodeUUID() Generate a unique id for ObjectNode's- Returns:
- synchronized call to System.currentTimeMillis();
 
 - 
fireTreeStructureChangedprotected void fireTreeStructureChanged(java.lang.Object[] treePath) Regenerate subtree if a node was replaced- Parameters:
- treePath- The Path to the node that was changed
 
 - 
testInspectorNodesListEqualsprotected boolean testInspectorNodesListEquals(java.util.List l1, java.util.List l2)Tests if two lists of Inspector nodes (e.g. children) are semantically equals- Parameters:
- l1- list to test
- l2- list to test
- Returns:
- true if the lists are the same or contains the semantically same objects in the same order
 
 - 
getIndexForChildprotected int getIndexForChild(java.util.List children, java.lang.Object child)Get the index for a child in children list, beginning with index=0
 - 
getIndexForChildprotected int getIndexForChild(java.util.List children, java.lang.Object child, int start)Returns the FIRST occurrence of child in given children list. Be sure to remove the child from the list or to save the index to find additional occurrences of the child in later searches.- Parameters:
- children- List to search for the child.
- child- The child to search for.
- Returns:
- the FIRST index for the child in the children list
 - 
refreshInspectorNodesprotected void refreshInspectorNodes() Refresh all displayed attributes- Parameters:
- oldRoot-
 
 - 
isInspectableprotected static boolean isInspectable(java.lang.Object obj) Decide if java object should be inspectable.
 - 
isInspectableprotected static boolean isInspectable(java.lang.Class clazz, boolean inspectObjectClass)Decide if java object should be inspectable. This method test if clazz.isAssignableFrom([String|Number|Character|])
 
 
- 
 
-