Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorflavio <fdanesse@gmail.com>2012-06-05 20:14:41 (GMT)
committer flavio <fdanesse@gmail.com>2012-06-05 20:14:41 (GMT)
commit2428882fa3cfa39b7bed9e75bfff4f34db758943 (patch)
tree85758fd468704e5fcc6e7bc44f356c3f5a2806be
parentfd517845b49607932e0ceca8d547b2d0823f0d9a (diff)
Port Gtk3
-rw-r--r--.gitignore4
-rwxr-xr-xsetup.py2
-rw-r--r--wordsactivity.py109
3 files changed, 60 insertions, 55 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..db73526
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.pyc
+*.pyo
+*.bak
+*.??~
diff --git a/setup.py b/setup.py
index 530f97c..c60f4d0 100755
--- a/setup.py
+++ b/setup.py
@@ -16,6 +16,6 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-from sugar.activity import bundlebuilder
+from sugar3.activity import bundlebuilder
bundlebuilder.start()
diff --git a/wordsactivity.py b/wordsactivity.py
index 8532f06..76ddc85 100644
--- a/wordsactivity.py
+++ b/wordsactivity.py
@@ -17,23 +17,22 @@
"""Words Activity: A multi-lingual dictionary with speech synthesis."""
"""Actividad Palabras: Un diccionario multi-lengua con sintesis de habla"""
-import gtk
+from gi.repository import Gtk, Pango
import logging
-import pango
import os
import subprocess
from gettext import gettext as _
-from sugar.activity import activity
-from sugar.activity.activity import ActivityToolbox, \
- get_bundle_path, get_bundle_name
+from sugar3.activity import activity
+from sugar3.graphics.toolbarbox import ToolbarBox
+from sugar3.activity.activity import get_bundle_path, get_bundle_name
-from sugar.graphics.icon import Icon
+from sugar3.graphics.icon import Icon
OLD_TOOLBARS = False
try:
- from sugar.graphics.toolbarbox import ToolbarBox, ToolbarButton
- from sugar.activity.widgets import ActivityButton, StopButton, \
+ from sugar3.graphics.toolbarbox import ToolbarBox, ToolbarButton
+ from sugar3.activity.widgets import ActivityButton, StopButton, \
ShareButton, KeepButton, TitleEntry
except ImportError:
OLD_TOOLBARS = True
@@ -63,9 +62,9 @@ class WordsActivity(activity.Activity):
# make the share option insensitive | haciendo la opcion de compartir insensible
self.max_participants = 1
- # Main layout | disposicion general
- hbox = gtk.HBox(homogeneous=True, spacing=8)
- vbox = gtk.VBox(spacing=16)
+ # Main layout | disposicion general
+ hbox = Gtk.HBox(homogeneous=True, spacing=8)
+ vbox = Gtk.VBox(spacing=16)
vbox.set_border_width(16)
# Toolbar (compatibility with old-toolbars) | Toolbar, compatibilidad con barras anteriores
@@ -80,7 +79,7 @@ class WordsActivity(activity.Activity):
title_entry.show()
try:
- from sugar.activity.widgets import DescriptionItem
+ from sugar3.activity.widgets import DescriptionItem
except ImportError:
logging.debug('DescriptionItem button is not available,' +
'toolkit version < 0.96')
@@ -93,7 +92,7 @@ class WordsActivity(activity.Activity):
toolbar_box.toolbar.insert(share_button, -1)
share_button.show()
- separator = gtk.SeparatorToolItem()
+ separator = Gtk.SeparatorToolItem()
separator.props.draw = False
separator.set_expand(True)
toolbar_box.toolbar.insert(separator, -1)
@@ -106,59 +105,61 @@ class WordsActivity(activity.Activity):
self.set_toolbox(toolbar_box)
toolbar_box.show()
else:
- toolbox = ActivityToolbox(self)
- self.set_toolbox(toolbox)
+ toolbox = ToolbarBox(self)
+ self.set_toolbar_box(toolbox)
toolbox.show()
# transbox: <label> - <text entry> - <speak button>
- transbox = gtk.Table()
+ transbox = Gtk.Table()
transbox.resize(2, 3)
transbox.set_row_spacings(8)
transbox.set_col_spacings(12)
# Labels | Etiquetas
- label1 = gtk.Label(_("Word") + ':')
+ label1 = Gtk.Label(label=_("Word") + ':')
label1.set_alignment(xalign=0.0, yalign=0.5)
- label2 = gtk.Label(_("Translation") + ':')
+ label2 = Gtk.Label(label=_("Translation") + ':')
label2.set_alignment(xalign=0.0, yalign=0.5)
# Text entry box to enter word to be translated.| caja para colocar la palabra que se va a traducir
- self.totranslate = gtk.Entry(max=50)
+ self.totranslate = Gtk.Entry()
+ self.totranslate.set_max_length(50)
self.totranslate.connect("changed", self.totranslate_cb)
- self.totranslate.modify_font(pango.FontDescription("Sans 14"))
+ self.totranslate.modify_font(Pango.FontDescription("Sans 14"))
# Text entry box to receive word translated.| caja para recibir la palabra que se va a traducir
- self.translated = gtk.Entry(max=50)
+ self.translated = Gtk.Entry()
+ self.translated.set_max_length(50)
self.translated.set_property('editable', False)
- self.translated.modify_font(pango.FontDescription("Sans 14"))
+ self.translated.modify_font(Pango.FontDescription("Sans 14"))
# Speak buttons.| Botones para hablar.
- speak1 = gtk.ToolButton()
+ speak1 = Gtk.ToolButton()
speak_icon1 = Icon(icon_name='microphone')
speak1.set_icon_widget(speak_icon1)
speak1.connect("clicked", self.speak1_cb)
- speak2 = gtk.ToolButton()
+ speak2 = Gtk.ToolButton()
speak_icon2 = Icon(icon_name='microphone')
speak2.set_icon_widget(speak_icon2)
speak2.connect("clicked", self.speak2_cb)
- transbox.attach(label1, 0, 1, 0, 1, xoptions=gtk.FILL)
- transbox.attach(self.totranslate, 1, 2, 0, 1, xoptions=gtk.FILL|gtk.EXPAND)
- transbox.attach(speak1, 2, 3, 0, 1, xoptions=gtk.FILL)
+ transbox.attach(label1, 0, 1, 0, 1, xoptions=Gtk.AttachOptions.FILL)
+ transbox.attach(self.totranslate, 1, 2, 0, 1, xoptions=Gtk.AttachOptions.FILL|Gtk.AttachOptions.EXPAND)
+ transbox.attach(speak1, 2, 3, 0, 1, xoptions=Gtk.AttachOptions.FILL)
- transbox.attach(label2, 0, 1, 1, 2, xoptions=gtk.FILL)
- transbox.attach(self.translated, 1, 2, 1, 2, xoptions=gtk.FILL|gtk.EXPAND)
- transbox.attach(speak2, 2, 3, 1, 2, xoptions=gtk.FILL)
+ transbox.attach(label2, 0, 1, 1, 2, xoptions=Gtk.AttachOptions.FILL)
+ transbox.attach(self.translated, 1, 2, 1, 2, xoptions=Gtk.AttachOptions.FILL|Gtk.AttachOptions.EXPAND)
+ transbox.attach(speak2, 2, 3, 1, 2, xoptions=Gtk.AttachOptions.FILL)
- vbox.pack_start(transbox, expand=False)
+ vbox.pack_start(transbox, False, True, 0)
# The language choice combo boxes. | Las cajas para escoger opciones de lenguaje
- self.lang1combo = gtk.combo_box_new_text()
+ self.lang1combo = Gtk.ComboBoxText()
self.lang1combo.append_text("English")
self.lang1combo.connect("changed", self.lang1combo_cb)
self.lang1combo.set_active(0)
- self.lang2combo = gtk.combo_box_new_text()
+ self.lang2combo = Gtk.ComboBoxText()
for x in self.langs:
self.lang2combo.append_text(x)
self.lang2combo.connect("changed", self.lang2combo_cb)
@@ -168,41 +169,41 @@ class WordsActivity(activity.Activity):
self.lang2combo.set_size_request(600, 50)
# The "lang1" treeview box
- self.lang1model = gtk.ListStore(str)
- lang1view = gtk.TreeView(self.lang1model)
+ self.lang1model = Gtk.ListStore(str)
+ lang1view = Gtk.TreeView(self.lang1model)
lang1view.set_headers_visible(False)
- lang1cell = gtk.CellRendererText()
- lang1treecol = gtk.TreeViewColumn("", lang1cell, text=0)
+ lang1cell = Gtk.CellRendererText()
+ lang1treecol = Gtk.TreeViewColumn("", lang1cell, text=0)
lang1view.get_selection().connect("changed", self.lang1sel_cb)
lang1view.append_column(lang1treecol)
- lang1scroll = gtk.ScrolledWindow(hadjustment=None, vadjustment=None)
- lang1scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
+ lang1scroll = Gtk.ScrolledWindow(hadjustment=None, vadjustment=None)
+ lang1scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
lang1scroll.add(lang1view)
# The "lang2" box
- self.lang2model = gtk.ListStore(str)
- lang2view = gtk.TreeView(self.lang2model)
+ self.lang2model = Gtk.ListStore(str)
+ lang2view = Gtk.TreeView(self.lang2model)
lang2view.set_headers_visible(False)
- lang2cell = gtk.CellRendererText()
- lang2treecol = gtk.TreeViewColumn("", lang2cell, text=0)
+ lang2cell = Gtk.CellRendererText()
+ lang2treecol = Gtk.TreeViewColumn("", lang2cell, text=0)
lang2view.get_selection().connect("changed", self.lang2sel_cb)
lang2view.append_column(lang2treecol)
- lang2scroll = gtk.ScrolledWindow(hadjustment=None, vadjustment=None)
- lang2scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
+ lang2scroll = Gtk.ScrolledWindow(hadjustment=None, vadjustment=None)
+ lang2scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
lang2scroll.add(lang2view)
- lang1_vbox = gtk.VBox(spacing=8)
- lang1_vbox.pack_start(self.lang1combo, expand=False)
- lang1_vbox.pack_start(lang1scroll)
+ lang1_vbox = Gtk.VBox(spacing=8)
+ lang1_vbox.pack_start(self.lang1combo, False, True, 0)
+ lang1_vbox.pack_start(lang1scroll, True, True, 0)
- lang2_vbox = gtk.VBox(spacing=8)
- lang2_vbox.pack_start(self.lang2combo, expand=False)
- lang2_vbox.pack_start(lang2scroll)
+ lang2_vbox = Gtk.VBox(spacing=8)
+ lang2_vbox.pack_start(self.lang2combo, False, True, 0)
+ lang2_vbox.pack_start(lang2scroll, True, True, 0)
- hbox.pack_start(lang1_vbox)
- hbox.pack_start(lang2_vbox)
+ hbox.pack_start(lang1_vbox, True, True, 0)
+ hbox.pack_start(lang2_vbox, True, True, 0)
- vbox.pack_start(hbox)
+ vbox.pack_start(hbox, True, True, 0)
self.set_canvas(vbox)
self.totranslate.grab_focus()
self.show_all()