Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/accessibilitytoolbar.py
diff options
context:
space:
mode:
authorPablo Moleri <pmoleri@pmoleri-laptop.(none)>2010-05-09 23:47:25 (GMT)
committer Pablo Moleri <pmoleri@pmoleri-laptop.(none)>2010-05-09 23:47:25 (GMT)
commit9379b317e95455db07fa91697d7407e57cb1d195 (patch)
tree1465aa0ca98810b0c81c1c499da07db249825d4c /accessibilitytoolbar.py
parent9bad1637df73e51b658c1452b1bbca90a88c26a1 (diff)
New accessibility toolbar added. Card is highlighted with stronger colors.HEADmaster
Diffstat (limited to 'accessibilitytoolbar.py')
-rw-r--r--accessibilitytoolbar.py78
1 files changed, 78 insertions, 0 deletions
diff --git a/accessibilitytoolbar.py b/accessibilitytoolbar.py
new file mode 100644
index 0000000..96d54f9
--- /dev/null
+++ b/accessibilitytoolbar.py
@@ -0,0 +1,78 @@
+# Copyright (C) 2010 ceibalJAM! ceibaljam.org
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+import gtk
+from os.path import join, dirname
+
+from gettext import gettext as _
+
+from sugar import profile
+
+import logging
+from gobject import SIGNAL_RUN_FIRST, TYPE_PYOBJECT
+
+_logger = logging.getLogger('memorize-activity')
+
+class AccessibilityToolbar(gtk.Toolbar):
+ __gtype_name__ = 'AccessibilityToolbar'
+
+ __gsignals__ = {
+ 'accessibility_changed': (SIGNAL_RUN_FIRST, None, 2 * [TYPE_PYOBJECT]),
+ }
+
+ def __init__(self, activity):
+ gtk.Toolbar.__init__(self)
+ self.activity = activity
+ self._lock = True
+ self.jobject = None
+
+ # Accessible mode checkbox
+ self._accessible = gtk.CheckButton(_('Accessible'))
+ self._accessible.connect('toggled', self._accessibility_changed)
+ self._add_widget(self._accessible)
+
+ # Scanning speed scale
+ min = 1
+ max = 5
+ step = 1
+ default = 2.5
+
+ self._speed_adj = gtk.Adjustment(default, min, max, step)
+ self._speed_bar = gtk.HScale(self._speed_adj)
+ self._speed_bar.set_draw_value(True)
+ self._speed_bar.set_update_policy(gtk.UPDATE_DISCONTINUOUS)
+ self._speed_bar.set_size_request(240,15)
+ self._speed_adj.connect("value_changed", self._accessibility_changed)
+
+ # Add it to the toolbar
+ self._add_widget(self._speed_bar)
+
+ def _add_widget(self, widget, expand=False):
+ tool_item = gtk.ToolItem()
+ tool_item.set_expand(expand)
+ tool_item.add(widget)
+ widget.show()
+ self.insert(tool_item, -1)
+ tool_item.show()
+
+ def _game_reset_cb(self, widget):
+ self.emit('game_changed', None, None, 'reset', None, None)
+
+ def _load_game(self, button):
+ pass
+
+ def _accessibility_changed(self, widget):
+ self.emit("accessibility_changed", self._accessible.get_active(), self._speed_bar.get_value())