Eclipse SUMO - Simulation of Urban MObility
GNEFlowEditor Class Reference

#include <GNEFlowEditor.h>

Inheritance diagram for GNEFlowEditor:
[legend]
Collaboration diagram for GNEFlowEditor:
[legend]

Public Types

enum  Options {
  NOTHING = 1 << 0 , COLLAPSIBLE = 1 << 1 , EXTENSIBLE = 1 << 2 , SAVE = 1 << 3 ,
  LOAD = 1 << 4
}
 GroupBoxModule options. More...
 

Public Member Functions

bool areFlowValuesValid () const
 check if parameters of attributes are valid More...
 
FXVerticalFrame * getCollapsableFrame ()
 get collapsable frame (used by all elements that will be collapsed if button is toggled) More...
 
void getFlowAttributes (CommonXMLStructure::SumoBaseObject *baseObject)
 get flow attributes More...
 
 GNEFlowEditor (GNEViewNet *viewNet, GNEFrame *frameParent)
 FOX-declaration. More...
 
void hideFlowEditor ()
 hide group box More...
 
long onCmdCollapseButton (FXObject *, FXSelector, void *)
 collapse GroupBoxModule More...
 
long onCmdExtendButton (FXObject *, FXSelector, void *)
 extends GroupBoxModule More...
 
long onCmdLoadButton (FXObject *, FXSelector, void *)
 load contents More...
 
long onCmdResetButton (FXObject *, FXSelector, void *)
 reset GroupBoxModule More...
 
long onCmdSaveButton (FXObject *, FXSelector, void *)
 save contents More...
 
long onPaint (FXObject *, FXSelector, void *)
 draw MFXGroupBoxModule More...
 
long onUpdResetButton (FXObject *, FXSelector, void *)
 update reset GroupBoxModule More...
 
void refreshFlowEditor ()
 refresh GNEFlowEditor More...
 
void setText (const std::string &text)
 set text More...
 
void showFlowEditor (const std::vector< GNEAttributeCarrier * > editedFlows)
 show GNEFlowEditor modul More...
 
bool shownFlowEditor () const
 shown GNEFlowEditor modul More...
 
 ~GNEFlowEditor ()
 destructor More...
 
FOX-callbacks

called when user change flow attribute

long onCmdSetFlowAttribute (FXObject *, FXSelector, void *)
 

Protected Member Functions

 FOX_CONSTRUCTOR (GNEFlowEditor)
 FOX need this. More...
 
const std::string getFlowAttribute (SumoXMLAttr attr)
 get flow attribute (of the current edited flows) More...
 
virtual bool loadContents () const
 load contents (can be reimplemented in children) More...
 
void refreshMultipleFlows ()
 refresh multiple flows More...
 
void refreshSingleFlow ()
 refresh single flow More...
 
virtual bool saveContents () const
 save contents (can be reimplemented in children) More...
 
void toggleSaveButton (const bool value)
 enable or disable save buttons More...
 

Private Attributes

FXVerticalFrame * myCollapsableFrame = nullptr
 vertical collapsable frame More...
 
FXButton * myCollapseButton = nullptr
 button for collapse elements More...
 
bool myCollapsed
 flag to check if this groupbox is collapsed More...
 
std::vector< GNEAttributeCarrier * > myEditedFlows
 edited flows More...
 
MFXButtonTooltipmyExtendButton = nullptr
 button for extend elements More...
 
GNEFramemyFrameParent = nullptr
 GNEFrame in which this GroupBox is placed. More...
 
FXLabel * myLabel = nullptr
 label used in non collapsable MFXGroupBoxModule More...
 
FXButton * myLoadButton = nullptr
 button for load elements More...
 
const int myOptions
 GroupBoxModule options. More...
 
SumoXMLAttr myPerHourAttr = SUMO_ATTR_NOTHING
 per hours attr (vehicles/person/container) More...
 
FXButton * myResetWidthButton = nullptr
 button for reset frame width More...
 
FXButton * mySaveButton = nullptr
 button for save elements More...
 
MFXComboBoxIconmySpacingComboBox = nullptr
 ComboBox for spacing comboBox (perHour, period, probability) More...
 
