summaryrefslogtreecommitdiff
path: root/components/filedialog/FileDialog.qml
diff options
context:
space:
mode:
Diffstat (limited to 'components/filedialog/FileDialog.qml')
-rw-r--r--components/filedialog/FileDialog.qml102
1 files changed, 0 insertions, 102 deletions
diff --git a/components/filedialog/FileDialog.qml b/components/filedialog/FileDialog.qml
deleted file mode 100644
index f3187a5..0000000
--- a/components/filedialog/FileDialog.qml
+++ /dev/null
@@ -1,102 +0,0 @@
-pragma ComponentBehavior: Bound
-
-import qs.components
-import qs.services
-import Quickshell
-import QtQuick
-import QtQuick.Layouts
-
-LazyLoader {
- id: loader
-
- property list<string> cwd: ["Home"]
- property string filterLabel: "All files"
- property list<string> filters: ["*"]
- property string title: qsTr("Select a file")
-
- signal accepted(path: string)
- signal rejected
-
- function open(): void {
- activeAsync = true;
- }
-
- function close(): void {
- rejected();
- }
-
- onAccepted: activeAsync = false
- onRejected: activeAsync = false
-
- FloatingWindow {
- id: root
-
- property list<string> cwd: loader.cwd
- property string filterLabel: loader.filterLabel
- property list<string> filters: loader.filters
-
- readonly property bool selectionValid: {
- const file = folderContents.currentItem?.modelData;
- return (file && !file.isDir && (filters.includes("*") || filters.includes(file.suffix))) ?? false;
- }
-
- function accepted(path: string): void {
- loader.accepted(path);
- }
-
- function rejected(): void {
- loader.rejected();
- }
-
- implicitWidth: 1000
- implicitHeight: 600
- color: Colours.tPalette.m3surface
- title: loader.title
-
- onVisibleChanged: {
- if (!visible)
- rejected();
- }
-
- RowLayout {
- anchors.fill: parent
-
- spacing: 0
-
- Sidebar {
- Layout.fillHeight: true
- dialog: root
- }
-
- ColumnLayout {
- Layout.fillWidth: true
- Layout.fillHeight: true
-
- spacing: 0
-
- HeaderBar {
- Layout.fillWidth: true
- dialog: root
- }
-
- FolderContents {
- id: folderContents
-
- Layout.fillWidth: true
- Layout.fillHeight: true
- dialog: root
- }
-
- DialogButtons {
- Layout.fillWidth: true
- dialog: root
- folder: folderContents
- }
- }
- }
-
- Behavior on color {
- CAnim {}
- }
- }
-}