Add extruder combobox popup styling

This commit is contained in:
fieldOfView 2018-01-24 16:29:36 +01:00
parent 428dfeaed7
commit 19e74a2d45

View file

@ -108,33 +108,28 @@ SettingItem
} }
} }
contentItem: Item contentItem: Label
{ {
Label anchors.verticalCenter: parent.verticalCenter
{ anchors.left: parent.left
id: extruderText anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width
anchors.right: downArrow.left
rightPadding: swatch.width + UM.Theme.getSize("setting_unit_margin").width
anchors.verticalCenter: parent.verticalCenter text: control.currentText
anchors.left: parent.left font: UM.Theme.getFont("default")
anchors.leftMargin: UM.Theme.getSize("setting_unit_margin").width color: enabled ? UM.Theme.getColor("setting_control_text") : UM.Theme.getColor("setting_control_disabled_text")
anchors.right: swatch.left
text: control.currentText elide: Text.ElideLeft
font: UM.Theme.getFont("default") verticalAlignment: Text.AlignVCenter
color: enabled ? UM.Theme.getColor("setting_control_text") : UM.Theme.getColor("setting_control_disabled_text")
elide: Text.ElideLeft background: Rectangle
verticalAlignment: Text.AlignVCenter
}
Rectangle
{ {
id: swatch id: swatch
height: UM.Theme.getSize("setting_control").height / 2 height: UM.Theme.getSize("setting_control").height / 2
width: height width: height
anchors.right: parent.right anchors.right: parent.right
anchors.rightMargin: downArrow.width + UM.Theme.getSize("setting_unit_margin").width
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
anchors.margins: UM.Theme.getSize("default_margin").width / 4 anchors.margins: UM.Theme.getSize("default_margin").width / 4
@ -146,13 +141,35 @@ SettingItem
} }
} }
popup: Popup {
y: control.height - UM.Theme.getSize("default_lining").height
width: control.width
implicitHeight: contentItem.implicitHeight
padding: UM.Theme.getSize("default_lining").width
contentItem: ListView {
clip: true
implicitHeight: contentHeight
model: control.popup.visible ? control.delegateModel : null
currentIndex: control.highlightedIndex
ScrollIndicator.vertical: ScrollIndicator { }
}
background: Rectangle {
color: UM.Theme.getColor("setting_control")
border.color: UM.Theme.getColor("setting_control_border")
}
}
delegate: ItemDelegate delegate: ItemDelegate
{ {
width: control.width width: control.width - 2 * UM.Theme.getSize("default_lining").width
height: control.height height: control.height
highlighted: control.highlightedIndex == index highlighted: control.highlightedIndex == index
contentItem: Text contentItem: Label
{ {
text: model.name text: model.name
color: UM.Theme.getColor("setting_control_text") color: UM.Theme.getColor("setting_control_text")
@ -160,6 +177,12 @@ SettingItem
elide: Text.ElideRight elide: Text.ElideRight
verticalAlignment: Text.AlignVCenter verticalAlignment: Text.AlignVCenter
} }
background: Rectangle
{
color: parent.highlighted ? UM.Theme.getColor("setting_control_highlight") : "transparent"
border.color: parent.highlighted ? UM.Theme.getColor("setting_control_border_highlight") : "transparent"
}
} }
} }
} }