|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
An OutlineMaker takes objects and creates outline window frames
holding an outline of each object, built by the OutlineRenderer
for the object's most specific class or interface.
An OutlineMaker:
OutlineRenderers indexed by classes and
interfaces, and manages additions to and lookups from this table.
(e.g., addRenderer(java.lang.Class, edu.mit.ai.psg.ui.outliner.OutlineRenderer), getMostSpecificRenderer(java.lang.Object)).
OutlineNodes for objects (and perhaps their children
as an outline is expanded) by finding the object's most specific
class or interface with a renderer, and invoking
OutlineRenderer.makeOutlineNode(java.lang.Object, java.lang.Object).
(e.g., makeOutlineNode(Object).)
makeFrame(Object).)
addPopupMenuItems(java.awt.PopupMenu, edu.mit.ai.psg.ui.outliner.OutlineNode, javax.swing.tree.TreePath, javax.swing.JTree)) Outliner.
| Method Summary | |
void |
addPopupMenuItems(PopupMenu menu,
OutlineNode outlineNode,
TreePath treePath,
JTree jTree)
Add items to the popup menu for an outline node. |
void |
addRenderer(Class forInterface,
OutlineRenderer renderer)
Add an outline renderer for objects with this interface into renderer table. |
List |
getAllInterfacesWithRenderers(Object obj)
Search class and its interfaces and superclasses for each class/interface which has a renderer, and return all classes/interfaces found. |
List |
getAllRenderers(Object obj)
Search class and its interfaces and superclasses for each class/interface which has a renderer, and return all renderers found. |
OutlineRenderer |
getExactRenderer(Class anInterface)
Get one renderer for exactly this interface or class (not super-interfaces or super-classes). |
List |
getExactRenderers(Class anInterface)
return a List of renderers for exactly this interface or class. |
JTree |
getFrameJTree(JFrame frame)
given a window frame returned by makeFrame, get its JTree |
Class |
getMostSpecificInterfaceWithRenderers(Object obj)
Search outline renderers for object for the most specific class or interface of obj. |
OutlineRenderer |
getMostSpecificRenderer(Object obj)
Search class and its interfaces and superclasses for a class/interface which has a renderer, and return the most specific renderer found. |
OutlineRenderer |
getNoteRenderer()
get renderer used for notes in an outline, such as section separators, error messages, etc. |
JTree |
getPaneJTree(Container frame)
given a window pane initalized by initializePane, get its JTree |
void |
initializePane(Container contentPane,
OutlineNode displayRoot)
initialize contentPane with a javax.swing.JScrollPane
displaying the JTree from makeOutlineJTree(edu.mit.ai.psg.ui.outliner.OutlineNode). |
JFrame |
makeFrame(Object object)
make a new window frame displaying an outline of this object |
JFrame |
makeFrame(String frameLabel,
OutlineNode newRoot)
make a new window frame displaying outline |
String |
makeFrameTitle(Object object)
make title for new frame displaying outline of object |
JTree |
makeOutlineJTree(OutlineNode displayRoot)
create and initialize a JTree for displaying outline tree. |
OutlineModel |
makeOutlineModel(OutlineNode hiddenRoot)
return a new OutlineModel with hidden root of tree
(called by makeOutlineJTree(edu.mit.ai.psg.ui.outliner.OutlineNode)) |
OutlineNode |
makeOutlineNode(Object obj)
|
OutlineNode |
makeOutlineNode(Object label,
Object obj)
Make a new OutlineNode for obj to add to an outline. |
JFrame |
outline(Object object)
make and open a new window frame displaying an outline of this object |
boolean |
removeRenderer(Class forInterface,
OutlineRenderer renderer)
Remove renderer from the renderers for this interface or class (not super-interfaces or super-classes). |
void |
setFrameJTree(JFrame frame,
JTree jtree)
given a window frame returned by makeFrame, set its JTree |
void |
setPaneJTree(Container frame,
JTree jtree)
given a window pane initialized by initializePane, set its JTree |
| Method Detail |
public JFrame outline(Object object)
makeFrame(java.lang.Object)public JFrame makeFrame(Object object)
makeFrameTitle(java.lang.Object)
public JFrame makeFrame(String frameLabel,
OutlineNode newRoot)
frameLabel - title of window framenewRoot - root node of outlinemakeOutlineNode(Object)public String makeFrameTitle(Object object)
makeFrame(Object)public JTree getFrameJTree(JFrame frame)
public void setFrameJTree(JFrame frame,
JTree jtree)
public void initializePane(Container contentPane,
OutlineNode displayRoot)
contentPane with a javax.swing.JScrollPane
displaying the JTree from makeOutlineJTree(edu.mit.ai.psg.ui.outliner.OutlineNode).public JTree getPaneJTree(Container frame)
public void setPaneJTree(Container frame,
JTree jtree)
public JTree makeOutlineJTree(OutlineNode displayRoot)
JTree for displaying outline tree.
Adds a hidden root node so every displayed node has a parent node
in which it can be replaced by a new renderer.
(Calls makeOutlineModel(edu.mit.ai.psg.ui.outliner.OutlineNode)(hiddenRoot).)JTree.setRootVisible(boolean)public OutlineModel makeOutlineModel(OutlineNode hiddenRoot)
OutlineModel with hidden root of tree
(called by makeOutlineJTree(edu.mit.ai.psg.ui.outliner.OutlineNode))public OutlineNode makeOutlineNode(Object obj)
makeOutlineNode(Object, Object)
public OutlineNode makeOutlineNode(Object label,
Object obj)
getMostSpecificRenderer(java.lang.Object)public OutlineRenderer getMostSpecificRenderer(Object obj)
public Class getMostSpecificInterfaceWithRenderers(Object obj)
public List getAllRenderers(Object obj)
public List getAllInterfacesWithRenderers(Object obj)
public OutlineRenderer getExactRenderer(Class anInterface)
public List getExactRenderers(Class anInterface)
List of renderers for exactly this interface or class.
(not super-interfaces or super-classes). List is ordered so most
recently added renderer (default for this interface or class) is first.
public void addRenderer(Class forInterface,
OutlineRenderer renderer)
forInterface - Objects with this interface or class will be
outlined with this function (unless a more specific one applies).
If forInterface is null, then it will be used to render null.renderer - must be a non-null OutlineRenderer
public boolean removeRenderer(Class forInterface,
OutlineRenderer renderer)
public OutlineRenderer getNoteRenderer()
public void addPopupMenuItems(PopupMenu menu,
OutlineNode outlineNode,
TreePath treePath,
JTree jTree)
OutlineRenderer.addPopupMenuItems(java.awt.PopupMenu, edu.mit.ai.psg.ui.outliner.OutlineNode, javax.swing.tree.TreePath, javax.swing.JTree) is for adding items particular
to the class or interface renderered by that OutlineRenderer.OutlineRenderer.addPopupMenuItems(java.awt.PopupMenu, edu.mit.ai.psg.ui.outliner.OutlineNode, javax.swing.tree.TreePath, javax.swing.JTree),
OutlineCommand
|
Copyright (c) 1996-1999 Massachusetts Institute of Technology Feedback: jeva-feedback@ai.mit.edu |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||