Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

com.arcle.rmt.j2se.swing.vc.AbstractElementList Class Reference

Displays an RQML tree where the level one nodes categorizes the first-class elements and level two nodes are the elements themselves. More...

Inheritance diagram for com.arcle.rmt.j2se.swing.vc.AbstractElementList:

com.arcle.rmt.j2se.swing.vc.ElementList List of all members.

Public Member Functions

void update (Observable o, Object param)
void setDocument (Document doc)
 Sets a document for this view.

Controller getController ()

Protected Member Functions

 AbstractElementList (ElementEditFactory f)
void doEditElement (RQMLFirstClass elem)
 Creates and displays the appropriate first-class element editor component for the specified first-class element.

void initChildren ()
 This implementation does nothing.

void layoutChildren ()
ElementTypeNodeFacade getElementTypeNodeFacade ()
void handleNewElement (RQMLFirstClass elem)
 Strategy method that is called when a new element was just created.

void handleDeleteElement (RQMLFirstClass elem)
 Strategy method that is called when an element is about to be deleted.

void createChild (final RQMLFirstClass elem)
 Strategy method to create the tree node and its corresponding editor window for the specified element.

void deleteChild (final RQMLFirstClass elem)
void loadData ()
 Strategy method to load all data from the document into the view.

void clearTypeNodes ()
 Removes all children from the element type nodes.

JTree createTree ()
 Factory method that creates and configures the element tree.

TreeController createTreeController ()
 Factory method that creates the controller object for the element tree.

DescriptionText createCurrentDescription ()
 Factory method that creates the description text area.

JScrollPane createScrollPane (JComponent c)
 Factory method that creates a JScrollPane object.

JSplitPane createSplitPane (int splitMode)
 Factory method that creates a JSplitPane object.

RootNode createRootNode ()
 Factory method to create the root node for the element tree.

TreeModelAdapter createTreeModel ()
 factory method to create the model for the element tree.

Controller createController ()
 factory method to create the controller object of this view.

abstract ElementTypeNodeFacade createElementTypeNodeFacade ()
JTree getTree ()
 Returns the element tree of the view.

DescriptionText getCurrentDescription ()
 Returns the text area for the currently highlighted element.

RQMLDocument getRQMLDocument ()
 Returns the current document.

TreeModelAdapter getTreeModel ()
 Returns the tree model.

RootNode getRootNode ()
ElementEditFactory getElementEditFactory ()

Protected Attributes

boolean shouldOpenElementEditors = true
 Whether to open element editors when doEditElement() is called.


Private Attributes

JTree _tree = null
 The tree displaying the RQML first-class elements.

DescriptionText _currentDescription = null
 The text area that displays the description of the currently-selected element.

Controller _controller
 The controlling object of this class.

TreeModelAdapter _treeModel = null
 The tree model.

ElementEditFactory _editFactory
ElementTypeNodeFacade _nodeFacade = null

Static Private Attributes

final float PANE_WEIGHT = 0.8f

Detailed Description

Displays an RQML tree where the level one nodes categorizes the first-class elements and level two nodes are the elements themselves.

The display is divided vertically where the top component is the tree and the bottom is a text area displaying the current description for the selected node.

This class implements most of the functionalities without yet committing knowledge to the various RQML first-class element types.

Author:
Sasmito Adibowo
Version:
Id
AbstractElementList.java,v 1.12 2003/05/15 19:43:47 adib Exp

Definition at line 113 of file AbstractElementList.java.


Constructor & Destructor Documentation

com.arcle.rmt.j2se.swing.vc.AbstractElementList.AbstractElementList ElementEditFactory  f  )  [protected]
 

Definition at line 115 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._editFactory.


Member Function Documentation

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.clearTypeNodes  )  [protected]
 

Removes all children from the element type nodes.

Definition at line 300 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementTypeNode.clear(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementTypeNodeFacade().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.createChild final RQMLFirstClass  elem  )  [protected]
 

Strategy method to create the tree node and its corresponding editor window for the specified element.

Parameters:
elem the first-class element to display and edit.

Definition at line 244 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementTypeNode.createChild(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementTypeNodeFacade().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.handleNewElement(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData().

Controller com.arcle.rmt.j2se.swing.vc.AbstractElementList.createController  )  [protected]
 

factory method to create the controller object of this view.

Definition at line 387 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getController().

DescriptionText com.arcle.rmt.j2se.swing.vc.AbstractElementList.createCurrentDescription  )  [protected]
 

