WIP: Fix highlighting of selected network printer

This commit is contained in:
Lipu Fei 2019-03-13 11:03:23 +01:00
parent 60f6d881a3
commit f7f5123fea
3 changed files with 9 additions and 3 deletions

View file

@ -22,6 +22,9 @@ class DiscoveredPrinter(QObject):
nameChanged = pyqtSignal() nameChanged = pyqtSignal()
def getKey(self) -> str:
return self._key
@pyqtProperty(str, notify = nameChanged) @pyqtProperty(str, notify = nameChanged)
def name(self) -> str: def name(self) -> str:
return self._name return self._name
@ -101,4 +104,4 @@ class DiscoveredPrinterModel(QObject):
@pyqtSlot("QVariant") @pyqtSlot("QVariant")
def createMachineFromDiscoveredPrinter(self, discovered_printer: "DiscoveredPrinter") -> None: def createMachineFromDiscoveredPrinter(self, discovered_printer: "DiscoveredPrinter") -> None:
discovered_printer.create_callback() discovered_printer.create_callback(discovered_printer.getKey())

View file

@ -19,6 +19,8 @@ Button
checkable: true checkable: true
hoverEnabled: true hoverEnabled: true
property bool selected: checked
property var outputDevice: null property var outputDevice: null
property var printerTypesList: [] property var printerTypesList: []
@ -79,7 +81,7 @@ Button
color: machineSelectorButton.hovered ? UM.Theme.getColor("action_button_hovered") : "transparent" color: machineSelectorButton.hovered ? UM.Theme.getColor("action_button_hovered") : "transparent"
radius: UM.Theme.getSize("action_button_radius").width radius: UM.Theme.getSize("action_button_radius").width
border.width: UM.Theme.getSize("default_lining").width border.width: UM.Theme.getSize("default_lining").width
border.color: machineSelectorButton.checked ? UM.Theme.getColor("primary") : "transparent" border.color: machineSelectorButton.selected ? UM.Theme.getColor("primary") : "transparent"
} }
Connections Connections

View file

@ -57,7 +57,8 @@ Item
anchors.rightMargin: 10 anchors.rightMargin: 10
outputDevice: modelData.device outputDevice: modelData.device
checked: ListView.view.currentIndex == index checkable: false
selected: ListView.view.currentIndex == model.index
onClicked: onClicked:
{ {
ListView.view.currentIndex = index ListView.view.currentIndex = index