1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-29 07:52:50 -05:00

plugins: add PluginGlobalVar

- Allow syncing vars to all widget instances, like a singleton
This commit is contained in:
bbedward
2025-10-15 16:08:24 -04:00
parent 59d123a4a1
commit 24f5e9a7e6
3 changed files with 170 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
import QtQuick
import qs.Services
Item {
id: root
required property string varName
property var defaultValue: undefined
readonly property var value: {
const pid = parent?.pluginId ?? ""
if (!pid || !PluginService.globalVars[pid]) {
return defaultValue
}
return PluginService.globalVars[pid][varName] ?? defaultValue
}
function set(newValue) {
const pid = parent?.pluginId ?? ""
if (pid) {
PluginService.setGlobalVar(pid, varName, newValue)
} else {
console.warn("PluginGlobalVar: Cannot set", varName, "- no pluginId from parent")
}
}
visible: false
width: 0
height: 0
}