edu.colorado.cs.ns2.gui
Class DrawableMover

java.lang.Object
  extended by java.awt.event.MouseAdapter
      extended by edu.colorado.cs.ns2.gui.DrawableMover
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.io.Serializable, java.util.EventListener

public class DrawableMover
extends java.awt.event.MouseAdapter
implements java.awt.event.MouseMotionListener, java.io.Serializable

Implements Mouse Motion Listener. Does most of the Work in the Program.

Author:
Kevin Bauer & Pushkar Sambhoos.
See Also:
Serialized Form

Field Summary
private  boolean checkLine
           
private  CoordinatePair coordinatePair
           
private  int counter
           
private  boolean flag
           
private  java.lang.String input
           
private  java.util.Vector<LineEndpoint> lines
           
private  int MINHEIGHT
           
private  java.awt.Rectangle myBounds
           
private  javax.swing.JFrame myCanvas
           
private  Drawable myDrawable
           
private  java.util.Vector<Drawable> myList
           
private  int myPrevX
           
private  int myPrevY
           
private  int nextAgentId
           
private  Drawable prevDrawable
           
private static long serialVersionUID
           
private  SimulationData simData
           
private  int TOOLBARHEIGHT
           
 
Constructor Summary
DrawableMover(java.util.Vector<Drawable> list, javax.swing.JFrame canvas, SimulationData simData)
          Default Constructor.
 
Method Summary
private  void agentDisconnect(NsNode node1, int element)
           
private  void agentsConnect(NsNode node1, int element)
           
 void doNewAgent(Drawable shape)
           
 void doNewApplication(NsNode node, Agent agent)
          Ataaches an Application to an Agent on a Node.
private  java.awt.Point enforceBounds(java.awt.event.MouseEvent e)
           
private  Drawable findNode(java.awt.event.MouseEvent e)
           
private  Drawable findShape(java.awt.event.MouseEvent e)
           
private  java.lang.String getLinkBandwidth()
           
private  java.lang.String getLinkLatency()
           
private  java.lang.String getLinkQueueType()
           
 javax.swing.JFrame getMyCanvas()
           
 java.util.Vector<Drawable> getMyList()
           
 int getNextAgentId()
           
 SimulationData getSimData()
           
private  void identifyDrawable(java.util.Vector<Drawable> list)
           
 void mouseDragged(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)
           
 void removeApplication(Agent agent, int element)
           
private  void removeScheduledEventsForApplication(Application app)
           
 void setAgentProperties(Agent agent)
           
 void setApplicationProperties(Application app)
           
 void setDrawableList(java.util.Vector<Drawable> list)
           
 void setNextAgentId(int nextAgentId)
           
 void setSimData(SimulationData simData)
           
 
Methods inherited from class java.awt.event.MouseAdapter
mouseClicked, mouseEntered, mouseExited
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

myPrevX

private int myPrevX

myPrevY

private int myPrevY

myDrawable

private Drawable myDrawable

prevDrawable

private Drawable prevDrawable

myCanvas

private javax.swing.JFrame myCanvas

myBounds

private java.awt.Rectangle myBounds

myList

private java.util.Vector<Drawable> myList

coordinatePair

private CoordinatePair coordinatePair

counter

private int counter

input

private java.lang.String input

simData

private SimulationData simData

TOOLBARHEIGHT

private int TOOLBARHEIGHT

MINHEIGHT

private int MINHEIGHT

nextAgentId

private int nextAgentId

flag

private boolean flag

checkLine

private boolean checkLine

lines

private java.util.Vector<LineEndpoint> lines
Constructor Detail

DrawableMover

public DrawableMover(java.util.Vector<Drawable> list,
                     javax.swing.JFrame canvas,
                     SimulationData simData)
Default Constructor.

Parameters:
list - Vector of Drawable Components
canvas - A JFrame Component
simData - SimulationData Object
Method Detail

getNextAgentId

public int getNextAgentId()

mouseMoved

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

mousePressed

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

mouseReleased

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

mouseDragged

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

enforceBounds

private java.awt.Point enforceBounds(java.awt.event.MouseEvent e)

identifyDrawable

private void identifyDrawable(java.util.Vector<Drawable> list)

findNode

private Drawable findNode(java.awt.event.MouseEvent e)

findShape

private Drawable findShape(java.awt.event.MouseEvent e)

getLinkLatency

private java.lang.String getLinkLatency()

getLinkBandwidth

private java.lang.String getLinkBandwidth()

getLinkQueueType

private java.lang.String getLinkQueueType()

agentsConnect

private void agentsConnect(NsNode node1,
                           int element)

agentDisconnect

private void agentDisconnect(NsNode node1,
                             int element)

doNewAgent

public void doNewAgent(Drawable shape)

getSimData

public SimulationData getSimData()

getMyCanvas

public javax.swing.JFrame getMyCanvas()

setDrawableList

public void setDrawableList(java.util.Vector<Drawable> list)

setSimData

public void setSimData(SimulationData simData)

setNextAgentId

public void setNextAgentId(int nextAgentId)

doNewApplication

public void doNewApplication(NsNode node,
                             Agent agent)
Ataaches an Application to an Agent on a Node.

Parameters:
nodeId - - Node to Attach Application
agent - - Agent Index on Node

removeApplication

public void removeApplication(Agent agent,
                              int element)

setApplicationProperties

public void setApplicationProperties(Application app)

setAgentProperties

public void setAgentProperties(Agent agent)

getMyList

public java.util.Vector<Drawable> getMyList()

removeScheduledEventsForApplication

private void removeScheduledEventsForApplication(Application app)