]> Pileus Git - ~andy/csm213a-hw/blobdiff - vis/visual.py
Update settings
[~andy/csm213a-hw] / vis / visual.py
index 5d0ff3976025271bdc1080b62e6440036af9a597..6d06ba4444bf6a478cdafd0dbef54a1157f94fc9 100644 (file)
@@ -56,6 +56,16 @@ class Visual:
                print("Unimplemented: on_rate")
                return True
 
+       def on_config(self, obj):
+               name = Gtk.Buildable.get_name(obj)
+               if isinstance(obj, Gtk.SpinButton):
+                       value = obj.get_value()
+               else:
+                       value = obj.get_text()
+               if getattr(self.config, name) != value:
+                       setattr(self.config, name, value)
+                       self.config.save()
+
        def on_key(self, win, ev):
                if ev.string == 'q':
                        Gtk.main_quit();
@@ -78,14 +88,12 @@ class Visual:
                stopb.set_value(self.config.stopbits)
 
                # Xively settings
-               user  = self.builder.get_object("username")
-               pwd   = self.builder.get_object("password")
+               feed  = self.builder.get_object("feedid")
                api   = self.builder.get_object("apikey")
-               user.set_text(self.config.username)
-               pwd.set_text(self.config.password)
+               rate  = self.builder.get_object("maxrate")
+               feed.set_text(self.config.feedid)
                api.set_text(self.config.apikey)
-
-               # TODO - send changes back to config
+               rate.set_value(self.config.maxrate)
 
        def update(self, state):
                def setxyz(objs, vals):
@@ -139,4 +147,3 @@ class Visual:
                        return
                status = self.builder.get_object("status")
                status.push(text=('Error: ' + msg), context_id=0)
-