You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.4 KiB
Java
56 lines
1.4 KiB
Java
4 years ago
|
// TraverseTransmission.java
|
||
|
|
||
|
package simulator;
|
||
|
|
||
|
import java.awt.*; // import Java AWT classes
|
||
|
|
||
|
import support.*; // import Jasper protocol event
|
||
|
|
||
|
/**
|
||
|
This is the class for a traverse transmission arrow.
|
||
|
|
||
|
@author Kenneth J. Turner
|
||
|
@version 1.5 (22nd July 2010, KJT): minor tidying
|
||
|
*/
|
||
|
public class TraverseTransmission extends TransmissionSymbol {
|
||
|
|
||
|
/** Number of columns to traverse */
|
||
|
private int columns;
|
||
|
|
||
|
/**
|
||
|
Constructor for a traverse transmission arrow.
|
||
|
|
||
|
@param event protocol event
|
||
|
@param lToR true = left-to-right
|
||
|
@param source source column
|
||
|
@param columns columns
|
||
|
@param top top of service primitive
|
||
|
@param height height of successful transmission
|
||
|
*/
|
||
|
public TraverseTransmission(
|
||
|
ProtocolEvent event, boolean lToR, int source, int columns, int top,
|
||
|
int height) {
|
||
|
super(event, lToR, source, top, height);
|
||
|
this.columns = columns;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
Paint the traverse transmission as a dashed line representing transmission
|
||
|
across the intervening columns.
|
||
|
|
||
|
@param g graphics object
|
||
|
*/
|
||
|
public void draw(Graphics g) {
|
||
|
int leftX = inset + col * columnWidth + arrowWidth / 2;
|
||
|
int rightX = leftX + columns*columnWidth - arrowWidth;
|
||
|
g.setColor(Color.blue);
|
||
|
if (lToR)
|
||
|
drawDashedLine(g, leftX, top, rightX, top + height, dashLength);
|
||
|
else
|
||
|
drawDashedLine(g, rightX, top, leftX, top + height, dashLength);
|
||
|
g.setColor(Color.black);
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|