diff ui/main_window.py @ 3:eb2aa09653bd default tip

beginnings of CPU colors, daemon
author Brad Greco <brad@bgreco.net>
date Mon, 29 Mar 2021 20:27:09 -0400
parents 091a1f59a79c
children
line wrap: on
line diff
--- a/ui/main_window.py	Tue Mar 02 20:17:36 2021 -0500
+++ b/ui/main_window.py	Mon Mar 29 20:27:09 2021 -0400
@@ -1,3 +1,4 @@
+import itertools
 import gi
 import os
 from keyboard_colors.color_profile import ProfileManager
@@ -50,6 +51,10 @@
         window.show_all()
         Gtk.main()
 
+    def load_color_profiles(self):
+        for profile in self.profile_manager.get_profiles().values():
+            self.color_profile_list_store.append([profile.id, profile.name])
+
     def create_profile(self, widget, profile_type):
         # todo move to profile manager
         profile = profile_type()
@@ -61,7 +66,8 @@
         self.builder.get_object('edit_profile_name_entry').grab_focus()
 
     def edit_profile(self, profile):
-        self.builder.get_object('edit_profile_box').show()
+        edit_profile_box = self.builder.get_object('edit_profile_box')
+        edit_profile_box.show()
 
         self.builder.get_object('edit_profile_type_name_label').set_text(profile.type_name)
         self.builder.get_object('edit_profile_name_entry').set_text(profile.name)
@@ -71,6 +77,22 @@
             edit_profile_details_box.remove(child)
         edit_profile_details_box.add(profile.build_settings_ui())
 
+        edit_profile_entries = self.find_descendents(edit_profile_box, Gtk.Entry)
+        pass
+
+    def find_descendents(self, widget, type):
+        if isinstance(widget, type):
+            return [widget]
+
+        try:
+            matches = []
+            for child in widget.get_children():
+                matches = matches + self.find_descendents(child, type)
+            return matches
+        except AttributeError:
+            return []
+
+
     def profile_tree_view_selection_changed(self, selection):
         (model, tree_iter) = selection.get_selected()
         profile_id = model.get_value(tree_iter, 0)
@@ -85,10 +107,6 @@
     def edit_profile_name_entry_focus_out(self, entry, event):
         pass
 
-    def load_color_profiles(self):
-        for profile in self.profile_manager.get_profiles().values():
-            self.color_profile_list_store.append([profile.id, profile.name])
-
 class KeyboardSection(Gtk.Grid):
 
     def __init__(self, model):