00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef ABSTRACTGUICOMPONENT_H
00026 #define ABSTRACTGUICOMPONENT_H
00027
00028
00029 #include <QWidget>
00030
00031 #include <jni.h>
00032
00033 class QSqlDatabase;
00034 class QWidget;
00035
00036
00037
00056 class AbstractGuiComponent : public QObject {
00057
00058 Q_OBJECT
00059
00060 public:
00061 AbstractGuiComponent( JavaVM* jvm,
00062 QWidget* parent = 0, Qt::WindowFlags flags = 0 )
00063 : QObject(parent) { Q_UNUSED(jvm); Q_UNUSED(flags); }
00064 virtual ~AbstractGuiComponent() {}
00065
00066 virtual const QByteArray& key() const = 0;
00067
00068 virtual bool isRootWidgetVisible() const = 0;
00069
00070 virtual bool deleteOnCloseEnabled() const = 0;
00071 virtual void setDeleteOnClose( bool enable ) = 0;
00072
00073
00074 signals:
00075 void rootWidgetVisibilityToggled();
00076 void request( const QString& message );
00077
00078
00079 public slots:
00080 virtual void setRootWidgetVisible( bool visible ) = 0;
00081 virtual void showRootWidget( Qt::WindowStates windowState = Qt::WindowNoState ) = 0;
00082 virtual void hideRootWidget() = 0;
00083 virtual void execMessage( const QString& message ) = 0;
00084 };
00085
00086
00087 #endif // ! ABSTRACTGUICOMPONENT_H