net.tinyos.tinydb.topology
Class DisplayManager

java.lang.Object
  |
  +--net.tinyos.tinydb.topology.DisplayManager
All Implemented Interfaces:
EdgeClickedEventListener, EdgeDialogContributor, EdgeEventListener, EdgePainter, java.util.EventListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, NodeClickedEventListener, NodeDialogContributor, NodeEventListener, NodePainter, java.lang.Runnable

public class DisplayManager
extends java.lang.Object
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.lang.Runnable, NodePainter, EdgePainter, NodeEventListener, EdgeEventListener, NodeClickedEventListener, EdgeClickedEventListener, NodeDialogContributor, EdgeDialogContributor


Nested Class Summary
static class DisplayManager.DisplayPropertiesPanel
           
 class DisplayManager.EdgeInfo
           
 class DisplayManager.NodeInfo
           
 class DisplayManager.ProprietaryNodeInfoPanel
           
 
Field Summary
protected  java.util.Vector EdgeClickedEventListeners
           
protected  java.util.Vector edgeDialogContributors
           
protected  java.util.Vector edgePainters
           
protected  java.util.Vector NodeClickedEventListeners
           
protected  java.util.Vector nodeDialogContributors
           
protected  java.util.Vector nodePainters
           
protected static net.tinyos.tinydb.topology.util.TwoKeyHashtable proprietaryEdgeInfo
           
protected static java.util.Hashtable proprietaryNodeInfo
           
protected static long refreshRate
           
protected static java.lang.Thread refreshScreenThread
           
protected  java.util.Vector screenPainters
           
 
Method Summary
 void AddEdgeClickedEventListener(net.tinyos.tinydb.topology.event.EdgeClickedEventListener pListener)
           
 void AddEdgeDialogContributor(net.tinyos.tinydb.topology.util.EdgeDialogContributor pContributor)
           
 void AddEdgePainter(net.tinyos.tinydb.topology.util.EdgePainter painter)
           
 void AddNodeClickedEventListener(net.tinyos.tinydb.topology.event.NodeClickedEventListener pListener)
           
 void AddNodeDialogContributor(net.tinyos.tinydb.topology.util.NodeDialogContributor pContributor)
           
 void AddNodePainter(net.tinyos.tinydb.topology.util.NodePainter painter)
           
 void AddScreenPainter(net.tinyos.tinydb.topology.util.ScreenPainter painter)
           
protected  void DisplayEdgePropertyDialog(java.lang.Integer pSourceNodeNumber, java.lang.Integer pDestinationNodeNumber)
           
protected  void DisplayNodePropertyDialog(java.lang.Integer pNodeNumber)
           
 void DragNearestNode(int startX, int startY, java.awt.event.MouseEvent e)
           
 void EdgeClicked(net.tinyos.tinydb.topology.event.EdgeClickedEvent e)
           
 void EdgeCreated(net.tinyos.tinydb.topology.event.EdgeEvent e)
           
 void EdgeDeleted(net.tinyos.tinydb.topology.event.EdgeEvent e)
           
 LocationAnalyzer.EdgeInfo FindNearestEdge(int x, int y)
           
 LocationAnalyzer.NodeInfo FindNearestNode(int x, int y)
           
 java.util.Enumeration GetEdgeInfo()
           
 DisplayManager.EdgeInfo GetEdgeInfo(java.lang.Integer sourceNumber, java.lang.Integer destinationNumber)
           
 boolean GetHandMode()
           
 java.util.Enumeration GetNodeInfo()
           
 DisplayManager.NodeInfo GetNodeInfo(java.lang.Integer nodeNumber)
           
 net.tinyos.tinydb.topology.Dialog.ActivePanel GetProprietaryEdgeInfoPanel(java.lang.Integer pSourceNodeNumber, java.lang.Integer pDestinationNodeNumber)
           
 net.tinyos.tinydb.topology.Dialog.ActivePanel GetProprietaryNodeInfoPanel(java.lang.Integer pNodeNumber)
           
static long GetRefreshRate()
           
static double GetScaleFactor()
           
 boolean GetSelectMode()
           
 boolean GetZoomMode()
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseClickedCustom(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseDraggedCustom(int startX, int startY, java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
static void MultiplyGraphDisplayPanelSize(double factor)
           
 void NodeClicked(net.tinyos.tinydb.topology.event.NodeClickedEvent e)
           
 void NodeCreated(net.tinyos.tinydb.topology.event.NodeEvent e)
           
 void NodeDeleted(net.tinyos.tinydb.topology.event.NodeEvent e)
           
 void PaintAllEdges(java.lang.Integer pSourceNodeNumber, java.lang.Integer pDestinationNodeNumber, int x1, int y1, int x2, int y2, java.awt.Graphics g)
           
 void PaintAllNodes(java.lang.Integer pNodeNumber, int x1, int y1, int x2, int y2, java.awt.Graphics g)
           
 void PaintEdge(java.lang.Integer pSourceNodeNumber, java.lang.Integer pDestinationNodeNumber, int x1, int y1, int x2, int y2, java.awt.Graphics g)
           
 void PaintNode(java.lang.Integer pNodeNumber, int x1, int y1, int x2, int y2, java.awt.Graphics g)
           
 void PaintOverScreen(java.awt.Graphics g)
           
 void PaintUnderScreen(java.awt.Graphics g)
           
static void RefreshScreenNow()
           
 void RemoveEdgeClickedEventListener(net.tinyos.tinydb.topology.event.EdgeClickedEventListener pListener)
           
 void RemoveEdgeDialogContributor(net.tinyos.tinydb.topology.util.EdgeDialogContributor pContributor)
           
 void RemoveEdgePainter(net.tinyos.tinydb.topology.util.EdgePainter painter)
           
 void RemoveNodeClickedEventListener(net.tinyos.tinydb.topology.event.NodeClickedEventListener pListener)
           
 void RemoveNodeDialogContributor(net.tinyos.tinydb.topology.util.NodeDialogContributor pContributor)
           
 void RemoveNodePainter(net.tinyos.tinydb.topology.util.NodePainter painter)
           
 void RemoveScreenPainter(net.tinyos.tinydb.topology.util.ScreenPainter painter)
           
 void run()
           
 void ScrollWithMouseDrag(int startX, int startY, java.awt.event.MouseEvent e)
           
 void SetHandMode(boolean b)
           
static void setPriority(int p)
           
static void SetRefreshRate(long pRefreshRate)
           
 void SetSelectMode(boolean b)
           
 void SetZoomMode(boolean b)
           
 void ShowPropertiesDialog()
           
static void sleep(long p)
           
 void start()
           
 void stopDisplayThread()
           
protected  void TriggerEdgeClickedEvent(java.lang.Integer pSourceNodeNumber, java.lang.Integer pDestinationNodeNumber)
           
protected  void TriggerNodeClickedEvent(java.lang.Integer pNodeNumber)
           
 void ZoomToMouseDragRectangle(int startX, int startY, java.awt.event.MouseEvent e)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

nodePainters

protected java.util.Vector nodePainters

edgePainters

protected java.util.Vector edgePainters

screenPainters

protected java.util.Vector screenPainters

nodeDialogContributors

protected java.util.Vector nodeDialogContributors

edgeDialogContributors

protected java.util.Vector edgeDialogContributors

NodeClickedEventListeners

protected java.util.Vector NodeClickedEventListeners

EdgeClickedEventListeners

protected java.util.Vector EdgeClickedEventListeners

proprietaryNodeInfo

protected static java.util.Hashtable proprietaryNodeInfo

proprietaryEdgeInfo

protected static net.tinyos.tinydb.topology.util.TwoKeyHashtable proprietaryEdgeInfo

refreshRate

protected static long refreshRate

refreshScreenThread

protected static java.lang.Thread refreshScreenThread
Method Detail

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseClickedCustom

public void mouseClickedCustom(java.awt.event.MouseEvent e)

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseDraggedCustom

public void mouseDraggedCustom(int startX,
                               int startY,
                               java.awt.event.MouseEvent e)

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

AddNodeDialogContributor

public void AddNodeDialogContributor(net.tinyos.tinydb.topology.util.NodeDialogContributor pContributor)

RemoveNodeDialogContributor

public void RemoveNodeDialogContributor(net.tinyos.tinydb.topology.util.NodeDialogContributor pContributor)

AddEdgeDialogContributor

public void AddEdgeDialogContributor(net.tinyos.tinydb.topology.util.EdgeDialogContributor pContributor)

RemoveEdgeDialogContributor

public void RemoveEdgeDialogContributor(net.tinyos.tinydb.topology.util.EdgeDialogContributor pContributor)

AddNodeClickedEventListener

public void AddNodeClickedEventListener(net.tinyos.tinydb.topology.event.NodeClickedEventListener pListener)

RemoveNodeClickedEventListener

public void RemoveNodeClickedEventListener(net.tinyos.tinydb.topology.event.NodeClickedEventListener pListener)

AddEdgeClickedEventListener

public void AddEdgeClickedEventListener(net.tinyos.tinydb.topology.event.EdgeClickedEventListener pListener)

RemoveEdgeClickedEventListener

public void RemoveEdgeClickedEventListener(net.tinyos.tinydb.topology.event.EdgeClickedEventListener pListener)

AddNodePainter

public void AddNodePainter(net.tinyos.tinydb.topology.util.NodePainter painter)

RemoveNodePainter

public void RemoveNodePainter(net.tinyos.tinydb.topology.util.NodePainter painter)

AddEdgePainter

public void AddEdgePainter(net.tinyos.tinydb.topology.util.EdgePainter painter)

RemoveEdgePainter

public void RemoveEdgePainter(net.tinyos.tinydb.topology.util.EdgePainter painter)

AddScreenPainter

public void AddScreenPainter(net.tinyos.tinydb.topology.util.ScreenPainter painter)

RemoveScreenPainter

public void RemoveScreenPainter(net.tinyos.tinydb.topology.util.ScreenPainter painter)

TriggerNodeClickedEvent

protected void TriggerNodeClickedEvent(java.lang.Integer pNodeNumber)

TriggerEdgeClickedEvent

protected void TriggerEdgeClickedEvent(java.lang.Integer pSourceNodeNumber,
                                       java.lang.Integer pDestinationNodeNumber)

DragNearestNode

public void DragNearestNode(int startX,
                            int startY,
                            java.awt.event.MouseEvent e)

ScrollWithMouseDrag

public void ScrollWithMouseDrag(int startX,
                                int startY,
                                java.awt.event.MouseEvent e)

ZoomToMouseDragRectangle

public void ZoomToMouseDragRectangle(int startX,
                                     int startY,
                                     java.awt.event.MouseEvent e)

FindNearestNode

public LocationAnalyzer.NodeInfo FindNearestNode(int x,
                                                 int y)

FindNearestEdge

public LocationAnalyzer.EdgeInfo FindNearestEdge(int x,
                                                 int y)

DisplayNodePropertyDialog

protected void DisplayNodePropertyDialog(java.lang.Integer pNodeNumber)

DisplayEdgePropertyDialog

protected void DisplayEdgePropertyDialog(java.lang.Integer pSourceNodeNumber,
                                         java.lang.Integer pDestinationNodeNumber)

RefreshScreenNow

public static void RefreshScreenNow()

MultiplyGraphDisplayPanelSize

public static void MultiplyGraphDisplayPanelSize(double factor)

PaintUnderScreen

public void PaintUnderScreen(java.awt.Graphics g)

PaintOverScreen

public void PaintOverScreen(java.awt.Graphics g)

PaintAllNodes

public void PaintAllNodes(java.lang.Integer pNodeNumber,
                          int x1,
                          int y1,
                          int x2,
                          int y2,
                          java.awt.Graphics g)

PaintAllEdges

public void PaintAllEdges(java.lang.Integer pSourceNodeNumber,
                          java.lang.Integer pDestinationNodeNumber,
                          int x1,
                          int y1,
                          int x2,
                          int y2,
                          java.awt.Graphics g)

PaintNode

public void PaintNode(java.lang.Integer pNodeNumber,
                      int x1,
                      int y1,
                      int x2,
                      int y2,
                      java.awt.Graphics g)
Specified by:
PaintNode in interface NodePainter

PaintEdge

public void PaintEdge(java.lang.Integer pSourceNodeNumber,
                      java.lang.Integer pDestinationNodeNumber,
                      int x1,
                      int y1,
                      int x2,
                      int y2,
                      java.awt.Graphics g)
Specified by:
PaintEdge in interface EdgePainter

run

public void run()
Specified by:
run in interface java.lang.Runnable

GetScaleFactor

public static double GetScaleFactor()

GetRefreshRate

public static long GetRefreshRate()

SetRefreshRate

public static void SetRefreshRate(long pRefreshRate)

GetSelectMode

public boolean GetSelectMode()

GetHandMode

public boolean GetHandMode()

GetZoomMode

public boolean GetZoomMode()

SetSelectMode

public void SetSelectMode(boolean b)

SetHandMode

public void SetHandMode(boolean b)

SetZoomMode

public void SetZoomMode(boolean b)

GetNodeInfo

public DisplayManager.NodeInfo GetNodeInfo(java.lang.Integer nodeNumber)

GetEdgeInfo

public DisplayManager.EdgeInfo GetEdgeInfo(java.lang.Integer sourceNumber,
                                           java.lang.Integer destinationNumber)

GetNodeInfo

public java.util.Enumeration GetNodeInfo()

GetEdgeInfo

public java.util.Enumeration GetEdgeInfo()

start

public void start()

sleep

public static void sleep(long p)

setPriority

public static void setPriority(int p)

NodeCreated

public void NodeCreated(net.tinyos.tinydb.topology.event.NodeEvent e)
Specified by:
NodeCreated in interface NodeEventListener

NodeDeleted

public void NodeDeleted(net.tinyos.tinydb.topology.event.NodeEvent e)
Specified by:
NodeDeleted in interface NodeEventListener

EdgeCreated

public void EdgeCreated(net.tinyos.tinydb.topology.event.EdgeEvent e)
Specified by:
EdgeCreated in interface EdgeEventListener

EdgeDeleted

public void EdgeDeleted(net.tinyos.tinydb.topology.event.EdgeEvent e)
Specified by:
EdgeDeleted in interface EdgeEventListener

NodeClicked

public void NodeClicked(net.tinyos.tinydb.topology.event.NodeClickedEvent e)
Specified by:
NodeClicked in interface NodeClickedEventListener

EdgeClicked

public void EdgeClicked(net.tinyos.tinydb.topology.event.EdgeClickedEvent e)
Specified by:
EdgeClicked in interface EdgeClickedEventListener

GetProprietaryNodeInfoPanel

public net.tinyos.tinydb.topology.Dialog.ActivePanel GetProprietaryNodeInfoPanel(java.lang.Integer pNodeNumber)
Specified by:
GetProprietaryNodeInfoPanel in interface NodeDialogContributor

GetProprietaryEdgeInfoPanel

public net.tinyos.tinydb.topology.Dialog.ActivePanel GetProprietaryEdgeInfoPanel(java.lang.Integer pSourceNodeNumber,
                                                                                 java.lang.Integer pDestinationNodeNumber)
Specified by:
GetProprietaryEdgeInfoPanel in interface EdgeDialogContributor

ShowPropertiesDialog

public void ShowPropertiesDialog()

stopDisplayThread

public void stopDisplayThread()