10 #define lgrGuiModel_H_
16 #include <vlutil/vlFilename.h>
36 class DtLgrTimeBarWidget;
37 class DtLgrEditorInterface;
38 class DtLgrFullInterface;
40 class DtLgrGuiComponent;
41 class DtLgrMainWindow;
42 class DtLgrMainWindow;
44 class DtLgrPlaybackInterface;
45 class DtLgrRecordInterface;
46 class DtLgrSimInterface;
47 class DtLgrSystemInterface;
48 class DtLgrTimeInterface;
50 class DtTimeComponent;
51 class DtLgrExportDialog;
52 class DtLgrTimeBarZoomBox;
53 struct DtLgrMediaPlayPipelineInfo;
79 virtual void addExportType( QString exportName,
int exportType);
82 virtual void addNewMenu(
DtLgrMenu* menu, QString previousMenuName = QString() );
85 virtual void addNewToolbar(
QWidget* toolBar, QString toolBarName );
91 virtual void addGuiComponent(
DtLgrGuiComponent* component,
bool addAbove=
true,
bool floating=
false);
94 virtual void removeGuiComponent( QString componentName);
100 virtual void changeGuiComponentVisibility(QString componentName,
bool visible);
103 virtual void setGuiComponentInitialVisibility(QString componentName,
bool visible);
106 virtual void updateLgrComponent(QString componentName,
bool visible);
109 virtual void showLgrComponent( QString componentName );
112 virtual void hideLgrComponent( QString componentName );
118 virtual void addNewStatusWidget(
QWidget* widget );
121 virtual void connectMenuItemToAction(QString menuName,QString menuItemName,
127 virtual void addExportDialog(QString exportType,ExportDialogCreator creator);
138 virtual void startLongOperation();
141 virtual void finishLongOperation();
144 virtual void updateLongOperation();
147 virtual void cancelLongOperation();
155 virtual QString getLoggerFileFilter()
const;
158 virtual QString getDefaultLoggerFileDirectory()
const;
161 virtual QString getSaveLoggerFileName(
QWidget* parentWindow,QString title,
162 QString& description,
bool& descriptionChanged,
DtString* streamConfiguration=0,
int mediaPort=5000,
bool activeStream=0);
165 virtual bool openFile();
168 virtual bool openFile( QString &filename,
bool checkMediaFile =
false );
171 virtual bool needDifferentConnectionSettings(
DtString& filename );
174 virtual bool saveFileAs(
bool reopenAfterSave =
true);
177 virtual void saveFile(
bool reopenAfterSave =
true);
182 virtual bool fileSaved()
const;
185 virtual bool canCloseFile();
188 virtual bool closeFile();
191 virtual void exportSection(
const DtString& fileFormat);
194 virtual void exportFile(
const DtString& fileFormat);
197 virtual bool openLoggerInformation();
200 virtual QVector<QString> recentFiles();
203 virtual void setRecentFiles(QVector<QString> recentFiles);
206 virtual void addRecentFile(QString filename);
213 virtual void recordAs();
217 virtual void recordFile(QString filename, QString description,
bool overwrite);
220 virtual void queryToRecordMultipleFiles();
223 virtual void recordToMultipleFiles(QString filename, QString description);
228 virtual bool queryStopRecordingEmptyTape();
231 virtual void saveRecordingData();
235 virtual void setZoom();
243 virtual QString fileNameForDisplay()
const;
246 virtual void upgradeFile();
249 virtual void repairFile(
const QString& filename,
bool queryRepair);
252 virtual void recoverLastPacket(
const QString& filename);
255 virtual void exportCompleted();
258 virtual void revert();
266 virtual void setSpeed();
269 virtual void setStartStopTimes();
284 virtual void clearSelection();
287 virtual void cutSelection();
290 virtual void mergeInFile();
293 virtual void appendFile();
296 virtual void prefixFile();
299 virtual void offsetTime();
352 virtual void updateInterfaces();
355 virtual void deleteAssistant();
358 virtual void toggleConnection();
362 virtual bool disconnect(
QWidget* dialog=0);
365 virtual QObject* eventHandler();
371 virtual void crippleGui(
bool disableAndMinimize);
374 virtual void openUrl(
const QString& urlText);
377 virtual void showHelp(
const char* filename = 0);
380 virtual void showUserGuide();
383 virtual void showReleaseNotes();
386 virtual void showClassDocs();
389 virtual void showAboutBox();
392 virtual void launchVersionWebsite();
395 virtual void launchProductWebsite();
402 virtual void playbackFileEvent(
const QString& filename);
405 virtual void recordFileEvent(
const QString& filename);
408 virtual bool isZoomEnabled()
const;
411 virtual void setFollowMode(
bool enableFollow);
414 virtual void setFollowInterval(
double interval);
417 virtual bool isFollowMode()
const;
423 virtual void mediaPlayInWindowOperationActive(
bool isActive,
bool onCloseMainWindow =
false);
425 virtual void changeGuiComponentVisibilityWithLocking(QString componentName,
bool visible,
int initialSize = -1,
bool lockOtherViewsX =
true,
bool lockOtherViewsY =
true,
bool ignoreVisibility =
false);
429 virtual void longOperationChangedCallback(
const bool& state);
430 virtual void longOperationMessageChangedCallback(
const DtString& message);
431 virtual void longOperationProgressChangedCallback(
const int& percent);
433 virtual QString showExportDialog(QString fileFormat,QString filter, QString dialogName);
QStyle * myNewDockStyle
Definition: lgrGuiModel.h:458
DtFilename myRepairedFilename
Definition: lgrGuiModel.h:466
The class responsible for interfacing with the simulation in a protocol independent manner...
Definition: lgrSimInterface.h:34
A Widget which contains two slider boxes which define a bounding area.
Definition: boundsSlider.h:27
DtLgrTimeBarWidget * myTimeBar
Definition: lgrGuiModel.h:441
DtAbsoluteTime myJumpTime
Definition: lgrGuiModel.h:463
Provides the base interface for Logger Application gui components.
Definition: lgrGuiComponent.h:36
#define DT_VIRTUAL_CTR(CLASS_NAME, ARG_TYPES_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where CLASS_NAME...
Definition: virtualConstructor.h:34
QVector< QString > myRecentFiles
Definition: lgrGuiModel.h:472
bool myJumpPending
Definition: lgrGuiModel.h:462
bool myResetZoom
Definition: lgrGuiModel.h:464
GuiComponentMap myComponents
Definition: lgrGuiModel.h:449
ExportTypes myExportTypes
Definition: lgrGuiModel.h:456
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
QDockWidget * myTimeLineDocWidget
Definition: lgrGuiModel.h:446
std::set< QString > ExportTypes
Definition: lgrGuiModel.h:455
ExportDialogMap myExportDialogMap
Definition: lgrGuiModel.h:453
The class responsible for interfacing with the logger playback functionality.
Definition: lgrPlaybackInterface.h:35
The logger GUI's model.
Definition: lgrGuiModel.h:56
std::map< QString, bool > DtComponentVisibilityMap
Definition: lgrGuiModel.h:59
The class which interfaces with the logger editor functionality.
Definition: lgrEditorInterface.h:31
Utility class which provides access to multiple interfaces.
Definition: lgrFullInterface.h:25
QProcess * myHelpAssistant
Definition: lgrGuiModel.h:444
The main window for the logger application.
Definition: lgrMainWindow.h:30
QObject * myEventHandler
Definition: lgrGuiModel.h:438
DtBoundsSlider * myTimeControl
Definition: lgrGuiModel.h:442
DtLgrMainWindow * myMainWindow
Definition: lgrGuiModel.h:437
A time component represents the current time of the logger.
Definition: timeComponent.h:20
Contains MAKLogger::DtAbsoluteTime and MAKLogger::DtRelativeTime classes.
QString myStreamViewName
Definition: lgrGuiModel.h:470
Definition: lgrExportDialog.h:20
QString myDataViewName
Definition: lgrGuiModel.h:468
The specific interface for interacting with the default logger GUI.
Definition: lgrAppGui.h:40
DtTimeComponent * myTimeComponent
Definition: lgrGuiModel.h:445
The class responsible for interfacing with the low level logger system functions. ...
Definition: lgrSystemInterface.h:31
#define DT_DLL_LGRGUI
Definition: lgrGui.h:19
bool myExitingFlag
Definition: lgrGuiModel.h:460
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22
std::map< QString, DtLgrGuiComponent * > GuiComponentMap
Definition: lgrGuiModel.h:448
DtLgrTimeBarZoomBox * myZoomControl
Definition: lgrGuiModel.h:443
The class responsible for interfacing with the logger recording functionality.
Definition: lgrRecordInterface.h:28
Defines INPORT/EXPORT macros for lgrGui library.
DtComponentVisibilityMap myComponentsInitialVisibility
Definition: lgrGuiModel.h:450
DtLgrAppGui * myAppGui
Definition: lgrGuiModel.h:440
A Zoom widget. Highlights the visible timeline duration on the fulltimeline bar.
Definition: lgrTimeBarZoomBox.h:27
The class for interfacing with the loggers time state.
Definition: lgrTimeInterface.h:21
std::map< QString, ExportDialogCreator > ExportDialogMap
Definition: lgrGuiModel.h:452
QString mySizeViewName
Definition: lgrGuiModel.h:469
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
DtLgrFullInterface * myFullInterface
Definition: lgrGuiModel.h:439