mirror of
https://github.com/slint-ui/slint.git
synced 2025-10-02 06:41:14 +00:00
Start with the wide printer queue
This commit is contained in:
parent
2b43587e79
commit
55ea583abb
2 changed files with 86 additions and 6 deletions
|
@ -9,7 +9,7 @@
|
||||||
LICENSE END */
|
LICENSE END */
|
||||||
|
|
||||||
import { DemoPalette, Page, SpinBox, Label, ComboBox, PushButton, PrinterQueueItem } from "./common.60";
|
import { DemoPalette, Page, SpinBox, Label, ComboBox, PushButton, PrinterQueueItem } from "./common.60";
|
||||||
import { PrinterQueueList } from "./printer_queue.60";
|
import { WidePrinterQueueList } from "./printer_queue.60";
|
||||||
|
|
||||||
|
|
||||||
export PrintPage := Page {
|
export PrintPage := Page {
|
||||||
|
@ -32,7 +32,7 @@ export PrintPage := Page {
|
||||||
}
|
}
|
||||||
|
|
||||||
Row {
|
Row {
|
||||||
queue := PrinterQueueList {
|
queue := WidePrinterQueueList {
|
||||||
viewport_width: root.width;
|
viewport_width: root.width;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,7 +82,7 @@ PrintDetails := GridLayout {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
PrintQueueElement := Rectangle {
|
NarrowPrintQueueElement := Rectangle {
|
||||||
property <PrinterQueueItem> queue_item;
|
property <PrinterQueueItem> queue_item;
|
||||||
|
|
||||||
border-color: DemoPalette.control_outline_color;
|
border-color: DemoPalette.control_outline_color;
|
||||||
|
@ -146,7 +146,7 @@ PrintQueueElement := Rectangle {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export PrinterQueueList := Flickable {
|
NarrowPrinterQueueList := Flickable {
|
||||||
property <[PrinterQueueItem]> printer_queue;
|
property <[PrinterQueueItem]> printer_queue;
|
||||||
viewport_height: 2000px; /* FIXME: the flickable needs to learn its viewport height from the layout */
|
viewport_height: 2000px; /* FIXME: the flickable needs to learn its viewport height from the layout */
|
||||||
|
|
||||||
|
@ -155,7 +155,87 @@ export PrinterQueueList := Flickable {
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
spacing: 13.5px;
|
spacing: 13.5px;
|
||||||
|
|
||||||
for queue_item[idx] in root.printer_queue: PrintQueueElement {
|
for queue_item[idx] in root.printer_queue: NarrowPrintQueueElement {
|
||||||
|
queue_item: queue_item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
WidePrintQueueElement := Rectangle {
|
||||||
|
property <PrinterQueueItem> queue_item;
|
||||||
|
|
||||||
|
border-color: DemoPalette.control_outline_color;
|
||||||
|
border-radius: 14px;
|
||||||
|
border-width: 2px;
|
||||||
|
background: DemoPalette.printer_queue_item_background_color;
|
||||||
|
|
||||||
|
GridLayout {
|
||||||
|
padding: parent.border_radius;
|
||||||
|
spacing: 0px;
|
||||||
|
|
||||||
|
Row {
|
||||||
|
VerticalLayout {
|
||||||
|
colspan: 2;
|
||||||
|
|
||||||
|
Text {
|
||||||
|
// TODO: text-transform: uppercase
|
||||||
|
text: {
|
||||||
|
if (queue_item.status == "PRINTING") {
|
||||||
|
"\{queue_item.progress}% - \{queue_item.status}"
|
||||||
|
} else {
|
||||||
|
queue_item.status
|
||||||
|
}
|
||||||
|
}
|
||||||
|
color: DemoPalette.status_label_text_color;
|
||||||
|
font-size: DemoPalette.base_font_size * 0.75;
|
||||||
|
font-weight: 800;
|
||||||
|
letter-spacing: 1.56px;
|
||||||
|
}
|
||||||
|
|
||||||
|
Text {
|
||||||
|
text: queue_item.title;
|
||||||
|
overflow: elide;
|
||||||
|
font-weight: 800;
|
||||||
|
font-size: DemoPalette.base_font_size * 1.125;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Rectangle {}
|
||||||
|
|
||||||
|
PrintDetails {
|
||||||
|
colspan: 2;
|
||||||
|
rowspan: 3;
|
||||||
|
|
||||||
|
padding: 0px;
|
||||||
|
padding-bottom: root.border-radius / 2;
|
||||||
|
queue_item: root.queue_item;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Row {}
|
||||||
|
|
||||||
|
Row {
|
||||||
|
PushButton {
|
||||||
|
text: "Pause";
|
||||||
|
}
|
||||||
|
PushButton {
|
||||||
|
primary: false;
|
||||||
|
text: "Delete";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export WidePrinterQueueList := Flickable {
|
||||||
|
property <[PrinterQueueItem]> printer_queue;
|
||||||
|
viewport_height: 2000px; /* FIXME: the flickable needs to learn its viewport height from the layout */
|
||||||
|
|
||||||
|
VerticalLayout {
|
||||||
|
alignment: start;
|
||||||
|
padding: 0px;
|
||||||
|
spacing: 13.5px;
|
||||||
|
|
||||||
|
for queue_item[idx] in root.printer_queue: WidePrintQueueElement {
|
||||||
queue_item: queue_item;
|
queue_item: queue_item;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -179,7 +259,7 @@ export PrinterQueue := Rectangle {
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
|
|
||||||
queue_list := PrinterQueueList {
|
queue_list := NarrowPrinterQueueList {
|
||||||
viewport_width: root.width - 2 * root.border_radius;
|
viewport_width: root.width - 2 * root.border_radius;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue