diff options
author | Aleksey Lim <alsroot@member.fsf.org> | 2009-04-09 18:07:44 (GMT) |
---|---|---|
committer | Aleksey Lim <alsroot@member.fsf.org> | 2009-04-09 18:07:44 (GMT) |
commit | 6cb734fe3270c0118774a276426c7a45c3649756 (patch) | |
tree | 6ed99feedd26a13c542659042ade2a3791abbc0c | |
parent | 5cac29362eb238311f279a016ec2a77221d26022 (diff) |
Add filter to ObjectChooser invoking
-rw-r--r-- | createcardpanel.py | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/createcardpanel.py b/createcardpanel.py index 9b157a0..3bdb9ad 100644 --- a/createcardpanel.py +++ b/createcardpanel.py @@ -27,6 +27,7 @@ import logging from gobject import SIGNAL_RUN_FIRST, TYPE_PYOBJECT from xml.dom.minidom import parse from sugar.graphics.objectchooser import ObjectChooser +from sugar import mime import theme @@ -254,7 +255,14 @@ class CardEditor(gtk.EventBox): self.card.set_pixbuf(pixbuf) def _import_image(self, widget, event): - chooser = ObjectChooser(_('Choose image'), None, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT) + if hasattr(mime, 'GENERIC_TYPE_IMAGE'): + filter = { 'what_filter': mime.GENERIC_TYPE_IMAGE } + else: + filter = { } + + chooser = ObjectChooser(_('Choose image'), None, + gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT, + **filter) try: result = chooser.run() if result == gtk.RESPONSE_ACCEPT: @@ -276,7 +284,14 @@ class CardEditor(gtk.EventBox): del pixbuf_t def _import_audio(self, widget, event): - chooser = ObjectChooser(_('Choose audio'), None, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT) + if hasattr(mime, 'GENERIC_TYPE_AUDIO'): + filter = { 'what_filter': mime.GENERIC_TYPE_AUDIO } + else: + filter = { } + + chooser = ObjectChooser(_('Choose audio'), None, + gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT, + **filter) jobject = '' try: result = chooser.run() |