FXHorizontalFrame * mySpacingFrameComboBox = nullptr
 horizontal frame for terminate options More...
 
FXHorizontalFrame * mySpacingFrameTextField = nullptr
 horizontal frame for spacing textField More...
 
MFXLabelTooltipmySpacingLabel = nullptr
 Label for spacing. More...
 
FXTextField * mySpacingTextField = nullptr
 textField for spacing attribute More...
 
MFXComboBoxIconmyTerminateComboBox = nullptr
 ComboBox for terminate options (end, number, end/number) More...
 
FXHorizontalFrame * myTerminateFrameTextField = nullptr
 horizontal frame for terminate definition More...
 
MFXLabelTooltipmyTerminateLabel = nullptr
 Label for terminate definition. More...
 
FXTextField * myTerminateTextField = nullptr
 textField for terminate attribute More...
 
GNEViewNetmyViewNet
 pointer to viewNet More...
 

Detailed Description

Definition at line 36 of file GNEFlowEditor.h.

Member Enumeration Documentation

◆ Options

GroupBoxModule options.

Enumerator
NOTHING 
COLLAPSIBLE 
EXTENSIBLE 
SAVE 
LOAD 

Definition at line 38 of file MFXGroupBoxModule.h.

Constructor & Destructor Documentation

◆ GNEFlowEditor()

◆ ~GNEFlowEditor()

GNEFlowEditor::~GNEFlowEditor ( )

destructor

Definition at line 87 of file GNEFlowEditor.cpp.

Member Function Documentation

◆ areFlowValuesValid()

bool GNEFlowEditor::areFlowValuesValid ( ) const

check if parameters of attributes are valid

Definition at line 180 of file GNEFlowEditor.cpp.

References mySpacingFrameTextField, mySpacingTextField, myTerminateFrameTextField, and myTerminateTextField.

Referenced by GNEAttributesCreator::areValuesValid().

Here is the caller graph for this function:

◆ FOX_CONSTRUCTOR()

GNEFlowEditor::FOX_CONSTRUCTOR ( GNEFlowEditor  )
protected

FOX need this.

◆ getCollapsableFrame()

FXVerticalFrame * MFXGroupBoxModule::getCollapsableFrame ( )
inherited

get collapsable frame (used by all elements that will be collapsed if button is toggled)

Definition at line 123 of file MFXGroupBoxModule.cpp.

References MFXGroupBoxModule::myCollapsableFrame.

