MAK Data Logger API Documentation for HLA
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.h"
13 #include "virtualConstructor.h"
14 
15 #include <QtCore/QString>
16 #include <map>
17 #include <set>
18 #include "vlutil/vlFilename.h"
19 
20 class DtString;
21 class QAction;
22 class QDialog;
23 class QObject;
24 class QStyle;
25 class QTimer;
26 class QWidget;
27 class QProcess;
28 
29 namespace MAKLogger
30 {
31  class DtAbsoluteTime;
32  class DtBoundsSlider;
33  class DtLgrEditorInterface;
34  class DtLgrFullInterface;
35  class DtLgrAppGui;
36  class DtLgrGuiComponent;
37  class DtLgrMainWindow;
38  class DtLgrMainWindow;
39  class DtLgrMenu;
40  class DtLgrPlaybackInterface;
41  class DtLgrRecordInterface;
42  class DtLgrSimInterface;
43  class DtLgrSystemInterface;
44  class DtLgrTimeInterface;
45  class DtLgrToolBar;
46  class DtTimeComponent;
47  class DtLgrExportDialog;
48 
51  {
52  public:
53  typedef std::map<QString,bool> DtComponentVisibilityMap;
54 
55  public:
56 
62 
64  virtual ~DtLgrGuiModel();
65 
71  virtual void initialize(DtLgrMainWindow* mainWindow,QObject* eventHandler);
72 
73  virtual void addExportType( QString exportName, int exportType);
74 
76  virtual void addNewMenu( DtLgrMenu* menu, QString previousMenuName = QString() );
77 
79  virtual void addNewToolbar( QWidget* toolBar, QString toolBarName );
80 
84  virtual void addGuiComponent( DtLgrGuiComponent* component, bool addAbove=true);
85 
87  virtual void removeGuiComponent( QString componentName);
88 
90  virtual DtLgrGuiComponent* guiComponent( QString componentName );
91 
93  virtual void changeGuiComponentVisibility(QString componentName, bool visible);
94 
96  virtual void setGuiComponentInitialVisibility(QString componentName, bool visible);
97 
99  virtual void updateLgrComponent(QString componentName,bool visible);
100 
102  virtual void showLgrComponent( QString componentName );
103 
105  virtual void hideLgrComponent( QString componentName );
106 
108  virtual void getComponentsVisibility(DtComponentVisibilityMap& visibilityMap) const;
109 
111  virtual void addNewStatusWidget( QWidget* widget );
112 
114  virtual void connectMenuItemToAction(QString menuName,QString menuItemName,
115  QAction* action);
116 
117  typedef DtLgrExportDialog* (*ExportDialogCreator)(DtLgrGuiModel*,QWidget* parent);
118 
120  virtual void addExportDialog(QString exportType,ExportDialogCreator creator);
121 
122  //@name Application Operations
124 
128  virtual bool exit();
129 
131  virtual void startLongOperation();
132 
134  virtual void finishLongOperation();
135 
137  virtual void updateLongOperation();
138 
140  virtual void cancelLongOperation();
141 
143 
144  //@name File Operations
146 
148  virtual QString getLoggerFileFilter() const;
149 
151  virtual QString getDefaultLoggerFileDirectory() const;
152 
154  virtual QString getSaveLoggerFileName(QWidget* parentWindow,QString title,
155  QString& description, bool& descriptionChanged);
156 
158  virtual bool openFile();
159 
161  virtual bool openFile( QString &filename );
162 
164  virtual bool needDifferentConnectionSettings( DtString& filename );
165 
167  virtual bool saveFileAs(bool reopenAfterSave = true);
168 
170  virtual void saveFile(bool reopenAfterSave = true);
171 
175  virtual bool fileSaved() const;
176 
178  virtual bool closeFile();
179 
181  virtual void exportSection(const DtString& fileFormat);
182 
184  virtual void exportFile(const DtString& fileFormat);
185 
187  virtual bool openLoggerInformation();
188 
189  //@name Record Operations
191 
194  virtual void recordAs();
195 
198  virtual void recordFile(QString filename, QString description, bool overwrite);
199 
200  virtual void queryToRecordMultipleFiles();
201 
203  virtual void recordToMultipleFiles(QString filename);
204 
208  virtual bool queryStopRecordingEmptyTape();
209 
211  virtual void saveRecordingData();
212 
215  virtual void setZoom();
216 
218  virtual void setZoom(const DtAbsoluteTime& start,const DtAbsoluteTime& end);
219 
221 
223  virtual QString fileNameForDisplay() const;
224 
226  virtual void upgradeFile();
227 
229  virtual void repairFile(const QString& filename, bool queryRepair);
230 
232  virtual void recoverLastPacket(const QString& filename);
233 
235  virtual void exportCompleted();
236 
238  virtual void revert();
239 
241 
242  //@name Playback Operations
244 
246  virtual void setSpeed();
247 
249  virtual void setStartStopTimes();
250 
252  virtual void setStartStopTimes(const DtAbsoluteTime& start,
253  const DtAbsoluteTime& stop);
254 
256  virtual void stop();
257 
259 
260  //@name Editing Operations
262 
264  virtual void clearSelection();
265 
267  virtual void cutSelection();
268 
270  virtual void mergeInFile();
271 
273  virtual void appendFile();
274 
276  virtual void prefixFile();
277 
279  virtual void offsetTime();
280 
282 
284 
285  virtual const DtLgrFullInterface* fullInterface() const;
286  virtual DtLgrFullInterface* fullInterface();
288 
290 
291  virtual const DtLgrAppGui* appGui() const;
292  virtual DtLgrAppGui* appGui();
294 
295 
296  virtual const DtLgrEditorInterface* editorInterface() const;
297  virtual DtLgrEditorInterface* editorInterface();
299 
301 
302  virtual const DtLgrPlaybackInterface* playbackInterface() const;
303  virtual DtLgrPlaybackInterface* playbackInterface();
305 
307 
308  virtual const DtLgrRecordInterface* recordInterface() const;
309  virtual DtLgrRecordInterface* recordInterface();
311 
313 
314  virtual const DtLgrSimInterface* simulationInterface() const;
315  virtual DtLgrSimInterface* simulationInterface();
317 
319 
320  virtual const DtLgrSystemInterface* systemInterface() const;
321  virtual DtLgrSystemInterface* systemInterface();
323 
325 
326 
327  virtual const DtLgrTimeInterface* timeInterface() const;
328  virtual DtLgrTimeInterface* timeInterface();
330 
332  virtual void updateInterfaces();
333 
335  virtual void deleteAssistant();
336 
338  virtual void toggleConnection();
339 
342  virtual bool disconnect(QWidget* dialog=0);
343 
345  virtual QObject* eventHandler();
346 
348  virtual DtLgrMainWindow* mainWindow();
349 
351  virtual void crippleGui(bool disableAndMinimize);
352 
354  virtual void openUrl(const QString& urlText);
355 
357  virtual void showHelp(const char* filename = 0);
358 
360  virtual void showUserGuide();
361 
363  virtual void showReleaseNotes();
364 
366  virtual void showClassDocs();
367 
369  virtual void showAboutBox();
370 
372  virtual void launchVersionWebsite();
373 
375  virtual void launchProductWebsite();
376 
379  virtual const DtTimeComponent& displayTime() const;
380 
382  virtual void playbackFileEvent(const QString& filename);
383 
385  virtual void recordFileEvent(const QString& filename);
386 
388  virtual bool isZoomEnabled() const;
389 
390  protected:
391 
392  virtual void longOperationChangedCallback(const bool& state);
393  virtual void longOperationMessageChangedCallback(const DtString& message);
394  virtual void longOperationProgressChangedCallback(const int& percent);
395 
396  virtual QString showExportDialog(QString fileFormat,QString filter, QString dialogName);
397  virtual QString browseOpenLoggerFile(QString title);
398 
399  protected:
406  QProcess* myHelpAssistant;
408 
409  typedef std::map<QString,DtLgrGuiComponent*> GuiComponentMap;
412 
413  typedef std::map<QString,ExportDialogCreator> ExportDialogMap;
415 
416  typedef std::set<QString> ExportTypes;
418 
420  //Flat used to store if the model is already exiting.
422 
423  DtFilename myRepairedFilename;
424 
425  QString myDataViewName;
426  QString mySizeViewName;
427  };
428 }
429 
430 #endif

Document ID: Generated on Mon Jan 19 08:20:14 EST 2015 from SVN revision 149581
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)