forked from Shinonome/dots-hyprland
waffles: ctrl alt del menu
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
pragma ComponentBehavior: Bound
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import Quickshell
|
||||
import qs
|
||||
import qs.services
|
||||
import qs.modules.common
|
||||
import qs.modules.common.functions
|
||||
import qs.modules.common.widgets
|
||||
import qs.modules.waffle.looks
|
||||
|
||||
GridLayout {
|
||||
id: root
|
||||
|
||||
columns: 4
|
||||
|
||||
Component {
|
||||
id: aggAppCatComp
|
||||
AggregatedAppCategoryModel {}
|
||||
}
|
||||
property list<AggregatedAppCategoryModel> aggregatedCategories: [
|
||||
aggAppCatComp.createObject(null, {
|
||||
name: Translation.tr("Productivity"),
|
||||
categories: ["Development", "Education", "Network", "Office"]
|
||||
}), aggAppCatComp.createObject(null, {
|
||||
name: Translation.tr("Utilities & Tools"),
|
||||
categories: ["Utility", "Science"]
|
||||
}), aggAppCatComp.createObject(null, {
|
||||
name: Translation.tr("Creativity"),
|
||||
categories: ["AudioVideo", "Graphics"]
|
||||
}), aggAppCatComp.createObject(null, {
|
||||
name: Translation.tr("Other"),
|
||||
categories: ["Game"]
|
||||
}), aggAppCatComp.createObject(null, {
|
||||
name: Translation.tr("System"),
|
||||
categories: ["Settings", "System"]
|
||||
})
|
||||
]
|
||||
|
||||
Repeater {
|
||||
model: root.aggregatedCategories
|
||||
delegate: AppCategory {
|
||||
required property var modelData
|
||||
aggregatedCategory: modelData
|
||||
}
|
||||
}
|
||||
|
||||
columnSpacing: 27
|
||||
rowSpacing: 12
|
||||
component AppCategory: Item {
|
||||
id: categoryItem
|
||||
property AggregatedAppCategoryModel aggregatedCategory
|
||||
implicitWidth: categoryLayout.implicitWidth
|
||||
implicitHeight: categoryLayout.implicitHeight
|
||||
ColumnLayout {
|
||||
id: categoryLayout
|
||||
anchors.fill: parent
|
||||
spacing: 4
|
||||
|
||||
AppCategoryGrid {
|
||||
id: categoryGrid
|
||||
Layout.fillWidth: true
|
||||
aggregatedCategory: categoryItem.aggregatedCategory
|
||||
}
|
||||
|
||||
WButton {
|
||||
id: categoryButton
|
||||
Layout.fillWidth: true
|
||||
implicitHeight: 32
|
||||
|
||||
contentItem: WText {
|
||||
id: categoryButtonText
|
||||
Layout.fillWidth: true
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
elide: Text.ElideRight
|
||||
text: categoryItem.aggregatedCategory.name
|
||||
}
|
||||
onClicked: {
|
||||
categoryGrid.openCategoryFolder();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user