Initial Commit

This commit is contained in:
kossLAN 2025-06-10 12:16:28 -04:00
parent 4b94f8f3a2
commit 46c46bcabb
Signed by: kossLAN
SSH key fingerprint: SHA256:bdV0x+wdQHGJ6LgmstH3KV8OpWY+OOFmJcPcB0wQPV8
6 changed files with 392 additions and 0 deletions

185
shell.qml Normal file
View file

@ -0,0 +1,185 @@
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Layouts
import QtQuick.Controls
import Quickshell
ShellRoot {
FloatingWindow {
color: "grey"
implicitWidth: 840
implicitHeight: 845
maximumSize {
width: 840
height: 845
}
minimumSize {
width: 840
height: 845
}
ColumnLayout {
anchors {
centerIn: parent
}
Item {
Layout.preferredWidth: 600
Layout.preferredHeight: 600
Image {
id: backgroundContent
fillMode: Image.PreserveAspectCrop
source: "root:resources/scene.jpg"
anchors.fill: parent
}
GlassSurface {
source: backgroundContent
width: 400
height: 300
radius: 20
anchors.centerIn: parent
// parameters
time: timeSlider.value
speed: speedSlider.value
strength: warpSlider.value
scale: scaleSlider.value
edgeReflectionStrength: edgeReflectionSlider.value
edgeReflectionWidth: edgeWidthSlider.value
}
RowLayout {
spacing: 40
Repeater {
model: ["1", "2", "3"]
delegate: GlassSurface {
id: surface
required property var modelData
source: backgroundContent
width: 100
height: 100
radius: 40
time: timeSlider.value
speed: speedSlider.value
strength: warpSlider.value
scale: scaleSlider.value
edgeReflectionStrength: edgeReflectionSlider.value
edgeReflectionWidth: edgeWidthSlider.value
Text {
text: surface.modelData
color: Qt.rgba(1, 1, 1, 0.2)
font.bold: true
font.pointSize: 16
anchors.centerIn: parent
}
}
}
}
}
RowLayout {
Text {
text: "Time:"
}
Slider {
id: timeSlider
from: 0
to: Math.PI * 2
value: Math.PI
Layout.fillWidth: true
Layout.preferredHeight: 30
}
}
RowLayout {
Text {
text: "Warp Strength:"
}
Slider {
id: warpSlider
from: 0
to: 10
value: 3
Layout.fillWidth: true
Layout.preferredHeight: 30
}
}
RowLayout {
Text {
text: "Flow Speed:"
}
Slider {
id: speedSlider
from: 0
to: 1
value: 0.2
Layout.fillWidth: true
Layout.preferredHeight: 30
}
}
RowLayout {
Text {
text: "Edge Reflection:"
}
Slider {
id: edgeReflectionSlider
from: 0
to: 1
value: 0.3
Layout.fillWidth: true
Layout.preferredHeight: 30
}
}
RowLayout {
Text {
text: "Edge Width:"
}
Slider {
id: edgeWidthSlider
from: 0.01
to: 0.2
value: 0.1
Layout.fillWidth: true
Layout.preferredHeight: 30
}
}
RowLayout {
Text {
text: "Scale:"
}
Slider {
id: scaleSlider
from: 0.0
to: 20.0
value: 3.0
Layout.fillWidth: true
Layout.preferredHeight: 30
}
}
}
}
}