[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2668] contrib/py/scripts/addons/ space_view3d_index_visualiser.py: Applied patch by ValterVB to enable live updating.

Bart Crouch bartius.crouch at gmail.com
Sun Nov 27 15:46:36 CET 2011


Revision: 2668
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2668
Author:   crouch
Date:     2011-11-27 14:46:33 +0000 (Sun, 27 Nov 2011)
Log Message:
-----------
Applied patch by ValterVB to enable live updating.
Also added check to prevent memory corruption on unload.

Modified Paths:
--------------
    contrib/py/scripts/addons/space_view3d_index_visualiser.py

Modified: contrib/py/scripts/addons/space_view3d_index_visualiser.py
===================================================================
--- contrib/py/scripts/addons/space_view3d_index_visualiser.py	2011-11-27 13:51:22 UTC (rev 2667)
+++ contrib/py/scripts/addons/space_view3d_index_visualiser.py	2011-11-27 14:46:33 UTC (rev 2668)
@@ -21,9 +21,9 @@
 bl_info = {
     'name': 'Index Visualiser',
     'author': 'Bartius Crouch',
-    'version': (2, 6, 10),
+    'version': (2, 6, 11),
     'blender': (2, 6, 0),
-    'api': 42162,
+    'api': 42181,
     'location': 'View3D > Properties panel > Mesh Display tab',
     'warning': '', # used for warning icon and text in addons panel
     'description': 'Display the indices of vertices, edges and faces '\
@@ -73,9 +73,9 @@
     texts = []
     locs = []
     me = context.active_object.data
-    # uncomment 2 lines below, to enable live updating of the selection
-    #bpy.ops.object.editmode_toggle()
-    #bpy.ops.object.editmode_toggle()
+    if bpy.context.scene.live_mode:
+        bpy.ops.object.editmode_toggle()
+        bpy.ops.object.editmode_toggle()
     if bpy.context.scene.display_vert_index:
         for v in me.vertices:
             if not v.hide and \
@@ -139,6 +139,10 @@
     def poll(cls, context):
         return context.mode=="EDIT_MESH"
     
+    def __del__(self):
+        bpy.context.scene.display_indices = -1
+        clear_properties(full=False)
+    
     def modal(self, context, event):
         if context.area:
             context.area.tag_redraw()
@@ -196,6 +200,10 @@
         bpy.types.Scene.display_face_index = bpy.props.BoolProperty(
             name="Faces",
             description="Display face indices")
+        bpy.types.Scene.live_mode = bpy.props.BoolProperty(
+            name="Live",
+            description="Toggle live update of the selection, can be slow",
+            default=False)
         return {'FINISHED'}
 
 
@@ -209,7 +217,7 @@
         del bpy.context.scene["IndexVisualiser"]
     if full:
         props = ["display_indices", "display_sel_only", "display_vert_index",
-        "display_edge_index", "display_face_index"]
+        "display_edge_index", "display_face_index", "live_mode"]
         for p in props:
             if p in bpy.types.Scene.bl_rna.properties:
                 exec("del bpy.types.Scene."+p)
@@ -232,6 +240,7 @@
     row.active = (context.mode=="EDIT_MESH" and \
         context.scene.display_indices==1)
     row.prop(context.scene, "display_sel_only")
+    row.prop(context.scene, "live_mode", toggle=False)
 
 
 def register():



More information about the Bf-extensions-cvs mailing list