From 20c811958568ed2bfe2992ccd819251fe46926ee Mon Sep 17 00:00:00 2001 From: Philipp Zabel Date: Wed, 24 Feb 2010 18:34:19 +0100 Subject: [PATCH] LED program dialog: add LED color button --- src/led-program-dialog.vala | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/src/led-program-dialog.vala b/src/led-program-dialog.vala index 2fec429..b3e9614 100644 --- a/src/led-program-dialog.vala +++ b/src/led-program-dialog.vala @@ -47,6 +47,13 @@ class LedProgramDialog : Gtk.Dialog { content.show_all (); + var led_color = new LedColorButton.with_map (lpv.pattern.led_map); + led_color.clicked.connect (on_color_clicked); + add_action_widget (led_color, 2); + action_area.set_child_secondary (led_color, true); + + action_area.show_all (); + add_button ("Test", 1); add_button ("Done", Gtk.ResponseType.ACCEPT); @@ -82,4 +89,37 @@ class LedProgramDialog : Gtk.Dialog { return false; } + + void on_color_clicked (Gtk.Button button) { + var dialog = new LedColorDialog (); + int response = dialog.run (); + if (response > 0) { + ((LedColorButton) button).set_color ((LedColor) response); + switch ((LedColor) response) { + case LedColor.R: + lpv.pattern.led_map = "r"; + break; + case LedColor.G: + lpv.pattern.led_map = "g"; + break; + case LedColor.B: + lpv.pattern.led_map = "b"; + break; + case LedColor.RG: + lpv.pattern.led_map = "rg"; + break; + case LedColor.RB: + lpv.pattern.led_map = "rb"; + break; + case LedColor.GB: + lpv.pattern.led_map = "gb"; + break; + case LedColor.RGB: + lpv.pattern.led_map = "rgb"; + break; + } + lpv.pattern.changed (); + } + dialog.destroy (); + } } -- 1.7.9.5