Referenced by GNEInspectorFrame::AdditionalDialog::AdditionalDialog(), GNEFrameAttributeModules::AttributesEditor::AttributesEditor(), GNEFrameAttributeModules::AttributesEditorExtended::AttributesEditorExtended(), GNEGenericDataFrame::AttributeSelector::AttributeSelector(), GNEOverlappedInspection::buildFXElements(), GNEMoveFrame::ChangeZInSelection::ChangeZInSelection(), GNEConnectorFrame::ConnectionModifications::ConnectionModifications(), GNEConnectorFrame::ConnectionOperations::ConnectionOperations(), GNEConnectorFrame::ConnectionSelection::ConnectionSelection(), GNECrossingFrame::CreateCrossing::CreateCrossing(), GNECrossingFrame::CrossingParameters::CrossingParameters(), GNETAZFrame::CurrentTAZ::CurrentTAZ(), GNEMoveFrame::DemandModeOptions::DemandModeOptions(), GNEDistributionFrame::DistributionSelector::DistributionSelector(), GNEDistributionFrame::DistributionValuesEditor::DistributionValuesEditor(), GNEAdditionalFrame::E2MultilaneLegendModule::E2MultilaneLegendModule(), GNECrossingFrame::EdgesSelector::EdgesSelector(), GNEFrameAttributeModules::GenericDataAttributes::GenericDataAttributes(), GNEInspectorFrame::GEOAttributesEditor::GEOAttributesEditor(), GNEDemandElementSelector::GNEDemandElementSelector(), GNEOptionsDialog::GNEOptionsDialog(), GNEPathCreator::GNEPathCreator(), GNEPathLegendModule::GNEPathLegendModule(), GNEPlanCreator::GNEPlanCreator(), GNEPlanCreatorLegend::GNEPlanCreatorLegend(), GNESelectorParent::GNESelectorParent(), GNEStopFrame::HelpCreation::HelpCreation(), GNEVehicleFrame::HelpCreation::HelpCreation(), GNEAdditionalFrame::HelpCreationModule::HelpCreationModule(), GNECrossingFrame::Information::Information(), GNEMoveFrame::Information::Information(), GNESelectorFrame::Information::Information(), GNEGenericDataFrame::IntervalSelector::IntervalSelector(), GNECreateEdgeFrame::LaneTypeSelector::LaneTypeSelector(), GNEConnectorFrame::Legend::Legend(), GNECreateEdgeFrame::Legend::Legend(), GNEProhibitionFrame::Legend::Legend(), GNETAZRelDataFrame::Legend::Legend(), GNEMeanDataFrame::MeanDataEditor::MeanDataEditor(), GNEMeanDataFrame::MeanDataSelector::MeanDataSelector(), GNESelectorFrame::ModificationMode::ModificationMode(), GNEMoveFrame::NetworkModeOptions::NetworkModeOptions(), GNEMatchAttribute::onCmdHelp(), GNEMatchGenericDataAttribute::onCmdHelp(), GNENeteditAttributes::onCmdHelp(), GNEOverlappedInspection::onCmdOverlappingHelp(), GNEFrameAttributeModules::ParametersEditor::ParametersEditor(), GNEDeleteFrame::ProtectElements::ProtectElements(), GNEAttributesCreator::refreshRows(), GNEProhibitionFrame::Selection::Selection(), GNESelectorFrame::SelectionHierarchy::SelectionHierarchy(), GNESelectorFrame::SelectionOperation::SelectionOperation(), GNEMoveFrame::ShiftEdgeSelectedGeometry::ShiftEdgeSelectedGeometry(), GNEMoveFrame::ShiftShapeGeometry::ShiftShapeGeometry(), GNETAZFrame::TAZChildDefaultParameters::TAZChildDefaultParameters(), GNETAZFrame::TAZCommonStatistics::TAZCommonStatistics(), GNETAZFrame::TAZEdgesGraphic::TAZEdgesGraphic(), GNETAZFrame::TAZParameters::TAZParameters(), GNETAZFrame::TAZSaveChanges::TAZSaveChanges(), GNETAZFrame::TAZSelectionStatistics::TAZSelectionStatistics(), GNEInspectorFrame::TemplateEditor::TemplateEditor(), GNETLSEditorFrame::TLSAttributes::TLSAttributes(), GNETLSEditorFrame::TLSDefinition::TLSDefinition(), GNETLSEditorFrame::TLSFile::TLSFile(), GNETLSEditorFrame::TLSJunction::TLSJunction(), GNETLSEditorFrame::TLSPhases::TLSPhases(), GNETypeFrame::TypeEditor::TypeEditor(), and GNESelectorFrame::VisualScaling::VisualScaling().

◆ getFlowAttribute()

const std::string GNEFlowEditor::getFlowAttribute ( SumoXMLAttr  attr)
protected

get flow attribute (of the current edited flows)

Definition at line 613 of file GNEFlowEditor.cpp.

References myEditedFlows.

Referenced by refreshMultipleFlows(), and refreshSingleFlow().

Here is the caller graph for this function:

◆ getFlowAttributes()

void GNEFlowEditor::getFlowAttributes ( CommonXMLStructure::SumoBaseObject baseObject)

◆ hideFlowEditor()

void GNEFlowEditor::hideFlowEditor ( )

hide group box

Definition at line 119 of file GNEFlowEditor.cpp.

Referenced by GNEFrameAttributeModules::AttributesEditor::AttributesEditor(), GNEAttributesCreator::hideAttributesCreatorModule(), and GNEAttributesCreator::refreshRows().

Here is the caller graph for this function:

◆ loadContents()

bool MFXGroupBoxModule::loadContents ( ) const
protectedvirtualinherited

load contents (can be reimplemented in children)

