19 #ifndef GNETLSEditorFrame_h 20 #define GNETLSEditorFrame_h 145 long onCmdOK(FXObject*, FXSelector,
void*);
155 long onCmdGuess(FXObject*, FXSelector,
void*);
293 typedef std::map<int, std::vector<GNEInternalLane*> >
TLIndexMap;
317 const std::vector<NBTrafficLightLogic::PhaseDefinition>&
getPhases();
TLIndexMap myInternalLanes
long onCmdGuess(FXObject *, FXSelector, void *)
Called when the user presses the button Guess.
FXTable * myPhaseTable
table for selecting and rearranging phases and for changing duration
long onUpdNeedsDefAndPhase(FXObject *, FXSelector, void *)
Called when occurs an update of needs definition an dphase.
long onCmdPhaseDelete(FXObject *, FXSelector, void *)
Called when the user deletes a Phase.
FXButton * myInsertDuplicateButton
insert new phase button
int myPhaseIndex
index of the phase being shown
long onCmdDefCreate(FXObject *, FXSelector, void *)
Called when the user creates a TLS.
FXButton * myNewTLProgram
button for create new Traffic light program
long onCmdMakeRILSAConforming(FXObject *, FXSelector, void *)
Called when the user makes RILSA.
FXLabel * myOffsetLabel
offset label
FXButton * myDiscardModificationsButtons
button for cancel modifications
A loaded (complete) traffic light logic.
FXLabel * myNameLabel
name label
TLSAttributes * myTLSAttributes
TLS attributes.
long onCmdPhaseSwitch(FXObject *, FXSelector, void *)
Called when the user switchs a Phase.
This object is responsible for drawing a shape and for supplying a a popup menu. Messages are routete...
The base class for traffic light logic definitions.
FXScrollWindow * myTableScroll
window for oversized phase tables
FXComboBox * myProgramComboBox
the comboBox for selecting the tl-definition to edit
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
void editJunction(GNEJunction *junction)
edits the traffic light for the given junction
FXButton * mySaveModificationsButtons
button for save modifications
GNETLSEditorFrame()
FOX needs this.
void handleMultiChange(GNELane *lane, FXObject *obj, FXSelector sel, void *data)
update phase definition for the current traffic light and phase
std::map< int, std::vector< GNEInternalLane * > > TLIndexMap
the internal lanes belonging the the current junction indexed by their tl-index
FXLabel * myProgramLabel
program label
long onUpdNeedsDef(FXObject *, FXSelector, void *)
Called when occurs an update of needs definition.
FXFont * myTableFont
font for the phase table
long onCmdCleanup(FXObject *, FXSelector, void *)
Called when the user cleans up states.
long onCmdDefDelete(FXObject *, FXSelector, void *)
Called when the user deletes a TLS.
long onCmdDefOffset(FXObject *, FXSelector, void *)
Called when the user changes the offset of a TLS.
long onCmdDefSwitch(FXObject *, FXSelector, void *)
Called when the user switchs a TLS.
long onCmdDefAddOff(FXObject *, FXSelector, void *)
Called when the user adds a OFF.
FXGroupBox * myGroupBoxModifications
groupbox for buttons modifications
void clearTLSAttributes()
clear TLS attributes
GNETLSEditorFrame * myTLSEditorParent
pointer to TLSEditorParent
FXTextField * myNameTextField
name text field
void initTLSAttributes(GNEJunction *junction)
initializes the definitions and corresponding listbox
long onCmdCancel(FXObject *, FXSelector, void *)
Called when the user presses the Cancel-button.
NBTrafficLightDefinition * getCurrentTLSDefinition() const
get current definition
bool controlsEdge(GNEEdge &edge) const
whether the given edge is controlled by the currently edited tlDef
long onUpdDefCreate(FXObject *, FXSelector, void *)
Called when occurs an update of create definition.
void buildIinternalLanes(NBTrafficLightDefinition *tlDef)
builds internal lanes for the given tlDef
bool myHaveModifications
whether the current tls was modified
long onCmdPhaseEdit(FXObject *, FXSelector, void *)
Called when the user edits a Phase.
FXGroupBox * myGroupBoxTLSDef
groupbox for TLS Definition buttons
~GNETLSEditorFrame()
Destructor.
void handleChange(GNEInternalLane *lane)
update phase definition for the current traffic light and phase
FXGroupBox * myGroupBoxPhases
groupbox for phases
FXLabel * myLabelJunctionID
label for junction ID
FXGroupBox * myGroupBoxJunction
groupbox for current junction
~TLSAttributes()
destructor
static SUMOTime getSUMOTime(const FXString &string)
converts to SUMOTime
A road/street connecting two junctions (netedit-version)
int getNumberOfTLSDefinitions() const
get number of definitions
long onUpdDefSwitch(FXObject *, FXSelector, void *)
Called when occurs an update of switch definition.
void updateCycleDuration()
recomputes cycle duration and updates label
static std::string varDurString(SUMOTime dur)
convert duration (potentially undefined) to string
FXMatrix * myAttributeMatrix
matrix for attributes
int getNumberOfPrograms() const
get number of programs
FXLabel * myLabelJunctionStatus
label for junction status
TLSAttributes(FXComposite *parent, GNETLSEditorFrame *TLSEditorParent)
constructor
long onCmdOK(FXObject *, FXSelector, void *)
SUMOTime getOffset() const
get current offset in SUMOTIme
FXButton * myDeleteSelectedPhaseButton
delete phase button
long onCmdDefSubRename(FXObject *, FXSelector, void *)
Called when the user sub-renames a TLS.
void setOffset(SUMOTime offset)
set new offset
GNEJunction * myCurrentJunction
the junction of the tls is being modified
const std::vector< NBTrafficLightLogic::PhaseDefinition > & getPhases()
the phase of the current traffic light
long onCmdPhaseCreate(FXObject *, FXSelector, void *)
Called when the user creates a Phase.
FXTextField * myTextFieldJunctionStatus
text field for junction status
FXButton * myDeleteTLProgram
button for delete traffic light program
long onCmdDefRename(FXObject *, FXSelector, void *)
Called when the user renames a TLS.
long onUpdModified(FXObject *, FXSelector, void *)
Called when occurs an update of modified.
FXTextField * myOffsetTextField
the control for modifying offset
NBLoadedSUMOTLDef * myEditedDef
the traffic light definition being edited
void updateDescription() const
update descrition
FXTextField * myTextFieldJunctionID
text field for junction ID
std::vector< NBTrafficLightDefinition * > myTLSDefinitions
the list of Definitions for the current junction
void cleanup()
cleans up previous lanes
FXLabel * myCycleDuration
label with the cycle duration
long onCmdToggle(FXObject *, FXSelector, void *)
Called when the user presses the button Toogle.
void initPhaseTable(int index=0)
initialies the phase table