diff options
author | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2008-10-22 08:48:16 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2008-10-22 08:48:16 (GMT) |
commit | 18f66f4c959e6b44b0363aaeb983137b135e06a2 (patch) | |
tree | 0af94c267fdc59fabe0089d244647726009725d0 /extensions | |
parent | 39fcc1bc37bdde6e34e5bb3e2c8b5692851d8d58 (diff) |
Add preview to screenshots
Diffstat (limited to 'extensions')
-rw-r--r-- | extensions/globalkey/screenshot.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/extensions/globalkey/screenshot.py b/extensions/globalkey/screenshot.py index ef4f5c9..1304eae 100644 --- a/extensions/globalkey/screenshot.py +++ b/extensions/globalkey/screenshot.py @@ -21,8 +21,10 @@ from gettext import gettext as _ import gtk import gconf +import dbus from sugar.datastore import datastore +from sugar.graphics import style BOUND_KEYS = ['<alt>1'] @@ -48,7 +50,7 @@ def handle_key_press(key): jobject.metadata['title'] = _('Screenshot') jobject.metadata['keep'] = '0' jobject.metadata['buddies'] = '' - jobject.metadata['preview'] = '' + jobject.metadata['preview'] = _get_preview_data(screenshot) jobject.metadata['icon-color'] = color jobject.metadata['mime_type'] = 'image/png' jobject.file_path = file_path @@ -57,3 +59,14 @@ def handle_key_press(key): jobject.destroy() del jobject +def _get_preview_data(screenshot): + preview = screenshot.scale_simple(style.zoom(300), style.zoom(225), + gtk.gdk.INTERP_BILINEAR) + preview_data = [] + def save_func(buf, data): + data.append(buf) + + preview.save_to_callback(save_func, 'png', user_data=preview_data) + + return dbus.ByteArray(''.join(preview_data)) + |