uv mirror poll function wasnt checking UV's were available on the mesh.
authorCampbell Barton <ideasman42@gmail.com>
Fri, 1 Jul 2011 13:25:00 +0000 (13:25 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Fri, 1 Jul 2011 13:25:00 +0000 (13:25 +0000)
release/scripts/startup/bl_operators/mesh.py

index 996b38ae5717592ca2009c2ea3f14f0024812295..8dca30e54df8fbc8331ef067e36f3c0a3309c779 100644 (file)
@@ -81,8 +81,8 @@ class MeshMirrorUV(bpy.types.Operator):
 
     @classmethod
     def poll(cls, context):
-        ob = context.active_object
-        return (ob and ob.type == 'MESH')
+        obj = context.active_object
+        return (obj and obj.type == 'MESH' and obj.data.uv_textures.active)
 
     def execute(self, context):
         DIR = (self.direction == 'NEGATIVE')
@@ -120,12 +120,7 @@ class MeshMirrorUV(bpy.types.Operator):
                 if j is not None:
                     vmap[i] = j
 
-        active_uv_layer = None
-        for lay in mesh.uv_textures:
-            if lay.active:
-                active_uv_layer = lay.data
-                break
-
+        active_uv_layer = mesh.uv_textures.active.data
         fuvs = [(uv.uv1, uv.uv2, uv.uv3, uv.uv4) for uv in active_uv_layer]
         fuvs_cpy = [(uv[0].copy(), uv[1].copy(), uv[2].copy(), uv[3].copy()) for uv in fuvs]