1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2025-12-06 05:25:41 -05:00
Files
DankMaterialShell/Modules/Plugins/PluginControlCenterWrapper.qml
2025-10-05 21:09:29 -04:00

52 lines
1.4 KiB
QML

import QtQuick
import qs.Common
import qs.Services
import qs.Widgets
Item {
id: root
property string pluginId: ""
property var pluginInstance: null
property bool isCompoundPill: false
property bool isSmallToggle: false
readonly property bool hasDetail: pluginInstance?.ccDetailContent !== null
readonly property string iconName: pluginInstance?.ccWidgetIcon || "extension"
readonly property string primaryText: pluginInstance?.ccWidgetPrimaryText || "Plugin"
readonly property string secondaryText: pluginInstance?.ccWidgetSecondaryText || ""
readonly property bool isActive: pluginInstance?.ccWidgetIsActive || false
readonly property Component detailContent: pluginInstance?.ccDetailContent || null
readonly property real detailHeight: pluginInstance?.ccDetailHeight || 250
signal toggled()
signal expanded()
Component.onCompleted: {
if (pluginInstance) {
pluginInstance.ccWidgetToggled.connect(handleToggled)
pluginInstance.ccWidgetExpanded.connect(handleExpanded)
}
}
function handleToggled() {
toggled()
}
function handleExpanded() {
expanded()
}
function invokeToggle() {
if (pluginInstance) {
pluginInstance.ccWidgetToggled()
}
}
function invokeExpand() {
if (pluginInstance) {
pluginInstance.ccWidgetExpanded()
}
}
}