aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/src-cpp/obsolete/NativeEmbedWidget.h
diff options
context:
space:
mode:
authorKen Moore <ken@ixsystems.com>2018-05-22 09:59:19 -0400
committerKen Moore <ken@ixsystems.com>2018-05-22 09:59:19 -0400
commitc6ddd28e726d82561801ad3db983bbe9840379eb (patch)
tree0c282482db734967e14a4fb8c220d70d1d919b35 /src-qt5/src-cpp/obsolete/NativeEmbedWidget.h
parentA couple more cleanup operations for lumina textedit (diff)
downloadlumina-c6ddd28e726d82561801ad3db983bbe9840379eb.tar.gz
lumina-c6ddd28e726d82561801ad3db983bbe9840379eb.tar.bz2
lumina-c6ddd28e726d82561801ad3db983bbe9840379eb.zip
Move the old NativeWindow and NativeEmbedWidget files into an "obsolete" directory.
This prevents them from getting seen/used by builds later (conflict with other files)
Diffstat (limited to 'src-qt5/src-cpp/obsolete/NativeEmbedWidget.h')
-rw-r--r--src-qt5/src-cpp/obsolete/NativeEmbedWidget.h74
1 files changed, 74 insertions, 0 deletions
diff --git a/src-qt5/src-cpp/obsolete/NativeEmbedWidget.h b/src-qt5/src-cpp/obsolete/NativeEmbedWidget.h
new file mode 100644
index 00000000..16bb46dc
--- /dev/null
+++ b/src-qt5/src-cpp/obsolete/NativeEmbedWidget.h
@@ -0,0 +1,74 @@
+//===========================================
+// Lumina-DE source code
+// Copyright (c) 2017, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+// This is a container object for embedding a native window into a QWidget
+// and maintaining a 1-to-1 mapping of sizing and other properties
+// while also providing compositing effects between the two windows
+//===========================================
+#ifndef _LUMINA_NATIVE_EMBED_WIDGET_H
+#define _LUMINA_NATIVE_EMBED_WIDGET_H
+
+#include "NativeWindow.h"
+#include <QWidget>
+#include <QTimer>
+#include <QResizeEvent>
+#include <QShowEvent>
+#include <QHideEvent>
+#include <QPaintEvent>
+#include <QMouseEvent>
+
+class NativeEmbedWidget : public QWidget{
+ Q_OBJECT
+private:
+ NativeWindow *WIN;
+ QSize winSize;
+ QImage winImage;
+ bool paused, hasAlphaChannel;
+
+private slots:
+ //Simplification functions
+ void syncWinSize(QSize sz = QSize());
+ void syncWidgetSize(QSize sz);
+ void hideWindow();
+ void showWindow();
+ QImage windowImage(QRect geom);
+
+ void setWinUnpaused();
+
+public:
+ NativeEmbedWidget(QWidget *parent);
+
+ bool embedWindow(NativeWindow *window);
+ bool detachWindow();
+ bool isEmbedded(); //status of the embed
+ bool isPaused(){ return paused; }
+
+public slots:
+ void raiseWindow();
+ void lowerWindow();
+
+ //Pause/resume
+ void pause();
+ void resume();
+
+ void resyncWindow();
+ void repaintWindow();
+ void reregisterEvents();
+
+protected:
+ void resizeEvent(QResizeEvent *ev);
+ void showEvent(QShowEvent *ev);
+ void hideEvent(QHideEvent *ev);
+ void paintEvent(QPaintEvent *ev);
+ void enterEvent(QEvent *ev);
+ void leaveEvent(QEvent *ev);
+ void mouseMoveEvent(QMouseEvent *ev);
+ void mousePressEvent(QMouseEvent *ev);
+ void mouseReleaseEvent(QMouseEvent *ev);
+ //bool nativeEvent(const QByteArray &eventType, void *message, long *result);
+};
+
+#endif
bgstack15