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 <vlutil/vlFilename.h>
17 
18 #include <QString>
19 #include <map>
20 #include <set>
21 
22 class QAction;
23 class QDialog;
24 class QObject;
25 class QStyle;
26 class QTimer;
27 class QWidget;
28 class QProcess;
29 class QDockWidget;
30 
31 namespace MAKLogger
32 {
33  class DtAbsoluteTime;
34  class DtBoundsSlider;
35  class DtLgrTimeBarWidget;
36  class DtLgrEditorInterface;
37  class DtLgrFullInterface;
38  class DtLgrAppGui;
39  class DtLgrGuiComponent;
40  class DtLgrMainWindow;
41  class DtLgrMainWindow;
42  class DtLgrMenu;
43  class DtLgrPlaybackInterface;
44  class DtLgrRecordInterface;
45  class DtLgrSimInterface;
46  class DtLgrSystemInterface;
47  class DtLgrTimeInterface;
48  class DtLgrToolBar;
49  class DtTimeComponent;
50  class DtLgrExportDialog;
51  class DtLgrTimeBarZoomBox;
52  struct DtLgrMediaPlayPipelineInfo;
53 
56  {
57  public:
58  typedef std::map<QString,bool> DtComponentVisibilityMap;
59 
60  public:
61 
67 
69  virtual ~DtLgrGuiModel();
70 
76  virtual void initialize(DtLgrMainWindow* mainWindow,QObject* eventHandler);
77 
78  virtual void addExportType( QString exportName, int exportType);
79 
81  virtual void addNewMenu( DtLgrMenu* menu, QString previousMenuName = QString() );
82 
84  virtual void addNewToolbar( QWidget* toolBar, QString toolBarName );
85 
89  virtual void addGuiComponent( DtLgrGuiComponent* component, bool addAbove=true);
90 
92  virtual void removeGuiComponent( QString componentName);
93 
95  virtual DtLgrGuiComponent* guiComponent( QString componentName );
96 
98  virtual void changeGuiComponentVisibility(QString componentName, bool visible);
99 
101  virtual void setGuiComponentInitialVisibility(QString componentName, bool visible);
102 
104  virtual void updateLgrComponent(QString componentName,bool visible);
105 
107  virtual void showLgrComponent( QString componentName );
108 
110  virtual void hideLgrComponent( QString componentName );
111 
113  virtual void getComponentsVisibility(DtComponentVisibilityMap& visibilityMap) const;
114 
116  virtual void addNewStatusWidget( QWidget* widget );
117 
119  virtual void connectMenuItemToAction(QString menuName,QString menuItemName,
120  QAction* action);
121 
122  typedef DtLgrExportDialog* (*ExportDialogCreator)(DtLgrGuiModel*,QWidget* parent);
123 
125  virtual void addExportDialog(QString exportType,ExportDialogCreator creator);
126 
127  //@name Application Operations
129 
133  virtual bool exit();
134 
136  virtual void startLongOperation();
137 
139  virtual void finishLongOperation();
140 
142  virtual void updateLongOperation();
143 
145  virtual void cancelLongOperation();
146 
148 
149  //@name File Operations
151 
153  virtual QString getLoggerFileFilter() const;
154 
156  virtual QString getDefaultLoggerFileDirectory() const;
157 
159  virtual QString getSaveLoggerFileName(QWidget* parentWindow,QString title,
160  QString& description, bool& descriptionChanged, DtString* streamConfiguration=0, int mediaPort=5000, bool activeStream=0);
161 
163  virtual bool openFile();
164 
166  virtual bool openFile( QString &filename );
167 
169  virtual bool needDifferentConnectionSettings( DtString& filename );
170 
172  virtual bool saveFileAs(bool reopenAfterSave = true);
173 
175  virtual void saveFile(bool reopenAfterSave = true);
176 
180  virtual bool fileSaved() const;
181 
183  virtual bool canCloseFile();
184 
186  virtual bool closeFile();
187 
189  virtual void exportSection(const DtString& fileFormat);
190 
192  virtual void exportFile(const DtString& fileFormat);
193 
195  virtual bool openLoggerInformation();
196 
197  //@name Record Operations
199 
202  virtual void recordAs();
203 
206  virtual void recordFile(QString filename, QString description, bool overwrite);
207 
209  virtual void queryToRecordMultipleFiles();
210 
212  virtual void recordToMultipleFiles(QString filename, QString description);
213 
217  virtual bool queryStopRecordingEmptyTape();
218 
220  virtual void saveRecordingData();
221 
224  virtual void setZoom();
225 
227  virtual void setZoom(const DtAbsoluteTime& start,const DtAbsoluteTime& end);
228 
230 
232  virtual QString fileNameForDisplay() const;
233 
235  virtual void upgradeFile();
236 
238  virtual void repairFile(const QString& filename, bool queryRepair);
239 
241  virtual void recoverLastPacket(const QString& filename);
242 
244  virtual void exportCompleted();
245 
247  virtual void revert();
248 
250 
251  //@name Playback Operations
253 
255  virtual void setSpeed();
256 
258  virtual void setStartStopTimes();
259 
261  virtual void setStartStopTimes(const DtAbsoluteTime& start,
262  const DtAbsoluteTime& stop);
263 
265  virtual void stop();
266 
268 
269  //@name Editing Operations
271 
273  virtual void clearSelection();
274 
276  virtual void cutSelection();
277 
279  virtual void mergeInFile();
280 
282  virtual void appendFile();
283 
285  virtual void prefixFile();
286 
288  virtual void offsetTime();
289 
291 
293 
294  virtual const DtLgrFullInterface* fullInterface() const;
295  virtual DtLgrFullInterface* fullInterface();
297 
299 
300  virtual const DtLgrAppGui* appGui() const;
301  virtual DtLgrAppGui* appGui();
303 
304 
305  virtual const DtLgrEditorInterface* editorInterface() const;
306  virtual DtLgrEditorInterface* editorInterface();
308 
310 
311  virtual const DtLgrPlaybackInterface* playbackInterface() const;
312  virtual DtLgrPlaybackInterface* playbackInterface();
314 
316 
317  virtual const DtLgrRecordInterface* recordInterface() const;
318  virtual DtLgrRecordInterface* recordInterface();
320 
322 
323  virtual const DtLgrSimInterface* simulationInterface() const;
324  virtual DtLgrSimInterface* simulationInterface();
326 
328 
329  virtual const DtLgrSystemInterface* systemInterface() const;
330  virtual DtLgrSystemInterface* systemInterface();
332 
334 
335 
336  virtual const DtLgrTimeInterface* timeInterface() const;
337  virtual DtLgrTimeInterface* timeInterface();
339 
341  virtual void updateInterfaces();
342 
344  virtual void deleteAssistant();
345 
347  virtual void toggleConnection();
348 
351  virtual bool disconnect(QWidget* dialog=0);
352 
354  virtual QObject* eventHandler();
355 
357  virtual DtLgrMainWindow* mainWindow();
358 
360  virtual void crippleGui(bool disableAndMinimize);
361 
363  virtual void openUrl(const QString& urlText);
364 
366  virtual void showHelp(const char* filename = 0);
367 
369  virtual void showUserGuide();
370 
372  virtual void showReleaseNotes();
373 
375  virtual void showClassDocs();
376 
378  virtual void showAboutBox();
379 
381  virtual void launchVersionWebsite();
382 
384  virtual void launchProductWebsite();
385 
388  virtual const DtTimeComponent& displayTime() const;
389 
391  virtual void playbackFileEvent(const QString& filename);
392 
394  virtual void recordFileEvent(const QString& filename);
395 
397  virtual bool isZoomEnabled() const;
398 
400  virtual void setFollowMode(bool enableFollow);
401 
403  virtual void setFollowInterval(double interval);
404 
406  virtual bool isFollowMode() const;
407 
409  virtual void jumpTimeChanged(const DtAbsoluteTime& jumpTime);
410 
412  virtual void mediaPlayInWindowOperationActive(bool isActive, bool onCloseMainWindow = false);
413 
414  virtual void changeGuiComponentVisibilityWithLocking(QString componentName, bool visible, int initialSize = -1, bool lockOtherViewsX = true, bool lockOtherViewsY = true, bool ignoreVisibility = false);
415 
416  protected:
417 
418  virtual void longOperationChangedCallback(const bool& state);
419  virtual void longOperationMessageChangedCallback(const DtString& message);
420  virtual void longOperationProgressChangedCallback(const int& percent);
421 
422  virtual QString showExportDialog(QString fileFormat,QString filter, QString dialogName);
423  virtual QString browseOpenLoggerFile(QString title, DtLgrMediaPlayPipelineInfo* pipelineInfo=0);
424 
425  protected:
433  QProcess* myHelpAssistant;
435  QDockWidget* myTimeLineDocWidget;
436 
437  typedef std::map<QString,DtLgrGuiComponent*> GuiComponentMap;
440 
441  typedef std::map<QString,ExportDialogCreator> ExportDialogMap;
443 
444  typedef std::set<QString> ExportTypes;
446 
447  QStyle* myNewDockStyle;
448  //Flag used to store if the model is already exiting.
450 
454 
455  DtFilename myRepairedFilename;
456 
457  QString myDataViewName;
458  QString mySizeViewName;
460  };
461 }
462 
463 #endif

Document ID: Generated on Tue Aug 1 09:00:26 EDT 2017 from SVN revision 179128
Copyright © 2017 VT MÄK. All Rights Reserved (www.mak.com)