mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-01 00:04:27 +08:00
53 lines
1.5 KiB
QML
53 lines
1.5 KiB
QML
// Copyright (c) 2022 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.Layouts 2.10
|
|
|
|
import UM 1.5 as UM
|
|
import Cura 1.7 as Cura
|
|
import ".."
|
|
|
|
Item
|
|
{
|
|
id: qualityRow
|
|
|
|
property bool hasQualityOptions: true
|
|
|
|
height: childrenRect.height
|
|
visible: intentSelectionRepeater.count > 1 && hasQualityOptions //Only show selector if there's more options than just "default".
|
|
|
|
RowLayout
|
|
{
|
|
id: intentRow
|
|
width: parent.width
|
|
|
|
Repeater
|
|
{
|
|
id: intentSelectionRepeater
|
|
model: Cura.IntentSelectionModel {}
|
|
|
|
RecommendedQualityProfileSelectorButton
|
|
{
|
|
profileName: model.name
|
|
icon: model.icon
|
|
tooltipText: model.description ? model.description : ""
|
|
|
|
selected: Cura.MachineManager.activeIntentCategory == model.intent_category
|
|
|
|
onClicked: {
|
|
var qualityType
|
|
if (Cura.MachineManager.intentCategoryHasQuality(model.intent_category, Cura.MachineManager.activeQualityType))
|
|
{
|
|
qualityType = Cura.MachineManager.activeQualityType
|
|
} else {
|
|
qualityType = Cura.MachineManager.getDefaultQualityTypeForIntent(model.intent_category)
|
|
}
|
|
Cura.IntentManager.selectIntent(model.intent_category, qualityType)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|