mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-12 21:28:58 +08:00
Merge pull request #12573 from Ultimaker/CURA-8849_more_intent_fixes
[CURA-8849] more intent fixes
This commit is contained in:
commit
f4ee4ad05d
@ -24,6 +24,8 @@ Item
|
|||||||
property alias wrapMode: label.wrapMode
|
property alias wrapMode: label.wrapMode
|
||||||
property real spacing: UM.Theme.getSize("narrow_margin").width
|
property real spacing: UM.Theme.getSize("narrow_margin").width
|
||||||
|
|
||||||
|
property string tooltipText: ""
|
||||||
|
|
||||||
// These properties can be used in combination with layouts.
|
// These properties can be used in combination with layouts.
|
||||||
readonly property real contentWidth: icon.width + margin + label.contentWidth
|
readonly property real contentWidth: icon.width + margin + label.contentWidth
|
||||||
readonly property real minContentWidth: Math.round(icon.width + margin + 0.5 * label.contentWidth)
|
readonly property real minContentWidth: Math.round(icon.width + margin + 0.5 * label.contentWidth)
|
||||||
@ -66,4 +68,13 @@ Item
|
|||||||
margins: margin
|
margins: margin
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MouseArea
|
||||||
|
{
|
||||||
|
enabled: tooltipText != ""
|
||||||
|
anchors.fill: parent
|
||||||
|
hoverEnabled: true
|
||||||
|
onEntered: base.showTooltip(parent, Qt.point(-UM.Theme.getSize("thick_margin").width, 0), tooltipText)
|
||||||
|
onExited: base.hideTooltip()
|
||||||
|
}
|
||||||
}
|
}
|
@ -13,7 +13,7 @@ import Cura 1.0 as Cura
|
|||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
id: enableAdhesionRow
|
id: enableAdhesionRow
|
||||||
height: childrenRect.height
|
height: enableAdhesionContainer.height
|
||||||
|
|
||||||
property real labelColumnWidth: Math.round(width / 3)
|
property real labelColumnWidth: Math.round(width / 3)
|
||||||
property var curaRecommendedMode: Cura.RecommendedMode {}
|
property var curaRecommendedMode: Cura.RecommendedMode {}
|
||||||
@ -47,8 +47,6 @@ Item
|
|||||||
id: enableAdhesionCheckBox
|
id: enableAdhesionCheckBox
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
|
||||||
property alias _hovered: adhesionMouseArea.containsMouse
|
|
||||||
|
|
||||||
//: Setting enable printing build-plate adhesion helper checkbox
|
//: Setting enable printing build-plate adhesion helper checkbox
|
||||||
enabled: recommendedPrintSetup.settingsEnabled
|
enabled: recommendedPrintSetup.settingsEnabled
|
||||||
|
|
||||||
@ -60,22 +58,25 @@ Item
|
|||||||
id: adhesionMouseArea
|
id: adhesionMouseArea
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
hoverEnabled: true
|
hoverEnabled: true
|
||||||
|
// propagateComposedEvents used on adhesionTooltipMouseArea does not work with Controls Components.
|
||||||
onClicked:
|
// It only works with other MouseAreas, so this is required
|
||||||
{
|
onClicked: curaRecommendedMode.setAdhesion(!parent.checked)
|
||||||
curaRecommendedMode.setAdhesion(!parent.checked)
|
|
||||||
}
|
|
||||||
|
|
||||||
onEntered:
|
|
||||||
{
|
|
||||||
base.showTooltip(enableAdhesionCheckBox, Qt.point(-enableAdhesionContainer.x - UM.Theme.getSize("thick_margin").width, 0),
|
|
||||||
catalog.i18nc("@label", "Enable printing a brim or raft. This will add a flat area around or under your object which is easy to cut off afterwards."));
|
|
||||||
}
|
|
||||||
onExited: base.hideTooltip()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MouseArea
|
||||||
|
{
|
||||||
|
id: adhesionTooltipMouseArea
|
||||||
|
anchors.fill: parent
|
||||||
|
propagateComposedEvents: true
|
||||||
|
hoverEnabled: true
|
||||||
|
|
||||||
|
onEntered:base.showTooltip(enableAdhesionCheckBox, Qt.point(-enableAdhesionContainer.x - UM.Theme.getSize("thick_margin").width, 0),
|
||||||
|
catalog.i18nc("@label", "Enable printing a brim or raft. This will add a flat area around or under your object which is easy to cut off afterwards."));
|
||||||
|
onExited: base.hideTooltip()
|
||||||
|
}
|
||||||
|
|
||||||
UM.SettingPropertyProvider
|
UM.SettingPropertyProvider
|
||||||
{
|
{
|
||||||
id: platformAdhesionType
|
id: platformAdhesionType
|
||||||
|
@ -65,6 +65,7 @@ Item
|
|||||||
font: UM.Theme.getFont("medium")
|
font: UM.Theme.getFont("medium")
|
||||||
width: labelColumnWidth
|
width: labelColumnWidth
|
||||||
iconSize: UM.Theme.getSize("medium_button_icon").width
|
iconSize: UM.Theme.getSize("medium_button_icon").width
|
||||||
|
tooltipText: catalog.i18nc("@label", "Gradual infill will gradually increase the amount of infill towards the top.")
|
||||||
}
|
}
|
||||||
|
|
||||||
Item
|
Item
|
||||||
@ -102,7 +103,6 @@ Item
|
|||||||
id: backgroundLine
|
id: backgroundLine
|
||||||
height: UM.Theme.getSize("print_setup_slider_groove").height
|
height: UM.Theme.getSize("print_setup_slider_groove").height
|
||||||
width: parent.width - UM.Theme.getSize("print_setup_slider_handle").width
|
width: parent.width - UM.Theme.getSize("print_setup_slider_handle").width
|
||||||
implicitWidth: width
|
|
||||||
anchors.horizontalCenter: parent.horizontalCenter
|
anchors.horizontalCenter: parent.horizontalCenter
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
color: infillSlider.enabled ? UM.Theme.getColor("quality_slider_available") : UM.Theme.getColor("quality_slider_unavailable")
|
color: infillSlider.enabled ? UM.Theme.getColor("quality_slider_available") : UM.Theme.getColor("quality_slider_unavailable")
|
||||||
|
@ -62,7 +62,7 @@ Item
|
|||||||
{
|
{
|
||||||
width: parent.width
|
width: parent.width
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
Layout.topMargin: UM.Theme.getSize("thin_margin").height
|
Layout.topMargin: UM.Theme.getSize("default_margin").height
|
||||||
Layout.bottomMargin: UM.Theme.getSize("thin_margin").height
|
Layout.bottomMargin: UM.Theme.getSize("thin_margin").height
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@ Item
|
|||||||
id: resolutionTitle
|
id: resolutionTitle
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
|
anchors.leftMargin: - UM.Theme.getSize("thick_lining").width
|
||||||
source: UM.Theme.getIcon("PrintQuality")
|
source: UM.Theme.getIcon("PrintQuality")
|
||||||
text: catalog.i18nc("@label", "Resolution")
|
text: catalog.i18nc("@label", "Resolution")
|
||||||
width: labelColumnWidth
|
width: labelColumnWidth
|
||||||
|
@ -14,39 +14,41 @@ import Cura 1.0 as Cura
|
|||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
id: enableSupportRow
|
id: enableSupportRow
|
||||||
height: childrenRect.height
|
height: UM.Theme.getSize("print_setup_big_item").height
|
||||||
|
|
||||||
property real labelColumnWidth: Math.round(width / 3)
|
property real labelColumnWidth: Math.round(width / 3)
|
||||||
|
|
||||||
Cura.IconWithText
|
|
||||||
{
|
|
||||||
id: enableSupportRowTitle
|
|
||||||
anchors.top: parent.top
|
|
||||||
anchors.left: parent.left
|
|
||||||
visible: enableSupportCheckBox.visible
|
|
||||||
source: UM.Theme.getIcon("Support")
|
|
||||||
text: catalog.i18nc("@label", "Support")
|
|
||||||
font: UM.Theme.getFont("medium")
|
|
||||||
width: labelColumnWidth
|
|
||||||
iconSize: UM.Theme.getSize("medium_button_icon").width
|
|
||||||
}
|
|
||||||
|
|
||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
id: enableSupportContainer
|
id: enableSupportContainer
|
||||||
height: enableSupportCheckBox.height
|
width: labelColumnWidth + enableSupportCheckBox.width
|
||||||
|
|
||||||
anchors
|
anchors
|
||||||
{
|
{
|
||||||
left: enableSupportRowTitle.right
|
left: parent.left
|
||||||
right: parent.right
|
top: parent.top
|
||||||
verticalCenter: enableSupportRowTitle.verticalCenter
|
bottom: parent.bottom
|
||||||
|
rightMargin: UM.Theme.getSize("thick_margin").width
|
||||||
|
}
|
||||||
|
|
||||||
|
Cura.IconWithText
|
||||||
|
{
|
||||||
|
id: enableSupportRowTitle
|
||||||
|
anchors.left: parent.left
|
||||||
|
visible: enableSupportCheckBox.visible
|
||||||
|
source: UM.Theme.getIcon("Support")
|
||||||
|
text: catalog.i18nc("@label", "Support")
|
||||||
|
font: UM.Theme.getFont("medium")
|
||||||
|
width: labelColumnWidth
|
||||||
|
iconSize: UM.Theme.getSize("medium_button_icon").width
|
||||||
|
tooltipText: catalog.i18nc("@label", "Generate structures to support parts of the model which have overhangs. Without these structures, such parts would collapse during printing.")
|
||||||
}
|
}
|
||||||
|
|
||||||
UM.CheckBox
|
UM.CheckBox
|
||||||
{
|
{
|
||||||
id: enableSupportCheckBox
|
id: enableSupportCheckBox
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.left: enableSupportRowTitle.right
|
||||||
|
|
||||||
property alias _hovered: enableSupportMouseArea.containsMouse
|
property alias _hovered: enableSupportMouseArea.containsMouse
|
||||||
|
|
||||||
@ -60,158 +62,220 @@ Item
|
|||||||
id: enableSupportMouseArea
|
id: enableSupportMouseArea
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
hoverEnabled: true
|
hoverEnabled: true
|
||||||
|
// propagateComposedEvents used on supportToolTipMouseArea does not work with Controls Components.
|
||||||
|
// It only works with other MouseAreas, so this is required
|
||||||
onClicked: supportEnabled.setPropertyValue("value", supportEnabled.properties.value != "True")
|
onClicked: supportEnabled.setPropertyValue("value", supportEnabled.properties.value != "True")
|
||||||
|
|
||||||
onEntered:
|
|
||||||
{
|
|
||||||
base.showTooltip(enableSupportCheckBox, Qt.point(-enableSupportContainer.x - UM.Theme.getSize("thick_margin").width, 0),
|
|
||||||
catalog.i18nc("@label", "Generate structures to support parts of the model which have overhangs. Without these structures, such parts would collapse during printing."))
|
|
||||||
}
|
|
||||||
onExited: base.hideTooltip()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ComboBox
|
MouseArea
|
||||||
{
|
{
|
||||||
id: supportExtruderCombobox
|
id: supportToolTipMouseArea
|
||||||
|
anchors.fill: parent
|
||||||
|
propagateComposedEvents: true
|
||||||
|
hoverEnabled: true
|
||||||
|
onEntered: base.showTooltip(enableSupportContainer, Qt.point(-enableSupportContainer.x - UM.Theme.getSize("thick_margin").width, 0),
|
||||||
|
catalog.i18nc("@label", "Generate structures to support parts of the model which have overhangs. Without these structures, such parts would collapse during printing."))
|
||||||
|
onExited: base.hideTooltip()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
height: UM.Theme.getSize("print_setup_big_item").height
|
ComboBox
|
||||||
anchors
|
{
|
||||||
|
id: supportExtruderCombobox
|
||||||
|
|
||||||
|
height: UM.Theme.getSize("print_setup_big_item").height
|
||||||
|
anchors
|
||||||
|
{
|
||||||
|
left: enableSupportContainer.right
|
||||||
|
right: parent.right
|
||||||
|
leftMargin: UM.Theme.getSize("default_margin").width
|
||||||
|
rightMargin: UM.Theme.getSize("thick_margin").width
|
||||||
|
verticalCenter: parent.verticalCenter
|
||||||
|
}
|
||||||
|
|
||||||
|
enabled: recommendedPrintSetup.settingsEnabled
|
||||||
|
visible: enableSupportCheckBox.visible && (supportEnabled.properties.value == "True") && (extrudersEnabledCount.properties.value > 1)
|
||||||
|
textRole: "name" // this solves that the combobox isn't populated in the first time Cura is started
|
||||||
|
|
||||||
|
model: extruderModel
|
||||||
|
|
||||||
|
// knowing the extruder position, try to find the item index in the model
|
||||||
|
function getIndexByPosition(position)
|
||||||
|
{
|
||||||
|
var itemIndex = -1 // if position is not found, return -1
|
||||||
|
for (var item_index in model.items)
|
||||||
{
|
{
|
||||||
left: enableSupportCheckBox.right
|
var item = model.getItem(item_index)
|
||||||
right: parent.right
|
if (item.index == position)
|
||||||
leftMargin: UM.Theme.getSize("thick_margin").width
|
|
||||||
rightMargin: UM.Theme.getSize("thick_margin").width
|
|
||||||
verticalCenter: parent.verticalCenter
|
|
||||||
}
|
|
||||||
|
|
||||||
enabled: recommendedPrintSetup.settingsEnabled
|
|
||||||
visible: enableSupportCheckBox.visible && (supportEnabled.properties.value == "True") && (extrudersEnabledCount.properties.value > 1)
|
|
||||||
textRole: "name" // this solves that the combobox isn't populated in the first time Cura is started
|
|
||||||
|
|
||||||
model: extruderModel
|
|
||||||
|
|
||||||
// knowing the extruder position, try to find the item index in the model
|
|
||||||
function getIndexByPosition(position)
|
|
||||||
{
|
|
||||||
var itemIndex = -1 // if position is not found, return -1
|
|
||||||
for (var item_index in model.items)
|
|
||||||
{
|
{
|
||||||
var item = model.getItem(item_index)
|
itemIndex = item_index
|
||||||
if (item.index == position)
|
break
|
||||||
{
|
|
||||||
itemIndex = item_index
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return itemIndex
|
|
||||||
}
|
|
||||||
|
|
||||||
onActivated:
|
|
||||||
{
|
|
||||||
if (model.getItem(index).enabled)
|
|
||||||
{
|
|
||||||
forceActiveFocus();
|
|
||||||
supportExtruderNr.setPropertyValue("value", model.getItem(index).index);
|
|
||||||
} else
|
|
||||||
{
|
|
||||||
currentIndex = supportExtruderNr.properties.value; // keep the old value
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return itemIndex
|
||||||
|
}
|
||||||
|
|
||||||
currentIndex: (supportExtruderNr.properties.value !== undefined) ? supportExtruderNr.properties.value : 0
|
onActivated:
|
||||||
|
{
|
||||||
property string color: "#fff"
|
if (model.getItem(index).enabled)
|
||||||
Connections
|
|
||||||
{
|
{
|
||||||
target: extruderModel
|
forceActiveFocus();
|
||||||
function onModelChanged()
|
supportExtruderNr.setPropertyValue("value", model.getItem(index).index);
|
||||||
{
|
} else
|
||||||
var maybeColor = supportExtruderCombobox.model.getItem(supportExtruderCombobox.currentIndex).color
|
{
|
||||||
if (maybeColor)
|
currentIndex = supportExtruderNr.properties.value; // keep the old value
|
||||||
{
|
|
||||||
supportExtruderCombobox.color = maybeColor
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
onCurrentIndexChanged:
|
}
|
||||||
|
|
||||||
|
currentIndex: (supportExtruderNr.properties.value !== undefined) ? supportExtruderNr.properties.value : 0
|
||||||
|
|
||||||
|
property string color: "#fff"
|
||||||
|
Connections
|
||||||
|
{
|
||||||
|
target: extruderModel
|
||||||
|
function onModelChanged()
|
||||||
{
|
{
|
||||||
var maybeColor = supportExtruderCombobox.model.getItem(supportExtruderCombobox.currentIndex).color
|
var maybeColor = supportExtruderCombobox.model.getItem(supportExtruderCombobox.currentIndex).color
|
||||||
if(maybeColor)
|
if (maybeColor)
|
||||||
{
|
{
|
||||||
supportExtruderCombobox.color = maybeColor
|
supportExtruderCombobox.color = maybeColor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
Binding
|
onCurrentIndexChanged:
|
||||||
|
{
|
||||||
|
var maybeColor = supportExtruderCombobox.model.getItem(supportExtruderCombobox.currentIndex).color
|
||||||
|
if(maybeColor)
|
||||||
{
|
{
|
||||||
target: supportExtruderCombobox
|
supportExtruderCombobox.color = maybeColor
|
||||||
property: "currentIndex"
|
|
||||||
value: supportExtruderCombobox.getIndexByPosition(supportExtruderNr.properties.value)
|
|
||||||
// Sometimes when the value is already changed, the model is still being built.
|
|
||||||
// The when clause ensures that the current index is not updated when this happens.
|
|
||||||
when: supportExtruderCombobox.model.count > 0
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
indicator: UM.ColorImage
|
Binding
|
||||||
|
{
|
||||||
|
target: supportExtruderCombobox
|
||||||
|
property: "currentIndex"
|
||||||
|
value: supportExtruderCombobox.getIndexByPosition(supportExtruderNr.properties.value)
|
||||||
|
// Sometimes when the value is already changed, the model is still being built.
|
||||||
|
// The when clause ensures that the current index is not updated when this happens.
|
||||||
|
when: supportExtruderCombobox.model.count > 0
|
||||||
|
}
|
||||||
|
|
||||||
|
indicator: UM.ColorImage
|
||||||
|
{
|
||||||
|
id: downArrow
|
||||||
|
x: supportExtruderCombobox.width - width - supportExtruderCombobox.rightPadding
|
||||||
|
y: supportExtruderCombobox.topPadding + Math.round((supportExtruderCombobox.availableHeight - height) / 2)
|
||||||
|
|
||||||
|
source: UM.Theme.getIcon("ChevronSingleDown")
|
||||||
|
width: UM.Theme.getSize("standard_arrow").width
|
||||||
|
height: UM.Theme.getSize("standard_arrow").height
|
||||||
|
|
||||||
|
color: UM.Theme.getColor("setting_control_button")
|
||||||
|
}
|
||||||
|
|
||||||
|
background: Rectangle
|
||||||
|
{
|
||||||
|
color:
|
||||||
{
|
{
|
||||||
id: downArrow
|
if (!enabled)
|
||||||
x: supportExtruderCombobox.width - width - supportExtruderCombobox.rightPadding
|
{
|
||||||
y: supportExtruderCombobox.topPadding + Math.round((supportExtruderCombobox.availableHeight - height) / 2)
|
return UM.Theme.getColor("setting_control_disabled")
|
||||||
|
}
|
||||||
|
if (supportExtruderCombobox.hovered || base.activeFocus)
|
||||||
|
{
|
||||||
|
return UM.Theme.getColor("setting_control_highlight")
|
||||||
|
}
|
||||||
|
return UM.Theme.getColor("setting_control")
|
||||||
|
}
|
||||||
|
radius: UM.Theme.getSize("setting_control_radius").width
|
||||||
|
border.width: UM.Theme.getSize("default_lining").width
|
||||||
|
border.color:
|
||||||
|
{
|
||||||
|
if (!enabled)
|
||||||
|
{
|
||||||
|
return UM.Theme.getColor("setting_control_disabled_border")
|
||||||
|
}
|
||||||
|
if (supportExtruderCombobox.hovered || supportExtruderCombobox.activeFocus)
|
||||||
|
{
|
||||||
|
return UM.Theme.getColor("setting_control_border_highlight")
|
||||||
|
}
|
||||||
|
return UM.Theme.getColor("setting_control_border")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
source: UM.Theme.getIcon("ChevronSingleDown")
|
contentItem: UM.Label
|
||||||
width: UM.Theme.getSize("standard_arrow").width
|
{
|
||||||
height: UM.Theme.getSize("standard_arrow").height
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width
|
||||||
|
anchors.right: downArrow.left
|
||||||
|
rightPadding: swatch.width + UM.Theme.getSize("setting_unit_margin").width
|
||||||
|
|
||||||
color: UM.Theme.getColor("setting_control_button")
|
text: supportExtruderCombobox.currentText
|
||||||
|
textFormat: Text.PlainText
|
||||||
|
color: enabled ? UM.Theme.getColor("setting_control_text") : UM.Theme.getColor("setting_control_disabled_text")
|
||||||
|
|
||||||
|
elide: Text.ElideLeft
|
||||||
|
|
||||||
|
|
||||||
|
background: Rectangle
|
||||||
|
{
|
||||||
|
id: swatch
|
||||||
|
height: Math.round(parent.height / 2)
|
||||||
|
width: height
|
||||||
|
radius: Math.round(width / 2)
|
||||||
|
anchors.right: parent.right
|
||||||
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
|
anchors.rightMargin: UM.Theme.getSize("thin_margin").width
|
||||||
|
|
||||||
|
color: supportExtruderCombobox.color
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
popup: Popup
|
||||||
|
{
|
||||||
|
y: supportExtruderCombobox.height - UM.Theme.getSize("default_lining").height
|
||||||
|
width: supportExtruderCombobox.width
|
||||||
|
implicitHeight: contentItem.implicitHeight + 2 * UM.Theme.getSize("default_lining").width
|
||||||
|
padding: UM.Theme.getSize("default_lining").width
|
||||||
|
|
||||||
|
contentItem: ListView
|
||||||
|
{
|
||||||
|
implicitHeight: contentHeight
|
||||||
|
|
||||||
|
ScrollBar.vertical: UM.ScrollBar {}
|
||||||
|
clip: true
|
||||||
|
model: supportExtruderCombobox.popup.visible ? supportExtruderCombobox.delegateModel : null
|
||||||
|
currentIndex: supportExtruderCombobox.highlightedIndex
|
||||||
}
|
}
|
||||||
|
|
||||||
background: Rectangle
|
background: Rectangle
|
||||||
{
|
{
|
||||||
color:
|
color: UM.Theme.getColor("setting_control")
|
||||||
{
|
border.color: UM.Theme.getColor("setting_control_border")
|
||||||
if (!enabled)
|
|
||||||
{
|
|
||||||
return UM.Theme.getColor("setting_control_disabled")
|
|
||||||
}
|
|
||||||
if (supportExtruderCombobox.hovered || base.activeFocus)
|
|
||||||
{
|
|
||||||
return UM.Theme.getColor("setting_control_highlight")
|
|
||||||
}
|
|
||||||
return UM.Theme.getColor("setting_control")
|
|
||||||
}
|
|
||||||
radius: UM.Theme.getSize("setting_control_radius").width
|
|
||||||
border.width: UM.Theme.getSize("default_lining").width
|
|
||||||
border.color:
|
|
||||||
{
|
|
||||||
if (!enabled)
|
|
||||||
{
|
|
||||||
return UM.Theme.getColor("setting_control_disabled_border")
|
|
||||||
}
|
|
||||||
if (supportExtruderCombobox.hovered || supportExtruderCombobox.activeFocus)
|
|
||||||
{
|
|
||||||
return UM.Theme.getColor("setting_control_border_highlight")
|
|
||||||
}
|
|
||||||
return UM.Theme.getColor("setting_control_border")
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
delegate: ItemDelegate
|
||||||
|
{
|
||||||
|
width: supportExtruderCombobox.width - 2 * UM.Theme.getSize("default_lining").width
|
||||||
|
height: supportExtruderCombobox.height
|
||||||
|
highlighted: supportExtruderCombobox.highlightedIndex == index
|
||||||
|
|
||||||
contentItem: UM.Label
|
contentItem: UM.Label
|
||||||
{
|
{
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.fill: parent
|
||||||
anchors.left: parent.left
|
|
||||||
anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width
|
anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width
|
||||||
anchors.right: downArrow.left
|
anchors.rightMargin: UM.Theme.getSize("setting_unit_margin").width
|
||||||
|
|
||||||
|
text: model.name
|
||||||
|
color: model.enabled ? UM.Theme.getColor("setting_control_text"): UM.Theme.getColor("action_button_disabled_text")
|
||||||
|
|
||||||
|
elide: Text.ElideRight
|
||||||
rightPadding: swatch.width + UM.Theme.getSize("setting_unit_margin").width
|
rightPadding: swatch.width + UM.Theme.getSize("setting_unit_margin").width
|
||||||
|
|
||||||
text: supportExtruderCombobox.currentText
|
|
||||||
textFormat: Text.PlainText
|
|
||||||
color: enabled ? UM.Theme.getColor("setting_control_text") : UM.Theme.getColor("setting_control_disabled_text")
|
|
||||||
|
|
||||||
elide: Text.ElideLeft
|
|
||||||
|
|
||||||
|
|
||||||
background: Rectangle
|
background: Rectangle
|
||||||
{
|
{
|
||||||
id: swatch
|
id: swatch
|
||||||
@ -222,71 +286,14 @@ Item
|
|||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
anchors.rightMargin: UM.Theme.getSize("thin_margin").width
|
anchors.rightMargin: UM.Theme.getSize("thin_margin").width
|
||||||
|
|
||||||
color: supportExtruderCombobox.color
|
color: supportExtruderCombobox.model.getItem(index).color
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
popup: Popup
|
background: Rectangle
|
||||||
{
|
{
|
||||||
y: supportExtruderCombobox.height - UM.Theme.getSize("default_lining").height
|
color: parent.highlighted ? UM.Theme.getColor("setting_control_highlight") : "transparent"
|
||||||
width: supportExtruderCombobox.width
|
border.color: parent.highlighted ? UM.Theme.getColor("setting_control_border_highlight") : "transparent"
|
||||||
implicitHeight: contentItem.implicitHeight + 2 * UM.Theme.getSize("default_lining").width
|
|
||||||
padding: UM.Theme.getSize("default_lining").width
|
|
||||||
|
|
||||||
contentItem: ListView
|
|
||||||
{
|
|
||||||
implicitHeight: contentHeight
|
|
||||||
|
|
||||||
ScrollBar.vertical: UM.ScrollBar {}
|
|
||||||
clip: true
|
|
||||||
model: supportExtruderCombobox.popup.visible ? supportExtruderCombobox.delegateModel : null
|
|
||||||
currentIndex: supportExtruderCombobox.highlightedIndex
|
|
||||||
}
|
|
||||||
|
|
||||||
background: Rectangle
|
|
||||||
{
|
|
||||||
color: UM.Theme.getColor("setting_control")
|
|
||||||
border.color: UM.Theme.getColor("setting_control_border")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate: ItemDelegate
|
|
||||||
{
|
|
||||||
width: supportExtruderCombobox.width - 2 * UM.Theme.getSize("default_lining").width
|
|
||||||
height: supportExtruderCombobox.height
|
|
||||||
highlighted: supportExtruderCombobox.highlightedIndex == index
|
|
||||||
|
|
||||||
contentItem: UM.Label
|
|
||||||
{
|
|
||||||
anchors.fill: parent
|
|
||||||
anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width
|
|
||||||
anchors.rightMargin: UM.Theme.getSize("setting_unit_margin").width
|
|
||||||
|
|
||||||
text: model.name
|
|
||||||
color: model.enabled ? UM.Theme.getColor("setting_control_text"): UM.Theme.getColor("action_button_disabled_text")
|
|
||||||
|
|
||||||
elide: Text.ElideRight
|
|
||||||
rightPadding: swatch.width + UM.Theme.getSize("setting_unit_margin").width
|
|
||||||
|
|
||||||
background: Rectangle
|
|
||||||
{
|
|
||||||
id: swatch
|
|
||||||
height: Math.round(parent.height / 2)
|
|
||||||
width: height
|
|
||||||
radius: Math.round(width / 2)
|
|
||||||
anchors.right: parent.right
|
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
|
||||||
anchors.rightMargin: UM.Theme.getSize("thin_margin").width
|
|
||||||
|
|
||||||
color: supportExtruderCombobox.model.getItem(index).color
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
background: Rectangle
|
|
||||||
{
|
|
||||||
color: parent.highlighted ? UM.Theme.getColor("setting_control_highlight") : "transparent"
|
|
||||||
border.color: parent.highlighted ? UM.Theme.getColor("setting_control_border_highlight") : "transparent"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -209,7 +209,7 @@ Item
|
|||||||
height: UM.Theme.getSize("small_button_icon").height
|
height: UM.Theme.getSize("small_button_icon").height
|
||||||
width: height
|
width: height
|
||||||
|
|
||||||
color: UM.Theme.getColor("setting_control_button")
|
color: UM.Theme.getColor("accent_1")
|
||||||
hoverColor: UM.Theme.getColor("setting_control_button_hover")
|
hoverColor: UM.Theme.getColor("setting_control_button_hover")
|
||||||
|
|
||||||
iconSource: UM.Theme.getIcon("ArrowReset")
|
iconSource: UM.Theme.getIcon("ArrowReset")
|
||||||
|
@ -56,28 +56,30 @@ ComboBox
|
|||||||
|
|
||||||
background: UM.UnderlineBackground
|
background: UM.UnderlineBackground
|
||||||
{
|
{
|
||||||
//Rectangle for highlighting when this combobox needs to pulse.
|
// Rectangle for highlighting when this combobox needs to pulse.
|
||||||
Rectangle
|
Rectangle
|
||||||
{
|
{
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
opacity: 0
|
opacity: 0
|
||||||
color: UM.Theme.getColor("warning")
|
color: "transparent"
|
||||||
|
|
||||||
|
border.color: UM.Theme.getColor("text_field_border_active")
|
||||||
|
border.width: UM.Theme.getSize("default_lining").width
|
||||||
|
|
||||||
SequentialAnimation on opacity
|
SequentialAnimation on opacity
|
||||||
{
|
{
|
||||||
id: pulseAnimation
|
id: pulseAnimation
|
||||||
running: false
|
running: false
|
||||||
loops: 1
|
loops: 2
|
||||||
alwaysRunToEnd: true
|
|
||||||
PropertyAnimation
|
PropertyAnimation
|
||||||
{
|
{
|
||||||
to: 1
|
to: 1
|
||||||
duration: 300
|
duration: 150
|
||||||
}
|
}
|
||||||
PropertyAnimation
|
PropertyAnimation
|
||||||
{
|
{
|
||||||
to: 0
|
to: 0
|
||||||
duration : 2000
|
duration : 150
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user