aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/core/lumina-desktop-unified/src-desktop/src-widgets/ContextMenu.h
diff options
context:
space:
mode:
Diffstat (limited to 'src-qt5/core/lumina-desktop-unified/src-desktop/src-widgets/ContextMenu.h')
-rw-r--r--src-qt5/core/lumina-desktop-unified/src-desktop/src-widgets/ContextMenu.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-widgets/ContextMenu.h b/src-qt5/core/lumina-desktop-unified/src-desktop/src-widgets/ContextMenu.h
new file mode 100644
index 00000000..b20087ef
--- /dev/null
+++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-widgets/ContextMenu.h
@@ -0,0 +1,48 @@
+//===========================================
+// Lumina-desktop source code
+// Copyright (c) 2012-2017, Ken Moore
+// Available under the 3-clause BSD license
+// See the LICENSE file for full details
+//===========================================
+#ifndef _LUMINA_DESKTOP_CONTEXT_MENU_H
+#define _LUMINA_DESKTOP_CONTEXT_MENU_H
+
+#include <global-includes.h>
+
+class DesktopContextMenu : public QMenu{
+ Q_OBJECT
+public slots:
+ void SettingsChanged(DesktopSettings::File);
+ void UpdateMenu(bool fast = true); //re-create the menu
+
+private:
+ QLabel *workspaceLabel;
+ QWidgetAction *wkspaceact;
+ QMenu *appMenu, *winMenu;
+ bool usewinmenu;
+
+ void AddWindowToMenu(NativeWindowObject*);
+
+public:
+ DesktopContextMenu(QWidget *parent = 0);
+ ~DesktopContextMenu();
+
+ void start(); //setup connections to global objects
+
+private slots:
+ void LaunchAction(QAction *act);
+ void LaunchApp(QAction *act);
+
+ void showMenu(const QPoint&);
+
+ void updateAppMenu();
+ void updateWinMenu();
+
+signals:
+ void LockSession();
+ void showLeaveDialog();
+ void LaunchStandardApplication(QString);
+ void LaunchApplication(QString);
+};
+
+#endif
bgstack15