1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
|
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
import QtCore
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
ApplicationWindow {
id: window
width: 800
height: 600
title: "dialogs - style: " + style
visible: true
required property string style
Component.onCompleted: {
x = Screen.width / 2 - width / 2
y = Screen.height / 2 - height / 2
}
Settings {
id: settings
property alias useNativeDialogs: useNativeDialogsCheckBox.checked
property alias lastTabBarIndex: tabBar.currentIndex
}
Page {
anchors.fill: parent
header: TabBar {
id: tabBar
TabButton {
text: qsTr("ColorDialog")
}
TabButton {
text: qsTr("FileDialog")
}
TabButton {
text: qsTr("FolderDialog")
}
TabButton {
text: qsTr("FontDialog")
}
TabButton {
text: qsTr("MessageBox")
}
}
ScrollView {
id: scrollView
anchors.fill: parent
clip: true
StackLayout {
id: stackLayout
currentIndex: tabBar.currentIndex
width: scrollView.width
ColorDialogPage {}
FileDialogPage {}
FolderDialogPage {}
FontDialogPage {}
MessageDialogPage {}
}
}
}
footer: ToolBar {
leftPadding: 12
rightPadding: 12
RowLayout {
anchors.fill: parent
CheckBox {
id: useNativeDialogsCheckBox
text: qsTr("Use Native Dialogs (requires restart)")
checked: settings.useNativeDialogs
Layout.fillWidth: false
}
Item {
Layout.fillWidth: true
}
Button {
text: qsTr("Open")
Layout.fillWidth: false
onClicked: stackLayout.children[stackLayout.currentIndex].dialog.open()
}
}
}
}
|