VR-Forces 4.2 Class Documentation
tmAppOptions.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2008 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: tmAppOptions.h,v $ $Revision: 1.54 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef TMAPPOPTIONS_H
13 #define TMAPPOPTIONS_H
14 
15 #include <vlutil/vlConfig.h>
16 #include <vlutil/vlFilename.h>
17 #include <mtl/configVar.h>
18 #include <mtl/multiVar.h>
19 #include <mtl/appSettings.h>
20 #include <QtCore/QObject>
21 #include <QtCore/QString>
22 #include <QtCore/QStringList>
23 
24 #include "archiver/archiver.h"
25 #include <QtCore/QVector>
26 
27 #include <QtCore/QHash>
28 
29 class DtTMFactory;
30 class DtTMDisplayOptions;
31 
32 typedef void (*DtPrintFunc)(const char* s, ...);
33 
37 
38 #include "tmqt/tmqtDefines.h"
39 
41 {
42 public:
43  DtMenuLink() {};
44 
45  DtMenuLink(const QString& m, const QString& l) :
46  myMenu(m), myLink(l) {};
47  DtMenuLink(const DtMenuLink& orig) :
48  myMenu(orig.myMenu), myLink(orig.myLink) {};
49 
50  QString myMenu;
51  QString myLink;
52 };
53 
55 {
56 
57  Q_OBJECT
58 
59 public:
60 
62  DtTMAppOptions(int argc, char** argv);
63 
65  virtual ~DtTMAppOptions();
66 
68  virtual bool init(const DtTMFactory* f);
69 
72  virtual void parseCommandLine();
73 
74  virtual QString language() const;
75  virtual void setLanguage(const QString& s);
76 
78  virtual void processConfigFile(const QString&);
79 
82  virtual void readConfigurationFiles();
83 
85  virtual void clearFiles();
86 
88  virtual bool usingGlobalMiniMap();
89  virtual void setUsingGlobalMiniMap(bool);
90 
92  virtual QString defaultConfigFile() const;
93  virtual void setDefaultConfigFile(const QString&);
94 
96  virtual DtTMDisplayOptions* displayOptions() const;
97 
99  virtual void setSettingsFile(const QString& file);
100  virtual QString settingsFile() const;
101 
103  virtual void setDoNotUseSettingsFile(bool b);
104  virtual bool doNotUseSettingsFile() const;
105 
107  virtual void setDoNotUsePluginsDirectory(bool b);
108  virtual bool doNotUsePluginsDirectory() const;
109 
111  virtual void setQtAssistantLocation(const QString& loc);
112  virtual QString qtAssistantLocation() const;
113 
114  virtual void setQtHelpFile(const QString& loc);
115  virtual QString qtHelpFile() const;
116 
118  virtual void setShowMaximized(bool b);
119  virtual bool showMaximized() const;
120 
121  virtual void setWindowGeometry(const QRect& r);
122  virtual const QRect& windowGeometry() const;
123 
124  virtual void initCommandOptions();
125  virtual void initMtlData();
126 
127  virtual const std::vector<DtString>& symbolMapFiles() const;
128  virtual std::vector<DtString>& symbolMapFiles();
129 
130  virtual const std::vector<DtString>& translationFiles() const;
131  virtual std::vector<DtString>& translationFiles();
132  virtual void addTranslationFile(const DtString&);
133 
134  virtual QString defaultSymbolMapFile() const;
135  virtual void setDefaultSymbolMapFile(const QString& s);
136 
137  virtual QString overlayMenu() const;
138  virtual void setOverlayMenu(const QString& s);
139 
140  virtual int printMargin() const;
141  virtual void setPrintMargin(int iMargin);
142 
145  virtual void setDefaultFreehandSamplingRate(int);
146  virtual int defaultFreehandSamplingRate() const;
147 
156  virtual void setStoreLineValuesMode(int);
157  virtual int storeLineValuesMode() const;
158 
162  virtual void setHideOffScreenSymbols(bool);
163  virtual bool hideOffScreenSymbols() const;
164 
167  virtual void preparse();
168 
169  virtual const DtString& defaultTerrainDatabasePath() const;
170  virtual void setDefaultTerrainDatabasePath(const DtString& path);
171 
173  virtual void setShowSplashScreen(bool);
174  virtual bool showSplashScreen() const;
175 
178  virtual void setSplashScreenImage(const DtString&);
179  virtual const DtString& splashScreenImage() const;
181 
184  virtual void setEnableOverlayLogo(bool);
185  virtual bool enableOverlayLogo() const;
186 
188  virtual void setPluginsDirectory(const DtFilename&);
189  virtual const DtFilename& pluginsDirectory() const;
190 
191  virtual void setOverlayLogoFile(const DtFilename&);
192  virtual const DtFilename& overlayLogoFile() const;
193 
196  virtual void setOverlayLogoPosition(int);
197  virtual int overlayLogoPosition() const;
198 
199  virtual void setOverlayLogoScaleFactor(double);
200  virtual double overlayLogoScaleFactor() const;
201 
202  virtual void setOverlayLogoPositionOverride(int x, int y);
203  virtual void setOverlayLogoPositionOverride(const QPoint&);
204  virtual QPoint overlayLogoPositionOverride() const;
205 
206  virtual void setPreserveEmptyOverlayLayers(bool);
207  virtual bool preserveEmptyOverlayLayers() const;
208 
209  virtual void setUseGLWidget(bool);
210  virtual bool useGLWidget() const;
211 
212  virtual void setLoadPluginsIfVersionMismatch(bool);
213  virtual bool loadIfVersionMismatch() const;
214 
215  const QVector<DtMenuLink>& helpWebLinks() const;
216  virtual void addHelpWebLink(const QString& helpTitle, const QString& webLink);
217  virtual void insertHelpWebLink(int iIndex, const QString& helpTitle, const QString& webLink);
218  virtual void removeHelpWebLink(int iIndex);
219 
220  virtual void setDisplayStyle(const QString&);
221  virtual const QString& displayStyle() const;
222 
223  virtual void setAllowRasterMapOptimization(bool);
224  virtual bool allowRasterMapOptimization() const;
225 
228  virtual void setHideSymbolsWhenMapShifted(bool);
229  virtual bool hideSymbolsWhenMapShifted() const;
230 
232  virtual void postSettingsFileRead();
233 
235  virtual int addFont(const QString&);
236 
238  virtual void addDefaultFonts();
239 
241  virtual void setFileDialogPriority(int);
242  virtual int fileDialogPriority() const;
243 
244  virtual DtApplicationSettings* appSettings();
245 
246  virtual char** argv() const;
247  virtual int argc() const;
248 
249 protected:
250  virtual void setupOptionsFromCommandLine();
251  virtual void addHelpWebLinks();
252 
253 public:
254 
256  static DtTMAppOptions* create(int argc, char** argv);
257 
258 signals:
259 
261 
262  void displayOptionsChanged(const DtTMDisplayOptions* o);
263 
264 public slots:
265 
267 
268  virtual void setDisplayOptions(const DtTMDisplayOptions* o);
269 
270 private:
271 
273  DtTMAppOptions(const DtTMAppOptions& orig);
274 
276  DtTMAppOptions& operator=(const DtTMAppOptions& rhs);
277 
278 protected:
280  DtApplicationSettings myApplicationSettings;
281 
283  DtConfigVariable<bool> myUsingGlobalMiniMap;
284  DtConfigVariable<bool> myDoNotUseSettingsFile;
285  DtConfigVariable<bool> myDoNotUsePluginsDirectory;
286 
287  DtConfigVariable<DtString> myDefaultConfigFile;
288  DtConfigVariable<DtString> myPluginFile;
289  DtMultiConfigVariable<DtString> myConfigFiles;
290  DtMultiConfigVariable<DtString> myPluginFiles;
291  DtConfigVariable<DtString> myOverlayMenu;
292  DtConfigVariable<DtString> mySettingsFile;
293  DtMultiConfigVariable<DtString> mySymbolMapFiles;
294  DtMultiConfigVariable<DtString> myTranslationFiles;
295  DtConfigVariable<DtString> myDefaultSymbolMapFile;
296  DtConfigVariable<DtString> myLanguage;
297 
298  int myArgc;
299  char** myArgv;
300 
305 
308 
311 
313 
317 
319 
322  DtFilename myOverlayLogoFile;
323 
326 
329 
333 
338 
340  DtFilename myPluginsDirectory;
341 
343 
345  QString myDisplayStyle;
346 
349 
351  QHash<int, QString> myFontMap;
352 
353  QVector<DtMenuLink> myHelpWebLinks;
354 
359 
361 };
362 
363 inline const QVector<DtMenuLink>& DtTMAppOptions::helpWebLinks() const
364 {
365  return myHelpWebLinks;
366 }
367 
368 inline char** DtTMAppOptions::argv() const
369 {
370  return myArgv;
371 }
372 
373 inline int DtTMAppOptions::argc() const
374 {
375  return myArgc;
376 }
377 
378 #endif

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)