The Meta-Environment API

nl.cwi.sen1.gui.plugin
Class GraphPainter

java.lang.Object
  extended by nl.cwi.sen1.gui.plugin.DefaultStudioPlugin
      extended by nl.cwi.sen1.gui.plugin.GraphPainter
All Implemented Interfaces:
GraphPainterTif, nl.cwi.sen1.gui.plugin.StudioPlugin

public class GraphPainter
extends nl.cwi.sen1.gui.plugin.DefaultStudioPlugin
implements GraphPainterTif


Field Summary
private  GraphPainterBridge bridge
           
private  nl.cwi.sen1.configapi.Factory configFactory
           
private  java.util.Map<java.lang.String,nl.cwi.sen1.gui.component.StudioComponent> forcePanels
           
private  nl.cwi.sen1.graph.Factory graphFactory
           
private  java.util.Map<java.lang.String,GraphPanel> graphs
           
private  nl.cwi.sen1.util.Preferences preferences
           
private static java.lang.String RESOURCE_DIR
           
private  nl.cwi.sen1.gui.Studio studio
           
private static java.lang.String TOOL_NAME
           
 
Constructor Summary
GraphPainter()
           
 
Method Summary
private  aterm.ATerm createEventId(java.lang.String graphType, aterm.ATerm graphId, java.lang.String nodeId)
           
private  javax.swing.JMenu createGraphMenu(GraphPanel panel, java.lang.String initialLayout, java.lang.String graphId, java.lang.String id)
           
private  javax.swing.JMenu createLayoutMenu(javax.swing.JMenu menu, GraphPanel panel, java.lang.String initial)
           
 aterm.ATerm createPanel(java.lang.String graphType, aterm.ATerm graphId, aterm.ATerm shared, aterm.ATerm closable)
          create a panel for displaying a graph.
private  void createPanel(java.lang.String graphType, aterm.ATerm graphId, boolean shared, boolean close)
           
private  javax.swing.JMenu createTogglesMenu(javax.swing.JMenu menu, GraphPanel panel, java.lang.String graphId, java.lang.String id)
           
 void displayGraph(java.lang.String graphType, aterm.ATerm graphId, aterm.ATerm graphTerm)
           
private  nl.cwi.sen1.gui.component.StudioComponent getForcePanel(java.lang.String graphType, java.lang.String graphId)
           
 java.lang.String getName()
           
private  GraphPanel getPanel(java.lang.String graphType, java.lang.String graphId)
           
 void initStudioPlugin(nl.cwi.sen1.gui.Studio studio)
           
private  boolean isTrue(aterm.ATerm bool)
           
private  java.lang.String panelKey(java.lang.String graphType, java.lang.String graphId)
           
 void recAckEvent(aterm.ATerm t0)
           
 void recTerminate(aterm.ATerm t0)
           
private  void removePanel(java.lang.String graphType, java.lang.String graphId)
           
 void selectNode(java.lang.String graphType, aterm.ATerm graphId, aterm.ATerm nodeId)
           
private  void setForcePanel(java.lang.String graphType, java.lang.String graphId, nl.cwi.sen1.gui.component.StudioComponent comp)
           
private  void setPanel(java.lang.String graphType, java.lang.String graphId, GraphPanel panel)
           
protected  void showForcePanel(java.lang.String graphType, java.lang.String graphId, boolean show)
           
 void showPopup(java.lang.String graphType, aterm.ATerm graphId, aterm.ATerm nodeId, aterm.ATerm menu)
           
 aterm.ATerm sizeGraph(java.lang.String graphType, aterm.ATerm graphId, aterm.ATerm graphTerm)
           
 void updateGraph(java.lang.String graphType, aterm.ATerm graphId, aterm.ATerm nodeId, aterm.ATerm key, aterm.ATerm value)
           
 
Methods inherited from class nl.cwi.sen1.gui.plugin.DefaultStudioPlugin
addStudioPluginListener, fireStudioPluginClosed, removeStudioPluginListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TOOL_NAME

private static final java.lang.String TOOL_NAME
See Also:
Constant Field Values

RESOURCE_DIR

private static final java.lang.String RESOURCE_DIR
See Also:
Constant Field Values

studio

private nl.cwi.sen1.gui.Studio studio

graphFactory

private nl.cwi.sen1.graph.Factory graphFactory

configFactory

private nl.cwi.sen1.configapi.Factory configFactory

graphs

private java.util.Map<java.lang.String,GraphPanel> graphs

