Add a reusable WizardDialog

CURA-6435
This commit is contained in:
Lipu Fei 2019-04-04 15:53:59 +02:00
parent a030e4a264
commit 3ee32944d5
2 changed files with 58 additions and 0 deletions

View file

@ -0,0 +1,52 @@
// Copyright (c) 2019 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.10
import QtQuick.Controls 2.3
import QtQuick.Window 2.2
import UM 1.3 as UM
import Cura 1.1 as Cura
//
// This is a dialog for showing a set of processes that's defined in a WelcomePagesModel or some other Qt ListModel with
// a compatible interface.
//
Window
{
UM.I18nCatalog { id: catalog; name: "cura" }
id: dialog
flags: Qt.Dialog
minimumWidth: 580 * screenScaleFactor
minimumHeight: 600 * screenScaleFactor
color: UM.Theme.getColor("main_background")
property var model: null // Needs to be set by whoever is using this dialog.
onVisibilityChanged:
{
if (visible)
{
model.resetState()
}
}
WizardPanel
{
id: wizardPanel
anchors.fill: parent
model: dialog.model
}
// Close this dialog when there's no more page to show
Connections
{
target: model
onAllFinished: dialog.hide()
}
}

View file

@ -19,6 +19,12 @@ CheckBoxWithTooltip 1.0 CheckBoxWithTooltip.qml
ToolTip 1.0 ToolTip.qml
# Cura/WelcomePages
WizardPanel 1.0 WizardPanel.qml
WizardDialog 1.0 WizardDialog.qml
# Cura/Widgets
CheckBox 1.0 CheckBox.qml