mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-23 22:54:01 -06:00
Merge master into material marketplace
This commit is contained in:
commit
9a5fb47a6e
228 changed files with 125261 additions and 4020 deletions
|
@ -225,7 +225,8 @@ UM.MainWindow
|
|||
onObjectRemoved: settingsMenu.removeItem(object)
|
||||
}
|
||||
|
||||
BuildplateMenu { title: catalog.i18nc("@title:menu", "&Build plate"); visible: Cura.MachineManager.hasVariantBuildplates }
|
||||
// TODO Temporary hidden, add back again when feature ready
|
||||
// BuildplateMenu { title: catalog.i18nc("@title:menu", "&Build plate"); visible: Cura.MachineManager.hasVariantBuildplates }
|
||||
ProfileMenu { title: catalog.i18nc("@title:menu", "&Profile"); }
|
||||
|
||||
MenuSeparator { }
|
||||
|
|
|
@ -51,8 +51,7 @@ Menu
|
|||
MenuItem
|
||||
{
|
||||
text: model.name
|
||||
checkable: model.available
|
||||
enabled: model.available
|
||||
checkable: true
|
||||
checked: Cura.MachineManager.activeQualityOrQualityChangesName == model.name
|
||||
exclusiveGroup: group
|
||||
onTriggered: Cura.MachineManager.setQualityChangesGroup(model.quality_changes_group)
|
||||
|
|
|
@ -7,6 +7,7 @@ import QtQuick.Layouts 1.1
|
|||
import QtQuick.Controls.Styles 1.1
|
||||
|
||||
import UM 1.1 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
UM.PreferencesPage
|
||||
{
|
||||
|
@ -97,16 +98,26 @@ UM.PreferencesPage
|
|||
UM.Preferences.resetPreference("cura/choice_on_open_project")
|
||||
setDefaultOpenProjectOption(UM.Preferences.getValue("cura/choice_on_open_project"))
|
||||
|
||||
if (plugins.find("id", "SliceInfoPlugin") > -1) {
|
||||
if (pluginExistsAndEnabled("SliceInfoPlugin")) {
|
||||
UM.Preferences.resetPreference("info/send_slice_info")
|
||||
sendDataCheckbox.checked = boolCheck(UM.Preferences.getValue("info/send_slice_info"))
|
||||
}
|
||||
if (plugins.find("id", "UpdateChecker") > -1) {
|
||||
if (pluginExistsAndEnabled("UpdateChecker")) {
|
||||
UM.Preferences.resetPreference("info/automatic_update_check")
|
||||
checkUpdatesCheckbox.checked = boolCheck(UM.Preferences.getValue("info/automatic_update_check"))
|
||||
}
|
||||
}
|
||||
|
||||
function pluginExistsAndEnabled(pluginName)
|
||||
{
|
||||
var pluginItem = plugins.find("id", pluginName)
|
||||
if (pluginItem > -1)
|
||||
{
|
||||
return plugins.getItem(pluginItem).enabled
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
ScrollView
|
||||
{
|
||||
width: parent.width
|
||||
|
@ -366,7 +377,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width;
|
||||
height: childrenRect.height;
|
||||
text: catalog.i18nc("@info:tooltip", "Should zooming move in the direction of the mouse?")
|
||||
|
@ -380,7 +392,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip", "Should models on the platform be moved so that they no longer intersect?")
|
||||
|
@ -393,7 +406,8 @@ UM.PreferencesPage
|
|||
onCheckedChanged: UM.Preferences.setValue("physics/automatic_push_free", checked)
|
||||
}
|
||||
}
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip", "Should models on the platform be moved down to touch the build plate?")
|
||||
|
@ -426,7 +440,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip", "Should layer be forced into compatibility mode?")
|
||||
|
@ -453,7 +468,8 @@ UM.PreferencesPage
|
|||
text: catalog.i18nc("@label","Opening and saving files")
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip","Should models be scaled to the build volume if they are too large?")
|
||||
|
@ -467,7 +483,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip","An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?")
|
||||
|
@ -481,7 +498,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip", "Should a prefix based on the printer name be added to the print job name automatically?")
|
||||
|
@ -495,7 +513,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip", "Should a summary be shown when saving a project file?")
|
||||
|
@ -508,7 +527,8 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip", "Default behavior when opening a project file")
|
||||
|
@ -531,7 +551,8 @@ UM.PreferencesPage
|
|||
{
|
||||
id: openProjectOptionModel
|
||||
|
||||
Component.onCompleted: {
|
||||
Component.onCompleted:
|
||||
{
|
||||
append({ text: catalog.i18nc("@option:openProject", "Always ask"), code: "always_ask" })
|
||||
append({ text: catalog.i18nc("@option:openProject", "Always open as a project"), code: "open_as_project" })
|
||||
append({ text: catalog.i18nc("@option:openProject", "Always import models"), code: "open_as_model" })
|
||||
|
@ -591,7 +612,8 @@ UM.PreferencesPage
|
|||
{
|
||||
id: discardOrKeepProfileListModel
|
||||
|
||||
Component.onCompleted: {
|
||||
Component.onCompleted:
|
||||
{
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Always ask me this"), code: "always_ask" })
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Discard and never ask again"), code: "always_discard" })
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Keep and never ask again"), code: "always_keep" })
|
||||
|
@ -631,8 +653,9 @@ UM.PreferencesPage
|
|||
text: catalog.i18nc("@label","Privacy")
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
visible: plugins.find("id", "UpdateChecker") > -1
|
||||
UM.TooltipArea
|
||||
{
|
||||
visible: pluginExistsAndEnabled("UpdateChecker")
|
||||
width: childrenRect.width
|
||||
height: visible ? childrenRect.height : 0
|
||||
text: catalog.i18nc("@info:tooltip","Should Cura check for updates when the program is started?")
|
||||
|
@ -646,8 +669,9 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
visible: plugins.find("id", "SliceInfoPlugin") > -1
|
||||
UM.TooltipArea
|
||||
{
|
||||
visible: pluginExistsAndEnabled("SliceInfoPlugin")
|
||||
width: childrenRect.width
|
||||
height: visible ? childrenRect.height : 0
|
||||
text: catalog.i18nc("@info:tooltip","Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored.")
|
||||
|
@ -659,6 +683,17 @@ UM.PreferencesPage
|
|||
checked: boolCheck(UM.Preferences.getValue("info/send_slice_info"))
|
||||
onCheckedChanged: UM.Preferences.setValue("info/send_slice_info", checked)
|
||||
}
|
||||
|
||||
Button
|
||||
{
|
||||
id: showMoreInfo
|
||||
anchors.top: sendDataCheckbox.bottom
|
||||
text: catalog.i18nc("@action:button", "More information")
|
||||
onClicked:
|
||||
{
|
||||
CuraApplication.showMoreInformationDialogForAnonymousDataCollection();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Item
|
||||
|
@ -674,7 +709,8 @@ UM.PreferencesPage
|
|||
text: catalog.i18nc("@label","Experimental")
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip","Use multi build plate functionality")
|
||||
|
@ -688,21 +724,29 @@ UM.PreferencesPage
|
|||
}
|
||||
}
|
||||
|
||||
UM.TooltipArea {
|
||||
UM.TooltipArea
|
||||
{
|
||||
width: childrenRect.width
|
||||
height: childrenRect.height
|
||||
text: catalog.i18nc("@info:tooltip","Should newly loaded models be arranged on the build plate? Used in conjunction with multi build plate (EXPERIMENTAL)")
|
||||
text: catalog.i18nc("@info:tooltip", "Should newly loaded models be arranged on the build plate? Used in conjunction with multi build plate (EXPERIMENTAL)")
|
||||
|
||||
CheckBox
|
||||
{
|
||||
id: arrangeOnLoadCheckbox
|
||||
text: catalog.i18nc("@option:check","Do not arrange objects on load")
|
||||
text: catalog.i18nc("@option:check", "Do not arrange objects on load")
|
||||
checked: boolCheck(UM.Preferences.getValue("cura/not_arrange_objects_on_load"))
|
||||
onCheckedChanged: UM.Preferences.setValue("cura/not_arrange_objects_on_load", checked)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Connections
|
||||
{
|
||||
target: UM.Preferences
|
||||
onPreferenceChanged:
|
||||
{
|
||||
sendDataCheckbox.checked = boolCheck(UM.Preferences.getValue("info/send_slice_info"))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -92,7 +92,7 @@ TabView
|
|||
|
||||
icon: StandardIcon.Question;
|
||||
title: catalog.i18nc("@title:window", "Confirm Diameter Change")
|
||||
text: catalog.i18nc("@label (%1 is object name)", "The new material diameter is set to %1 mm, which is not compatible to the current machine. Do you wish to continue?".arg(new_diameter_value))
|
||||
text: catalog.i18nc("@label (%1 is a number)", "The new filament diameter is set to %1 mm, which is not compatible with the current extruder. Do you wish to continue?".arg(new_diameter_value))
|
||||
standardButtons: StandardButton.Yes | StandardButton.No
|
||||
modality: Qt.ApplicationModal
|
||||
|
||||
|
|
|
@ -18,6 +18,8 @@ Column
|
|||
property bool currentExtruderVisible: extrudersList.visible;
|
||||
property bool printerConnected: Cura.MachineManager.printerConnected
|
||||
property bool hasManyPrinterTypes: printerConnected ? Cura.MachineManager.printerOutputDevices[0].connectedPrintersTypeCount.length > 1 : false
|
||||
property bool buildplateCompatibilityError: !Cura.MachineManager.variantBuildplateCompatible && !Cura.MachineManager.variantBuildplateUsable
|
||||
property bool buildplateCompatibilityWarning: Cura.MachineManager.variantBuildplateUsable
|
||||
|
||||
spacing: Math.round(UM.Theme.getSize("sidebar_margin").width * 0.9)
|
||||
|
||||
|
@ -382,14 +384,16 @@ Column
|
|||
anchors.right: parent.right
|
||||
style: UM.Theme.styles.sidebar_header_button
|
||||
activeFocusOnPress: true;
|
||||
menu: MaterialMenu {
|
||||
menu: MaterialMenu
|
||||
{
|
||||
extruderIndex: base.currentExtruderIndex
|
||||
}
|
||||
|
||||
property var valueError: !isMaterialSupported()
|
||||
property var valueWarning: ! Cura.MachineManager.isActiveQualitySupported
|
||||
|
||||
function isMaterialSupported () {
|
||||
function isMaterialSupported ()
|
||||
{
|
||||
if (!hasActiveExtruder)
|
||||
{
|
||||
return false;
|
||||
|
@ -425,7 +429,8 @@ Column
|
|||
color: UM.Theme.getColor("text");
|
||||
}
|
||||
|
||||
ToolButton {
|
||||
ToolButton
|
||||
{
|
||||
id: variantSelection
|
||||
text: Cura.MachineManager.activeVariantName
|
||||
tooltip: Cura.MachineManager.activeVariantName;
|
||||
|
@ -441,7 +446,8 @@ Column
|
|||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
Rectangle
|
||||
{
|
||||
id: buildplateSeparator
|
||||
anchors.left: parent.left
|
||||
anchors.leftMargin: UM.Theme.getSize("sidebar_margin").width
|
||||
|
@ -456,7 +462,8 @@ Column
|
|||
{
|
||||
id: buildplateRow
|
||||
height: UM.Theme.getSize("sidebar_setup").height
|
||||
visible: Cura.MachineManager.hasVariantBuildplates && !sidebar.monitoringPrint && !sidebar.hideSettings
|
||||
// TODO Temporary hidden, add back again when feature ready
|
||||
visible: false //Cura.MachineManager.hasVariantBuildplates && !sidebar.monitoringPrint && !sidebar.hideSettings
|
||||
|
||||
anchors
|
||||
{
|
||||
|
@ -477,7 +484,8 @@ Column
|
|||
color: UM.Theme.getColor("text");
|
||||
}
|
||||
|
||||
ToolButton {
|
||||
ToolButton
|
||||
{
|
||||
id: buildplateSelection
|
||||
text: Cura.MachineManager.activeVariantBuildplateName
|
||||
tooltip: Cura.MachineManager.activeVariantBuildplateName
|
||||
|
@ -501,7 +509,7 @@ Column
|
|||
{
|
||||
id: materialInfoRow
|
||||
height: Math.round(UM.Theme.getSize("sidebar_setup").height / 2)
|
||||
visible: (Cura.MachineManager.hasVariants || Cura.MachineManager.hasMaterials) && !sidebar.monitoringPrint && !sidebar.hideSettings
|
||||
visible: (Cura.MachineManager.hasVariants || Cura.MachineManager.hasMaterials || Cura.MachineManager.hasVariantBuildplates) && !sidebar.monitoringPrint && !sidebar.hideSettings
|
||||
|
||||
anchors
|
||||
{
|
||||
|
@ -511,10 +519,26 @@ Column
|
|||
rightMargin: UM.Theme.getSize("sidebar_margin").width
|
||||
}
|
||||
|
||||
Item {
|
||||
Label
|
||||
{
|
||||
id: materialCompatibilityLabel
|
||||
y: -Math.round(UM.Theme.getSize("sidebar_margin").height / 3)
|
||||
anchors.left: parent.left
|
||||
width: parent.width - materialCompatibilityLink.width
|
||||
text: catalog.i18nc("@label", "Use adhesion sheet or glue with this material combination")
|
||||
font: UM.Theme.getFont("very_small")
|
||||
color: UM.Theme.getColor("text")
|
||||
visible: buildplateCompatibilityError || buildplateCompatibilityWarning
|
||||
wrapMode: Text.WordWrap
|
||||
opacity: 0.5
|
||||
}
|
||||
|
||||
Item
|
||||
{
|
||||
id: materialCompatibilityLink
|
||||
height: UM.Theme.getSize("sidebar_setup").height
|
||||
anchors.right: parent.right
|
||||
width: Math.round(parent.width * 0.7 + UM.Theme.getSize("sidebar_margin").width)
|
||||
width: childrenRect.width + UM.Theme.getSize("default_margin").width
|
||||
|
||||
UM.RecolorImage {
|
||||
id: warningImage
|
||||
|
@ -527,7 +551,7 @@ Column
|
|||
sourceSize.width: width
|
||||
sourceSize.height: height
|
||||
color: UM.Theme.getColor("material_compatibility_warning")
|
||||
visible: !Cura.MachineManager.isCurrentSetupSupported
|
||||
visible: !Cura.MachineManager.isCurrentSetupSupported || buildplateCompatibilityError || buildplateCompatibilityWarning
|
||||
}
|
||||
|
||||
Label {
|
||||
|
|
|
@ -201,7 +201,11 @@ Rectangle
|
|||
// the connection to UM.ActiveView will trigger update so there is no reason to call it manually here
|
||||
}
|
||||
|
||||
onCurrentIndexChanged: viewModeButton.setActiveIndex(model.getItem(currentIndex).id)
|
||||
onCurrentIndexChanged:
|
||||
{
|
||||
if (model.getItem(currentIndex).id != undefined)
|
||||
viewModeButton.setActiveIndex(model.getItem(currentIndex).id)
|
||||
}
|
||||
currentIndex: getActiveIndex()
|
||||
|
||||
// watch the active view proxy for changes made from the menu item
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue