VR-Forces Developer's Guide
 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  CommandPanelShowIcons = 0x00000001,
32  ShowCommandPanelLargeIcons = 0x00000002,
33  ShowCommandPanelSmallIcons = 0x00000004,
34  DtDisplayCorrelationWarningMessages = 0x00000020,
35  DtShowSessionStartupDialog = 0x00000040,
36  DtStartOnNewScenario = 0x00000080,
37  DtStartOnLoadRecentScenario = 0x00000100,
38  DtStartOnLoadScenarioFromDisk = 0x00000200,
39  DtUserDefinedSmoothing = 0x00000800,
40  DtShowScenarioDescriptionDialog = 0x00001000,
41  DtZoomToScenarioExtentsOnLoad = 0x00002000,
42  DtUseAdditionalWindowTitle = 0x00004000,
43  DtUseSimulationTimeForAdvancement = 0x00008000,
44  DtShowOverlayBar = 0x00010000,
45  DtUseStartFreezePdus = 0x00080000,
46  DtSortTaskSetMenus = 0x00100000,
47  DtAllowWindowsStyleNameEditing = 0x00200000,
48  PromptBeforeAbandoningPlan = 0x00400000,
49  PromptBeforeInterruptingTask = 0x00800000,
50  GrayOutHiddenItems = 0x01000000,
51  OrganizeOverlaysByCategory = 0x02000000,
52  UseDoubleClickToEndRouteCreation = 0x04000000,
53  ShowCountsOnObjectList = 0x08000000,
54  AskToCancelOperation = 0x10000000,
55  ShowingSimOperationsStatusBar = 0x20000000
56  };
57 
58  public:
61 
62  virtual ~DtVrfGuiSettingsRecord();
63 
64  public:
65 
66  virtual void setFlag(int flag, bool set);
67 
69  virtual void setUseStartFreezePdus(bool);
70  virtual bool useStartFreezePdus() const;
71 
72  void setZoomToScenarioExtentsOnLoad(bool);
73  bool zoomToScenarioExtentsOnLoad() const;
74 
76  void setCommandPanelShowIcons(bool);
77  bool commandPanelShowIcons() const;
78 
79  void setShowCommandPanelLargeIcons(bool);
80  bool showCommandPanelLargeIcons() const;
81 
82  void setShowCommandPanelSmallIcons(bool);
83  bool showCommandPanelSmallIcons() const;
84 
85  void setDisplayCorrelationWarningMessages(bool);
86  bool displayCorrelationWarningMessages() const;
87 
88  void setShowSessionStartupDialog(bool);
89  bool showSessionStartupDialog() const;
90 
91  void setSortTaskSetMenus(bool);
92  bool sortTaskSetMenus() const;
93 
94  void setAllowWindowsStyleNameEditing(bool);
95  bool allowWindowsStyleNameEditing() const;
96 
97  void setGrayOutHiddenItems(bool);
98  bool grayOutHiddenItems() const;
99 
100  void setOrganizeOverlaysByCategory(bool);
101  bool organizeOverlaysByCategory() const;
102 
104  void setEditPressTime(double);
105  double editPressTime() const;
106 
108  virtual void setAskToCancelOperation(bool);
109  virtual bool askToCancelOperation() const;
110 
114  void setStartupPreference(int);
115  int startupPreference() const;
116 
117  virtual void setUseSimulationTimeForAdvancement(bool);
118  virtual bool useSimulationTimeForAdvancement() const;
119 
120  virtual void setShowOverlayBar(bool);
121  virtual bool showOverlayBar() const;
122 
123  virtual void setShowSimOperationsStatusBar(bool);
124  virtual bool showSimOperationsStatusBar() const;
125 
126  void setShowScenarioDescriptionDialog(bool);
127  bool showScenarioDescriptionDialog() const;
128 
130  void setUserDefinedSmoothing(bool);
131  bool userDefinedSmoothing() const;
132 
134  virtual void setTimeScaleRange(double low, double high);
135  virtual void getTimeScaleRange(double& low, double& high) const;
136 
138  void setHelpFile(const std::string&);
139  const std::string& helpFile() const;
140 
143  virtual void setUseAdditionalWindowTitle(bool);
144  virtual bool useAdditionalWindowTitle() const;
145 
147  virtual void setAdditionalWindowTitle(const makVrv::DtUnicode&);
148  virtual makVrv::DtUnicode additionalWindowTitle() const;
149 
152  virtual void setTimescaleButtonMode(bool);
153  virtual bool timescaleButtonMode();
154 
156  virtual void setTimescaleButtons(const std::string&);
157  virtual const std::string& timescaleButtons() const;
158 
160  virtual void setPromptBeforeAbandoningPlan(bool);
161  virtual bool promptBeforeAbandoningPlan() const;
162 
164  virtual void setPromptBeforeInterruptingTask(bool);
165  virtual bool promptBeforeInterruptingTask() const;
166 
168  virtual void setUseDoubleClickToEndRouteCreation(bool);
169  virtual bool useDoubleClickToEndRouteCreation() const;
170 
172  virtual void setShowCountsOnObjectList(bool);
173  virtual bool showCountsOnObjectList() const;
174 
176  virtual void setOrientationStep(double);
177  virtual double orientationStep() const;
178 
180  virtual void setMovementStep(double);
181  virtual double movementStep() const;
182 
183  protected:
184  friend class boost::serialization::access;
185 
189  template<class Archive>
190  void serialize(Archive & ar, const unsigned int version)
191  {
192  ar & BOOST_SERIALIZATION_NVP(myGuiOptions);
193  ar & BOOST_SERIALIZATION_NVP(myHelpFile);
194  ar & BOOST_SERIALIZATION_NVP(myAdditionalWindowTitle);
195  ar & BOOST_SERIALIZATION_NVP(myTimescaleLow);
196  ar & BOOST_SERIALIZATION_NVP(myTimescaleHigh);
197 
198  if (version >= 2)
199  {
200  ar & BOOST_SERIALIZATION_NVP(myTimescaleButtonMode);
201  ar & BOOST_SERIALIZATION_NVP(myTimescaleButtons);
202 
203  if (version >= 3)
204  {
205  ar & BOOST_SERIALIZATION_NVP(myEditPressTime);
206 
207  if (version >= 8)
208  {
209  ar & BOOST_SERIALIZATION_NVP(myOrientationStep);
210  ar & BOOST_SERIALIZATION_NVP(myMovementStep);
211  }
212  }
213  }
214 
215  if (Archive::is_loading::value && (version <= 3))
216  {
217  int flags = myGuiOptions;
218  flags |= (PromptBeforeAbandoningPlan | PromptBeforeInterruptingTask);
219  myGuiOptions = (VrfGuiSettingsOptions)flags;
220  }
221 
222  if (Archive::is_loading::value && (version <= 4))
223  {
224  int flags = myGuiOptions;
225  flags |= (GrayOutHiddenItems | OrganizeOverlaysByCategory);
226  myGuiOptions = (VrfGuiSettingsOptions)flags;
227  }
228 
229  if (Archive::is_loading::value && (version <= 5))
230  {
231  int flags = myGuiOptions;
232  flags |= AskToCancelOperation;
233  myGuiOptions = (VrfGuiSettingsOptions)flags;
234  }
235 
236  if (Archive::is_loading::value && (version <= 6))
237  {
238  int flags = myGuiOptions;
239  flags |= ShowCountsOnObjectList;
240  myGuiOptions = (VrfGuiSettingsOptions)flags;
241  }
242  }
243 
244  protected:
246  std::string myHelpFile;
248  std::string myTimescaleButtons;
255  };
256 }
257 
std::string myAdditionalWindowTitle
Definition: vrfGuiSettingsRecord.h:247
VrfGuiSettingsOptions myGuiOptions
Definition: vrfGuiSettingsRecord.h:245
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 3)
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
bool myTimescaleButtonMode
Definition: vrfGuiSettingsRecord.h:249
Definition: vrfGuiSettingsRecord.h:26
double myTimescaleLow
Definition: vrfGuiSettingsRecord.h:250
VrfGuiSettingsOptions
Definition: vrfGuiSettingsRecord.h:29
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
double myTimescaleHigh
Definition: vrfGuiSettingsRecord.h:251
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:190
double myEditPressTime
Definition: vrfGuiSettingsRecord.h:252
std::string myHelpFile
Definition: vrfGuiSettingsRecord.h:246
double myMovementStep
Definition: vrfGuiSettingsRecord.h:254
double myOrientationStep
Definition: vrfGuiSettingsRecord.h:253
std::string myTimescaleButtons
Definition: vrfGuiSettingsRecord.h:248

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)