Definition at line 231 of file MFXGroupBoxModule.cpp.

Referenced by MFXGroupBoxModule::onCmdLoadButton().

Here is the caller graph for this function:

◆ onCmdCollapseButton()

long MFXGroupBoxModule::onCmdCollapseButton ( FXObject *  ,
FXSelector  ,
void *   
)
inherited

collapse GroupBoxModule

Definition at line 142 of file MFXGroupBoxModule.cpp.

References COLLAPSE, GUIIconSubSys::getIcon(), MFXGroupBoxModule::myCollapsableFrame, MFXGroupBoxModule::myCollapseButton, MFXGroupBoxModule::myCollapsed, and UNCOLLAPSE.

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ onCmdExtendButton()

long MFXGroupBoxModule::onCmdExtendButton ( FXObject *  ,
FXSelector  ,
void *   
)
inherited

extends GroupBoxModule

Definition at line 158 of file MFXGroupBoxModule.cpp.

References GNEFrame::getScrollBarWidth(), GNETLSEditorFrame::TLSPhases::getTLSEditorParent(), GNETLSTable::getTLSPhasesParent(), GNEFrame::getViewNet(), GNEViewNet::getViewParent(), MFXGroupBoxModule::myCollapsableFrame, MFXGroupBoxModule::myFrameParent, and GNEViewParent::setFrameAreaWidth().

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ onCmdLoadButton()

long MFXGroupBoxModule::onCmdLoadButton ( FXObject *  ,
FXSelector  ,
void *   
)
inherited

load contents

Definition at line 212 of file MFXGroupBoxModule.cpp.

References MFXGroupBoxModule::loadContents().

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ onCmdResetButton()

long MFXGroupBoxModule::onCmdResetButton ( FXObject *  ,
FXSelector  ,
void *   
)
inherited

reset GroupBoxModule

Definition at line 184 of file MFXGroupBoxModule.cpp.

References GNEFrame::getViewNet(), GNEViewNet::getViewParent(), MFXGroupBoxModule::myFrameParent, and GNEViewParent::setFrameAreaWidth().

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ onCmdSaveButton()

long MFXGroupBoxModule::onCmdSaveButton ( FXObject *  ,
FXSelector  ,
void *   
)
inherited

save contents

Definition at line 206 of file MFXGroupBoxModule.cpp.

References MFXGroupBoxModule::saveContents().

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ onCmdSetFlowAttribute()

long GNEFlowEditor::onCmdSetFlowAttribute ( FXObject *  obj,
FXSelector  ,
void *   
)

◆ onPaint()

long MFXGroupBoxModule::onPaint ( FXObject *  ,
FXSelector  ,
void *  ptr 
)
inherited

draw MFXGroupBoxModule

Definition at line 129 of file MFXGroupBoxModule.cpp.

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ onUpdResetButton()

long MFXGroupBoxModule::onUpdResetButton ( FXObject *  sender,
FXSelector  ,
void *   
)
inherited

update reset GroupBoxModule

Definition at line 193 of file MFXGroupBoxModule.cpp.

References GNEViewParent::getFrameAreaWidth(), GNEFrame::getViewNet(), GNEViewNet::getViewParent(), and MFXGroupBoxModule::myFrameParent.

Referenced by FXDEFMAP().

Here is the caller graph for this function:

◆ refreshFlowEditor()

void GNEFlowEditor::refreshFlowEditor ( )

refresh GNEFlowEditor

Definition at line 131 of file GNEFlowEditor.cpp.

References myEditedFlows, mySpacingFrameTextField, mySpacingTextField, myTerminateFrameTextField, myTerminateTextField, refreshMultipleFlows(), and refreshSingleFlow().

Referenced by onCmdSetFlowAttribute(), and showFlowEditor().

Here is the caller graph for this function:

◆ refreshMultipleFlows()

void GNEFlowEditor::refreshMultipleFlows ( )
protected

◆ refreshSingleFlow()

void GNEFlowEditor::refreshSingleFlow ( )
protected

◆ saveContents()

bool MFXGroupBoxModule::saveContents ( ) const
protectedvirtualinherited

save contents (can be reimplemented in children)

