Author: duncan
Date: Tue Mar 11 15:32:26 2008
New Revision: 10503

Log:
Added shutdown method
Added trace messages to the methods


Modified:
   branches/rel-1/freevo/src/plugins/screensaver/__init__.py
   branches/rel-1/freevo/src/plugins/screensaver/balls.py
   branches/rel-1/freevo/src/plugins/screensaver/bouncing_freevo.py

Modified: branches/rel-1/freevo/src/plugins/screensaver/__init__.py
==============================================================================
--- branches/rel-1/freevo/src/plugins/screensaver/__init__.py   (original)
+++ branches/rel-1/freevo/src/plugins/screensaver/__init__.py   Tue Mar 11 
15:32:26 2008
@@ -56,6 +56,7 @@
     """
 
     def __init__(self):
+        _debug_('PluginInterface.__init__()', 1)
         plugin.DaemonPlugin.__init__(self)
         self.event_listener = True
         self.poll_menu_only = True
@@ -70,6 +71,7 @@
 
 
     def config(self):
+        _debug_('config()', 1)
         return [
             ('SCREENSAVER_DELAY', 300, '# of seconds to wait to start saver.'),
             ('SCREENSAVER_CYCLE_TIME', 60, '# of seconds to run a screensaver 
before starting another saver.')
@@ -81,7 +83,7 @@
         eventhandler to handle the events. Always return False since we
         are just a listener and really can't send back True.
         """
-        _debug_("Saver saw %s" % (event.name), 2)
+        _debug_('eventhandler(event=%r, menuw=%r, arg=%r)' % (event.name, 
menuw, arg), 1)
         if menuw:
             self.menuw = menuw
 
@@ -110,14 +112,19 @@
 
 
     def poll(self):
-        #_debug_("Saver got polled %f" % time.time())
+        _debug_('poll()', 2)
         time_diff = time.time() - self.last_event
         if not self.screensaver_showing and  time_diff > self.start_delay :
-            rc.post_event(Event("SCREENSAVER_START"))
+            rc.post_event(Event('SCREENSAVER_START'))
+
+
+    def shutdown(self):
+        _debug_('shutdown()', 1)
+        self.stop_saver()
 
 
     def start_saver(self):
-        _debug_("start screensaver")
+        _debug_('start_saver()', 1)
         self.screensaver_showing = True
         if self.plugins is None:
             self.plugins = plugin.get('screensaver')
@@ -130,13 +137,17 @@
 
 
     def stop_saver(self):
-        _debug_("stop screensaver")
-        self.stop_screensaver = True
-        self.thread.join()
+        _debug_('stop_saver()', 1)
+        osd.mutex.acquire()
+        try:
+            self.stop_screensaver = True
+            self.thread.join()
+        finally:
+            osd.mutex.release()
 
 
     def __run__(self):
-        _debug_('Screensaver thread started')
+        _debug_('__run__()', 1)
         current_saver = None
         index = 0
         plugins_count = len(self.plugins)
@@ -170,7 +181,7 @@
 
 
     def __run_screensaver__(self, screensaver):
-        _debug_('Running %s' % screensaver.plugin_name)
+        _debug_('__run_screensaver__(screensaver=%r)' % 
(screensaver.plugin_name,), 1)
         try:
             fps = screensaver.start(osd.width, osd.height)
 
@@ -200,11 +211,13 @@
 
 class ScreenSaverPlugin(plugin.Plugin):
     def __init__(self):
+        _debug_('ScreenSaverPlugin.__init__()', 1)
         plugin.Plugin.__init__(self)
         self._type = 'screensaver'
 
 
     def start(self, width, height):
+        _debug_('start(width=%r, height=%r)' % (width, height), 1)
         """
         Initialise the screensaver before each run.
         Returns the number of frames per second the saver
@@ -214,6 +227,7 @@
 
 
     def stop(self):
+        _debug_('stop()', 1)
         """
         Deinitialise the screensaver after each run.
         """
@@ -225,4 +239,5 @@
         Draw a frame onto the supplied surface called
         every 1/fps seconds (where fps was returned by start())
         """
+        _debug_('draw(surface=%r)' % (surface,), 1)
         pass

