CL-118 Add support and text for disabled printers and print jobs which require config changes.

This commit is contained in:
Simon Edwards 2017-09-28 11:21:17 +02:00
parent 07899ba798
commit 4ca8bc5a9e

View file

@ -199,10 +199,10 @@ Rectangle
property var showExtended: { property var showExtended: {
if(printJob!= null) if(printJob!= null)
{ {
var extendStates = ["sent_to_printer", "wait_for_configuration", "printing", "pre_print", "post_print", "wait_cleanup"]; var extendStates = ["sent_to_printer", "wait_for_configuration", "printing", "pre_print", "post_print", "wait_cleanup", "queued"];
return extendStates.indexOf(printJob.status) !== -1; return extendStates.indexOf(printJob.status) !== -1;
} }
return false return ! printer.enabled;
} }
visible: visible:
{ {
@ -227,6 +227,11 @@ Rectangle
anchors.right: progressText.left anchors.right: progressText.left
anchors.rightMargin: UM.Theme.getSize("default_margin").width anchors.rightMargin: UM.Theme.getSize("default_margin").width
text: { text: {
if ( ! printer.enabled)
{
return catalog.i18nc("@label:status", "Disabled");
}
if(printJob != null) if(printJob != null)
{ {
if(printJob.status == "printing" || printJob.status == "post_print") if(printJob.status == "printing" || printJob.status == "post_print")
@ -245,12 +250,16 @@ Rectangle
{ {
return catalog.i18nc("@label:status", "Preparing") return catalog.i18nc("@label:status", "Preparing")
} }
else if (printJob.configuration_changes_required != undefined && printJob.status == "queued")
{
return catalog.i18nc("@label:status", "Required action")
}
else else
{ {
return "" return printJob.status;
} }
} }
return catalog.i18nc("@label:status", "Available") return catalog.i18nc("@label:status", "Available");
} }
elide: Text.ElideRight elide: Text.ElideRight
@ -292,29 +301,37 @@ Rectangle
width: parent.width - 2 * UM.Theme.getSize("default_margin").width width: parent.width - 2 * UM.Theme.getSize("default_margin").width
visible: printJob != null && (["wait_cleanup", "printing", "pre_print", "wait_for_configuration"].indexOf(printJob.status) !== -1) visible: showExtended
Label // Status detail Label // Status detail
{ {
text: text:
{ {
if ( ! printer.enabled)
{
return catalog.i18nc("@label", "Not accepting print jobs");
}
if(printJob != null) if(printJob != null)
{ {
if(printJob.status == "printing" ) switch (printJob.status)
{ {
case "printing":
return catalog.i18nc("@label", "Finishes at: ") + OutputDevice.getTimeCompleted(printJob.time_total - printJob.time_elapsed) return catalog.i18nc("@label", "Finishes at: ") + OutputDevice.getTimeCompleted(printJob.time_total - printJob.time_elapsed)
} case "wait_cleanup":
if(printJob.status == "wait_cleanup")
{
return catalog.i18nc("@label", "Clear build plate") return catalog.i18nc("@label", "Clear build plate")
} case "sent_to_printer":
if(printJob.status == "sent_to_printer" || printJob.status == "pre_print") case "pre_print":
{
return catalog.i18nc("@label", "Preparing to print") return catalog.i18nc("@label", "Preparing to print")
} case "wait_for_configuration":
if(printJob.status == "wait_for_configuration")
{
return catalog.i18nc("@label", "Not accepting print jobs") return catalog.i18nc("@label", "Not accepting print jobs")
case "queued":
if (printJob.configuration_changes_required != undefined)
{
return catalog.i18nc("@label", "Configuration change");
}
default:
return "";
} }
} }
return "" return ""