Reimplemented in GNEFixNetworkElements::FixOptions, and GNEFixDemandElements::FixOptions.

Definition at line 224 of file MFXGroupBoxModule.cpp.

Referenced by MFXGroupBoxModule::onCmdSaveButton().

Here is the caller graph for this function:

◆ setText()

void MFXGroupBoxModule::setText ( const std::string &  text)
inherited

set text

Definition at line 117 of file MFXGroupBoxModule.cpp.

References MFXGroupBoxModule::myLabel.

Referenced by GNETagSelector::setCurrentTagType(), and GNESelectorFrame::SelectionInformation::updateInformationLabel().

Here is the caller graph for this function:

◆ showFlowEditor()

void GNEFlowEditor::showFlowEditor ( const std::vector< GNEAttributeCarrier * >  editedFlows)

show GNEFlowEditor modul

Definition at line 91 of file GNEFlowEditor.cpp.

References MFXComboBoxIcon::appendIconItem(), MFXComboBoxIcon::clearItems(), GNE_ATTR_POISSON, myEditedFlows, myPerHourAttr, mySpacingComboBox, refreshFlowEditor(), SUMO_ATTR_CONTAINERSPERHOUR, SUMO_ATTR_PERIOD, SUMO_ATTR_PERSONSPERHOUR, SUMO_ATTR_PROB, SUMO_ATTR_VEHSPERHOUR, and toString().

Referenced by GNEAttributesCreator::refreshRows().

Here is the caller graph for this function:

◆ shownFlowEditor()

bool GNEFlowEditor::shownFlowEditor ( ) const

shown GNEFlowEditor modul

Definition at line 125 of file GNEFlowEditor.cpp.

Referenced by GNEAttributesCreator::areValuesValid(), and GNEAttributesCreator::getAttributesAndValues().

Here is the caller graph for this function:

◆ toggleSaveButton()

void MFXGroupBoxModule::toggleSaveButton ( const bool  value)
protectedinherited

enable or disable save buttons

Definition at line 238 of file MFXGroupBoxModule.cpp.

References MFXGroupBoxModule::mySaveButton.

Field Documentation

◆ myCollapsableFrame

FXVerticalFrame* MFXGroupBoxModule::myCollapsableFrame = nullptr
privateinherited

◆ myCollapseButton

FXButton* MFXGroupBoxModule::myCollapseButton = nullptr
privateinherited

button for collapse elements

Definition at line 109 of file MFXGroupBoxModule.h.

Referenced by MFXGroupBoxModule::MFXGroupBoxModule(), and MFXGroupBoxModule::onCmdCollapseButton().

◆ myCollapsed

bool MFXGroupBoxModule::myCollapsed
privateinherited

flag to check if this groupbox is collapsed

Definition at line 124 of file MFXGroupBoxModule.h.

Referenced by MFXGroupBoxModule::onCmdCollapseButton().

◆ myEditedFlows

std::vector<GNEAttributeCarrier*> GNEFlowEditor::myEditedFlows
private

◆ myExtendButton

MFXButtonTooltip* MFXGroupBoxModule::myExtendButton = nullptr
privateinherited

button for extend elements

Definition at line 112 of file MFXGroupBoxModule.h.

◆ myFrameParent

GNEFrame* MFXGroupBoxModule::myFrameParent = nullptr
privateinherited

◆ myLabel

FXLabel* MFXGroupBoxModule::myLabel = nullptr
privateinherited

label used in non collapsable MFXGroupBoxModule

Definition at line 106 of file MFXGroupBoxModule.h.

Referenced by MFXGroupBoxModule::MFXGroupBoxModule(), and MFXGroupBoxModule::setText().

◆ myLoadButton

FXButton* MFXGroupBoxModule::myLoadButton = nullptr
privateinherited

button for load elements

Definition at line 121 of file MFXGroupBoxModule.h.

Referenced by MFXGroupBoxModule::MFXGroupBoxModule().

◆ myOptions

const int MFXGroupBoxModule::myOptions
privateinherited

GroupBoxModule options.

Definition at line 97 of file MFXGroupBoxModule.h.

