MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
lgrGuiModel.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef lgrGuiModel_H_
10 #define lgrGuiModel_H_
11 
12 #include <lgrGui/lgrGui.h>
14 #include <lgrUtil/absoluteTime.h>
15 
16 #include <QtCore/QString>
17 #include <map>
18 #include <set>
19 #include "vlutil/vlFilename.h"
20 
21 class DtString;
22 class QAction;
23 class QDialog;
24 class QObject;
25 class QStyle;
26 class QTimer;
27 class QWidget;
28 class QProcess;
29 
30 namespace MAKLogger
31 {
32  class DtAbsoluteTime;
33  class DtBoundsSlider;
34  class DtLgrTimeBarWidget;
35  class DtLgrEditorInterface;
36  class DtLgrFullInterface;
37  class DtLgrAppGui;
38  class DtLgrGuiComponent;
39  class DtLgrMainWindow;
40  class DtLgrMainWindow;
41  class DtLgrMenu;
42  class DtLgrPlaybackInterface;
43  class DtLgrRecordInterface;
44  class DtLgrSimInterface;
45  class DtLgrSystemInterface;
46  class DtLgrTimeInterface;
47  class DtLgrToolBar;
48  class DtTimeComponent;
49  class DtLgrExportDialog;
50  class DtLgrTimeBarZoomBox;
51 
54  {
55  public:
56  typedef std::map<QString,bool> DtComponentVisibilityMap;
57 
58  public:
59 
65 
67  virtual ~DtLgrGuiModel();
68 
74  virtual void initialize(DtLgrMainWindow* mainWindow,QObject* eventHandler);
75 
76  virtual void addExportType( QString exportName, int exportType);
77 
79  virtual void addNewMenu( DtLgrMenu* menu, QString previousMenuName = QString() );
80 
82  virtual void addNewToolbar( QWidget* toolBar, QString toolBarName );
83 
87  virtual void addGuiComponent( DtLgrGuiComponent* component, bool addAbove=true);
88 
90  virtual void removeGuiComponent( QString componentName);
91 
93  virtual DtLgrGuiComponent* guiComponent( QString componentName );
94 
96  virtual void changeGuiComponentVisibility(QString componentName, bool visible);
97 
99  virtual void setGuiComponentInitialVisibility(QString componentName, bool visible);
100 
102  virtual void updateLgrComponent(QString componentName,bool visible);
103 
105  virtual void showLgrComponent( QString componentName );
106 
108  virtual void hideLgrComponent( QString componentName );
109 
111  virtual void getComponentsVisibility(DtComponentVisibilityMap& visibilityMap) const;
112 
114  virtual void addNewStatusWidget( QWidget* widget );
115 
117  virtual void connectMenuItemToAction(QString menuName,QString menuItemName,
118  QAction* action);
119 
120  typedef DtLgrExportDialog* (*ExportDialogCreator)(DtLgrGuiModel*,QWidget* parent);
121 
123  virtual void addExportDialog(QString exportType,ExportDialogCreator creator);
124 
125  //@name Application Operations
127 
131  virtual bool exit();
132 
134  virtual void startLongOperation();
135 
137  virtual void finishLongOperation();
138 
140  virtual void updateLongOperation();
141 
143  virtual void cancelLongOperation();
144 
146 
147  //@name File Operations
149 
151  virtual QString getLoggerFileFilter() const;
152 
154  virtual QString getDefaultLoggerFileDirectory() const;
155 
157  virtual QString getSaveLoggerFileName(QWidget* parentWindow,QString title,
158  QString& description, bool& descriptionChanged);
159 
161  virtual bool openFile();
162 
164  virtual bool openFile( QString &filename );
165 
167  virtual bool needDifferentConnectionSettings( DtString& filename );
168 
170  virtual bool saveFileAs(bool reopenAfterSave = true);
171 
173  virtual void saveFile(bool reopenAfterSave = true);
174 
178  virtual bool fileSaved() const;
179 
181  virtual bool closeFile();
182 
184  virtual void exportSection(const DtString& fileFormat);
185 
187  virtual void exportFile(const DtString& fileFormat);
188 
190  virtual bool openLoggerInformation();
191 
192  //@name Record Operations
194 
197  virtual void recordAs();
198 
201  virtual void recordFile(QString filename, QString description, bool overwrite);
202 
203  virtual void queryToRecordMultipleFiles();
204 
206  virtual void recordToMultipleFiles(QString filename, QString description);
207 
211  virtual bool queryStopRecordingEmptyTape();
212 
214  virtual void saveRecordingData();
215 
218  virtual void setZoom();
219 
221  virtual void setZoom(const DtAbsoluteTime& start,const DtAbsoluteTime& end);
222 
224 
226  virtual QString fileNameForDisplay() const;
227 
229  virtual void upgradeFile();
230 
232  virtual void repairFile(const QString& filename, bool queryRepair);
233 
235  virtual void recoverLastPacket(const QString& filename);
236 
238  virtual void exportCompleted();
239 
241  virtual void revert();
242 
244 
245  //@name Playback Operations
247 
249  virtual void setSpeed();
250 
252  virtual void setStartStopTimes();
253 
255  virtual void setStartStopTimes(const DtAbsoluteTime& start,
256  const DtAbsoluteTime& stop);
257 
259  virtual void stop();
260 
262 
263  //@name Editing Operations
265 
267  virtual void clearSelection();
268 
270  virtual void cutSelection();
271 
273  virtual void mergeInFile();
274 
276  virtual void appendFile();
277 
279  virtual void prefixFile();
280 
282  virtual void offsetTime();
283 
285 
287 
288  virtual const DtLgrFullInterface* fullInterface() const;
289  virtual DtLgrFullInterface* fullInterface();
291 
293 
294  virtual const DtLgrAppGui* appGui() const;
295  virtual DtLgrAppGui* appGui();
297 
298 
299  virtual const DtLgrEditorInterface* editorInterface() const;
300  virtual DtLgrEditorInterface* editorInterface();
302 
304 
305  virtual const DtLgrPlaybackInterface* playbackInterface() const;
306  virtual DtLgrPlaybackInterface* playbackInterface();
308 
310 
311  virtual const DtLgrRecordInterface* recordInterface() const;
312  virtual DtLgrRecordInterface* recordInterface();
314 
316 
317  virtual const DtLgrSimInterface* simulationInterface() const;
318  virtual DtLgrSimInterface* simulationInterface();
320 
322 
323  virtual const DtLgrSystemInterface* systemInterface() const;
324  virtual DtLgrSystemInterface* systemInterface();
326 
328 
329 
330  virtual const DtLgrTimeInterface* timeInterface() const;
331  virtual DtLgrTimeInterface* timeInterface();
333 
335  virtual void updateInterfaces();
336 
338  virtual void deleteAssistant();
339 
341  virtual void toggleConnection();
342 
345  virtual bool disconnect(QWidget* dialog=0);
346 
348  virtual QObject* eventHandler();
349 
351  virtual DtLgrMainWindow* mainWindow();
352 
354  virtual void crippleGui(bool disableAndMinimize);
355 
357  virtual void openUrl(const QString& urlText);
358 
360  virtual void showHelp(const char* filename = 0);
361 
363  virtual void showUserGuide();
364 
366  virtual void showReleaseNotes();
367 
369  virtual void showClassDocs();
370 
372  virtual void showAboutBox();
373 
375  virtual void launchVersionWebsite();
376 
378  virtual void launchProductWebsite();
379 
382  virtual const DtTimeComponent& displayTime() const;
383 
385  virtual void playbackFileEvent(const QString& filename);
386 
388  virtual void recordFileEvent(const QString& filename);
389 
391  virtual bool isZoomEnabled() const;
392 
394  virtual void setFollowMode(bool enableFollow);
395 
397  virtual void setFollowInterval(double interval);
398 
400  virtual bool isFollowMode() const;
401 
403  virtual void jumpTimeChanged(const DtAbsoluteTime& jumpTime);
404 
405  protected:
406 
407  virtual void longOperationChangedCallback(const bool& state);
408  virtual void longOperationMessageChangedCallback(const DtString& message);
409  virtual void longOperationProgressChangedCallback(const int& percent);
410 
411  virtual QString showExportDialog(QString fileFormat,QString filter, QString dialogName);
412  virtual QString browseOpenLoggerFile(QString title);
413 
414  protected:
422  QProcess* myHelpAssistant;
424 
425  typedef std::map<QString,DtLgrGuiComponent*> GuiComponentMap;
428 
429  typedef std::map<QString,ExportDialogCreator> ExportDialogMap;
431 
432  typedef std::set<QString> ExportTypes;
434 
436  //Flat used to store if the model is already exiting.
438 
441 
442  DtFilename myRepairedFilename;
443 
444  QString myDataViewName;
445  QString mySizeViewName;
446  };
447 }
448 
449 #endif

Document ID: Generated on Thu Apr 7 20:50:59 EDT 2016 from SVN revision 163818
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)