mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-12 20:29:05 +08:00
Merge branch 'master' into CURA-8979_Materials_Preference_Page
# Conflicts: # resources/qml/Preferences/ProfilesPage.qml
This commit is contained in:
commit
2f8f56d762
@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2021 Ultimaker B.V.
|
# Copyright (c) 2022 Ultimaker B.V.
|
||||||
# Cura is released under the terms of the LGPLv3 or higher.
|
# Cura is released under the terms of the LGPLv3 or higher.
|
||||||
|
|
||||||
import math
|
import math
|
||||||
@ -31,6 +31,8 @@ Position = NamedTuple("Position", [("x", float), ("y", float), ("z", float), ("f
|
|||||||
class FlavorParser:
|
class FlavorParser:
|
||||||
"""This parser is intended to interpret the common firmware codes among all the different flavors"""
|
"""This parser is intended to interpret the common firmware codes among all the different flavors"""
|
||||||
|
|
||||||
|
MAX_EXTRUDER_COUNT = 16
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
CuraApplication.getInstance().hideMessageSignal.connect(self._onHideMessage)
|
CuraApplication.getInstance().hideMessageSignal.connect(self._onHideMessage)
|
||||||
self._cancelled = False
|
self._cancelled = False
|
||||||
@ -53,7 +55,7 @@ class FlavorParser:
|
|||||||
|
|
||||||
def _clearValues(self) -> None:
|
def _clearValues(self) -> None:
|
||||||
self._extruder_number = 0
|
self._extruder_number = 0
|
||||||
self._extrusion_length_offset = [0] * 8 # type: List[float]
|
self._extrusion_length_offset = [0] * self.MAX_EXTRUDER_COUNT # type: List[float]
|
||||||
self._layer_type = LayerPolygon.Inset0Type
|
self._layer_type = LayerPolygon.Inset0Type
|
||||||
self._layer_number = 0
|
self._layer_number = 0
|
||||||
self._previous_z = 0 # type: float
|
self._previous_z = 0 # type: float
|
||||||
@ -355,7 +357,7 @@ class FlavorParser:
|
|||||||
|
|
||||||
Logger.log("d", "Parsing g-code...")
|
Logger.log("d", "Parsing g-code...")
|
||||||
|
|
||||||
current_position = Position(0, 0, 0, 0, [0] * 8)
|
current_position = Position(0, 0, 0, 0, [0] * self.MAX_EXTRUDER_COUNT)
|
||||||
current_path = [] #type: List[List[float]]
|
current_path = [] #type: List[List[float]]
|
||||||
min_layer_number = 0
|
min_layer_number = 0
|
||||||
negative_layers = 0
|
negative_layers = 0
|
||||||
|
@ -31,7 +31,10 @@ class Marketplace(Extension, QObject):
|
|||||||
# Not entirely the cleanest code, since the localPackage list also checks the server if there are updates
|
# Not entirely the cleanest code, since the localPackage list also checks the server if there are updates
|
||||||
# Since that in turn will trigger notifications to be shown, we do need to construct it here and make sure
|
# Since that in turn will trigger notifications to be shown, we do need to construct it here and make sure
|
||||||
# that it checks for updates...
|
# that it checks for updates...
|
||||||
|
preferences = CuraApplication.getInstance().getPreferences()
|
||||||
|
preferences.addPreference("info/automatic_plugin_update_check", True)
|
||||||
self._local_package_list = LocalPackageList(self)
|
self._local_package_list = LocalPackageList(self)
|
||||||
|
if preferences.getValue("info/automatic_plugin_update_check"):
|
||||||
self._local_package_list.checkForUpdates(self._package_manager.local_packages)
|
self._local_package_list.checkForUpdates(self._package_manager.local_packages)
|
||||||
|
|
||||||
self._package_manager.installedPackagesChanged.connect(self.checkIfRestartNeeded)
|
self._package_manager.installedPackagesChanged.connect(self.checkIfRestartNeeded)
|
||||||
|
@ -79,7 +79,7 @@ Item
|
|||||||
{
|
{
|
||||||
id: showTroubleShootingAction
|
id: showTroubleShootingAction
|
||||||
onTriggered: Qt.openUrlExternally("https://ultimaker.com/en/troubleshooting?utm_source=cura&utm_medium=software&utm_campaign=dropdown-troubleshooting")
|
onTriggered: Qt.openUrlExternally("https://ultimaker.com/en/troubleshooting?utm_source=cura&utm_medium=software&utm_campaign=dropdown-troubleshooting")
|
||||||
text: catalog.i18nc("@action:inmenu", "Show Online Troubleshooting Guide")
|
text: catalog.i18nc("@action:inmenu", "Show Online Troubleshooting")
|
||||||
}
|
}
|
||||||
|
|
||||||
Action
|
Action
|
||||||
|
@ -34,14 +34,16 @@ Item
|
|||||||
{
|
{
|
||||||
text: menuBarItem.text.replace(new RegExp("&([A-Za-z])"), function (match, character)
|
text: menuBarItem.text.replace(new RegExp("&([A-Za-z])"), function (match, character)
|
||||||
{
|
{
|
||||||
return `<u>${character}</u>`;
|
return `<u>${character}</u>`
|
||||||
})
|
})
|
||||||
horizontalAlignment: Text.AlignLeft
|
horizontalAlignment: Text.AlignLeft
|
||||||
verticalAlignment: Text.AlignVCenter
|
verticalAlignment: Text.AlignVCenter
|
||||||
}
|
}
|
||||||
|
leftPadding: UM.Theme.getSize("default_margin").width
|
||||||
|
rightPadding: UM.Theme.getSize("default_margin").width
|
||||||
background: Rectangle
|
background: Rectangle
|
||||||
{
|
{
|
||||||
|
|
||||||
color: menuBarItem.highlighted ? UM.Theme.getColor("background_2") : "transparent"
|
color: menuBarItem.highlighted ? UM.Theme.getColor("background_2") : "transparent"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -82,10 +82,10 @@ UM.ManagementPage
|
|||||||
|
|
||||||
enabled: !Cura.MachineManager.stacksHaveErrors
|
enabled: !Cura.MachineManager.stacksHaveErrors
|
||||||
visible: base.canCreateProfile
|
visible: base.canCreateProfile
|
||||||
|
tooltip: catalog.i18nc("@action:tooltip", "Create new profile from current settings/overrides")
|
||||||
onClicked:
|
onClicked:
|
||||||
{
|
{
|
||||||
createQualityDialog.object = Cura.ContainerManager.makeUniqueName(base.currentItem.name)
|
createQualityDialog.object = Cura.ContainerManager.makeUniqueName("<new name>")
|
||||||
createQualityDialog.open()
|
createQualityDialog.open()
|
||||||
createQualityDialog.selectText()
|
createQualityDialog.selectText()
|
||||||
}
|
}
|
||||||
@ -105,6 +105,14 @@ UM.ManagementPage
|
|||||||
spacing: UM.Theme.getSize("default_margin").height
|
spacing: UM.Theme.getSize("default_margin").height
|
||||||
visible: base.currentItem != null
|
visible: base.currentItem != null
|
||||||
|
|
||||||
|
UM.Label
|
||||||
|
{
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
text: catalog.i18nc("@action:label", "Some settings from current profile were overwritten.")
|
||||||
|
visible: currentSettingsActions.visible
|
||||||
|
}
|
||||||
|
|
||||||
Flow
|
Flow
|
||||||
{
|
{
|
||||||
id: currentSettingsActions
|
id: currentSettingsActions
|
||||||
@ -112,11 +120,14 @@ UM.ManagementPage
|
|||||||
|
|
||||||
visible: base.hasCurrentItem && base.currentItem.name == Cura.MachineManager.activeQualityOrQualityChangesName && base.currentItem.intent_category == Cura.MachineManager.activeIntentCategory
|
visible: base.hasCurrentItem && base.currentItem.name == Cura.MachineManager.activeQualityOrQualityChangesName && base.currentItem.intent_category == Cura.MachineManager.activeIntentCategory
|
||||||
|
|
||||||
|
spacing: UM.Theme.getSize("default_margin").width
|
||||||
|
|
||||||
Cura.SecondaryButton
|
Cura.SecondaryButton
|
||||||
{
|
{
|
||||||
text: catalog.i18nc("@action:button", "Update profile with current settings/overrides")
|
text: catalog.i18nc("@action:button", "Update profile.")
|
||||||
enabled: Cura.MachineManager.hasUserSettings && objectList.currentIndex && !objectList.currentIndex.is_read_only
|
enabled: Cura.MachineManager.hasUserSettings && objectList.currentIndex && !objectList.currentIndex.is_read_only
|
||||||
onClicked: Cura.ContainerManager.updateQualityChanges()
|
onClicked: Cura.ContainerManager.updateQualityChanges()
|
||||||
|
tooltip: catalog.i18nc("@action:tooltip", "Update profile with current settings/overrides")
|
||||||
}
|
}
|
||||||
|
|
||||||
Cura.SecondaryButton
|
Cura.SecondaryButton
|
||||||
@ -145,7 +156,8 @@ UM.ManagementPage
|
|||||||
UM.TabRow
|
UM.TabRow
|
||||||
{
|
{
|
||||||
id: profileExtruderTabs
|
id: profileExtruderTabs
|
||||||
UM.TabRowButton // One extra tab for the global settings.
|
// One extra tab for the global settings.
|
||||||
|
UM.TabRowButton
|
||||||
{
|
{
|
||||||
text: catalog.i18nc("@title:tab", "Global Settings")
|
text: catalog.i18nc("@title:tab", "Global Settings")
|
||||||
}
|
}
|
||||||
@ -196,6 +208,8 @@ UM.ManagementPage
|
|||||||
|
|
||||||
Item
|
Item
|
||||||
{
|
{
|
||||||
|
id: content_item
|
||||||
|
anchors.fill: parent
|
||||||
// This connection makes sure that we will switch to the correct quality after the model gets updated
|
// This connection makes sure that we will switch to the correct quality after the model gets updated
|
||||||
Connections
|
Connections
|
||||||
{
|
{
|
||||||
|
@ -12,7 +12,8 @@ Cura.ActionButton
|
|||||||
color: UM.Theme.getColor("secondary_button")
|
color: UM.Theme.getColor("secondary_button")
|
||||||
textColor: UM.Theme.getColor("secondary_button_text")
|
textColor: UM.Theme.getColor("secondary_button_text")
|
||||||
outlineColor: UM.Theme.getColor("border_accent_1")
|
outlineColor: UM.Theme.getColor("border_accent_1")
|
||||||
disabledColor: UM.Theme.getColor("action_button_disabled")
|
disabledColor: UM.Theme.getColor("secondary_button")
|
||||||
textDisabledColor: UM.Theme.getColor("action_button_disabled_text")
|
textDisabledColor: UM.Theme.getColor("action_button_disabled_text")
|
||||||
hoverColor: UM.Theme.getColor("secondary_button_hover")
|
hoverColor: UM.Theme.getColor("secondary_button_hover")
|
||||||
|
outlineDisabledColor: UM.Theme.getColor("action_button_disabled_text")
|
||||||
}
|
}
|
@ -180,7 +180,7 @@ Item
|
|||||||
ListView
|
ListView
|
||||||
{
|
{
|
||||||
id: contents
|
id: contents
|
||||||
|
maximumFlickVelocity: 1000
|
||||||
anchors
|
anchors
|
||||||
{
|
{
|
||||||
top: filterContainer.bottom
|
top: filterContainer.bottom
|
||||||
|
@ -57,9 +57,7 @@ ComboBox
|
|||||||
contentItem: UM.Label
|
contentItem: UM.Label
|
||||||
{
|
{
|
||||||
id: contentLabel
|
id: contentLabel
|
||||||
anchors.left: parent.left
|
leftPadding: UM.Theme.getSize("setting_unit_margin").width + UM.Theme.getSize("default_margin").width
|
||||||
anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width
|
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
|
||||||
anchors.right: downArrow.left
|
anchors.right: downArrow.left
|
||||||
wrapMode: Text.NoWrap
|
wrapMode: Text.NoWrap
|
||||||
text:
|
text:
|
||||||
|
@ -18,4 +18,5 @@ MenuSeparator
|
|||||||
implicitHeight: UM.Theme.getSize("default_lining").height
|
implicitHeight: UM.Theme.getSize("default_lining").height
|
||||||
color: UM.Theme.getColor("setting_control_border")
|
color: UM.Theme.getColor("setting_control_border")
|
||||||
}
|
}
|
||||||
|
height: visible ? implicitHeight: 0
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user