Referenced by MFXGroupBoxModule::MFXGroupBoxModule().

◆ myPerHourAttr

SumoXMLAttr GNEFlowEditor::myPerHourAttr = SUMO_ATTR_NOTHING
private

per hours attr (vehicles/person/container)

Definition at line 120 of file GNEFlowEditor.h.

Referenced by getFlowAttributes(), onCmdSetFlowAttribute(), refreshMultipleFlows(), refreshSingleFlow(), and showFlowEditor().

◆ myResetWidthButton

FXButton* MFXGroupBoxModule::myResetWidthButton = nullptr
privateinherited

button for reset frame width

Definition at line 115 of file MFXGroupBoxModule.h.

◆ mySaveButton

FXButton* MFXGroupBoxModule::mySaveButton = nullptr
privateinherited

button for save elements

Definition at line 118 of file MFXGroupBoxModule.h.

Referenced by MFXGroupBoxModule::MFXGroupBoxModule(), and MFXGroupBoxModule::toggleSaveButton().

◆ mySpacingComboBox

MFXComboBoxIcon* GNEFlowEditor::mySpacingComboBox = nullptr
private

ComboBox for spacing comboBox (perHour, period, probability)

Definition at line 105 of file GNEFlowEditor.h.

Referenced by onCmdSetFlowAttribute(), refreshMultipleFlows(), refreshSingleFlow(), and showFlowEditor().

◆ mySpacingFrameComboBox

FXHorizontalFrame* GNEFlowEditor::mySpacingFrameComboBox = nullptr
private

horizontal frame for terminate options

Definition at line 102 of file GNEFlowEditor.h.

Referenced by refreshMultipleFlows(), and refreshSingleFlow().

◆ mySpacingFrameTextField

FXHorizontalFrame* GNEFlowEditor::mySpacingFrameTextField = nullptr
private

horizontal frame for spacing textField

Definition at line 108 of file GNEFlowEditor.h.

Referenced by areFlowValuesValid(), refreshFlowEditor(), refreshMultipleFlows(), and refreshSingleFlow().

◆ mySpacingLabel

MFXLabelTooltip* GNEFlowEditor::mySpacingLabel = nullptr
private

Label for spacing.

Definition at line 111 of file GNEFlowEditor.h.

Referenced by getFlowAttributes(), refreshMultipleFlows(), and refreshSingleFlow().

◆ mySpacingTextField

FXTextField* GNEFlowEditor::mySpacingTextField = nullptr
private

◆ myTerminateComboBox

MFXComboBoxIcon* GNEFlowEditor::myTerminateComboBox = nullptr
private

ComboBox for terminate options (end, number, end/number)

Definition at line 90 of file GNEFlowEditor.h.

Referenced by onCmdSetFlowAttribute(), refreshMultipleFlows(), and refreshSingleFlow().

◆ myTerminateFrameTextField

FXHorizontalFrame* GNEFlowEditor::myTerminateFrameTextField = nullptr
private

horizontal frame for terminate definition

Definition at line 93 of file GNEFlowEditor.h.

Referenced by areFlowValuesValid(), refreshFlowEditor(), refreshMultipleFlows(), and refreshSingleFlow().

◆ myTerminateLabel

MFXLabelTooltip* GNEFlowEditor::myTerminateLabel = nullptr
private

Label for terminate definition.

Definition at line 96 of file GNEFlowEditor.h.

Referenced by getFlowAttributes(), refreshMultipleFlows(), and refreshSingleFlow().

◆ myTerminateTextField

FXTextField* GNEFlowEditor::myTerminateTextField = nullptr
private

textField for terminate attribute

Definition at line 99 of file GNEFlowEditor.h.

Referenced by areFlowValuesValid(), getFlowAttributes(), onCmdSetFlowAttribute(), refreshFlowEditor(), refreshMultipleFlows(), and refreshSingleFlow().

◆ myViewNet

GNEViewNet* GNEFlowEditor::myViewNet
private

pointer to viewNet

Definition at line 87 of file GNEFlowEditor.h.

Referenced by onCmdSetFlowAttribute().


The documentation for this class was generated from the following files: