Merge branch 'master' into STAR-322_cloud-connection

This commit is contained in:
ChrisTerBeke 2018-12-14 09:24:56 +01:00
commit e1f95c6ec1
10 changed files with 102 additions and 81 deletions

View file

@ -3385,7 +3385,7 @@
"retraction_combing":
{
"label": "Combing Mode",
"description": "Combing keeps the nozzle within already printed areas when traveling. This results in slightly longer travel moves but reduces the need for retractions. If combing is off, the material will retract and the nozzle moves in a straight line to the next point. It is also possible to avoid combing over top/bottom skin areas and also to only comb within the infill. Note that the 'Within Infill' option behaves exactly like the 'Not in Skin' option in earlier Cura releases.",
"description": "Combing keeps the nozzle within already printed areas when traveling. This results in slightly longer travel moves but reduces the need for retractions. If combing is off, the material will retract and the nozzle moves in a straight line to the next point. It is also possible to avoid combing over top/bottom skin areas or to only comb within the infill.",
"type": "enum",
"options":
{

View file

@ -12,6 +12,12 @@ Item
{
id: widget
function requestWriteToDevice()
{
UM.OutputDeviceManager.requestWriteToDevice(UM.OutputDeviceManager.activeDevice, PrintInformation.jobName,
{ "filter_by_machine": true, "preferred_mimetypes": Cura.MachineManager.activeMachine.preferred_output_file_formats });
}
Cura.PrimaryButton
{
id: saveToButton
@ -32,9 +38,8 @@ Item
onClicked:
{
forceActiveFocus();
UM.OutputDeviceManager.requestWriteToDevice(UM.OutputDeviceManager.activeDevice, PrintInformation.jobName,
{ "filter_by_machine": true, "preferred_mimetypes": Cura.MachineManager.activeMachine.preferred_output_file_formats });
forceActiveFocus()
widget.requestWriteToDevice()
}
}
@ -81,6 +86,7 @@ Item
delegate: Cura.ActionButton
{
text: model.description
visible: model.id != UM.OutputDeviceManager.activeDevice // Don't show the active device in the list
color: "transparent"
cornerRadius: 0
hoverColor: UM.Theme.getColor("primary")
@ -88,6 +94,7 @@ Item
onClicked:
{
UM.OutputDeviceManager.setActiveDevice(model.id)
widget.requestWriteToDevice()
popup.close()
}
}

View file

@ -278,16 +278,33 @@ UM.MainWindow
height: UM.Theme.getSize("stage_menu").height
source: UM.Controller.activeStage != null ? UM.Controller.activeStage.stageMenuComponent : ""
// HACK: This is to ensure that the parent never gets set to null, as this wreaks havoc on the focus.
function onParentDestroyed()
{
printSetupSelector.parent = stageMenu
printSetupSelector.visible = false
}
property Item oldParent: null
// The printSetupSelector is defined here so that the setting list doesn't need to get re-instantiated
// Every time the stage is changed.
property var printSetupSelector: Cura.PrintSetupSelector
{
width: UM.Theme.getSize("print_setup_widget").width
height: UM.Theme.getSize("stage_menu").height
headerCornerSide: RoundedRectangle.Direction.Right
width: UM.Theme.getSize("print_setup_widget").width
height: UM.Theme.getSize("stage_menu").height
headerCornerSide: RoundedRectangle.Direction.Right
onParentChanged:
{
if(stageMenu.oldParent !=null)
{
stageMenu.oldParent.Component.destruction.disconnect(stageMenu.onParentDestroyed)
}
stageMenu.oldParent = parent
visible = parent != stageMenu
parent.Component.destruction.connect(stageMenu.onParentDestroyed)
}
}
}
UM.MessageStack
{
anchors

View file

@ -54,16 +54,23 @@ Item
{
text: model.name.toUpperCase()
checkable: true
checked: model.active
checked: UM.Controller.activeStage != null ? model.id == UM.Controller.activeStage.stageId : false
anchors.verticalCenter: parent.verticalCenter
exclusiveGroup: mainWindowHeaderMenuGroup
style: UM.Theme.styles.main_window_header_tab
height: UM.Theme.getSize("main_window_header_button").height
onClicked: UM.Controller.setActiveStage(model.id)
iconSource: model.stage.iconSource
property color overlayColor: "transparent"
property string overlayIconSource: ""
// This is a trick to assure the activeStage is correctly changed. It doesn't work propertly if done in the onClicked (see CURA-6028)
MouseArea
{
anchors.fill: parent
onClicked: UM.Controller.setActiveStage(model.id)
}
}
}

View file

@ -39,6 +39,7 @@ Item
{
target: Cura.QualityProfilesDropDownMenuModel
onItemsChanged: qualityModel.update()
onDataChanged: qualityModel.update()
}
Connections {

View file

@ -14,24 +14,28 @@ Cura.ExpandablePopup
contentPadding: UM.Theme.getSize("default_lining").width
contentAlignment: Cura.ExpandablePopup.ContentAlignment.AlignLeft
property var viewModel: UM.ViewModel { }
property var activeView:
property var viewModel: UM.ViewModel
{
for (var i = 0; i < viewModel.count; i++)
onDataChanged: updateActiveView()
}
property var activeView: null
function updateActiveView()
{
for (var index in viewModel.items)
{
if (viewModel.items[i].active)
if (viewModel.items[index].active)
{
return viewModel.items[i]
activeView = viewModel.items[index]
return
}
}
return null
activeView = null
}
Component.onCompleted:
{
// Nothing was active, so just return the first one (the list is sorted by priority, so the most
// important one should be returned)
if (activeView == null)
{
UM.Controller.setActiveView(viewModel.getItem(0).id)

View file

@ -255,8 +255,8 @@
"message_button_text": [255, 255, 255, 255],
"message_button_text_hover": [255, 255, 255, 255],
"message_button_text_active": [255, 255, 255, 255],
"message_progressbar_background": [200, 200, 200, 255],
"message_progressbar_control": [77, 182, 226, 255],
"message_progressbar_background": [245, 245, 245, 255],
"message_progressbar_control": [50, 130, 255, 255],
"tool_panel_background": [255, 255, 255, 255],