Factory method that creates the description text area.

Definition at line 345 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getCurrentDescription().

abstract ElementTypeNodeFacade com.arcle.rmt.j2se.swing.vc.AbstractElementList.createElementTypeNodeFacade  )  [protected, pure virtual]
 

Implemented in com.arcle.rmt.j2se.swing.vc.ElementList.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementTypeNodeFacade().

RootNode com.arcle.rmt.j2se.swing.vc.AbstractElementList.createRootNode  )  [protected]
 

Factory method to create the root node for the element tree.

Definition at line 372 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTreeModel().

JScrollPane com.arcle.rmt.j2se.swing.vc.AbstractElementList.createScrollPane JComponent  c  )  [protected]
 

Factory method that creates a JScrollPane object.

Definition at line 356 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.layoutChildren().

JSplitPane com.arcle.rmt.j2se.swing.vc.AbstractElementList.createSplitPane int  splitMode  )  [protected]
 

Factory method that creates a JSplitPane object.

Parameters:
splitMode one of JSplitPane.VERTICAL_SPLIT or JSplitPane.HORIZONTAL_SPLIT.

Definition at line 365 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.layoutChildren().

JTree com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTree  )  [protected]
 

Factory method that creates and configures the element tree.

  • instantiate a new JTree
  • set the tree model
  • set the controller object

Definition at line 321 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTreeController(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTreeModel().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTree().

TreeController com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTreeController  )  [protected]
 

Factory method that creates the controller object for the element tree.

Definition at line 338 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTree().

TreeModelAdapter com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTreeModel  )  [protected]
 

factory method to create the model for the element tree.

Definition at line 379 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.createRootNode().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTreeModel().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.deleteChild final RQMLFirstClass  elem  )  [protected]
 

Definition at line 259 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementTypeNode.deleteChild(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementTypeNodeFacade().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.handleDeleteElement().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.doEditElement RQMLFirstClass  elem  )  [protected]
 

Creates and displays the appropriate first-class element editor component for the specified first-class element.

The element-editor component will be created only if shouldOpenElementEditors is true.

See also:
shouldOpenElementEditors
Parameters:
elem The element to edit.

Definition at line 130 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.ElementEditFactory.createElementEdit(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementEditFactory(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.shouldOpenElementEditors.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementTypeNode.createChild().

Controller com.arcle.rmt.j2se.swing.vc.AbstractElementList.getController  ) 
 

Definition at line 200 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._controller, and com.arcle.rmt.j2se.swing.vc.AbstractElementList.createController().

DescriptionText com.arcle.rmt.j2se.swing.vc.AbstractElementList.getCurrentDescription  )  [protected]
 

Returns the text area for the currently highlighted element.

Definition at line 411 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._currentDescription, and com.arcle.rmt.j2se.swing.vc.AbstractElementList.createCurrentDescription().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.layoutChildren(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.setDocument(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.TreeController.valueChanged().

ElementEditFactory com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementEditFactory  )  [protected]
 

Definition at line 440 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._editFactory.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.doEditElement().

ElementTypeNodeFacade com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementTypeNodeFacade  )  [protected]
 

Definition at line 210 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._nodeFacade, and com.arcle.rmt.j2se.swing.vc.AbstractElementList.createElementTypeNodeFacade().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.clearTypeNodes(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.createChild(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.deleteChild(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementListController.getActions().

RootNode com.arcle.rmt.j2se.swing.vc.AbstractElementList.getRootNode  )  [protected]
 

Definition at line 436 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTreeModel().

Referenced by com.arcle.rmt.j2se.swing.vc.ElementList.ElementTypeNodeFacade.createMappings().

RQMLDocument com.arcle.rmt.j2se.swing.vc.AbstractElementList.getRQMLDocument  )  [protected]
 

Returns the current document.

Definition at line 421 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.ElementList.ElementTypeNodeFacade.createMappings(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData().

JTree com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTree  )  [protected]
 

Returns the element tree of the view.

Definition at line 401 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._tree, and com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTree().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.TreeController.keyPressed(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.layoutChildren(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.TreeController.mousePressed(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.setDocument(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.TreeController.valueChanged().

TreeModelAdapter com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTreeModel  )  [protected]
 

Returns the tree model.

Definition at line 429 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList._treeModel, and com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTreeModel().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementTypeNode.createChild(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.createTree(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.ElementTypeNode.deleteChild(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getRootNode(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.handleDeleteElement RQMLFirstClass  elem  )  [protected]
 

Strategy method that is called when an element is about to be deleted.

Parameters:
elem the dying element ;-)

Definition at line 235 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.deleteChild().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.update().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.handleNewElement RQMLFirstClass  elem  )  [protected]
 

Strategy method that is called when a new element was just created.

Parameters:
elem the newly-created element.

Definition at line 226 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.createChild().

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.update().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.initChildren  )  [protected]
 

This implementation does nothing.

Definition at line 141 of file AbstractElementList.java.

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.layoutChildren  )  [protected]
 

Definition at line 143 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.createScrollPane(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.createSplitPane(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getCurrentDescription(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTree(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.PANE_WEIGHT.

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData  )  [protected]
 

Strategy method to load all data from the document into the view.

Definition at line 275 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.clearTypeNodes(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.createChild(), com.arcle.rmt.j2se.model.RQMLDocument.getElements(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getRQMLDocument(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTreeModel(), com.arcle.rmt.xplat.util.Iterator.hasNext(), com.arcle.rmt.xplat.util.Iterator.next(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.shouldOpenElementEditors.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.setDocument().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.setDocument Document  doc  ) 
 

Sets a document for this view.

It then fires a property change event for the property named document.

Parameters:
doc The document to set.

Definition at line 189 of file AbstractElementList.java.

References com.arcle.rmt.j2se.swing.vc.AbstractElementList.getCurrentDescription(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTree(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData().

void com.arcle.rmt.j2se.swing.vc.AbstractElementList.update Observable  o,
Object  param
 

Parameters:
o 
param 

Definition at line 165 of file AbstractElementList.java.

References com.arcle.rmt.j2se.model.RQMLDocumentUpdateEvent.getElement(), com.arcle.rmt.j2se.model.RQMLDocumentUpdateEvent.getEventType(), com.arcle.rmt.j2se.swing.vc.AbstractElementList.handleDeleteElement(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.handleNewElement().


Member Data Documentation

Controller com.arcle.rmt.j2se.swing.vc.AbstractElementList._controller [private]
 

The controlling object of this class.

Definition at line 468 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getController().

DescriptionText com.arcle.rmt.j2se.swing.vc.AbstractElementList._currentDescription = null [private]
 

The text area that displays the description of the currently-selected element.

Definition at line 462 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getCurrentDescription().

ElementEditFactory com.arcle.rmt.j2se.swing.vc.AbstractElementList._editFactory [private]
 

Definition at line 475 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.AbstractElementList(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementEditFactory().

ElementTypeNodeFacade com.arcle.rmt.j2se.swing.vc.AbstractElementList._nodeFacade = null [private]
 

Definition at line 478 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getElementTypeNodeFacade().

JTree com.arcle.rmt.j2se.swing.vc.AbstractElementList._tree = null [private]
 

The tree displaying the RQML first-class elements.

Definition at line 456 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTree().

TreeModelAdapter com.arcle.rmt.j2se.swing.vc.AbstractElementList._treeModel = null [private]
 

The tree model.

Definition at line 473 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.getTreeModel().

final float com.arcle.rmt.j2se.swing.vc.AbstractElementList.PANE_WEIGHT = 0.8f [static, private]
 

Definition at line 483 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.layoutChildren().

boolean com.arcle.rmt.j2se.swing.vc.AbstractElementList.shouldOpenElementEditors = true [protected]
 

Whether to open element editors when doEditElement() is called.

See also:
doEditElement()

Definition at line 451 of file AbstractElementList.java.

Referenced by com.arcle.rmt.j2se.swing.vc.AbstractElementList.doEditElement(), and com.arcle.rmt.j2se.swing.vc.AbstractElementList.loadData().


The documentation for this class was generated from the following file:
Generated on Fri Jun 18 19:53:47 2004 for Arcle Rambutan by doxygen 1.3.5