From db2f52c755fb553c06d77d574bf44ede8273feb3 Mon Sep 17 00:00:00 2001 From: Gonzalo Odiard Date: Tue, 06 Aug 2013 11:32:19 +0000 Subject: Use the ObjectChooser with preview if available Signed-off-by: Gonzalo Odiard --- (limited to 'AbiWordActivity.py') diff --git a/AbiWordActivity.py b/AbiWordActivity.py index a1c9d7b..8297f88 100644 --- a/AbiWordActivity.py +++ b/AbiWordActivity.py @@ -50,7 +50,11 @@ from toolbar import InsertToolbar from toolbar import ParagraphToolbar from widgets import ExportButtonFactory from widgets import DocumentView -from port import chooser +from sugar3.graphics.objectchooser import ObjectChooser +try: + from sugar3.graphics.objectchooser import FILTER_TYPE_GENERIC_MIME +except: + FILTER_TYPE_GENERIC_MIME = 'generic_mime' import speech from speechtoolbar import SpeechToolbar @@ -446,11 +450,23 @@ class AbiWordActivity(activity.Activity): self.floating_image = checkbutton.get_active() def _image_cb(self, button): - - def cb(object): - logging.debug('ObjectChooser: %r' % object) - self.abiword_canvas.insert_image(object.file_path, - self.floating_image) - - chooser.pick(parent=self.abiword_canvas.get_toplevel(), - what=chooser.IMAGE, cb=cb) + try: + chooser = ObjectChooser(self, what_filter='Image', + filter_type=FILTER_TYPE_GENERIC_MIME, + show_preview=True) + except: + # for compatibility with older versions + chooser = ObjectChooser(self, what_filter='Image') + + try: + result = chooser.run() + if result == Gtk.ResponseType.ACCEPT: + logging.debug('ObjectChooser: %r', + chooser.get_selected_object()) + jobject = chooser.get_selected_object() + if jobject and jobject.file_path: + self.abiword_canvas.insert_image(jobject.file_path, + self.floating_image) + finally: + chooser.destroy() + del chooser -- cgit v0.9.1