Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgnacio Rodríguez <ignaciorodriguez@sugarlabs.org>2013-12-06 16:25:52 (GMT)
committer Ignacio Rodríguez <ignaciorodriguez@sugarlabs.org>2013-12-06 16:25:52 (GMT)
commit4f76585d526de05866a56a8524170afaa41ae84c (patch)
treea74da4991f248b12cdce6cec774e797bdc247650
parentd6dd98b04dea43bb58ca44e212f0e082237bce41 (diff)
Add radio buttons for select counter
-rw-r--r--stopwatch.py26
1 files changed, 23 insertions, 3 deletions
diff --git a/stopwatch.py b/stopwatch.py
index 6d4971e..d4a94d6 100644
--- a/stopwatch.py
+++ b/stopwatch.py
@@ -157,7 +157,10 @@ class OneWatchView():
self._timeval = 0
self._offset = self._timer.get_offset()
-
+
+ self._radiobutton = gtk.RadioButton()
+ self._radiobutton.connect('clicked', self.counter_changed)
+
self._name = gtk.Entry()
self._name_changed_handler = self._name.connect('changed', self._name_cb)
self._name_lock = threading.Lock()
@@ -206,6 +209,7 @@ class OneWatchView():
self._label_lock = threading.Lock()
self.box = gtk.HBox()
+ self.box.pack_start(self._radiobutton, False, False, 2)
self.box.pack_start(self._name, padding=6)
self.box.pack_start(self._run_button, expand=False)
self.box.pack_start(self._reset_button, expand=False)
@@ -251,7 +255,10 @@ class OneWatchView():
self._watch_model.register_view_listener(self.update_state)
thread.start_new_thread(self._start_running, ())
-
+
+ def counter_changed(self, counter):
+ self.counter = counter
+
def update_state(self, q):
self._logger.debug("update_state: "+str(q))
self._update_lock.acquire()
@@ -396,14 +403,20 @@ class OneWatchView():
# KP_Page_Up == O gamekey = 65434
def _keypress_cb(self, widget, event):
self._logger.debug("key press: " + gtk.gdk.keyval_name(event.keyval)+ " " + str(event.keyval))
+
+ if not self._radiobutton.get_active():
+ return False
+
if event.keyval == 65436:
self._run_button.clicked()
elif event.keyval == 65434:
self._reset_button.clicked()
elif event.keyval == 65435:
self._mark_button.clicked()
+
return False
-
+
+
class GUIView():
NUM_WATCHES = 9
@@ -413,6 +426,7 @@ class GUIView():
self._names = []
self._watches = []
self._markers = []
+ level = None
for i in xrange(GUIView.NUM_WATCHES):
name_handler = dobject.UnorderedHandler("name"+str(i), tubebox)
name_model = dobject.Latest(name_handler, gettext("Stopwatch") + " " + locale.str(i+1), time_handler=timer, translator=dobject.string_translator)
@@ -424,6 +438,12 @@ class GUIView():
marks_model = dobject.AddOnlySet(marks_handler, translator = dobject.float_translator)
self._markers.append(marks_model)
watch_view = OneWatchView(watch_model, name_model, marks_model, timer, activity)
+
+ if not level:
+ level = watch_view._radiobutton
+ else:
+ watch_view._radiobutton.set_group(level)
+
self._views.append(watch_view)
self.display = gtk.VBox()