Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorflorent <florent.pigout@gmail.com>2011-06-22 11:11:23 (GMT)
committer florent <florent.pigout@gmail.com>2011-06-22 11:11:23 (GMT)
commite52a80edba74513190b5751deda4ff1e15405ceb (patch)
treed696a4233614918b5f4257705db63650a50e79cb
parentcb280add46288950852aa0babb95a5a72b9bcce6 (diff)
ensure good sound start/pause/stop on key or intermediate farmes
-rw-r--r--activity.py28
-rw-r--r--atoidejouer/ui/screens.py4
2 files changed, 18 insertions, 14 deletions
diff --git a/activity.py b/activity.py
index 7add340..be41f1c 100644
--- a/activity.py
+++ b/activity.py
@@ -46,7 +46,7 @@ class ThreadAnim(threading.Thread):
if stop is True:
self._time = 0
else:
- pass
+ self.set_time()
def play(self):
self._pause = False
@@ -62,36 +62,36 @@ class ThreadAnim(threading.Thread):
# set pause
self._pause = self._pause if pause is None else pause
# ...
- _s = self._activity.get_current_screen()
+ _current_screen = self._activity.get_current_screen()
# ???
- if _s is None:
+ if _current_screen is None:
# ERROR
logger.error('[activity] set_time - scene not found!')
# do pause on toolbar
elif pause is True:
- if hasattr(_s, 'toolbar'):
- _s.toolbar.pause()
+ if hasattr(_current_screen, 'toolbar'):
+ _current_screen.toolbar.pause()
else:
pass
else:
# update scene
- if hasattr(_s, 'scene'):
- _s.scene.refresh()
+ if hasattr(_current_screen, 'scene'):
+ _current_screen.scene.refresh()
else:
- _s.refresh()
+ _current_screen.refresh()
# update timeline
- if hasattr(_s, 'timeline'):
- _s.timeline.refresh()
+ if hasattr(_current_screen, 'timeline'):
+ _current_screen.timeline.refresh()
else:
pass
# update panel
- if hasattr(_s, 'panel'):
- _s.panel.refresh()
+ if hasattr(_current_screen, 'panel'):
+ _current_screen.panel.refresh()
else:
pass
# update slider
- if hasattr(_s, 'toolbar'):
- _s.toolbar.refresh(self._time)
+ if hasattr(_current_screen, 'toolbar'):
+ _current_screen.toolbar.refresh(self._time)
else:
pass
diff --git a/atoidejouer/ui/screens.py b/atoidejouer/ui/screens.py
index 551edab..e4477c0 100644
--- a/atoidejouer/ui/screens.py
+++ b/atoidejouer/ui/screens.py
@@ -187,6 +187,9 @@ class ScreenStory(graphics.Scene):
if self.toolbar.activity._thread is None:
pass
elif self.toolbar.activity._thread._pause is False:
+ # DEBUG
+ logger.debug('[screens] refresh - _pause: %s' % self.toolbar.activity._thread._pause)
+ # DEBUG
# for each sound
for _n in self._get_keys('sounds').get_names():
if sequence_name is None\
@@ -449,6 +452,7 @@ class ScreenStory(graphics.Scene):
# play
_s.play()
else:
+ _s.seek(frame)
_s.play()
else:
# create new