[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3902] trunk/py/scripts/addons/ space_view3d_screencast_keys.py: use a single handler rather then 2, makes adding & freeing easier to manage.

Campbell Barton ideasman42 at gmail.com
Mon Oct 29 06:40:39 CET 2012


Revision: 3902
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3902
Author:   campbellbarton
Date:     2012-10-29 05:40:34 +0000 (Mon, 29 Oct 2012)
Log Message:
-----------
use a single handler rather then 2, makes adding & freeing easier to manage.

Modified Paths:
--------------
    trunk/py/scripts/addons/space_view3d_screencast_keys.py

Modified: trunk/py/scripts/addons/space_view3d_screencast_keys.py
===================================================================
--- trunk/py/scripts/addons/space_view3d_screencast_keys.py	2012-10-28 21:11:31 UTC (rev 3901)
+++ trunk/py/scripts/addons/space_view3d_screencast_keys.py	2012-10-29 05:40:34 UTC (rev 3902)
@@ -223,6 +223,12 @@
     self.key = self.key[:final]
     self.time = self.time[:final]
 
+
+def draw_callback_px(self, context):
+    draw_callback_px_text(self, context)
+    draw_callback_px_box(self, context)
+
+
 def draw_last_operator(context, pos_x, pos_y):
 
     wm = context.window_manager
@@ -506,8 +512,7 @@
     bl_description = "Display keys pressed in the 3D View"
     last_activity = 'NONE'
 
-    _handle_a = None
-    _handle_b = None
+    _handle = None
     _timer = None
 
     def modal(self, context, event):
@@ -576,8 +581,7 @@
         if not context.window_manager.screencast_keys_keys:
             # stop script
             context.window_manager.event_timer_remove(self._timer)
-            context.region.callback_remove(self._handle_a)
-            context.region.callback_remove(self._handle_b)
+            context.region.callback_remove(self._handle)
             return {'CANCELLED'}
 
         return {'PASS_THROUGH'}
@@ -585,8 +589,7 @@
     def cancel(self, context):
         if context.window_manager.screencast_keys_keys:
             context.window_manager.event_timer_remove(self._timer)
-            context.region.callback_remove(self._handle_a)
-            context.region.callback_remove(self._handle_b)
+            context.region.callback_remove(self._handle)
             context.window_manager.screencast_keys_keys = False
         return {'CANCELLED'}
 
@@ -600,10 +603,8 @@
                 self.mouse = []
                 self.mouse_time = []
                 ScreencastKeysStatus.overall_time = []
-                self._handle_a = context.region.callback_add(draw_callback_px_box,
+                self._handle = context.region.callback_add(draw_callback_px,
                     (self, context), 'POST_PIXEL')
-                self._handle_b = context.region.callback_add(draw_callback_px_text,
-                    (self, context), 'POST_PIXEL')
                 self._timer = context.window_manager.event_timer_add(0.075,
                     context.window)
                 ScreencastKeysStatus.overall_time.insert(0, time.time())



More information about the Bf-extensions-cvs mailing list