diff options
author | Walther Neuper <neuper@neuper.(none)> | 2009-12-05 09:37:34 (GMT) |
---|---|---|
committer | Walther Neuper <neuper@neuper.(none)> | 2009-12-05 09:37:34 (GMT) |
commit | 7833f0a87d2f2cca46ce0aedfed13a31458abd1a (patch) | |
tree | 3730907ea7280ce31265d896beba3d81211a8288 | |
parent | 054540a1f0635d5c0776b07dee10c4d7abee4388 (diff) |
trial with exaddsimp..buttons
-rwxr-xr-x | ReckonPrimer.activity/exaddsimp.py | 5 | ||||
-rwxr-xr-x | ReckonPrimer.activity/expassten.py | 219 | ||||
-rwxr-xr-x | ReckonPrimer.activity/extimesdiv.py | 9 |
3 files changed, 130 insertions, 103 deletions
diff --git a/ReckonPrimer.activity/exaddsimp.py b/ReckonPrimer.activity/exaddsimp.py index 18f4ad6..9e14f97 100755 --- a/ReckonPrimer.activity/exaddsimp.py +++ b/ReckonPrimer.activity/exaddsimp.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +#(c) Julia Schönhart +#(c) Daniela Zierler import gtk import pygtk @@ -20,7 +22,7 @@ class ExAddSimp(Exercise): # Generate fills up by varying input. 'MIN' : 20, # minimum of calcs generated UNUSED 'min' : 0, # minimum in size of a number in a calc - 'max' : 5, # maximum in size of a number in a calc + 'max' : 1, # maximum in size of a number in a calc # 0 <= min <= max <= 10 '+' : True, # make all additions min..max '-' : True, # make all subtactions min..max @@ -33,6 +35,7 @@ class ExAddSimp(Exercise): 'shuffle': True, # shuffle _all_ the calcs 'cut-max': True # cut set of all calcs down to MAX } + self._calcs = self._generate_calcs() def _generate_calcs(self): _dic = self._sett diff --git a/ReckonPrimer.activity/expassten.py b/ReckonPrimer.activity/expassten.py index 4e387d4..3a3622a 100755 --- a/ReckonPrimer.activity/expassten.py +++ b/ReckonPrimer.activity/expassten.py @@ -1,4 +1,7 @@ # -*- coding: utf-8 -*- +#(c) Markus Ehrenreich 2009 +#(c) Christian Hain 2009 + from Exercise import Exercise import random import copy @@ -34,6 +37,7 @@ class ExPassTen(Exercise): 'shuffle_inner': False, # shuffle only 1st (inner) iteration 'cut-max' : True # cut set of all calcs down to MAX } + self._calcs = self._generate_calcs() def format(self, (cs, ms, linepos)): """format the calc for display, prepare overlays for input""" @@ -215,101 +219,110 @@ class ExPassTen(Exercise): return _calcs def define_buttons(self): - """ See comment in Exercies.define_buttons. """ - - self.toggle_plus = gtk.ToggleButton("+") - self.toggle_label = self.toggle_plus.get_child() - self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_plus.connect("toggled", self.toggle_plus_callback) - self._display.settings_table.attach(self.toggle_plus, 1, 2, 10, 11 ) - self.toggle_plus.show() - - self.toggle_minus = gtk.ToggleButton("-") - self.toggle_label = self.toggle_minus.get_child() - self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_minus.connect("toggled", self.toggle_minus_callback) - self._display.settings_table.attach(self.toggle_minus, 1, 2, 9, 10 ) + """ See comment in Exercies.define_buttons. """ + self.toggle_plus = gtk.ToggleButton("+")
+ self.toggle_label = self.toggle_plus.get_child()
+ self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_plus.connect("toggled", self.toggle_plus_callback)
+ self._display.settings_table.attach(self.toggle_plus, 1, 2, 10, 11 )
+ self.toggle_plus.show()
+
+ self.toggle_minus = gtk.ToggleButton("-")
+ self.toggle_label = self.toggle_minus.get_child()
+ self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_minus.connect("toggled", self.toggle_minus_callback)
+ self._display.settings_table.attach(self.toggle_minus, 1, 2, 9, 10 )
self.toggle_minus.show() - self.label0 = gtk.Label("3") - self.label0.modify_font(pango.FontDescription("sans 12")) - self._display.settings_table.attach(self.label0, 2, 3, 10, 11 ) + self.label0 = gtk.Label("3")
+ self.label0.modify_font(pango.FontDescription("sans 12"))
+ self._display.settings_table.attach(self.label0, 2, 3, 10, 11 )
self.label0.show() - self.label1 = gtk.Label("=") - self.label1.modify_font(pango.FontDescription("sans 12")) - self._display.settings_table.attach(self.label1, 3, 4, 10, 11 ) + self.label1 = gtk.Label("=")
+ self.label1.modify_font(pango.FontDescription("sans 12"))
+ self._display.settings_table.attach(self.label1, 3, 4, 10, 11 )
self.label1.show() - self.label2 = gtk.Label("12") - self.label2.modify_font(pango.FontDescription("sans 12")) - self._display.settings_table.attach(self.label2, 4, 5, 10, 11 ) + self.label2 = gtk.Label("12")
+ self.label2.modify_font(pango.FontDescription("sans 12"))
+ self._display.settings_table.attach(self.label2, 4, 5, 10, 11 )
self.label2.show() - self.label3 = gtk.Label("1 + 2") - self.label3.modify_font(pango.FontDescription("sans 12")) - self._display.settings_table.attach(self.label3, 2, 3, 11, 12 ) + self.label3 = gtk.Label("1 + 2")
+ self.label3.modify_font(pango.FontDescription("sans 12"))
+ self._display.settings_table.attach(self.label3, 2, 3, 11, 12 )
self.label3.show() - self.toggle_newline = gtk.ToggleButton("<") - self.toggle_label = self.toggle_newline.get_child() - self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_newline.connect("toggled", self.toggle_newline_callback) - self._display.settings_table.attach(self.toggle_newline, 5, 6, 11, 12) - self.toggle_newline.show() + self.label6 = gtk.Label(self._display._sett['MAX'])
+ self.label6.modify_font(pango.FontDescription("sans 12"))
+ self._display.settings_table.attach(self.label6, 5, 6, 1, 2 )
+ self.label6.show() - self.toggle_shuffle_all = gtk.ToggleButton("@") - self.toggle_shuffle_all_label = self.toggle_shuffle_all.get_child() - self.toggle_shuffle_all_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_shuffle_all.connect("toggled", self.toggle_shuffle_all_callback) - self._display.settings_table.attach(self.toggle_shuffle_all, 0, 1, 13, 14 ) - self.toggle_shuffle_all.show() + #self.label7 = gtk.Label(self._display._sess._gen.count((self._display._key, self._display._sett)))
+ #self.label7.modify_font(pango.FontDescription("sans 12"))
+ #self._display.settings_table.attach(self.label7, 5, 6, 2, 3 )
+ #self.label7.show() - self.toggle_shuffle_inner = gtk.ToggleButton("@") - self.toggle_shuffle_inner_label = self.toggle_shuffle_inner.get_child() - self.toggle_shuffle_inner_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_shuffle_inner.connect("toggled", self.toggle_shuffle_inner_callback) - self._display.settings_table.attach(self.toggle_shuffle_inner, 2, 3, 13, 14 ) - self.toggle_shuffle_inner.show() + self.toggle_newline = gtk.ToggleButton("<")
+ self.toggle_label = self.toggle_newline.get_child()
+ self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_newline.connect("toggled", self.toggle_newline_callback)
+ self._display.settings_table.attach(self.toggle_newline, 5, 6, 11, 12)
+ self.toggle_newline.show() - self.toggle_pos3 = gtk.ToggleButton("--") - self.toggle_label = self.toggle_pos3.get_child() - self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_pos3.connect("toggled", self.toggle_pos3_callback) - self._display.settings_table.attach(self.toggle_pos3, 2, 3, 12, 13 ) - self.toggle_pos3.show() + self.toggle_shuffle_all = gtk.ToggleButton("@")
+ self.toggle_shuffle_all_label = self.toggle_shuffle_all.get_child()
+ self.toggle_shuffle_all_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_shuffle_all.connect("toggled", self.toggle_shuffle_all_callback)
+ self._display.settings_table.attach(self.toggle_shuffle_all, 0, 1, 13, 14 )
+ self.toggle_shuffle_all.show() - self.toggle_pos5 = gtk.ToggleButton("--") - self.toggle_label = self.toggle_pos5.get_child() - self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle_pos5.connect("toggled", self.toggle_pos5_callback) - self._display.settings_table.attach(self.toggle_pos5, 4, 5, 12, 13 ) + self.toggle_shuffle_inner = gtk.ToggleButton("@")
+ self.toggle_shuffle_inner_label = self.toggle_shuffle_inner.get_child()
+ self.toggle_shuffle_inner_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_shuffle_inner.connect("toggled", self.toggle_shuffle_inner_callback)
+ self._display.settings_table.attach(self.toggle_shuffle_inner, 2, 3, 13, 14 )
+ self.toggle_shuffle_inner.show()
+
+ self.toggle_pos3 = gtk.ToggleButton("--")
+ self.toggle_label = self.toggle_pos3.get_child()
+ self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_pos3.connect("toggled", self.toggle_pos3_callback)
+ self._display.settings_table.attach(self.toggle_pos3, 2, 3, 12, 13 )
+ self.toggle_pos3.show()
+
+ self.toggle_pos5 = gtk.ToggleButton("--")
+ self.toggle_label = self.toggle_pos5.get_child()
+ self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle_pos5.connect("toggled", self.toggle_pos5_callback)
+ self._display.settings_table.attach(self.toggle_pos5, 4, 5, 12, 13 )
self.toggle_pos5.show() - self.number_butts = [] - - for i in range(1,9+1): - self.toggle = gtk.ToggleButton(str(i)) - self.toggle_label = self.toggle.get_child() - self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12))) - self.toggle.connect("toggled", self.toggle_number_callback, i) - self._display.settings_table.attach(self.toggle, 0, 1, 1+i, 2+i) - self.toggle.show() + self.number_butts = []
+
+ for i in range(1,9+1):
+ self.toggle = gtk.ToggleButton(str(i))
+ self.toggle_label = self.toggle.get_child()
+ self.toggle_label.modify_font(pango.FontDescription("sans %d" % style.zoom(12)))
+ self.toggle.connect("toggled", self.toggle_number_callback, i)
+ self._display.settings_table.attach(self.toggle, 0, 1, 1+i, 2+i)
+ self.toggle.show()
self.number_butts.append(self.toggle) def set_buttons(self, sett): """ See comment in Exercies.set_buttons. """ - for i in range(sett['min'],sett['max']+1): + for i in range(sett['min'],sett['max']+1):
self.number_butts[i-1].set_active(True) - - if (sett['+'] == True): - self.toggle_plus.set_active(True) - else: - self.toggle_plus.set_active(False) - - if (sett['-'] == True): - self.toggle_minus.set_active(True) - else: +
+ if (sett['+'] == True):
+ self.toggle_plus.set_active(True)
+ else:
+ self.toggle_plus.set_active(False)
+
+ if (sett['-'] == True):
+ self.toggle_minus.set_active(True)
+ else:
self.toggle_minus.set_active(False) if (sett['newline'] == True): @@ -327,34 +340,34 @@ class ExPassTen(Exercise): else: self.toggle_shuffle_inner.set_active(False) - for i in sett['input']: - if( i == 1 ): - self.toggle_pos1.set_active(True) - - if ( i == 3 ): - self.toggle_pos3.set_active(True) - - if ( i == 5 ): + for i in sett['input']:
+ if( i == 1 ):
+ self.toggle_pos1.set_active(True)
+
+ if ( i == 3 ):
+ self.toggle_pos3.set_active(True)
+
+ if ( i == 5 ):
self.toggle_pos5.set_active(True) #**** callbacks ******************************************************** def toggle_newline_callback(self, widget): - if widget.get_active(): + if widget.get_active():
self._display._sett['newline'] = True else: self._display._sett['newline'] = False def toggle_shuffle_all_callback(self, widget): - if widget.get_active(): + if widget.get_active():
self._display._sett['shuffle_all'] = True self.toggle_shuffle_inner.set_active(True) else: self._display._sett['shuffle_all'] = False def toggle_shuffle_inner_callback(self, widget): - if widget.get_active(): + if widget.get_active():
self._display._sett['shuffle_inner'] = True else: if(self.toggle_shuffle_all.get_active()): @@ -363,7 +376,7 @@ class ExPassTen(Exercise): self._display._sett['shuffle_inner'] = False def toggle_pos3_callback(self, widget): - if widget.get_active(): + if widget.get_active():
self._display._sett['input'] = list(set(self._display._sett['input']) | set([3])) else: if(self.toggle_pos5.get_active()): @@ -372,27 +385,31 @@ class ExPassTen(Exercise): widget.set_active(True) def toggle_pos5_callback(self, widget): - if widget.get_active(): - self._display._sett['input'] = list(set(self._display._sett['input']) | set([5])) + if widget.get_active():
+ self._display._sett['input'] = list(set(self._display._sett['input']) | set([5]))
else: if(self.toggle_pos3.get_active()): self._display._sett['input'] = list(set(self._display._sett['input']) - set([5])) else: widget.set_active(True) - def toggle_plus_callback(self, widget): - if widget.get_active(): - self._display._sett['+'] = True - else: - self._display._sett['+'] = False - - def toggle_minus_callback(self, widget): - if widget.get_active(): - self._display._sett['-'] = True - else: - if( self.toggle_plus.get_active() ): - self._display._sett['-'] = False - else: + def toggle_plus_callback(self, widget):
+ if widget.get_active():
+ self._display._sett['+'] = True
+
+ else:
+ if( self.toggle_minus.get_active() ):
+ self._display._sett['+'] = False
+ else:
+ widget.set_active(True)
+
+ def toggle_minus_callback(self, widget):
+ if widget.get_active():
+ self._display._sett['-'] = True
+ else:
+ if( self.toggle_plus.get_active() ):
+ self._display._sett['-'] = False
+ else:
widget.set_active(True) def toggle_number_callback(self, widget, i): diff --git a/ReckonPrimer.activity/extimesdiv.py b/ReckonPrimer.activity/extimesdiv.py index 1ef6dea..acf42e9 100755 --- a/ReckonPrimer.activity/extimesdiv.py +++ b/ReckonPrimer.activity/extimesdiv.py @@ -1,4 +1,5 @@ # -*- coding: utf-8 -*- +# (c) Martin Neppel 2009 import gtk import pygtk @@ -32,6 +33,7 @@ class ExTimesDiv(Exercise): 'shuffle_inner': True, # shuffle only 1st (inner) iteration 'cut-max' : True # cut set of all calcs down to MAX } + self._calcs = self._generate_calcs() def format(self, (calc, linepos)): """format the calc for display, prepare overlays for input""" @@ -68,6 +70,10 @@ class ExTimesDiv(Exercise): random.shuffle(_calcs) return _calcs +# def count(self): +# """TODO""" +# return len(self._calcs) + def define_buttons(self): """buttons for this setting, which is specific for TimesDiv""" self.label = gtk.Label("2")
@@ -386,8 +392,9 @@ class ExTimesDiv(Exercise): _calcs.append((_c, 5)) else: for _i in range(1,11): - #print('in Generate.tim_div, (j,i)=',(_j, _i)) + print('in Generate.tim_div, (j,i)=',(_j, _i)) if dic == '*': + #_c = [to_str_99(_i),'*',str(_j*10),'=',to_str_99(_i*_j*10)] _c = [to_str_99(_i),'*',str(_j),'=',to_str_99(_i*_j)] elif dic == '*commute': _c = [str(_j),'*',to_str_99(_i),'=',to_str_99(_i*_j)] |