diff options
Diffstat (limited to 'atoidejouer/ui/screens/story.py')
-rw-r--r-- | atoidejouer/ui/screens/story.py | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/atoidejouer/ui/screens/story.py b/atoidejouer/ui/screens/story.py index fb9e1e9..5c4d7b1 100644 --- a/atoidejouer/ui/screens/story.py +++ b/atoidejouer/ui/screens/story.py @@ -42,6 +42,10 @@ def _on_drag_finish(image, event, scene, key, image_size): def _on_click(image, event, scene, key): # get current screen _screen = scene.toolbar.activity.get_current_screen() + # remove image on right click + if event.button == 3: + story.DB()._del(key) + scene.refresh() # update panel if hasattr(_screen, 'panel'): _screen.panel.refresh() @@ -147,11 +151,11 @@ class ScreenStory(graphics.Scene): _time)) """ # using DB - for _key in story.DB().get(story.Key(type='image', time=_time)): + for _k in story.DB().get(story.Key(mime_type='image/png', time=_time)): # redraw only if necessary if key is None or key.id == _k.id: - self.__refresh_image(key, _rate) - _currents.append(key.id) + self.__refresh_image(_k, _rate) + _currents.append(_k.id) # draw mask _currents.append(self.__refresh_default('mask')) # hide previous @@ -181,7 +185,7 @@ class ScreenStory(graphics.Scene): _currents.append(self._get_current_code('sounds', _n, _time)) # using DB - for key in story.DB().get(story.Key(type='sound', time=_time)): + for key in story.DB().get(story.Key(mime_type='audio/ogg', time=_time)): self.__refresh_sound(key) """ else: @@ -197,7 +201,7 @@ class ScreenStory(graphics.Scene): pass else: # get file size - _c, _w, _h = image.get_image_info(key.media) + _c, _w, _h = image.get_image_info(key.get_path()) # .. if (self.fullscreen is True\ or self._screen_width < 1024)\ @@ -275,7 +279,7 @@ class ScreenStory(graphics.Scene): else: _filename = '%s_default' % default_name _path = storage.get_image_path(_filename) - _key = story.Key(id=_code, media=_path, layer=0) + _key = story.Key(id=_code, path=_path, layer=0) # .. _align = (0, 0) # get/update width and height @@ -289,8 +293,11 @@ class ScreenStory(graphics.Scene): def __get_transition_align(self, key, rate): # get align _x, _y = key.x, key.y + # get the current frame + _time = 0.0 if self.toolbar.activity._thread is None\ + else self.toolbar.activity._thread._time # get transition ratio - _ratio = time - int(time) + _ratio = _time - int(_time) if _ratio < rate: return _x, _y else: @@ -298,7 +305,7 @@ class ScreenStory(graphics.Scene): _next_x, _next_y = self._get_keys('graphics').get_next_align( sequence_name, int(time), filename, use_transition=True) """ - _next_key = story.Key(name=key.name, type="image", time=(key.time+1), + _next_key = story.Key(name=key.name, mime_type="image/png", time=(key.time+1), layer=key.layer) _next_key = story.DB().get(_next_key) _next_x, _next_y = _next_key.x, _next_key.y @@ -350,7 +357,7 @@ class ScreenStory(graphics.Scene): # get z_order _image.z_order = key.layer # disconnect - if _code in self.__dd_signals: + if key.id in self.__dd_signals: _image.disconnect(self.__dd_signals[key.id]) else: pass @@ -388,7 +395,7 @@ class ScreenStory(graphics.Scene): else: _scale = float(_new_w)/_w # image - _image = graphics.Image(key.media, x=_x, y=_y, scale_x=_scale, + _image = graphics.Image(key.get_path(), x=_x, y=_y, scale_x=_scale, scale_y=_scale, z_order=key.layer, draggable=draggable) # connect drag if self._set_canvas is True\ @@ -408,7 +415,7 @@ class ScreenStory(graphics.Scene): """ def __stop_unused_sounds(self, key): - sounds = story.DB().get(story.Key(name=key.name, type='sound')) + sounds = story.DB().get(story.Key(name=key.name, mime_type='audio/ogg')) # hide previous for _k in keys: if _k.id != current\ |