]> git.tdb.fi Git - libs/gl.git/blobdiff - blender/io_mspgl/export_mesh.py
Redesign progress and error reporting in the Blender exporter
[libs/gl.git] / blender / io_mspgl / export_mesh.py
index f54a05fd2a6c0b3f39844f16d294a0a57e6d0981..b85fd2f8c57c9906290548daaf7882aa962b1837 100644 (file)
@@ -4,20 +4,21 @@ import bpy
 import mathutils
 
 class MeshExporter:
-       def export_mesh(self, context, mesh_or_obj, progress):
+       def export_mesh(self, ctx, mesh_or_obj):
                from .mesh import Mesh, create_mesh_from_object
 
                if type(mesh_or_obj)==Mesh:
                        mesh = mesh_or_obj
                else:
-                       progress.push_task("", 0.0, 0.9)
-                       mesh = create_mesh_from_object(context, mesh_or_obj, progress)
-                       progress.pop_task()
+                       task = ctx.task("Preparing mesh", 0.9)
+                       mesh = create_mesh_from_object(task, mesh_or_obj)
 
                from .datafile import Resource, Statement, Token
                resource = Resource(mesh.name+".mesh", "mesh")
                statements = resource.statements
 
+               task = ctx.task("Creating statements", 1.0)
+
                st = Statement("vertices", Token("VERTEX3_FLOAT"))
                stride = 12
                if mesh.vertices[0].color:
@@ -113,6 +114,6 @@ class MeshExporter:
                if mesh.winding_test:
                        statements.append(Statement("winding", Token('COUNTERCLOCKWISE')))
 
-               progress.set_progress(1.0)
+               task.set_progress(1.0)
 
                return resource