Modified: branches/rel-1/freevo/src/plugins/screensaver/balls.py
==============================================================================
--- branches/rel-1/freevo/src/plugins/screensaver/balls.py      (original)
+++ branches/rel-1/freevo/src/plugins/screensaver/balls.py      Tue Mar 11 
15:32:26 2008
@@ -44,13 +44,14 @@
     """
     A bouncing balls screensaver
     """
-
     def __init__(self):
+        _debug_('PluginInterface.__init__()', 1)
         ScreenSaverPlugin.__init__(self)
         self.plugin_name = 'screensaver.balls'
         self.fps = config.BALLS_FPS
 
     def config(self):
+        _debug_('config()', 1)
         return [
             ('BALLS_FPS', 25, 'Frames per second'),
             ('BALLS_MAX_BALLS', 100, 'Maximum number of balls'),
@@ -59,6 +60,7 @@
 
 
     def start(self, width, height):
+        _debug_('start(width=%r, height=%r)' % (width, height), 1)
         self.width = width
         self.height = height
         ballcount = randint(1, 100)
@@ -67,7 +69,7 @@
         for i in range(0,ballcount):
             ball = Ball()
 
-            ball.name = "ball " + str(i)
+            ball.name = 'ball ' + str(i)
             ball.color = (randint(5, 255), randint(5,255), randint(5,255))
             ball.x = randint(0, width - ball.w)
             ball.y = randint(0, height - ball.h)
@@ -77,7 +79,9 @@
 
         return self.fps
 
+
     def draw(self, screen):
+        _debug_('draw(screen=%r)' % (screen,), 1)
         black = (0,0,0)
         dirty = []
         osd.mutex.acquire()
@@ -98,7 +102,8 @@
 class Ball:
 
     def __init__(self):
-        self.name = "ball"
+        _debug_('Ball.__init__()', 1)
+        self.name = 'ball'
         self.x = 100.0
         self.y = 100.0
         self.w = 40
@@ -116,16 +121,19 @@
 
 
     def draw(self, screen):
+        _debug_('draw(screen=%r)' % (screen,), 1)
         pygame.draw.ellipse(screen, self.color, (int(self.x), int(self.y), 
self.w, self.h))
         pygame.draw.ellipse(screen, (255,255,255), (int(self.x), int(self.y), 
self.w, self.h), 1)
 
 
     def clear(self, screen, color):
+        _debug_('clear(screen=%r, color=%r)' % (screen, color), 1)
         pygame.draw.ellipse(screen, color, (int(self.x), int(self.y), self.w, 
self.h))
         pygame.draw.ellipse(screen, color, (int(self.x), int(self.y), self.w, 
self.h), 1)
 
 
     def update(self, width, height, walldeccel, floordeccel):
+        _debug_('update(width=%r, height=%r, walldeccel=%r, floordeccel=%r)' % 
(width, height, walldeccel, floordeccel), 1)
         # Update ball velocity
         self.hspeed = self.hspeed + self.haccel
         self.vspeed = self.vspeed + self.vaccel
@@ -179,4 +187,5 @@
 
 
     def rectangle(self):
+        _debug_('rectangle()', 1)
         return (int(self.x), int(self.y), self.w, self.h)

Modified: branches/rel-1/freevo/src/plugins/screensaver/bouncing_freevo.py
==============================================================================
--- branches/rel-1/freevo/src/plugins/screensaver/bouncing_freevo.py    
(original)
+++ branches/rel-1/freevo/src/plugins/screensaver/bouncing_freevo.py    Tue Mar 
11 15:32:26 2008
@@ -46,6 +46,7 @@
     """
 
     def __init__(self):
+        _debug_('PluginInterface.__init__()', 1)
         ScreenSaverPlugin.__init__(self)
         self.plugin_name = 'screensaver.bouncing_freevo'
         self.fps = config.BOUNCING_FREEVO_FPS
@@ -55,10 +56,12 @@
 
 
     def config(self):
+        _debug_('config()', 1)
         return [ ('BOUNCING_FREEVO_FPS', 25, 'Frames per second')]
 
 
     def start(self, width, height):
+        _debug_('start(width=%r, height=%r)' % (width, height), 1)
         self.width = width
         self.height = height
 
@@ -71,6 +74,7 @@
 
 
     def draw(self, screen):
+        _debug_('draw(screen=%r)' % (screen,), 1)
         osd.mutex.acquire()
         try:
             black = (0,0,0)

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to