|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjmri.jmrit.display.layoutEditor.LevelXing
public class LevelXing
A LevelXing is two track segment on a layout that cross at an angle.
A LevelXing has four connection points, designated A, B, C, and D. At the crossing, A-C and B-D are straight segments. A train proceeds through the crossing on either of these segments.
Each straight segment carries Block information. A-C and B-D may be in the same or different Layout Blocks.
For drawing purposes, each LevelXing carries a center point and displacements for A and B. The displacements for C = - the displacement for A, and the displacement for D = - the displacement for B. The center point and these displacements may be adjusted by the user when in edit mode.
When LevelXings are first created, there are no connections. Block information and connections are added when available.
Signal Head names are saved here to keep track of where signals are. LevelXing only serves as a storage place for signal head names. The names are placed here by Set Signals at Level Crossing in Tools menu.
| Constructor Summary | |
|---|---|
LevelXing(String id,
Point2D c,
LayoutEditor myPanel)
constructor method |
|
| Method Summary | |
|---|---|
void |
addEditPopUpMenu(JMenuItem menu)
|
void |
addSignalMastLogic(SignalMast sm)
|
void |
addViewPopUpMenu(JMenuItem menu)
|
(package private) void |
dispose()
Clean up when this object is no longer needed. |
protected void |
editLevelXing(LevelXing o)
Edit a Level Crossing |
String[] |
getBlockBoundaries()
|
String |
getBlockNameAC()
|
String |
getBlockNameBD()
|
Object |
getConnectA()
|
Object |
getConnectB()
|
Object |
getConnectC()
|
Object |
getConnectD()
|
Point2D |
getCoordsA()
|
Point2D |
getCoordsB()
|
Point2D |
getCoordsC()
|
Point2D |
getCoordsCenter()
|
Point2D |
getCoordsD()
|
String |
getID()
Accessor methods |
LayoutBlock |
getLayoutBlockAC()
|
LayoutBlock |
getLayoutBlockBD()
|
Sensor |
getSensorA()
|
String |
getSensorAName()
|
Sensor |
getSensorB()
|
String |
getSensorBName()
|
Sensor |
getSensorC()
|
String |
getSensorCName()
|
Sensor |
getSensorD()
|
String |
getSensorDName()
|
SignalMast |
getSignalAMast()
|
String |
getSignalAMastName()
|
String |
getSignalAName()
|
SignalMast |
getSignalBMast()
|
String |
getSignalBMastName()
|
String |
getSignalBName()
|
SignalMast |
getSignalCMast()
|
String |
getSignalCMastName()
|
String |
getSignalCName()
|
SignalMast |
getSignalDMast()
|
String |
getSignalDMastName()
|
String |
getSignalDName()
|
boolean |
isActive()
"active" means that the object is still displayed, and should be stored. |
boolean |
isMainlineAC()
Methods to test if mainline track or not Returns true if either connecting track segment is mainline Defaults to not mainline if connecting track segments are missing |
boolean |
isMainlineBD()
|
void |
reCheckBlockBoundary()
|
(package private) void |
remove()
Removes this object from display and persistance |
void |
removeSignalMastLogic(SignalMast sm)
|
(package private) void |
removeSML(SignalMast signalMast)
|
(package private) double |
round(double x)
|
void |
scaleCoords(float xFactor,
float yFactor)
|
void |
setAdditionalEditPopUpMenu(JPopupMenu popup)
|
void |
setAdditionalViewPopUpMenu(JPopupMenu popup)
|
void |
setConnectA(Object o,
int type)
|
void |
setConnectB(Object o,
int type)
|
void |
setConnectC(Object o,
int type)
|
void |
setConnectD(Object o,
int type)
|
void |
setCoordsA(Point2D p)
|
void |
setCoordsB(Point2D p)
|
void |
setCoordsC(Point2D p)
|
void |
setCoordsCenter(Point2D p)
Modify coordinates methods |
void |
setCoordsD(Point2D p)
|
void |
setLayoutBlockAC(LayoutBlock b)
Add Layout Blocks |
void |
setLayoutBlockBD(LayoutBlock b)
|
void |
setObjects(LayoutEditor p)
Initialization method The above variables are initialized by PositionablePointXml, then the following method is called after the entire LayoutEditor is loaded to set the specific TrackSegment objects. |
void |
setSensorAName(String sensorName)
|
void |
setSensorBName(String sensorName)
|
void |
setSensorCName(String sensorName)
|
void |
setSensorDName(String sensorName)
|
void |
setSignalAMast(String signalMast)
|
void |
setSignalAName(String signalName)
|
void |
setSignalBMast(String signalMast)
|
void |
setSignalBName(String signalName)
|
void |
setSignalCMast(String signalMast)
|
void |
setSignalCName(String signalName)
|
void |
setSignalDMast(String signalMast)
|
void |
setSignalDName(String signalName)
|
protected void |
showPopUp(MouseEvent e,
boolean isEditable)
Display popup menu for information and editing |
(package private) void |
xingEdit1BlockPressed(ActionEvent a)
|
(package private) void |
xingEdit2BlockPressed(ActionEvent a)
|
(package private) void |
xingEditCancelPressed(ActionEvent a)
|
(package private) void |
xingEditDonePressed(ActionEvent a)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
ResourceBundle rb
protected NamedBeanHandle<SignalMast> signalAMastNamed
protected NamedBeanHandle<SignalMast> signalBMastNamed
protected NamedBeanHandle<SignalMast> signalCMastNamed
protected NamedBeanHandle<SignalMast> signalDMastNamed
public String connectAName
public String connectBName
public String connectCName
public String connectDName
public String tBlockNameAC
public String tBlockNameBD
JPopupMenu popup
LayoutEditorTools tools
JmriJFrame editLevelXingFrame
JTextField block1Name
JTextField block2Name
JButton xingEditDone
JButton xingEditCancel
JButton xingEdit1Block
JButton xingEdit2Block
boolean editOpen
boolean needsRedraw
boolean needsBlockUpdate
boolean active
ArrayList<SignalMast> sml
ArrayList<JMenuItem> editAdditionalMenu
ArrayList<JMenuItem> viewAdditionalMenu
static org.slf4j.Logger log
| Constructor Detail |
|---|
public LevelXing(String id,
Point2D c,
LayoutEditor myPanel)
| Method Detail |
|---|
public String getID()
public String getBlockNameAC()
public String getBlockNameBD()
public String getSignalAName()
public void setSignalAName(String signalName)
public String getSignalBName()
public void setSignalBName(String signalName)
public String getSignalCName()
public void setSignalCName(String signalName)
public String getSignalDName()
public void setSignalDName(String signalName)
public String getSignalAMastName()
public SignalMast getSignalAMast()
public void setSignalAMast(String signalMast)
public String getSignalBMastName()
public SignalMast getSignalBMast()
public void setSignalBMast(String signalMast)
public String getSignalCMastName()
public SignalMast getSignalCMast()
public void setSignalCMast(String signalMast)
public String getSignalDMastName()
public SignalMast getSignalDMast()
public void setSignalDMast(String signalMast)
public String getSensorAName()
public Sensor getSensorA()
public void setSensorAName(String sensorName)
public String getSensorBName()
public Sensor getSensorB()
public void setSensorBName(String sensorName)
public String getSensorCName()
public Sensor getSensorC()
public void setSensorCName(String sensorName)
public String getSensorDName()
public Sensor getSensorD()
public void setSensorDName(String sensorName)
public Object getConnectA()
public Object getConnectB()
public Object getConnectC()
public Object getConnectD()
public void setConnectA(Object o,
int type)
public void setConnectB(Object o,
int type)
public void setConnectC(Object o,
int type)
public void setConnectD(Object o,
int type)
public LayoutBlock getLayoutBlockAC()
public LayoutBlock getLayoutBlockBD()
public Point2D getCoordsCenter()
public Point2D getCoordsA()
public Point2D getCoordsB()
public Point2D getCoordsC()
public Point2D getCoordsD()
public void setLayoutBlockAC(LayoutBlock b)
public void setLayoutBlockBD(LayoutBlock b)
public void reCheckBlockBoundary()
void removeSML(SignalMast signalMast)
public boolean isMainlineAC()
public boolean isMainlineBD()
public void setCoordsCenter(Point2D p)
public void setCoordsA(Point2D p)
public void setCoordsB(Point2D p)
public void setCoordsC(Point2D p)
public void setCoordsD(Point2D p)
public void scaleCoords(float xFactor,
float yFactor)
double round(double x)
public void setObjects(LayoutEditor p)
protected void showPopUp(MouseEvent e,
boolean isEditable)
public String[] getBlockBoundaries()
protected void editLevelXing(LevelXing o)
void xingEdit1BlockPressed(ActionEvent a)
void xingEdit2BlockPressed(ActionEvent a)
void xingEditDonePressed(ActionEvent a)
void xingEditCancelPressed(ActionEvent a)
void dispose()
void remove()
public boolean isActive()
public void addSignalMastLogic(SignalMast sm)
public void removeSignalMastLogic(SignalMast sm)
public void addEditPopUpMenu(JMenuItem menu)
public void addViewPopUpMenu(JMenuItem menu)
public void setAdditionalEditPopUpMenu(JPopupMenu popup)
public void setAdditionalViewPopUpMenu(JPopupMenu popup)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||