forcePanels

private java.util.Map<java.lang.String,nl.cwi.sen1.gui.component.StudioComponent> forcePanels

preferences

private nl.cwi.sen1.util.Preferences preferences

bridge

private GraphPainterBridge bridge
Constructor Detail

GraphPainter

public GraphPainter()
Method Detail

initStudioPlugin

public void initStudioPlugin(nl.cwi.sen1.gui.Studio studio)
Specified by:
initStudioPlugin in interface nl.cwi.sen1.gui.plugin.StudioPlugin

displayGraph

public void displayGraph(java.lang.String graphType,
                         aterm.ATerm graphId,
                         aterm.ATerm graphTerm)
Specified by:
displayGraph in interface GraphPainterTif

updateGraph

public void updateGraph(java.lang.String graphType,
                        aterm.ATerm graphId,
                        aterm.ATerm nodeId,
                        aterm.ATerm key,
                        aterm.ATerm value)
Specified by:
updateGraph in interface GraphPainterTif

isTrue

private boolean isTrue(aterm.ATerm bool)

createPanel

public aterm.ATerm createPanel(java.lang.String graphType,
                               aterm.ATerm graphId,
                               aterm.ATerm shared,
                               aterm.ATerm closable)
create a panel for displaying a graph. Before sizing, or displaying a graph a graph panel must be created.

Specified by:
createPanel in interface GraphPainterTif
Parameters:
graphType - The type of graph shown, for identifying apropriate menu's etc.
graphId - The unique id of the graph (modulo graphId)
shared - Reuse a panel if a panel with the same (graphId,graphId) exists
closable - Let the user be able to close the panel

createEventId

private aterm.ATerm createEventId(java.lang.String graphType,
                                  aterm.ATerm graphId,
                                  java.lang.String nodeId)

createPanel

private void createPanel(java.lang.String graphType,
                         aterm.ATerm graphId,
                         boolean shared,
                         boolean close)

createGraphMenu

private javax.swing.JMenu createGraphMenu(GraphPanel panel,
                                          java.lang.String initialLayout,
                                          java.lang.String graphId,
                                          java.lang.String id)

createTogglesMenu

private javax.swing.JMenu createTogglesMenu(javax.swing.JMenu menu,
                                            GraphPanel panel,
                                            java.lang.String graphId,
                                            java.lang.String id)

showForcePanel

protected void showForcePanel(java.lang.String graphType,
                              java.lang.String graphId,
                              boolean show)

getForcePanel

private nl.cwi.sen1.gui.component.StudioComponent getForcePanel(java.lang.String graphType,
                                                                java.lang.String graphId)

setForcePanel

private void setForcePanel(java.lang.String graphType,
                           java.lang.String graphId,
                           nl.cwi.sen1.gui.component.StudioComponent comp)

panelKey

private java.lang.String panelKey(java.lang.String graphType,
                                  java.lang.String graphId)

createLayoutMenu

private javax.swing.JMenu createLayoutMenu(javax.swing.JMenu menu,
                                           GraphPanel panel,
                                           java.lang.String initial)

getPanel

private GraphPanel getPanel(java.lang.String graphType,
                            java.lang.String graphId)

setPanel

private void setPanel(java.lang.String graphType,
                      java.lang.String graphId,
                      GraphPanel panel)

removePanel

private void removePanel(java.lang.String graphType,
                         java.lang.String graphId)

getName

public java.lang.String getName()
Specified by:
getName in interface nl.cwi.sen1.gui.plugin.StudioPlugin

recTerminate

public void recTerminate(aterm.ATerm t0)
Specified by:
recTerminate in interface GraphPainterTif

recAckEvent

public void recAckEvent(aterm.ATerm t0)
Specified by:
recAckEvent in interface GraphPainterTif

selectNode

public void selectNode(java.lang.String graphType,
                       aterm.ATerm graphId,
                       aterm.ATerm nodeId)
Specified by:
selectNode in interface GraphPainterTif

showPopup

public void showPopup(java.lang.String graphType,
                      aterm.ATerm graphId,
                      aterm.ATerm nodeId,
                      aterm.ATerm menu)
Specified by:
showPopup in interface GraphPainterTif

sizeGraph

public aterm.ATerm sizeGraph(java.lang.String graphType,
                             aterm.ATerm graphId,
                             aterm.ATerm graphTerm)
Specified by:
sizeGraph in interface GraphPainterTif

The Meta-Environment API