mirror of
https://github.com/belsabbagh/dotfiles.git
synced 2026-04-11 09:36:46 +00:00
quickshell and hyprland additions
This commit is contained in:
@@ -0,0 +1,178 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import Quickshell
|
||||
import "content/"
|
||||
import qs.config
|
||||
import qs.services
|
||||
import qs.modules.components
|
||||
|
||||
Item {
|
||||
property string displayName: screen?.name ?? ""
|
||||
property bool isHorizontal: (ConfigResolver.bar(displayName).position === "top" || ConfigResolver.bar(displayName).position === "bottom")
|
||||
|
||||
Row {
|
||||
id: hCenterRow
|
||||
visible: isHorizontal
|
||||
anchors.centerIn: parent
|
||||
spacing: Metrics.spacing(4)
|
||||
|
||||
SystemUsageModule {}
|
||||
MediaPlayerModule {}
|
||||
ActiveWindowModule {}
|
||||
ClockModule {}
|
||||
BatteryIndicatorModule {}
|
||||
}
|
||||
|
||||
RowLayout {
|
||||
id: hLeftRow
|
||||
|
||||
visible: isHorizontal
|
||||
anchors.left: parent.left
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
spacing: Metrics.spacing(4)
|
||||
anchors.leftMargin: ConfigResolver.bar(displayName).density * 0.3
|
||||
|
||||
ToggleModule {
|
||||
icon: "menu"
|
||||
iconSize: Metrics.iconSize(22)
|
||||
iconColor: Appearance.m3colors.m3error
|
||||
toggle: Globals.visiblility.sidebarLeft
|
||||
|
||||
onToggled: function(value) {
|
||||
Globals.visiblility.sidebarLeft = value
|
||||
}
|
||||
}
|
||||
|
||||
WorkspaceModule {}
|
||||
}
|
||||
|
||||
RowLayout {
|
||||
id: hRightRow
|
||||
|
||||
visible: isHorizontal
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
spacing: Metrics.spacing(4)
|
||||
anchors.rightMargin: ConfigResolver.bar(displayName).density * 0.3
|
||||
|
||||
SystemTray {
|
||||
id: sysTray
|
||||
}
|
||||
|
||||
StyledText {
|
||||
id: seperator
|
||||
visible: (sysTray.items.count > 0) && ConfigResolver.bar(displayName).modules.statusIcons.enabled
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
font.pixelSize: Metrics.fontSize("hugeass")
|
||||
text: "·"
|
||||
}
|
||||
|
||||
StatusIconsModule {}
|
||||
|
||||
StyledText {
|
||||
id: seperator2
|
||||
Layout.alignment: Qt.AlignLeft
|
||||
font.pixelSize: Metrics.fontSize("hugeass")
|
||||
text: "·"
|
||||
}
|
||||
|
||||
ToggleModule {
|
||||
icon: "power_settings_new"
|
||||
iconSize: Metrics.iconSize(22)
|
||||
iconColor: Appearance.m3colors.m3error
|
||||
toggle: Globals.visiblility.powermenu
|
||||
|
||||
onToggled: function(value) {
|
||||
Globals.visiblility.powermenu = value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Vertical Layout
|
||||
Item {
|
||||
visible: !isHorizontal
|
||||
anchors.top: parent.top
|
||||
anchors.topMargin: ConfigResolver.bar(displayName).density * 0.1
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
implicitWidth: vRow.implicitHeight
|
||||
implicitHeight: vRow.implicitWidth
|
||||
|
||||
Row {
|
||||
id: vRow
|
||||
anchors.centerIn: parent
|
||||
spacing: Metrics.spacing(8)
|
||||
rotation: 90
|
||||
|
||||
ToggleModule {
|
||||
icon: "menu"
|
||||
iconSize: Metrics.iconSize(22)
|
||||
iconColor: Appearance.m3colors.m3error
|
||||
toggle: Globals.visiblility.sidebarLeft
|
||||
rotation: 270
|
||||
|
||||
onToggled: function(value) {
|
||||
Globals.visiblility.sidebarLeft = value
|
||||
}
|
||||
}
|
||||
|
||||
SystemUsageModule {}
|
||||
MediaPlayerModule {}
|
||||
|
||||
SystemTray {
|
||||
rotation: 0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
visible: !isHorizontal
|
||||
anchors.centerIn: parent
|
||||
anchors.verticalCenterOffset: 35
|
||||
implicitWidth: centerRow.implicitHeight
|
||||
implicitHeight: centerRow.implicitWidth
|
||||
|
||||
Row {
|
||||
id: centerRow
|
||||
anchors.centerIn: parent
|
||||
|
||||
WorkspaceModule {
|
||||
rotation: 90
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Item {
|
||||
visible: !isHorizontal
|
||||
anchors.bottom: parent.bottom
|
||||
anchors.bottomMargin: ConfigResolver.bar(displayName).density * 0.1
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
implicitWidth: row.implicitHeight
|
||||
implicitHeight: row.implicitWidth
|
||||
|
||||
Row {
|
||||
id: row
|
||||
anchors.centerIn: parent
|
||||
spacing: Metrics.spacing(6)
|
||||
rotation: 90
|
||||
|
||||
ClockModule {
|
||||
rotation: 270
|
||||
}
|
||||
|
||||
StatusIconsModule {}
|
||||
BatteryIndicatorModule {}
|
||||
|
||||
ToggleModule {
|
||||
icon: "power_settings_new"
|
||||
iconSize: Metrics.iconSize(22)
|
||||
iconColor: Appearance.m3colors.m3error
|
||||
toggle: Globals.visiblility.powermenu
|
||||
rotation: 270
|
||||
|
||||
onToggled: function(value) {
|
||||
Globals.visiblility.powermenu = value
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user