VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfGuiSettingsRecord.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <vrfGuiCore/vrfGuiCore.h>
15 #include <vrvUtil/DtUnicode.h>
16 
17 #include <boost/serialization/access.hpp>
18 #include <boost/serialization/nvp.hpp>
19 #include <boost/serialization/list.hpp>
20 #include <boost/serialization/map.hpp>
21 #include <boost/serialization/vector.hpp>
22 #include <boost/serialization/string.hpp>
23 
24 namespace makVrf
25 {
27  {
28  public:
30  {
31  DtDisplayCorrelationWarningMessages = 0x00000020,
32  DtShowSessionStartupDialog = 0x00000040,
33  DtStartOnNewScenario = 0x00000080,
34  DtStartOnLoadRecentScenario = 0x00000100,
35  DtStartOnLoadScenarioFromDisk = 0x00000200,
36  DtUserDefinedSmoothing = 0x00000800,
37  DtShowScenarioDescriptionDialog = 0x00001000,
38  DtZoomToScenarioExtentsOnLoad = 0x00002000,
39  DtUseAdditionalWindowTitle = 0x00004000,
40  DtUseSimulationTimeForAdvancement = 0x00008000,
41  DtShowOverlayBar = 0x00010000,
42  DtUseStartFreezePdus = 0x00080000,
43  DtSortTaskSetMenus = 0x00100000,
44  DtAllowWindowsStyleNameEditing = 0x00200000,
45  PromptBeforeAbandoningPlan = 0x00400000,
46  PromptBeforeInterruptingTask = 0x00800000,
47  GrayOutHiddenItems = 0x01000000,
48  OrganizeOverlaysByCategory = 0x02000000,
49  UseDoubleClickToEndRouteCreation = 0x04000000
50  };
51 
52  public:
55 
56  virtual ~DtVrfGuiSettingsRecord();
57 
58  public:
59 
60  virtual void setFlag(int flag, bool set);
61 
63  virtual void setUseStartFreezePdus(bool);
64  virtual bool useStartFreezePdus() const;
65 
66  void setZoomToScenarioExtentsOnLoad(bool);
67  bool zoomToScenarioExtentsOnLoad() const;
68 
69  void setDisplayCorrelationWarningMessages(bool);
70  bool displayCorrelationWarningMessages() const;
71 
72  void setShowSessionStartupDialog(bool);
73  bool showSessionStartupDialog() const;
74 
75  void setSortTaskSetMenus(bool);
76  bool sortTaskSetMenus() const;
77 
78  void setAllowWindowsStyleNameEditing(bool);
79  bool allowWindowsStyleNameEditing() const;
80 
81  void setGrayOutHiddenItems(bool);
82  bool grayOutHiddenItems() const;
83 
84  void setOrganizeOverlaysByCategory(bool);
85  bool organizeOverlaysByCategory() const;
86 
88  void setEditPressTime(double);
89  double editPressTime() const;
90 
94  void setStartupPreference(int);
95  int startupPreference() const;
96 
97  virtual void setUseSimulationTimeForAdvancement(bool);
98  virtual bool useSimulationTimeForAdvancement() const;
99 
100  virtual void setShowOverlayBar(bool);
101  virtual bool showOverlayBar() const;
102 
103  void setShowScenarioDescriptionDialog(bool);
104  bool showScenarioDescriptionDialog() const;
105 
107  void setUserDefinedSmoothing(bool);
108  bool userDefinedSmoothing() const;
109 
111  virtual void setTimeScaleRange(double low, double high);
112  virtual void getTimeScaleRange(double& low, double& high) const;
113 
115  void setHelpFile(const std::string&);
116  const std::string& helpFile() const;
117 
120  virtual void setUseAdditionalWindowTitle(bool);
121  virtual bool useAdditionalWindowTitle() const;
122 
124  virtual void setAdditionalWindowTitle(const makVrv::DtUnicode&);
125  virtual makVrv::DtUnicode additionalWindowTitle() const;
126 
129  virtual void setTimescaleButtonMode(bool);
130  virtual bool timescaleButtonMode();
131 
133  virtual void setTimescaleButtons(const std::string&);
134  virtual const std::string& timescaleButtons() const;
135 
137  virtual void setPromptBeforeAbandoningPlan(bool);
138  virtual bool promptBeforeAbandoningPlan() const;
139 
141  virtual void setPromptBeforeInterruptingTask(bool);
142  virtual bool promptBeforeInterruptingTask() const;
143 
145  virtual void setUseDoubleClickToEndRouteCreation(bool);
146  virtual bool useDoubleClickToEndRouteCreation() const;
147 
148  protected:
149  friend class boost::serialization::access;
150 
154  template<class Archive>
155  void serialize(Archive & ar, const unsigned int version)
156  {
157  ar & BOOST_SERIALIZATION_NVP(myGuiOptions);
158  ar & BOOST_SERIALIZATION_NVP(myHelpFile);
159  ar & BOOST_SERIALIZATION_NVP(myAdditionalWindowTitle);
160  ar & BOOST_SERIALIZATION_NVP(myTimescaleLow);
161  ar & BOOST_SERIALIZATION_NVP(myTimescaleHigh);
162 
163  if (version >= 2)
164  {
165  ar & BOOST_SERIALIZATION_NVP(myTimescaleButtonMode);
166  ar & BOOST_SERIALIZATION_NVP(myTimescaleButtons);
167 
168  if (version >= 3)
169  {
170  ar & BOOST_SERIALIZATION_NVP(myEditPressTime);
171  }
172  }
173 
174  if (Archive::is_loading::value && (version <= 3))
175  {
176  int flags = myGuiOptions;
177  flags |= (PromptBeforeAbandoningPlan | PromptBeforeInterruptingTask);
178  myGuiOptions = (VrfGuiSettingsOptions)flags;
179  }
180 
181  if (Archive::is_loading::value && (version <= 4))
182  {
183  int flags = myGuiOptions;
184  flags |= (GrayOutHiddenItems | OrganizeOverlaysByCategory);
185  myGuiOptions = (VrfGuiSettingsOptions)flags;
186  }
187  }
188 
189  protected:
191  std::string myHelpFile;
193  std::string myTimescaleButtons;
198  };
199 }
200 
std::string myAdditionalWindowTitle
Definition: vrfGuiSettingsRecord.h:192
VrfGuiSettingsOptions myGuiOptions
Definition: vrfGuiSettingsRecord.h:190
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
A unicode string.
Definition: DtUnicode.h:33
bool myTimescaleButtonMode
Definition: vrfGuiSettingsRecord.h:194
Definition: vrfGuiSettingsRecord.h:26
double myTimescaleLow
Definition: vrfGuiSettingsRecord.h:195
VrfGuiSettingsOptions
Definition: vrfGuiSettingsRecord.h:29
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
double myTimescaleHigh
Definition: vrfGuiSettingsRecord.h:196
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the &amp; operator is defined similar to &lt;&lt;...
Definition: vrfGuiSettingsRecord.h:155
double myEditPressTime
Definition: vrfGuiSettingsRecord.h:197
std::string myHelpFile
Definition: vrfGuiSettingsRecord.h:191
std::string myTimescaleButtons
Definition: vrfGuiSettingsRecord.h:193

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)