VR-Forces 4.8 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  };
50 
51  public:
54 
55  virtual ~DtVrfGuiSettingsRecord();
56 
57  public:
58 
59  virtual void setFlag(int flag, bool set);
60 
62  virtual void setUseStartFreezePdus(bool);
63  virtual bool useStartFreezePdus() const;
64 
65  void setZoomToScenarioExtentsOnLoad(bool);
66  bool zoomToScenarioExtentsOnLoad() const;
67 
68  void setDisplayCorrelationWarningMessages(bool);
69  bool displayCorrelationWarningMessages() const;
70 
71  void setShowSessionStartupDialog(bool);
72  bool showSessionStartupDialog() const;
73 
74  void setSortTaskSetMenus(bool);
75  bool sortTaskSetMenus() const;
76 
77  void setAllowWindowsStyleNameEditing(bool);
78  bool allowWindowsStyleNameEditing() const;
79 
80  void setGrayOutHiddenItems(bool);
81  bool grayOutHiddenItems() const;
82 
83  void setOrganizeOverlaysByCategory(bool);
84  bool organizeOverlaysByCategory() const;
85 
87  void setEditPressTime(double);
88  double editPressTime() const;
89 
93  void setStartupPreference(int);
94  int startupPreference() const;
95 
96  virtual void setUseSimulationTimeForAdvancement(bool);
97  virtual bool useSimulationTimeForAdvancement() const;
98 
99  virtual void setShowOverlayBar(bool);
100  virtual bool showOverlayBar() const;
101 
102  void setShowScenarioDescriptionDialog(bool);
103  bool showScenarioDescriptionDialog() const;
104 
106  void setUserDefinedSmoothing(bool);
107  bool userDefinedSmoothing() const;
108 
110  virtual void setTimeScaleRange(double low, double high);
111  virtual void getTimeScaleRange(double& low, double& high) const;
112 
114  void setHelpFile(const std::string&);
115  const std::string& helpFile() const;
116 
119  virtual void setUseAdditionalWindowTitle(bool);
120  virtual bool useAdditionalWindowTitle() const;
121 
123  virtual void setAdditionalWindowTitle(const makVrv::DtUnicode&);
124  virtual makVrv::DtUnicode additionalWindowTitle() const;
125 
128  virtual void setTimescaleButtonMode(bool);
129  virtual bool timescaleButtonMode();
130 
132  virtual void setTimescaleButtons(const std::string&);
133  virtual const std::string& timescaleButtons() const;
134 
136  virtual void setPromptBeforeAbandoningPlan(bool);
137  virtual bool promptBeforeAbandoningPlan() const;
138 
140  virtual void setPromptBeforeInterruptingTask(bool);
141  virtual bool promptBeforeInterruptingTask() const;
142 
143  protected:
144  friend class boost::serialization::access;
145 
149  template<class Archive>
150  void serialize(Archive & ar, const unsigned int version)
151  {
152  ar & BOOST_SERIALIZATION_NVP(myGuiOptions);
153  ar & BOOST_SERIALIZATION_NVP(myHelpFile);
154  ar & BOOST_SERIALIZATION_NVP(myAdditionalWindowTitle);
155  ar & BOOST_SERIALIZATION_NVP(myTimescaleLow);
156  ar & BOOST_SERIALIZATION_NVP(myTimescaleHigh);
157 
158  if (version >= 2)
159  {
160  ar & BOOST_SERIALIZATION_NVP(myTimescaleButtonMode);
161  ar & BOOST_SERIALIZATION_NVP(myTimescaleButtons);
162 
163  if (version >= 3)
164  {
165  ar & BOOST_SERIALIZATION_NVP(myEditPressTime);
166  }
167  }
168 
169  if (Archive::is_loading::value && (version <= 3))
170  {
171  int flags = myGuiOptions;
172  flags |= (PromptBeforeAbandoningPlan | PromptBeforeInterruptingTask);
173  myGuiOptions = (VrfGuiSettingsOptions)flags;
174  }
175 
176  if (Archive::is_loading::value && (version <= 4))
177  {
178  int flags = myGuiOptions;
179  flags |= (GrayOutHiddenItems | OrganizeOverlaysByCategory);
180  myGuiOptions = (VrfGuiSettingsOptions)flags;
181  }
182  }
183 
184  protected:
186  std::string myHelpFile;
188  std::string myTimescaleButtons;
193  };
194 }
195 
std::string myAdditionalWindowTitle
Definition: vrfGuiSettingsRecord.h:187
VrfGuiSettingsOptions myGuiOptions
Definition: vrfGuiSettingsRecord.h:185
A unicode string.
Definition: DtUnicode.h:33
bool myTimescaleButtonMode
Definition: vrfGuiSettingsRecord.h:189
Definition: vrfGuiSettingsRecord.h:26
double myTimescaleLow
Definition: vrfGuiSettingsRecord.h:190
VrfGuiSettingsOptions
Definition: vrfGuiSettingsRecord.h:29
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
BOOST_CLASS_VERSION(makArchives::DtDiGuySettingsRecord, 2)
double myTimescaleHigh
Definition: vrfGuiSettingsRecord.h:191
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:150
double myEditPressTime
Definition: vrfGuiSettingsRecord.h:192
std::string myHelpFile
Definition: vrfGuiSettingsRecord.h:186
std::string myTimescaleButtons
Definition: vrfGuiSettingsRecord.h:188

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)