Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #ifndef lgrGuiComponent_H_
00010 #define lgrGuiComponent_H_
00011
00012 #include "lgrGui.h"
00013 #include <QtCore/QObject>
00014 #include <QtCore/QString>
00015 #include <QtGui/QIcon>
00016 #include <QtGui/QKeySequence>
00017
00018 class QWidget;
00019 class QTimer;
00020
00021 namespace MAKLogger
00022 {
00023
00024 class DtTimeComponent;
00025 class DtLgrZoomableWidget;
00026
00027
00036 class DT_DLL_LGRGUI DtLgrGuiComponent : public QObject
00037 {
00038 Q_OBJECT
00039
00040 public slots:
00041
00044 virtual void update() = 0;
00045
00046 public:
00047
00049 virtual ~DtLgrGuiComponent();
00050
00052 virtual void startTimer(QObject* parent);
00053
00055 virtual void stopTimer();
00056
00059 virtual QWidget* initialize(QWidget* parent) = 0;
00060
00062 virtual void activate() = 0;
00063
00065 virtual void deactivate() = 0;
00066
00074 virtual bool canExit() const;
00075
00080 virtual bool canCloseFile() const;
00081
00086 virtual double updateTime() = 0;
00087
00090 virtual QWidget* container();
00091
00093 virtual void setContainer(QWidget* widget);
00094
00096 virtual const QIcon& iconSet() const;
00097
00098 virtual void setIconSet(const QIcon& iconSet);
00099
00101 virtual QString name() const;
00102
00104 virtual QKeySequence shortcut() const;
00105
00107 virtual void setKeySequence(const QKeySequence& sequence);
00108
00112 virtual DtLgrZoomableWidget* zoomComponent() = 0;
00113
00114 protected:
00115
00116 DtLgrGuiComponent(QString name);
00117
00118 QWidget* myContainer;
00119 QTimer* myTimer;
00120 QString myName;
00121 QIcon myIconSet;
00122 QKeySequence mySequence;
00123 };
00124
00125 }
00126
00127
00128
00129 #endif
00130