Led light control, close #991 (#1106)

* feature: add leds panel

* Various refactors and improvements

* lint fixes

* led: use more columns for the selector

* leds: name in the title

* mainsail presets

* change sliders to horizontal to avoid visual bug, simplify defaults

* led: add a color preview and simplify methods to fix some issues

* simplify presets move all the logic to the panel

* led: change presets from names to previews

* preview label shows color, add vertical mode

* led: colored previews as rectangles instead of circles

---------

Co-authored-by: alfrix <alfredomonclus@gmail.com>
This commit is contained in:
Vasilyev_Andrey
2023-09-24 13:44:29 -07:00
committed by GitHub
parent 584e4fe902
commit 87d09036ee
5 changed files with 269 additions and 1 deletions

View File

@@ -261,6 +261,8 @@ class KlipperScreen(Gtk.Window):
requested_updates['objects'][f] = ["enabled", "filament_detected"]
for p in self.printer.get_output_pins():
requested_updates['objects'][p] = ["value"]
for led in self.printer.get_leds():
requested_updates['objects'][led] = ["color_data"]
self._ws.klippy.object_subscription(requested_updates)
@@ -904,6 +906,7 @@ class KlipperScreen(Gtk.Window):
+ self.printer.get_fans()
+ self.printer.get_filament_sensors()
+ self.printer.get_output_pins()
+ self.printer.get_leds()
)
data = self.apiclient.send_request("printer/objects/query?" + "&".join(PRINTER_BASE_STATUS_OBJECTS +