mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-08-08 22:35:03 -06:00
Merge pull request #4864 from Ultimaker/CURA-5943_ui_usb_printing
Cura 5943 ui usb printing
This commit is contained in:
commit
c688f0ea88
16 changed files with 534 additions and 350 deletions
|
@ -146,6 +146,7 @@ UM.MainWindow
|
|||
|
||||
Rectangle
|
||||
{
|
||||
id: stageMenuBackground
|
||||
anchors
|
||||
{
|
||||
left: parent.left
|
||||
|
@ -153,7 +154,7 @@ UM.MainWindow
|
|||
top: parent.top
|
||||
}
|
||||
visible: stageMenu.source != ""
|
||||
height: Math.round(UM.Theme.getSize("stage_menu").height / 2)
|
||||
height: visible ? Math.round(UM.Theme.getSize("stage_menu").height / 2) : 0
|
||||
|
||||
LinearGradient
|
||||
{
|
||||
|
@ -254,7 +255,13 @@ UM.MainWindow
|
|||
// A stage can control this area. If nothing is set, it will therefore show the 3D view.
|
||||
id: main
|
||||
|
||||
anchors.fill: parent
|
||||
anchors
|
||||
{
|
||||
top: stageMenuBackground.bottom
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
bottom: parent.bottom
|
||||
}
|
||||
|
||||
source: UM.Controller.activeStage != null ? UM.Controller.activeStage.mainComponent : ""
|
||||
}
|
||||
|
|
|
@ -70,7 +70,7 @@ Column
|
|||
Label
|
||||
{
|
||||
id: materialLabel
|
||||
text: printCoreConfiguration.material.name
|
||||
text: printCoreConfiguration.material == null ? "" : printCoreConfiguration.material.name
|
||||
renderType: Text.NativeRendering
|
||||
elide: Text.ElideRight
|
||||
width: parent.width
|
||||
|
|
|
@ -1,15 +1,17 @@
|
|||
// Copyright (c) 2018 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.7
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 2.0
|
||||
import QtQuick.Layouts 1.3
|
||||
|
||||
import UM 1.2 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
import "Menus"
|
||||
import "Menus/ConfigurationMenu"
|
||||
|
||||
|
||||
Rectangle
|
||||
{
|
||||
id: base
|
||||
|
@ -85,7 +87,7 @@ Rectangle
|
|||
}
|
||||
}
|
||||
|
||||
MachineSelection
|
||||
MachineSelector
|
||||
{
|
||||
id: machineSelection
|
||||
width: base.width - configSelection.width - separator.width
|
||||
|
@ -104,7 +106,7 @@ Rectangle
|
|||
anchors.left: machineSelection.right
|
||||
}
|
||||
|
||||
ConfigurationSelection
|
||||
CustomConfigurationSelector
|
||||
{
|
||||
id: configSelection
|
||||
visible: isNetworkPrinter && printerConnected
|
||||
|
@ -112,7 +114,6 @@ Rectangle
|
|||
height: UM.Theme.getSize("stage_menu").height
|
||||
anchors.top: base.top
|
||||
anchors.right: parent.right
|
||||
panelWidth: base.width
|
||||
}
|
||||
|
||||
Loader
|
||||
|
|
|
@ -11,136 +11,180 @@ import Cura 1.0 as Cura
|
|||
|
||||
import "PrinterOutput"
|
||||
|
||||
Column
|
||||
|
||||
Rectangle
|
||||
{
|
||||
id: printMonitor
|
||||
id: base
|
||||
UM.I18nCatalog { id: catalog; name: "cura"}
|
||||
|
||||
function showTooltip(item, position, text)
|
||||
{
|
||||
tooltip.text = text;
|
||||
position = item.mapToItem(base, position.x - UM.Theme.getSize("default_arrow").width, position.y);
|
||||
tooltip.show(position);
|
||||
}
|
||||
|
||||
function hideTooltip()
|
||||
{
|
||||
tooltip.hide();
|
||||
}
|
||||
|
||||
function strPadLeft(string, pad, length) {
|
||||
return (new Array(length + 1).join(pad) + string).slice(-length);
|
||||
}
|
||||
|
||||
function getPrettyTime(time)
|
||||
{
|
||||
var hours = Math.floor(time / 3600)
|
||||
time -= hours * 3600
|
||||
var minutes = Math.floor(time / 60);
|
||||
time -= minutes * 60
|
||||
var seconds = Math.floor(time);
|
||||
|
||||
var finalTime = strPadLeft(hours, "0", 2) + ":" + strPadLeft(minutes, "0", 2) + ":" + strPadLeft(seconds, "0", 2);
|
||||
return finalTime;
|
||||
}
|
||||
|
||||
property var connectedDevice: Cura.MachineManager.printerOutputDevices.length >= 1 ? Cura.MachineManager.printerOutputDevices[0] : null
|
||||
property var activePrinter: connectedDevice != null ? connectedDevice.activePrinter : null
|
||||
property var activePrintJob: activePrinter != null ? activePrinter.activePrintJob: null
|
||||
|
||||
Cura.ExtrudersModel
|
||||
SidebarTooltip
|
||||
{
|
||||
id: extrudersModel
|
||||
simpleNames: true
|
||||
id: tooltip
|
||||
}
|
||||
|
||||
OutputDeviceHeader
|
||||
Column
|
||||
{
|
||||
outputDevice: connectedDevice
|
||||
}
|
||||
id: printMonitor
|
||||
|
||||
Rectangle
|
||||
{
|
||||
color: UM.Theme.getColor("wide_lining")
|
||||
width: parent.width
|
||||
height: childrenRect.height
|
||||
anchors.fill: parent
|
||||
|
||||
Flow
|
||||
Cura.ExtrudersModel
|
||||
{
|
||||
id: extrudersGrid
|
||||
spacing: UM.Theme.getSize("thick_lining").width
|
||||
id: extrudersModel
|
||||
simpleNames: true
|
||||
}
|
||||
|
||||
OutputDeviceHeader
|
||||
{
|
||||
outputDevice: connectedDevice
|
||||
}
|
||||
|
||||
Rectangle
|
||||
{
|
||||
color: UM.Theme.getColor("wide_lining")
|
||||
width: parent.width
|
||||
height: childrenRect.height
|
||||
|
||||
Repeater
|
||||
Flow
|
||||
{
|
||||
id: extrudersRepeater
|
||||
model: activePrinter != null ? activePrinter.extruders : null
|
||||
id: extrudersGrid
|
||||
spacing: UM.Theme.getSize("thick_lining").width
|
||||
width: parent.width
|
||||
|
||||
ExtruderBox
|
||||
Repeater
|
||||
{
|
||||
color: UM.Theme.getColor("main_background")
|
||||
width: index == machineExtruderCount.properties.value - 1 && index % 2 == 0 ? extrudersGrid.width : Math.round(extrudersGrid.width / 2 - UM.Theme.getSize("thick_lining").width / 2)
|
||||
extruderModel: modelData
|
||||
id: extrudersRepeater
|
||||
model: activePrinter != null ? activePrinter.extruders : null
|
||||
|
||||
ExtruderBox
|
||||
{
|
||||
color: UM.Theme.getColor("main_background")
|
||||
width: index == machineExtruderCount.properties.value - 1 && index % 2 == 0 ? extrudersGrid.width : Math.round(extrudersGrid.width / 2 - UM.Theme.getSize("thick_lining").width / 2)
|
||||
extruderModel: modelData
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle
|
||||
{
|
||||
color: UM.Theme.getColor("wide_lining")
|
||||
width: parent.width
|
||||
height: UM.Theme.getSize("thick_lining").width
|
||||
}
|
||||
|
||||
HeatedBedBox
|
||||
{
|
||||
visible: {
|
||||
if(activePrinter != null && activePrinter.bedTemperature != -1)
|
||||
{
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
printerModel: activePrinter
|
||||
}
|
||||
|
||||
UM.SettingPropertyProvider
|
||||
{
|
||||
id: bedTemperature
|
||||
containerStack: Cura.MachineManager.activeMachine
|
||||
key: "material_bed_temperature"
|
||||
watchedProperties: ["value", "minimum_value", "maximum_value", "resolve"]
|
||||
storeIndex: 0
|
||||
|
||||
property var resolve: Cura.MachineManager.activeStack != Cura.MachineManager.activeMachine ? properties.resolve : "None"
|
||||
}
|
||||
|
||||
UM.SettingPropertyProvider
|
||||
{
|
||||
id: machineExtruderCount
|
||||
containerStack: Cura.MachineManager.activeMachine
|
||||
key: "machine_extruder_count"
|
||||
watchedProperties: ["value"]
|
||||
}
|
||||
|
||||
ManualPrinterControl
|
||||
{
|
||||
printerModel: activePrinter
|
||||
visible: activePrinter != null ? activePrinter.canControlManually : false
|
||||
}
|
||||
|
||||
|
||||
MonitorSection
|
||||
{
|
||||
label: catalog.i18nc("@label", "Active print")
|
||||
width: base.width
|
||||
visible: activePrinter != null
|
||||
}
|
||||
|
||||
|
||||
MonitorItem
|
||||
{
|
||||
label: catalog.i18nc("@label", "Job Name")
|
||||
value: activePrintJob != null ? activePrintJob.name : ""
|
||||
width: base.width
|
||||
visible: activePrinter != null
|
||||
}
|
||||
|
||||
MonitorItem
|
||||
{
|
||||
label: catalog.i18nc("@label", "Printing Time")
|
||||
value: activePrintJob != null ? getPrettyTime(activePrintJob.timeTotal) : ""
|
||||
width: base.width
|
||||
visible: activePrinter != null
|
||||
}
|
||||
|
||||
MonitorItem
|
||||
{
|
||||
label: catalog.i18nc("@label", "Estimated time left")
|
||||
value: activePrintJob != null ? getPrettyTime(activePrintJob.timeTotal - activePrintJob.timeElapsed) : ""
|
||||
visible:
|
||||
Rectangle
|
||||
{
|
||||
if(activePrintJob == null)
|
||||
color: UM.Theme.getColor("wide_lining")
|
||||
width: parent.width
|
||||
height: UM.Theme.getSize("thick_lining").width
|
||||
}
|
||||
|
||||
HeatedBedBox
|
||||
{
|
||||
visible:
|
||||
{
|
||||
if(activePrinter != null && activePrinter.bedTemperature != -1)
|
||||
{
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
return (activePrintJob.state == "printing" ||
|
||||
activePrintJob.state == "resuming" ||
|
||||
activePrintJob.state == "pausing" ||
|
||||
activePrintJob.state == "paused")
|
||||
printerModel: activePrinter
|
||||
}
|
||||
|
||||
UM.SettingPropertyProvider
|
||||
{
|
||||
id: bedTemperature
|
||||
containerStack: Cura.MachineManager.activeMachine
|
||||
key: "material_bed_temperature"
|
||||
watchedProperties: ["value", "minimum_value", "maximum_value", "resolve"]
|
||||
storeIndex: 0
|
||||
|
||||
property var resolve: Cura.MachineManager.activeStack != Cura.MachineManager.activeMachine ? properties.resolve : "None"
|
||||
}
|
||||
|
||||
UM.SettingPropertyProvider
|
||||
{
|
||||
id: machineExtruderCount
|
||||
containerStack: Cura.MachineManager.activeMachine
|
||||
key: "machine_extruder_count"
|
||||
watchedProperties: ["value"]
|
||||
}
|
||||
|
||||
ManualPrinterControl
|
||||
{
|
||||
printerModel: activePrinter
|
||||
visible: activePrinter != null ? activePrinter.canControlManually : false
|
||||
}
|
||||
|
||||
|
||||
MonitorSection
|
||||
{
|
||||
label: catalog.i18nc("@label", "Active print")
|
||||
width: base.width
|
||||
visible: activePrinter != null
|
||||
}
|
||||
|
||||
|
||||
MonitorItem
|
||||
{
|
||||
label: catalog.i18nc("@label", "Job Name")
|
||||
value: activePrintJob != null ? activePrintJob.name : ""
|
||||
width: base.width
|
||||
visible: activePrinter != null
|
||||
}
|
||||
|
||||
MonitorItem
|
||||
{
|
||||
label: catalog.i18nc("@label", "Printing Time")
|
||||
value: activePrintJob != null ? getPrettyTime(activePrintJob.timeTotal) : ""
|
||||
width: base.width
|
||||
visible: activePrinter != null
|
||||
}
|
||||
|
||||
MonitorItem
|
||||
{
|
||||
label: catalog.i18nc("@label", "Estimated time left")
|
||||
value: activePrintJob != null ? getPrettyTime(activePrintJob.timeTotal - activePrintJob.timeElapsed) : ""
|
||||
visible:
|
||||
{
|
||||
if(activePrintJob == null)
|
||||
{
|
||||
return false
|
||||
}
|
||||
|
||||
return (activePrintJob.state == "printing" ||
|
||||
activePrintJob.state == "resuming" ||
|
||||
activePrintJob.state == "pausing" ||
|
||||
activePrintJob.state == "paused")
|
||||
}
|
||||
width: base.width
|
||||
}
|
||||
width: base.width
|
||||
}
|
||||
}
|
||||
}
|
|
@ -12,6 +12,8 @@ Item
|
|||
property alias color: background.color
|
||||
property var extruderModel
|
||||
property var position: index
|
||||
property var connectedPrinter: Cura.MachineManager.printerOutputDevices.length >= 1 ? Cura.MachineManager.printerOutputDevices[0] : null
|
||||
|
||||
implicitWidth: parent.width
|
||||
implicitHeight: UM.Theme.getSize("print_setup_extruder_box").height
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 1.4
|
||||
import QtQuick.Controls.Styles 1.4
|
||||
import QtQuick.Layouts 1.3
|
||||
|
||||
import UM 1.2 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
@ -14,6 +14,7 @@ Item
|
|||
implicitWidth: parent.width
|
||||
height: visible ? UM.Theme.getSize("print_setup_extruder_box").height : 0
|
||||
property var printerModel
|
||||
property var connectedPrinter: Cura.MachineManager.printerOutputDevices.length >= 1 ? Cura.MachineManager.printerOutputDevices[0] : null
|
||||
|
||||
Rectangle
|
||||
{
|
||||
|
@ -114,7 +115,7 @@ Item
|
|||
{
|
||||
return false; //Can't preheat if not connected.
|
||||
}
|
||||
if (!connectedPrinter.acceptsCommands)
|
||||
if (connectedPrinter == null || !connectedPrinter.acceptsCommands)
|
||||
{
|
||||
return false; //Not allowed to do anything.
|
||||
}
|
||||
|
|
|
@ -1,103 +1,26 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 1.4
|
||||
import QtQuick.Controls.Styles 1.4
|
||||
import QtQuick.Layouts 1.3
|
||||
|
||||
import UM 1.2 as UM
|
||||
import UM 1.3 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
||||
import "."
|
||||
|
||||
|
||||
Item
|
||||
{
|
||||
property var printerModel
|
||||
property var printerModel: null
|
||||
property var activePrintJob: printerModel != null ? printerModel.activePrintJob : null
|
||||
property var connectedPrinter: Cura.MachineManager.printerOutputDevices.length >= 1 ? Cura.MachineManager.printerOutputDevices[0] : null
|
||||
|
||||
implicitWidth: parent.width
|
||||
implicitHeight: childrenRect.height
|
||||
|
||||
Component
|
||||
{
|
||||
id: monitorButtonStyle
|
||||
|
||||
ButtonStyle
|
||||
{
|
||||
background: Rectangle
|
||||
{
|
||||
border.width: UM.Theme.getSize("default_lining").width
|
||||
border.color:
|
||||
{
|
||||
if(!control.enabled)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_disabled_border");
|
||||
}
|
||||
else if(control.pressed)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_active_border");
|
||||
}
|
||||
else if(control.hovered)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_hovered_border");
|
||||
}
|
||||
return UM.Theme.getColor("action_button_border");
|
||||
}
|
||||
color:
|
||||
{
|
||||
if(!control.enabled)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_disabled");
|
||||
}
|
||||
else if(control.pressed)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_active");
|
||||
}
|
||||
else if(control.hovered)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_hovered");
|
||||
}
|
||||
return UM.Theme.getColor("action_button");
|
||||
}
|
||||
Behavior on color
|
||||
{
|
||||
ColorAnimation
|
||||
{
|
||||
duration: 50
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
label: Item
|
||||
{
|
||||
UM.RecolorImage
|
||||
{
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.horizontalCenter: parent.horizontalCenter
|
||||
width: Math.floor(control.width / 2)
|
||||
height: Math.floor(control.height / 2)
|
||||
sourceSize.width: width
|
||||
sourceSize.height: width
|
||||
color:
|
||||
{
|
||||
if(!control.enabled)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_disabled_text");
|
||||
}
|
||||
else if(control.pressed)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_active_text");
|
||||
}
|
||||
else if(control.hovered)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_hovered_text");
|
||||
}
|
||||
return UM.Theme.getColor("action_button_text");
|
||||
}
|
||||
source: control.iconSource
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column
|
||||
{
|
||||
enabled:
|
||||
|
@ -180,7 +103,7 @@ Item
|
|||
Layout.preferredWidth: width
|
||||
Layout.preferredHeight: height
|
||||
iconSource: UM.Theme.getIcon("arrow_top");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -197,7 +120,7 @@ Item
|
|||
Layout.preferredWidth: width
|
||||
Layout.preferredHeight: height
|
||||
iconSource: UM.Theme.getIcon("arrow_left");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -214,7 +137,7 @@ Item
|
|||
Layout.preferredWidth: width
|
||||
Layout.preferredHeight: height
|
||||
iconSource: UM.Theme.getIcon("arrow_right");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -231,7 +154,7 @@ Item
|
|||
Layout.preferredWidth: width
|
||||
Layout.preferredHeight: height
|
||||
iconSource: UM.Theme.getIcon("arrow_bottom");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -248,7 +171,7 @@ Item
|
|||
Layout.preferredWidth: width
|
||||
Layout.preferredHeight: height
|
||||
iconSource: UM.Theme.getIcon("home");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -278,7 +201,7 @@ Item
|
|||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("arrow_top");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -291,7 +214,7 @@ Item
|
|||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("home");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -304,7 +227,7 @@ Item
|
|||
Button
|
||||
{
|
||||
iconSource: UM.Theme.getIcon("arrow_bottom");
|
||||
style: monitorButtonStyle
|
||||
style: UM.Theme.styles.monitor_button_style
|
||||
width: height
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
||||
|
@ -356,72 +279,7 @@ Item
|
|||
checked: distancesRow.currentDistance == model.value
|
||||
onClicked: distancesRow.currentDistance = model.value
|
||||
|
||||
style: ButtonStyle {
|
||||
background: Rectangle {
|
||||
border.width: control.checked ? UM.Theme.getSize("default_lining").width * 2 : UM.Theme.getSize("default_lining").width
|
||||
border.color:
|
||||
{
|
||||
if(!control.enabled)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_disabled_border");
|
||||
}
|
||||
else if (control.checked || control.pressed)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_active_border");
|
||||
}
|
||||
else if(control.hovered)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_hovered_border");
|
||||
}
|
||||
return UM.Theme.getColor("action_button_border");
|
||||
}
|
||||
color:
|
||||
{
|
||||
if(!control.enabled)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_disabled");
|
||||
}
|
||||
else if (control.checked || control.pressed)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_active");
|
||||
}
|
||||
else if (control.hovered)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_hovered");
|
||||
}
|
||||
return UM.Theme.getColor("action_button");
|
||||
}
|
||||
Behavior on color { ColorAnimation { duration: 50; } }
|
||||
Label {
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
anchors.leftMargin: UM.Theme.getSize("default_lining").width * 2
|
||||
anchors.rightMargin: UM.Theme.getSize("default_lining").width * 2
|
||||
color:
|
||||
{
|
||||
if(!control.enabled)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_disabled_text");
|
||||
}
|
||||
else if (control.checked || control.pressed)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_active_text");
|
||||
}
|
||||
else if (control.hovered)
|
||||
{
|
||||
return UM.Theme.getColor("action_button_hovered_text");
|
||||
}
|
||||
return UM.Theme.getColor("action_button_text");
|
||||
}
|
||||
font: UM.Theme.getFont("default")
|
||||
text: control.text
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
elide: Text.ElideMiddle
|
||||
}
|
||||
}
|
||||
label: Item { }
|
||||
}
|
||||
style: UM.Theme.styles.monitor_checkable_button_style
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -462,7 +320,7 @@ Item
|
|||
if (printerModel == null) {
|
||||
return false // Can't send custom commands if not connected.
|
||||
}
|
||||
if (!connectedPrinter.acceptsCommands) {
|
||||
if (connectedPrinter == null || !connectedPrinter.acceptsCommands) {
|
||||
return false // Not allowed to do anything
|
||||
}
|
||||
if (connectedPrinter.jobState == "printing" || connectedPrinter.jobState == "pre_print" || connectedPrinter.jobState == "resuming" || connectedPrinter.jobState == "pausing" || connectedPrinter.jobState == "paused" || connectedPrinter.jobState == "error" || connectedPrinter.jobState == "offline") {
|
||||
|
@ -551,4 +409,4 @@ Item
|
|||
}
|
||||
ExclusiveGroup { id: distanceGroup }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,6 +15,8 @@ Item
|
|||
property string value: ""
|
||||
height: childrenRect.height;
|
||||
|
||||
property var connectedPrinter: Cura.MachineManager.printerOutputDevices.length >= 1 ? Cura.MachineManager.printerOutputDevices[0] : null
|
||||
|
||||
Row
|
||||
{
|
||||
height: UM.Theme.getSize("setting_control").height
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
// Copyright (c) 2017 Ultimaker B.V.
|
||||
// Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
import QtQuick 2.2
|
||||
import QtQuick.Controls 1.1
|
||||
import QtQuick.Controls.Styles 1.1
|
||||
import QtQuick.Layouts 1.1
|
||||
import QtQuick 2.10
|
||||
import QtQuick.Controls 1.4
|
||||
import QtQuick.Controls.Styles 1.4
|
||||
import QtQuick.Layouts 1.3
|
||||
|
||||
import UM 1.2 as UM
|
||||
import Cura 1.0 as Cura
|
||||
|
@ -13,7 +13,8 @@ Item
|
|||
{
|
||||
id: base
|
||||
property string label
|
||||
height: childrenRect.height;
|
||||
height: childrenRect.height
|
||||
|
||||
Rectangle
|
||||
{
|
||||
color: UM.Theme.getColor("setting_category")
|
||||
|
@ -30,4 +31,4 @@ Item
|
|||
color: UM.Theme.getColor("setting_category_text")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -45,8 +45,8 @@ Item
|
|||
text: (outputDevice != null && outputDevice.address != null) ? outputDevice.address : ""
|
||||
font: UM.Theme.getFont("small")
|
||||
color: UM.Theme.getColor("text_inactive")
|
||||
anchors.top: parent.top
|
||||
anchors.right: parent.right
|
||||
anchors.top: outputDeviceNameLabel.bottom
|
||||
anchors.left: parent.left
|
||||
anchors.margins: UM.Theme.getSize("default_margin").width
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue