diff options
Diffstat (limited to 'ImageProcessorActivity.py')
-rw-r--r-- | ImageProcessorActivity.py | 34 |
1 files changed, 26 insertions, 8 deletions
diff --git a/ImageProcessorActivity.py b/ImageProcessorActivity.py index 7d41306..a3382e1 100644 --- a/ImageProcessorActivity.py +++ b/ImageProcessorActivity.py @@ -184,6 +184,7 @@ class ImageProcessorActivity(activity.Activity): self._view_toolbar.connect('redo', self.__redo_cb) self._view_toolbar.connect('save', self.__save_cb) self._view_toolbar.connect('paste',self.__paste_cb) + self._view_toolbar.connect('original',self.view.original_cb) view_toolbar_button = ToolbarButton(page=self._view_toolbar, icon_name='toolbar-view') self._view_toolbar.show() toolbar_box.toolbar.insert(view_toolbar_button, -1) @@ -232,18 +233,18 @@ class ImageProcessorActivity(activity.Activity): spacer.props.draw = False toolbar_box.toolbar.insert(spacer, -1) spacer.show() - - original_button = ToolButton('original') - original_button.set_tooltip(_('original pic')) - original_button.connect('clicked', self.view.original_cb) - toolbar_box.toolbar.insert(original_button, -1) - original_button.show() fullscreen_button = ToolButton('view-fullscreen') fullscreen_button.set_tooltip(_('Fullscreen')) fullscreen_button.connect('clicked', self.__fullscreen_cb) toolbar_box.toolbar.insert(fullscreen_button, -1) fullscreen_button.show() + + cam_button = ToolButton('camera') + cam_button.set_tooltip(_('take a pic')) + cam_button.connect('clicked', self.cam_cb) + toolbar_box.toolbar.insert(cam_button, -1) + cam_button.show() @@ -258,6 +259,24 @@ class ImageProcessorActivity(activity.Activity): stop_button.show() + def cam_cb(self, button): + import gst, sys, time + from random import * + from sugar.datastore import datastore + photocmd = 'v4l2src ! ffmpegcolorspace ! jpegenc ! filesink location=/tmp/photo' + '.jpg' + # take photo + pipeline = gst.parse_launch (photocmd) + pipeline.set_state(gst.STATE_PLAYING) + time.sleep(3) + pipeline.set_state(gst.STATE_NULL) + journal_object = datastore.create() + journal_object.metadata['title'] = 'new-image' + journal_object.metadata['mime_type'] = 'image/jpeg57' + journal_object.file_path = '/tmp/photo' + '.jpg' + self.view.set_file_location(journal_object.file_path) + datastore.write( journal_object ) + journal_object.destroy() + def watermrk_cb(self, button,pos): self.w="kuch" self.do_load_an_image_cb(button) @@ -381,8 +400,7 @@ class ImageProcessorActivity(activity.Activity): self.metadata['activity'] = self.get_bundle_id() self.metadata['zoom'] = str(self.zoom) if self._close_requested: - os.link(self._tempfile, file_path) - os.unlink(self._tempfile) + self.view.save_cb(file_path) self._tempfile = None else: raise NotImplementedError |