FluentUI/example/qml-Qt6/window/FluentInitalizrWindow.qml

114 lines
3.3 KiB
QML
Raw Normal View History

2024-03-09 15:35:48 +08:00
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts
import FluentUI
import Qt.labs.platform
import "../component"
2024-03-15 18:16:01 +08:00
FluWindowDialog {
2024-03-09 15:35:48 +08:00
id:window
2024-03-09 18:26:54 +08:00
title:qsTr("FluentUI Initalizr")
2024-03-09 15:35:48 +08:00
width: 600
height: 400
2024-03-15 18:16:01 +08:00
contentDelegate:Component{
Item{
Connections{
target: InitalizrHelper
function onError(message){
showError(message)
}
function onSuccess(path){
FluTools.showFileInFolder(path+"/CMakeLists.txt")
window.close()
2024-03-09 15:35:48 +08:00
}
}
2024-03-15 18:16:01 +08:00
FluText{
id:text_title
text:qsTr("FluentUI Initalizr")
font: FluTextStyle.Title
anchors{
left: parent.left
top: parent.top
leftMargin: 20
topMargin: 20
}
}
2024-03-09 15:35:48 +08:00
2024-03-15 18:16:01 +08:00
Column{
spacing: 14
anchors{
left: parent.left
top: text_title.bottom
leftMargin: 20
topMargin: 20
}
FluTextBox{
id:text_box_name
width: 180
placeholderText: qsTr("Name")
focus: true
}
Row{
spacing: 8
FluTextBox{
id:text_box_path
width: 300
placeholderText: qsTr("Create In")
anchors.verticalCenter: parent.verticalCenter
}
FluButton{
text:qsTr("Browse")
anchors.verticalCenter: parent.verticalCenter
onClicked: {
folder_dialog.open()
}
}
}
2024-03-09 15:35:48 +08:00
}
2024-03-15 18:16:01 +08:00
FolderDialog{
id:folder_dialog
onAccepted: {
text_box_path.text = FluTools.toLocalPath(currentFolder)
2024-03-09 15:35:48 +08:00
}
}
2024-03-15 18:16:01 +08:00
Rectangle{
id:layout_actions
width: parent.width
height: 60
anchors.bottom: parent.bottom
color: FluTheme.backgroundColor
Row{
height: parent.height
spacing: 20
anchors{
right: parent.right
rightMargin: 20
}
FluButton{
text:qsTr("Cancel")
width: 120
anchors.verticalCenter: parent.verticalCenter
onClicked: {
window.close()
}
}
FluFilledButton{
text:qsTr("Create")
width: 120
anchors.verticalCenter: parent.verticalCenter
onClicked: {
InitalizrHelper.generate(text_box_name.text,text_box_path.text)
}
}
2024-03-09 15:35:48 +08:00
}
}
}
}
2024-03-15 18:16:01 +08:00
2024-03-09 15:35:48 +08:00
}