Eclipse SUMO - Simulation of Urban MObility
GUIDialog_ViewSettings.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2001-2024 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
20 // The dialog to change the view (gui) settings.
21 /****************************************************************************/
22 #pragma once
23 #include <config.h>
24 
29 
30 
31 // ===========================================================================
32 // class declarations
33 // ===========================================================================
34 
35 class MFXComboBoxIcon;
36 
37 // ===========================================================================
38 // class definitions
39 // ===========================================================================
46 class GUIDialog_ViewSettings : public FXDialogBox, public GUIPersistentWindowPos {
48  FXDECLARE(GUIDialog_ViewSettings)
49 
50 public:
52  class NamePanel {
53 
54  public:
56  NamePanel(FXMatrix* parent, GUIDialog_ViewSettings* target,
57  const std::string& title,
58  const GUIVisualizationTextSettings& settings);
59 
62 
64  void update(const GUIVisualizationTextSettings& settings);
65 
67  FXCheckButton* myCheck = nullptr;
68 
70  FXRealSpinner* mySizeDial = nullptr;
71 
73  FXColorWell* myColorWell = nullptr;
74 
76  FXColorWell* myBGColorWell = nullptr;
77 
79  FXCheckButton* mySelectedCheck = nullptr;
80 
82  FXCheckButton* myConstSizeCheck = nullptr;
83 
85  FXMatrix* myMatrix0 = nullptr;
86  };
87 
89  class SizePanel : public FXObject {
91  FXDECLARE(SizePanel)
92 
93  public:
95  SizePanel(FXMatrix* parent, GUIDialog_ViewSettings* target,
96  const GUIVisualizationSizeSettings& settings, GUIGlObjectType type);
97 
100 
102  void update(const GUIVisualizationSizeSettings& settings);
103 
107  long onCmdSizeChange(FXObject* obj, FXSelector sel, void* ptr);
108 
110 
112  FXRealSpinner* myMinSizeDial = nullptr;
113 
115  FXRealSpinner* myExaggerateDial = nullptr;
116 
118  FXCheckButton* myCheck = nullptr;
119 
121  FXCheckButton* myCheckSelected = nullptr;
122 
123  protected:
125  FOX_CONSTRUCTOR(SizePanel)
126 
127  private:
130 
133  };
134 
136  class RainbowPanel {
137 
138  public:
140  RainbowPanel(FXComposite* parent, GUIDialog_ViewSettings* target,
141  const GUIVisualizationRainbowSettings& settings);
142 
145 
147  void update(const GUIVisualizationRainbowSettings& settings);
148 
149  FXButton* myColorRainbow = nullptr;
150 
152 
154  FXCheckButton* myHideMinCheck = nullptr;
155 
157  FXRealSpinner* myMinThreshold = nullptr;
158 
160  FXCheckButton* myHideMaxCheck = nullptr;
161 
163  FXRealSpinner* myMaxThreshold = nullptr;
164 
166  FXCheckButton* mySetNeutral = nullptr;
167 
169  FXRealSpinner* myNeutralThreshold = nullptr;
170 
172  FXCheckButton* myFixRange = nullptr;
173  };
174 
180 
183 
186 
188  void show();
189 
192 
196  void setCurrent(GUIVisualizationSettings* settings);
197 
200 
202  long onCmdOk(FXObject*, FXSelector, void*);
203 
205  long onCmdCancel(FXObject*, FXSelector, void*);
206 
208  long onCmdColorChange(FXObject*, FXSelector, void*);
209 
211  long onCmdNameChange(FXObject*, FXSelector, void*);
212 
214  long onCmdSaveSetting(FXObject*, FXSelector, void* data);
215 
217  long onUpdSaveSetting(FXObject*, FXSelector, void* data);
218 
220  long onCmdDeleteSetting(FXObject*, FXSelector, void* data);
221 
223  long onUpdDeleteSetting(FXObject*, FXSelector, void* data);
224 
226  long onCmdExportSetting(FXObject*, FXSelector, void* data);
227 
229  long onUpdExportSetting(FXObject*, FXSelector, void* data);
230 
232  long onCmdImportSetting(FXObject*, FXSelector, void* data);
233 
235  long onUpdImportSetting(FXObject*, FXSelector, void* data);
236 
238  long onCmdLoadDecal(FXObject*, FXSelector, void* data);
239 
241  long onCmdLoadXMLDecals(FXObject*, FXSelector, void* data);
242 
244  long onCmdSaveXMLDecals(FXObject*, FXSelector, void* data);
245 
247  long onCmdClearDecals(FXObject*, FXSelector, void* data);
249 
253  std::string getCurrentScheme() const;
254 
258  void setCurrentScheme(const std::string&);
259 
260  void hide() {
261  saveWindowPos();
262  FXTopWindow::hide();
263  }
264 
265 protected:
268 
271 
274 
277 
279  FXCheckButton* myShowGrid = nullptr;
280  FXRealSpinner* myGridXSizeDialer = nullptr;
281  FXRealSpinner* myGridYSizeDialer = nullptr;
282 
283  FXColorWell* myBackgroundColor = nullptr;
285 
287  FXColorWell* mySelectionColor = nullptr;
288  FXColorWell* mySelectedEdgeColor = nullptr;
289  FXColorWell* mySelectedLaneColor = nullptr;
290  FXColorWell* mySelectedConnectionColor = nullptr;
291  FXColorWell* mySelectedProhibitionColor = nullptr;
292  FXColorWell* mySelectedCrossingColor = nullptr;
293  FXColorWell* mySelectedAdditionalColor = nullptr;
294  FXColorWell* mySelectedRouteColor = nullptr;
295  FXColorWell* mySelectedVehicleColor = nullptr;
296  FXColorWell* mySelectedPersonColor = nullptr;
297  FXColorWell* mySelectedPersonPlanColor = nullptr;
298  FXColorWell* mySelectedEdgeDataColor = nullptr;
299 
301  FXColorWell* myBusStopColor = nullptr;
302  FXColorWell* myBusStopColorSign = nullptr;
303  FXColorWell* myTrainStopColor = nullptr;
304  FXColorWell* myTrainStopColorSign = nullptr;
305  FXColorWell* myContainerStopColor = nullptr;
306  FXColorWell* myContainerStopColorSign = nullptr;
307  FXColorWell* myChargingStationColor = nullptr;
308  FXColorWell* myChargingStationColorSign = nullptr;
309  FXColorWell* myStopColor = nullptr;
310  FXColorWell* myWaypointColor = nullptr;
311  FXColorWell* myVehicleTripsColor = nullptr;
312  FXColorWell* myStopPersonsColor = nullptr;
313  FXColorWell* myPersonTripColor = nullptr;
314  FXColorWell* myWalkColor = nullptr;
315  FXColorWell* myRideColor = nullptr;
316  FXColorWell* myStopContainersColor = nullptr;
317  FXColorWell* myTransportColor = nullptr;
318  FXColorWell* myTranshipColor = nullptr;
319 
321 
322  FXRealSpinner* myTripWidth = nullptr;
323  FXRealSpinner* myPersonTripWidth = nullptr;
324  FXRealSpinner* myWalkWidth = nullptr;
325  FXRealSpinner* myRideWidth = nullptr;
326  FXRealSpinner* myTransportWidth = nullptr;
327  FXRealSpinner* myTranshipWidth = nullptr;
328 
331  FXVerticalFrame* myLaneColorSettingFrame = nullptr;
332  std::vector<FXColorWell*> myLaneColors;
333  std::vector<FXRealSpinner*> myLaneThresholds;
334  std::vector<FXButton*> myLaneButtons;
335  FXCheckButton* myLaneColorInterpolation = nullptr;
337  FXComboBox* myParamKey = nullptr;
338  FXComboBox* myScalingParamKey = nullptr;
340 
343  FXVerticalFrame* myLaneScaleSettingFrame = nullptr;
344  std::vector<FXRealSpinner*> myLaneScales;
345  std::vector<FXRealSpinner*> myLaneScaleThresholds;
346  std::vector<FXButton*> myLaneScaleButtons;
347  FXCheckButton* myLaneScaleInterpolation = nullptr;
348 
349  FXCheckButton* myShowLaneBorders = nullptr;
350  FXCheckButton* myShowBikeMarkings = nullptr;
351  FXCheckButton* myShowLaneDecals = nullptr;
352  FXCheckButton* myRealisticLinkRules = nullptr;
353  FXCheckButton* myShowLinkRules = nullptr;
354  FXCheckButton* myShowRails = nullptr;
355  FXCheckButton* mySecondaryShape = nullptr;
356  FXCheckButton* myHideMacroConnectors = nullptr;
357  FXCheckButton* myShowLaneDirection = nullptr;
358  FXCheckButton* myShowSublanes = nullptr;
359  FXCheckButton* mySpreadSuperposed = nullptr;
360  FXCheckButton* myDisableHideByZoom = nullptr;
361  FXRealSpinner* myLaneWidthUpscaleDialer = nullptr;
362  FXRealSpinner* myLaneMinWidthDialer = nullptr;
363 
366  FXVerticalFrame* myVehicleColorSettingFrame = nullptr;
367  std::vector<FXColorWell*> myVehicleColors;
368  std::vector<FXRealSpinner*> myVehicleThresholds;
369  std::vector<FXButton*> myVehicleButtons;
370  FXCheckButton* myVehicleColorInterpolation = nullptr;
371 
374  FXVerticalFrame* myVehicleScaleSettingFrame = nullptr;
375  std::vector<FXRealSpinner*> myVehicleScales;
376  std::vector<FXRealSpinner*> myVehicleScaleThresholds;
377  std::vector<FXButton*> myVehicleScaleButtons;
378  FXCheckButton* myVehicleScaleInterpolation = nullptr;
379 
380  FXCheckButton* myShowBlinker = nullptr;
381  FXCheckButton* myShowMinGap = nullptr;
382  FXCheckButton* myShowBrakeGap = nullptr;
383  FXCheckButton* myShowBTRange = nullptr;
384  FXCheckButton* myShowRouteIndex = nullptr;
385  FXCheckButton* myScaleLength = nullptr;
386  FXCheckButton* myDrawReversed = nullptr;
387  FXCheckButton* myShowParkingInfo = nullptr;
388  FXCheckButton* myShowChargingInfo = nullptr;
389  /*FXCheckButton* myShowLaneChangePreference = nullptr;*/
390 
391  FXComboBox* myVehicleParamKey = nullptr;
392  FXComboBox* myVehicleScalingParamKey = nullptr;
393  FXComboBox* myVehicleTextParamKey = nullptr;
394 
397  FXVerticalFrame* myPersonColorSettingFrame = nullptr;
398  std::vector<FXColorWell*> myPersonColors;
399  std::vector<FXRealSpinner*> myPersonThresholds;
400  std::vector<FXButton*> myPersonButtons;
401  FXCheckButton* myPersonColorInterpolation = nullptr;
402  FXCheckButton* myShowPedestrianNetwork = nullptr;
403  FXColorWell* myPedestrianNetworkColor = nullptr;
404 
407  FXVerticalFrame* myContainerColorSettingFrame = nullptr;
408  std::vector<FXColorWell*> myContainerColors;
409  std::vector<FXRealSpinner*> myContainerThresholds;
410  std::vector<FXButton*> myContainerButtons;
411  FXCheckButton* myContainerColorInterpolation = nullptr;
413 
416  FXVerticalFrame* myJunctionColorSettingFrame = nullptr;
417  std::vector<FXColorWell*> myJunctionColors;
418  std::vector<FXRealSpinner*> myJunctionThresholds;
419  std::vector<FXButton*> myJunctionButtons;
420  FXCheckButton* myJunctionColorInterpolation = nullptr;
421 
424  FXVerticalFrame* myPOIColorSettingFrame = nullptr;
425  std::vector<FXColorWell*> myPOIColors;
426  std::vector<FXRealSpinner*> myPOIThresholds;
427  std::vector<FXButton*> myPOIButtons;
428  FXCheckButton* myPOIColorInterpolation = nullptr;
429  FXComboBox* myPOITextParamKey = nullptr;
430  FXSpinner* myPoiDetail = nullptr;
431 
434  FXVerticalFrame* myPolyColorSettingFrame = nullptr;
435  std::vector<FXColorWell*> myPolyColors;
436  std::vector<FXRealSpinner*> myPolyThresholds;
437  std::vector<FXButton*> myPolyButtons;
438  FXCheckButton* myPolyColorInterpolation = nullptr;
439 
442  FXVerticalFrame* myDataColorSettingFrame = nullptr;
443  std::vector<FXColorWell*> myDataColors;
444  std::vector<FXRealSpinner*> myDataThresholds;
445  std::vector<FXButton*> myDataButtons;
446  FXCheckButton* myDataColorInterpolation = nullptr;
447  FXComboBox* myDataParamKey = nullptr;
448  FXRealSpinner* myEdgeRelationUpscaleDialer = nullptr;
449  FXRealSpinner* myTazRelationUpscaleDialer = nullptr;
451 
453  FXCheckButton* myShowLane2Lane = nullptr;
454  FXCheckButton* myDrawJunctionShape = nullptr;
455  FXCheckButton* myDrawCrossingsAndWalkingAreas = nullptr;
456  FXCheckButton* myShowSizeLegend = nullptr;
457  FXCheckButton* myShowColorLegend = nullptr;
458  FXCheckButton* myShowVehicleColorLegend = nullptr;
459 
461  FXCheckButton* myShow3DTLSLinkMarkers = nullptr;
462  FXCheckButton* myShow3DTLSDomes = nullptr;
463  FXCheckButton* myShow3DHeadUpDisplay = nullptr;
464  FXCheckButton* myGenerate3DTLSModels = nullptr;
465  FXSpinner* myLight3DFactor = nullptr;
466  //FXColorWell* myAmbient3DLight = nullptr;
467  //FXColorWell* myDiffuse3DLight = nullptr;
468  FXColorWell* mySkyColor = nullptr;
469 
471  FXCheckButton* myDither = nullptr;
472  FXCheckButton* myFPS = nullptr;
473  FXCheckButton* myTrueZ = nullptr;
474  FXCheckButton* myDrawBoundaries = nullptr;
475  FXCheckButton* myForceDrawForRectangleSelection = nullptr;
476  FXCheckButton* myDisableDottedContours = nullptr;
477  FXButton* myRecalculateBoundaries = nullptr;
478  FXRealSpinner* myComboRows = nullptr;
479 
510 
519 
522 
524  FXCheckButton* mySaveViewPort = nullptr;
525  FXCheckButton* mySaveDelay = nullptr;
526  FXCheckButton* mySaveDecals = nullptr;
527  FXCheckButton* mySaveBreakpoints = nullptr;
528 
530 
532  FXTabItem* myFrame3D = nullptr;
533 
535  bool updateColorRanges(FXObject* sender, std::vector<FXColorWell*>::const_iterator colIt,
536  std::vector<FXColorWell*>::const_iterator colEnd,
537  std::vector<FXRealSpinner*>::const_iterator threshIt,
538  std::vector<FXRealSpinner*>::const_iterator threshEnd,
539  std::vector<FXButton*>::const_iterator buttonIt,
540  GUIColorScheme& scheme);
541 
543  bool updateScaleRanges(FXObject* sender, std::vector<FXRealSpinner*>::const_iterator colIt,
544  std::vector<FXRealSpinner*>::const_iterator colEnd,
545  std::vector<FXRealSpinner*>::const_iterator threshIt,
546  std::vector<FXRealSpinner*>::const_iterator threshEnd,
547  std::vector<FXButton*>::const_iterator buttonIt,
548  GUIScaleScheme& scheme);
549 
551  FXMatrix* rebuildColorMatrix(FXVerticalFrame* frame,
552  std::vector<FXColorWell*>& colors,
553  std::vector<FXRealSpinner*>& thresholds,
554  std::vector<FXButton*>& buttons,
555  FXCheckButton* interpolation,
556  GUIColorScheme& scheme);
557 
559  FXMatrix* rebuildScaleMatrix(FXVerticalFrame* frame,
560  std::vector<FXRealSpinner*>& scales,
561  std::vector<FXRealSpinner*>& thresholds,
562  std::vector<FXButton*>& buttons,
563  FXCheckButton* interpolation,
564  GUIScaleScheme& scheme);
565 
569  void rebuildColorMatrices(bool doCreate = false);
570 
574  void loadSettings(const std::string& file);
575 
579  void saveDecals(OutputDevice& dev) const;
580 
584  void loadDecals(const std::string& file);
585 
587  void updateVehicleParams();
588 
590  void updatePOIParams();
591 
593  void buildHeader(FXVerticalFrame* contentFrame);
594 
597 
598  void buildBackgroundFrame(FXTabBook* tabbook);
599  void buildStreetsFrame(FXTabBook* tabbook);
600  void buildVehiclesFrame(FXTabBook* tabbook);
601  void buildPersonsFrame(FXTabBook* tabbook);
602  void buildContainersFrame(FXTabBook* tabbook);
603  void buildJunctionsFrame(FXTabBook* tabbook);
604  void buildAdditionalsFrame(FXTabBook* tabbook);
605  void buildDemandFrame(FXTabBook* tabbook);
606  void buildPOIsFrame(FXTabBook* tabbook);
607  void buildPolygonsFrame(FXTabBook* tabbook);
608  void buildSelectionFrame(FXTabBook* tabbook);
609  void buildDataFrame(FXTabBook* tabbook);
610  void buildLegendFrame(FXTabBook* tabbook);
611  void buildOpenGLFrame(FXTabBook* tabbook);
612  void build3DFrame(FXTabBook* tabbook);
613 
615 
617  void buildButtons(FXVerticalFrame* contentFrame);
618 
619 private:
622 
625 };
GUIGlObjectType
@ GLO_NETWORK
The network - empty.
GUIVisualizationTextSettings getSettings()
get settings
FXColorWell * myBGColorWell
BGColor well.
void update(const GUIVisualizationTextSettings &settings)
update
FXCheckButton * myCheck
check button
FXCheckButton * myConstSizeCheck
const size check
NamePanel(FXMatrix *parent, GUIDialog_ViewSettings *target, const std::string &title, const GUIVisualizationTextSettings &settings)
constructor
FXCheckButton * mySelectedCheck
draw only for selected?
void update(const GUIVisualizationRainbowSettings &settings)
update
FXCheckButton * mySetNeutral
check button
GUIVisualizationRainbowSettings getSettings()
get settings
FXCheckButton * myHideMaxCheck
check button
RainbowPanel(FXComposite *parent, GUIDialog_ViewSettings *target, const GUIVisualizationRainbowSettings &settings)
constructor
FXCheckButton * myHideMinCheck
check button
FXRealSpinner * myMinThreshold
threshold dial
FXRealSpinner * myMaxThreshold
threshold dial
FXRealSpinner * myNeutralThreshold
threshold dial
FXCheckButton * myCheckSelected
check selected button
FXCheckButton * myCheck
check button
GUIGlObjectType myType
GLObject type associated with this size.
long onCmdSizeChange(FXObject *obj, FXSelector sel, void *ptr)
FXRealSpinner * myMinSizeDial
min size dial
GUIDialog_ViewSettings * myDialogViewSettings
FOX needs this.
void update(const GUIVisualizationSizeSettings &settings)
update
GUIVisualizationSizeSettings getSettings()
get settings
SizePanel(FXMatrix *parent, GUIDialog_ViewSettings *target, const GUIVisualizationSizeSettings &settings, GUIGlObjectType type)
FOX Declaration.
FXRealSpinner * myExaggerateDial
exaggerate dial
The dialog to change the view (gui) settings.
long onCmdExportSetting(FXObject *, FXSelector, void *data)
Called if the settings shall be exported into a file.
FXVerticalFrame * myVehicleColorSettingFrame
void buildBackgroundFrame(FXTabBook *tabbook)
build frames
FXCheckButton * myVehicleColorInterpolation
std::string getCurrentScheme() const
Returns the name of the currently chosen scheme.
MFXComboBoxIcon * myPolyColorMode
Polygons.
FXCheckButton * myShowPedestrianNetwork
FXVerticalFrame * myDataColorSettingFrame
GUISUMOAbstractView * myParent
The parent view (which settings are changed)
std::vector< FXColorWell * > myPolyColors
MFXComboBoxIcon * myJunctionColorMode
junctions
FXVerticalFrame * myJunctionColorSettingFrame
void buildSelectionFrame(FXTabBook *tabbook)
void buildOpenGLFrame(FXTabBook *tabbook)
long onCmdNameChange(FXObject *, FXSelector, void *)
Called if the name of the scheme was changed.
FXVerticalFrame * myContainerColorSettingFrame
FXRealSpinner * myLaneWidthUpscaleDialer
std::vector< FXColorWell * > myPOIColors
FXColorWell * myBusStopColor
additional colors
FXTabItem * myFrame3D
Frame3D.
std::vector< FXButton * > myLaneScaleButtons
FXCheckButton * myDisableDottedContours
std::vector< FXColorWell * > myPersonColors
MFXComboBoxIcon * myVehicleShapeDetail
std::vector< FXButton * > myDataButtons
std::vector< FXRealSpinner * > myVehicleScales
std::vector< FXRealSpinner * > myPolyThresholds
FXCheckButton * myPOIColorInterpolation
std::vector< FXButton * > myContainerButtons
std::vector< FXRealSpinner * > myJunctionThresholds
FXCheckButton * myVehicleScaleInterpolation
FXMatrix * rebuildColorMatrix(FXVerticalFrame *frame, std::vector< FXColorWell * > &colors, std::vector< FXRealSpinner * > &thresholds, std::vector< FXButton * > &buttons, FXCheckButton *interpolation, GUIColorScheme &scheme)
Rebuilds manipulators for the current coloring scheme.
void buildJunctionsFrame(FXTabBook *tabbook)
FXRealSpinner * myContainerMinSizeDialer
std::vector< FXRealSpinner * > myPersonThresholds
FXCheckButton * myRealisticLinkRules
void show()
show view settings dialog
std::vector< FXButton * > myJunctionButtons
FXColorWell * mySelectedProhibitionColor
FXCheckButton * myGenerate3DTLSModels
FXCheckButton * myShowVehicleColorLegend
void buildStreetsFrame(FXTabBook *tabbook)
FXRealSpinner * myTripWidth
demand widths
FXCheckButton * mySaveViewPort
load/save-menu
void buildVehiclesFrame(FXTabBook *tabbook)
std::vector< FXColorWell * > myJunctionColors
FXRealSpinner * myLaneMinWidthDialer
MFXComboBoxIcon * myPOIShapeDetail
MFXComboBoxIcon * myLaneEdgeScaleMode
... lane scaler
FXCheckButton * myPersonColorInterpolation
long onCmdLoadXMLDecals(FXObject *, FXSelector, void *data)
Called if the decals shall be loaded from a file.
FXColorWell * mySelectionColor
selection colors
RainbowPanel * myEdgeRainbowPanel
rainbow panels
FXVerticalFrame * myLaneScaleSettingFrame
FXCheckButton * myHideMacroConnectors
std::vector< FXColorWell * > myVehicleColors
FXMatrix * rebuildScaleMatrix(FXVerticalFrame *frame, std::vector< FXRealSpinner * > &scales, std::vector< FXRealSpinner * > &thresholds, std::vector< FXButton * > &buttons, FXCheckButton *interpolation, GUIScaleScheme &scheme)
Rebuilds manipulators for the current scaling scheme.
std::vector< FXRealSpinner * > myVehicleThresholds
void setCurrentScheme(const std::string &)
Sets the named scheme as the current.
FXCheckButton * myPolyColorInterpolation
std::vector< FXButton * > myPersonButtons
FXCheckButton * myJunctionColorInterpolation
FXRealSpinner * myTazRelationUpscaleDialer
void buildHeader(FXVerticalFrame *contentFrame)
build header
long onCmdCancel(FXObject *, FXSelector, void *)
Called if the Cancel-button was pressed.
FXCheckButton * myShow3DHeadUpDisplay
FXVerticalFrame * myLaneColorSettingFrame
MFXComboBoxIcon * myPersonShapeDetail
MFXComboBoxIcon * myPolyShapeDetail
FXCheckButton * myLaneScaleInterpolation
void buildDemandFrame(FXTabBook *tabbook)
long onCmdImportSetting(FXObject *, FXSelector, void *data)
Called if the settings shall be read from a file.
FXVerticalFrame * myVehicleScaleSettingFrame
long onUpdImportSetting(FXObject *, FXSelector, void *data)
Called when updating the button that allows to read settings from a file.
void setCurrent(GUIVisualizationSettings *settings)
Sets current settings (called if reopened)
void rebuildColorMatrices(bool doCreate=false)
Rebuilds color changing dialogs after choosing another coloring scheme.
void saveDecals(OutputDevice &dev) const
Writes the currently used decals into a file.
FXVerticalFrame * myPolyColorSettingFrame
std::vector< FXRealSpinner * > myLaneScales
void loadSettings(const std::string &file)
Loads a scheme from a file.
long onCmdClearDecals(FXObject *, FXSelector, void *data)
Called if the decals shall be cleared.
std::vector< FXRealSpinner * > myDataThresholds
FXCheckButton * myDataColorInterpolation
FXCheckButton * myDrawCrossingsAndWalkingAreas
std::vector< FXButton * > myLaneButtons
GUIDialog_ViewSettings(const GUIDialog_ViewSettings &s)=delete
invalidated copy constructor
FXCheckButton * myLaneColorInterpolation
FXVerticalFrame * myPersonColorSettingFrame
void buildContainersFrame(FXTabBook *tabbook)
MFXComboBoxIcon * myVehicleColorMode
Vehicles.
void buildLegendFrame(FXTabBook *tabbook)
std::vector< FXRealSpinner * > myVehicleScaleThresholds
long onCmdLoadDecal(FXObject *, FXSelector, void *data)
Called if the decal shall be loaded from a file.
FXCheckButton * myContainerColorInterpolation
GUIDialog_ViewSettings()
FOX need this.
std::vector< FXColorWell * > myLaneColors
SizePanel * myVehicleSizePanel
size panels
GUIVisualizationSettings * mySettings
The current settings.
long onCmdDeleteSetting(FXObject *, FXSelector, void *data)
Called if the settings shall be deleted.
GUIDialog_ViewSettings & operator=(const GUIDialog_ViewSettings &s)=delete
invalidated assignment operator
void loadDecals(const std::string &file)
Loads decals from a file.
FXVerticalFrame * myPOIColorSettingFrame
long onCmdColorChange(FXObject *, FXSelector, void *)
Called if something (color, width, etc.) has been changed.
std::vector< FXColorWell * > myContainerColors
FXCheckButton * myForceDrawForRectangleSelection
GUISUMOAbstractView * getSUMOAbstractView()
get GUISUMOAbstractView parent
MFXComboBoxIcon * myContainerColorMode
Containers.
std::vector< FXRealSpinner * > myLaneScaleThresholds
FXCheckButton * myDither
openGL
MFXComboBoxIcon * myContainerShapeDetail
GUIVisualizationSettings myBackup
A backup of the settings (used if the "Cancel" button is pressed)
std::vector< FXRealSpinner * > myContainerThresholds
void buildPersonsFrame(FXTabBook *tabbook)
FXCheckButton * myShow3DTLSLinkMarkers
3D
MFXComboBoxIcon * myPOIColorMode
POIs.
void updatePOIParams()
reload known POI parameters
FXCheckButton * myShowLane2Lane
buttons
std::vector< FXColorWell * > myDataColors
long onCmdOk(FXObject *, FXSelector, void *)
Called if the OK-button was pressed.
long onCmdSaveSetting(FXObject *, FXSelector, void *data)
Called if the settings shall be saved into the registry.
MFXComboBoxIcon * myLaneEdgeColorMode
... lane colorer
long onCmdSaveXMLDecals(FXObject *, FXSelector, void *data)
Called if the decals shall be saved to a file.
void buildAdditionalsFrame(FXTabBook *tabbook)
void buildPOIsFrame(FXTabBook *tabbook)
FXRealSpinner * myContainerUpscaleDialer
void buildPolygonsFrame(FXTabBook *tabbook)
void buildDataFrame(FXTabBook *tabbook)
long onUpdSaveSetting(FXObject *, FXSelector, void *data)
Called when updating the button that allows to save the settings into the registry.
void buildButtons(FXVerticalFrame *contentFrame)
build buttons
MFXComboBoxIcon * myVehicleScaleMode
vehicle scaler
std::vector< FXButton * > myVehicleScaleButtons
MFXComboBoxIcon * myPersonColorMode
Persons.
bool updateColorRanges(FXObject *sender, std::vector< FXColorWell * >::const_iterator colIt, std::vector< FXColorWell * >::const_iterator colEnd, std::vector< FXRealSpinner * >::const_iterator threshIt, std::vector< FXRealSpinner * >::const_iterator threshEnd, std::vector< FXButton * >::const_iterator buttonIt, GUIColorScheme &scheme)
update color ranges
std::vector< FXRealSpinner * > myLaneThresholds
long onUpdDeleteSetting(FXObject *, FXSelector, void *data)
Called when updating the button that allows to delete settings.
bool updateScaleRanges(FXObject *sender, std::vector< FXRealSpinner * >::const_iterator colIt, std::vector< FXRealSpinner * >::const_iterator colEnd, std::vector< FXRealSpinner * >::const_iterator threshIt, std::vector< FXRealSpinner * >::const_iterator threshEnd, std::vector< FXButton * >::const_iterator buttonIt, GUIScaleScheme &scheme)
update scale ranges
void build3DFrame(FXTabBook *tabbook)
long onUpdExportSetting(FXObject *, FXSelector, void *data)
Called when updating the button that allows to export settings into a file.
MFXComboBoxIcon * myDataColorMode
Data.
std::vector< FXButton * > myPOIButtons
FXColorWell * myChargingStationColorSign
NamePanel * myEdgeNamePanel
name panels
FXRealSpinner * myEdgeRelationUpscaleDialer
void updateVehicleParams()
reload known vehicle parameters
std::vector< FXRealSpinner * > myPOIThresholds
std::vector< FXButton * > myPolyButtons
std::vector< FXButton * > myVehicleButtons
Persists window position in the registry.
Stores the information about how to visualize structures.
ComboBox with icon.
Static storage of an output device and its base (abstract) implementation.
Definition: OutputDevice.h:61