diff options
Diffstat (limited to 'raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/PLUGINS/PopoutControlExample/PopoutControlWidget.qml')
| -rw-r--r-- | raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/PLUGINS/PopoutControlExample/PopoutControlWidget.qml | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/PLUGINS/PopoutControlExample/PopoutControlWidget.qml b/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/PLUGINS/PopoutControlExample/PopoutControlWidget.qml new file mode 100644 index 0000000..fdbf89f --- /dev/null +++ b/raveos-hyprland-theme/theme-data/DankMaterialShell/quickshell/PLUGINS/PopoutControlExample/PopoutControlWidget.qml @@ -0,0 +1,93 @@ +import QtQuick +import qs.Common +import qs.Widgets +import qs.Modules.Plugins + +PluginComponent { + id: root + + property var popoutService: null + + property string selectedPopout: pluginData.selectedPopout || "controlCenter" + + property var popoutActions: ({ + "controlCenter": (x, y, w, s, scr) => popoutService?.toggleControlCenter(x, y, w, s, scr), + "notificationCenter": (x, y, w, s, scr) => popoutService?.toggleNotificationCenter(x, y, w, s, scr), + "appDrawer": (x, y, w, s, scr) => popoutService?.toggleAppDrawer(x, y, w, s, scr), + "processList": (x, y, w, s, scr) => popoutService?.toggleProcessList(x, y, w, s, scr), + "dankDash": (x, y, w, s, scr) => popoutService?.toggleDankDash(0, x, y, w, s, scr), + "battery": (x, y, w, s, scr) => popoutService?.toggleBattery(x, y, w, s, scr), + "vpn": (x, y, w, s, scr) => popoutService?.toggleVpn(x, y, w, s, scr), + "systemUpdate": (x, y, w, s, scr) => popoutService?.toggleSystemUpdate(x, y, w, s, scr), + "settings": () => popoutService?.openSettings(), + "clipboardHistory": () => popoutService?.openClipboardHistory(), + "spotlight": () => popoutService?.toggleDankLauncherV2(), + "powerMenu": () => popoutService?.togglePowerMenu(), + "colorPicker": () => popoutService?.showColorPicker(), + "notepad": () => popoutService?.toggleNotepad() + }) + + property var popoutNames: ({ + "controlCenter": "Control Center", + "notificationCenter": "Notification Center", + "appDrawer": "App Drawer", + "processList": "Process List", + "dankDash": "DankDash", + "battery": "Battery Info", + "vpn": "VPN", + "systemUpdate": "System Update", + "settings": "Settings", + "clipboardHistory": "Clipboard", + "spotlight": "Spotlight", + "powerMenu": "Power Menu", + "colorPicker": "Color Picker", + "notepad": "Notepad" + }) + + pillClickAction: (x, y, width, section, screen) => { + if (popoutActions[selectedPopout]) { + popoutActions[selectedPopout](x, y, width, section, screen); + } + } + + horizontalBarPill: Component { + Row { + spacing: Theme.spacingXS + + DankIcon { + name: "widgets" + color: Theme.primary + font.pixelSize: Theme.iconSize - 6 + anchors.verticalCenter: parent.verticalCenter + } + + StyledText { + text: popoutNames[selectedPopout] || "Popouts" + color: Theme.primary + font.pixelSize: Theme.fontSizeMedium + anchors.verticalCenter: parent.verticalCenter + } + } + } + + verticalBarPill: Component { + Column { + spacing: Theme.spacingXS + + DankIcon { + name: "widgets" + color: Theme.primary + font.pixelSize: Theme.iconSize - 6 + anchors.horizontalCenter: parent.horizontalCenter + } + + StyledText { + text: popoutNames[selectedPopout] || "Popouts" + color: Theme.primary + font.pixelSize: Theme.fontSizeSmall + anchors.horizontalCenter: parent.horizontalCenter + horizontalAlignment: Text.AlignHCenter + } + } + } +} |