Go to the documentation of this file.00001
00002
00003
00004
00005
00009
00010 #ifndef lgrAppGui_H_
00011 #define lgrAppGui_H_
00012
00013 #include "lgrGui.h"
00014
00015 #include "lgrAppGuiEvent.h"
00016
00017 #include <QtCore/QString>
00018
00019 #include <lgrAppGuiInterface.h>
00020 #include <virtualConstructor.h>
00021 #include <vlutil/vlSmartPointers.h>
00022
00023 #include <list>
00024
00025 class QApplication;
00026
00027 namespace MAKLogger
00028 {
00029
00030 class DtLgrAppGuiEvent;
00031 class DtLgrGuiComponent;
00032 class DtLgrGuiModel;
00033 class DtLgrMainWindow;
00034 class DtLgrSlots;
00035 class DtLoggerApplication;
00036
00039 class DT_DLL_LGRGUI DtLgrAppGui : public DtLgrAppGuiInterface
00040 {
00041
00042 public:
00043 static DtLgrAppGui* getQtGui(DtLoggerApplication&);
00044
00045
00046 DT_VIRTUAL_CTR(DtLgrAppGui,(DtLoggerApplication*))
00047
00048 DT_VIRTUAL_BASE_CTR(DtLgrAppGuiInterface,(DtLoggerApplication*))
00049
00050
00051 virtual ~DtLgrAppGui();
00052
00054 virtual void launchHelp(const char* helpFile);
00055
00057 virtual void setTranslations(const char* translationFile);
00058
00060 virtual void setProtocol(const char* protocol);
00061
00063 virtual void run();
00064
00066 virtual void stop();
00067
00069 DtLgrGuiModel* model();
00070
00072 DtLgrMainWindow* mainWindow();
00073
00075 QObject* eventHandler();
00076
00080 virtual void postEvent(DtLgrAppGuiEvent* event);
00081
00083
00085
00086 virtual const DtLgrFullInterface* fullInterface() const;
00088
00090 virtual const DtString& languageSelection() const;
00091
00092 protected:
00093
00094 static void messageOutput( QtMsgType type, const char *msg );
00095
00096 void addDefaultComponents();
00097
00098 DtLgrGuiModel* myModel;
00099 DtLgrMainWindow* myMainWindow;
00100 DtLgrSlots* mySlots;
00101 DtLoggerApplication* myLoggerApp;
00102
00103 DtString myLanguageSelection;
00104 DtString myProtocol;
00105
00106 bool myRunningFlag;
00107
00108 typedef std::list<DtLgrAppGuiEvent*> EventList;
00109 EventList myQueuedEvents;
00110 };
00111
00112 typedef DtBoost::shared_ptr<DtLgrAppGui> DtLgrAppGuiSP;
00113 }
00114
00115 #endif