aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/core/lumina-wm-INCOMPLETE/SSBaseWidget.h
diff options
context:
space:
mode:
Diffstat (limited to 'src-qt5/core/lumina-wm-INCOMPLETE/SSBaseWidget.h')
-rw-r--r--src-qt5/core/lumina-wm-INCOMPLETE/SSBaseWidget.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/src-qt5/core/lumina-wm-INCOMPLETE/SSBaseWidget.h b/src-qt5/core/lumina-wm-INCOMPLETE/SSBaseWidget.h
new file mode 100644
index 00000000..a6574679
--- /dev/null
+++ b/src-qt5/core/lumina-wm-INCOMPLETE/SSBaseWidget.h
@@ -0,0 +1,55 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2015, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+// This class is the widget which provides the screensaver painting/plugin functionality
+//===========================================
+#ifndef _LUMINA_DESKTOP_SCREEN_SAVER_BASE_WIDGET_H
+#define _LUMINA_DESKTOP_SCREEN_SAVER_BASE_WIDGET_H
+
+#include "GlobalDefines.h"
+#include "animations/BaseAnimGroup.h"
+
+class SSBaseWidget : public QWidget{
+ Q_OBJECT
+public:
+ SSBaseWidget(QWidget *parent, QSettings *set);
+ ~SSBaseWidget();
+
+ void setPlugin(QString);
+
+public slots:
+ void startPainting();
+ void stopPainting();
+
+private:
+ QString plugType, cplug; //type of custom painting to do
+ BaseAnimGroup *ANIM;
+ QSettings *settings;
+
+private slots:
+
+signals:
+ void InputDetected(); //just in case no event handling setup at the WM level
+
+protected:
+ void mouseMoveEvent(QMouseEvent *ev){
+ ev->accept();
+ emit InputDetected();
+ }
+ void keyPressEvent(QKeyEvent *ev){
+ ev->accept();
+ emit InputDetected();
+ }
+ void paintEvent(QPaintEvent*){
+ QStyleOption opt;
+ opt.init(this);
+ QPainter p(this);
+ style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
+ }
+
+};
+
+#endif
bgstack15