20 #ifndef GNETLSEditorFrame_h 21 #define GNETLSEditorFrame_h 73 long onCmdOK(FXObject*, FXSelector,
void*);
224 typedef std::map<int, std::vector<GNEInternalLane*> >
TLIndexMap;
254 const std::vector<NBTrafficLightLogic::PhaseDefinition>&
getPhases();
TLIndexMap myInternalLanes
long onCmdGuess(FXObject *, FXSelector, void *)
Called when the user presses the button Guess.
std::vector< NBTrafficLightDefinition * > myDefinitions
the list of Definitions for the current junction
FXLabel * myDescription
the label that shows the current editing state
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.
FXButton * myDiscardModificationsButtons
button for cancel modifications
A loaded (complete) traffic light logic.
long onCmdPhaseSwitch(FXObject *, FXSelector, void *)
Called when the user switchs a Phase.
FXLabel * myNameLabel
name label
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.
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
FXLabel * myOffsetLabel
offset label
FXButton * mySaveModificationsButtons
button for save modifications
FXGroupBox * myGroupBoxAttributes
groupbox for TLS attributes
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
long onUpdNeedsDef(FXObject *, FXSelector, void *)
Called when occurs an update of needs definition.
FXFont * myTableFont
font for the phase table
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
FXTextField * myNameTextField
name text field
long onCmdCancel(FXObject *, FXSelector, void *)
Called when the user presses the Cancel-button.
bool controlsEdge(GNEEdge &edge) const
whether the given edge is controlled by the currently edited tlDef
FXLabel * myProgramLabel
program label
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
FXGroupBox * myGroupBoxJunction
groupbox for current junction
FXMatrix * myAttributeMatrix
matrix for attributes
FXTextField * myOffset
the control for modifying offset
static SUMOTime getSUMOTime(const FXString &string)
converts to SUMOTime
A road/street connecting two junctions (netedit-version)
long onUpdDefSwitch(FXObject *, FXSelector, void *)
Called when occurs an update of switch definition.
void updateCycleDuration()
recomputes cycle duration and updates label
void initDefinitions()
initializes the definitions and corresponding listbox
long onCmdOK(FXObject *, FXSelector, void *)
FXButton * myDeleteSelectedPhaseButton
delete phase button
long onCmdDefSubRename(FXObject *, FXSelector, void *)
Called when the user sub-renames a TLS.
FXComboBox * myProgramComboBox
the comboBox for selecting the tl-definition to edit
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.
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.
NBLoadedSUMOTLDef * myEditedDef
the traffic light definition being edited
void updateDescription() const
update descrition
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