Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'utils.py')
-rw-r--r--utils.py56
1 files changed, 21 insertions, 35 deletions
diff --git a/utils.py b/utils.py
index 148b05e..003642e 100644
--- a/utils.py
+++ b/utils.py
@@ -1,5 +1,7 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2011, Walter Bender
+# Ported to gtk 3: Ignacio Rodríguez
+# <ignaciorodriguez@sugarlabs.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
@@ -11,51 +13,35 @@
# Foundation, 51 Franklin Street, Suite 500 Boston, MA 02110-1335 USA
-import gtk
+from gi.repository import Gtk
from sugar.graphics.objectchooser import ObjectChooser
from StringIO import StringIO
-try:
- USING_JSON_READWRITE = False
- import json
- json.dumps
- from json import load as jload
- from json import dump as jdump
-except (ImportError, AttributeError):
- try:
- import simplejson as json
- from simplejson import load as jload
- from simplejson import dump as jdump
- except (ImportError, AttributeError):
- USING_JSON_READWRITE = True
-
+import json
+json.dumps
+from json import load as jload
+from json import dump as jdump
def json_load(text):
""" Load JSON data using what ever resources are available. """
- if USING_JSON_READWRITE is True:
- listdata = json.read(text)
- else:
- # strip out leading and trailing whitespace, nulls, and newlines
- io = StringIO(text)
- try:
- listdata = jload(io)
- except ValueError:
- # assume that text is ascii list
- listdata = text.split()
- for i, value in enumerate(listdata):
- listdata[i] = int(value)
+ # strip out leading and trailing whitespace, nulls, and newlines
+ io = StringIO(text)
+ try:
+ listdata = jload(io)
+ except ValueError:
+ # assume that text is ascii list
+ listdata = text.split()
+ for i, value in enumerate(listdata):
+ listdata[i] = int(value)
return listdata
def json_dump(data):
""" Save data using available JSON tools. """
- if USING_JSON_READWRITE is True:
- return json.write(data)
- else:
- _io = StringIO()
- jdump(data, _io)
- return _io.getvalue()
+ _io = StringIO()
+ jdump(data, _io)
+ return _io.getvalue()
def chooser(parent_window, filter, action):
@@ -65,11 +51,11 @@ def chooser(parent_window, filter, action):
chooser = ObjectChooser(parent=parent_window, what_filter=filter)
except TypeError:
chooser = ObjectChooser(None, parent_window,
- gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT)
+ Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT)
if chooser is not None:
try:
result = chooser.run()
- if result == gtk.RESPONSE_ACCEPT:
+ if result == Gtk.ResponseType.ACCEPT:
dsobject = chooser.get_selected_object()
action(dsobject)
dsobject.destroy()