CURA-4870 Prepare the UI to show the list of configurations

This commit is contained in:
Diego Prado Gesto 2018-03-04 17:26:37 +01:00
parent 6e35fc5035
commit 49fcf35d9b
9 changed files with 113 additions and 100 deletions

View file

@ -11,7 +11,7 @@ Rectangle
{
id: configurationItem
property var printer: null
property var configuration: null
signal configurationSelected()
height: childrenRect.height
@ -26,7 +26,7 @@ Rectangle
Label
{
text: printer.name
text: configuration.printerType
}
Row
@ -41,7 +41,7 @@ Rectangle
Repeater
{
height: childrenRect.height
model: printer.extruders
model: configuration.extruderConfigurations
delegate: PrintCoreConfiguration
{
printCoreConfiguration: modelData
@ -55,7 +55,7 @@ Rectangle
//
// Label
// {
// text: printer.name + "-" + printer.type
// text: configuration.buildplateConfiguration
// }
// }
}

View file

@ -2,7 +2,8 @@
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
import UM 1.2 as UM
import Cura 1.0 as Cura
@ -21,12 +22,13 @@ Column
width: parent.width - 2 * parent.padding
}
Item
{
ScrollView {
id: container
width: parent.width - 2 * parent.padding
height: childrenRect.height
style: UM.Theme.styles.scrollview
Repeater {
height: childrenRect.height
model: outputDevice != null ? outputDevice.connectedPrintersTypeCount : null
@ -42,23 +44,24 @@ Column
ListView
{
id: grid
id: configurationList
anchors.top: printerTypeHeader.bottom
anchors.topMargin: UM.Theme.getSize("default_margin").height
width: container.width
height: childrenRect.height
model: outputDevice.printers
model: outputDevice.uniqueConfigurations
delegate: ConfigurationItem
{
height: parent.height
width: parent.width
printer: modelData
configuration: modelData
onConfigurationSelected:
{
print("SELECCIONANDO IMPRESORA", printer.name)
outputDevice.setActivePrinter(printer)
print("SELECCIONANDO CONFIGURACION", JSON.stringify(configuration))
}
Component.onCompleted: {print("$$$$$$$$$$$$$$$$$$ Configuracion", JSON.stringify(configuration))}
}
Component.onCompleted: {print("$$$$$$$$$$$$$$$$$$ Elementos del modelo", JSON.stringify(outputDevice.uniqueConfigurations))}
}
}
}

View file

@ -2,9 +2,7 @@
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7
import QtQuick.Controls 1.4
import QtQuick.Controls 2.3 as QQC2
import QtQuick.Layouts 1.1
import QtQuick.Controls 2.3
import QtQuick.Controls.Styles 1.4
import UM 1.2 as UM
@ -15,70 +13,10 @@ Item
id: configurationSelector
property var panelWidth: control.width
property var panelVisible: false
Button
{
text: "Matched"
width: parent.width
height: parent.height
style: ButtonStyle
{
background: Rectangle
{
color:
{
if(control.pressed)
{
return UM.Theme.getColor("sidebar_header_active");
}
else if(control.hovered)
{
return UM.Theme.getColor("sidebar_header_hover");
}
else
{
return UM.Theme.getColor("sidebar_header_bar");
}
}
Behavior on color { ColorAnimation { duration: 50; } }
SyncButton { }
UM.RecolorImage
{
id: downArrow
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
anchors.rightMargin: UM.Theme.getSize("default_margin").width
width: UM.Theme.getSize("standard_arrow").width
height: UM.Theme.getSize("standard_arrow").height
sourceSize.width: width
sourceSize.height: width
color: UM.Theme.getColor("text_emphasis")
source: UM.Theme.getIcon("arrow_bottom")
}
Label
{
id: sidebarComboBoxLabel
color: UM.Theme.getColor("sidebar_header_text_active")
text: control.text
elide: Text.ElideRight
anchors.left: parent.left
anchors.leftMargin: UM.Theme.getSize("default_margin").width * 2
anchors.right: downArrow.left
anchors.rightMargin: control.rightMargin
anchors.verticalCenter: parent.verticalCenter;
font: UM.Theme.getFont("large")
}
}
label: Label {}
}
onClicked:
{
panelVisible = !panelVisible
}
}
QQC2.Popup
Popup
{
id: popup
y: configurationSelector.height - UM.Theme.getSize("default_lining").height

View file

@ -17,7 +17,7 @@ Item
Label
{
id: materialLabel
text: printCoreConfiguration.activeMaterial != null ? printCoreConfiguration.activeMaterial.name : ""
text: printCoreConfiguration.material
elide: Text.ElideRight
width: parent.width
font: UM.Theme.getFont("very_small")

View file

@ -0,0 +1,71 @@
// Copyright (c) 2018 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
import UM 1.2 as UM
Button
{
text: "Matched"
width: parent.width
height: parent.height
style: ButtonStyle
{
background: Rectangle
{
color:
{
if(control.pressed)
{
return UM.Theme.getColor("sidebar_header_active");
}
else if(control.hovered)
{
return UM.Theme.getColor("sidebar_header_hover");
}
else
{
return UM.Theme.getColor("sidebar_header_bar");
}
}
Behavior on color { ColorAnimation { duration: 50; } }
UM.RecolorImage
{
id: downArrow
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
anchors.rightMargin: UM.Theme.getSize("default_margin").width
width: UM.Theme.getSize("standard_arrow").width
height: UM.Theme.getSize("standard_arrow").height
sourceSize.width: width
sourceSize.height: width
color: UM.Theme.getColor("text_emphasis")
source: UM.Theme.getIcon("arrow_bottom")
}
Label
{
id: sidebarComboBoxLabel
color: UM.Theme.getColor("sidebar_header_text_active")
text: control.text
elide: Text.ElideRight
anchors.left: parent.left
anchors.leftMargin: UM.Theme.getSize("default_margin").width * 2
anchors.right: downArrow.left
anchors.rightMargin: control.rightMargin
anchors.verticalCenter: parent.verticalCenter;
font: UM.Theme.getFont("large")
}
}
label: Label {}
}
onClicked:
{
panelVisible = !panelVisible
}
}