]> git.tdb.fi Git - libs/gl.git/blobdiff - blender/io_mspgl/export_scene.py
Display overall progress when exporting scenes
[libs/gl.git] / blender / io_mspgl / export_scene.py
index 8f224fea8d418d183c70394e87b4176cfd748e07..03a02ed47903cd57d7c7e94a656b8f099664162f 100644 (file)
@@ -22,13 +22,17 @@ class SceneExporter:
                object_export.compound = True
                object_export.external_tech = self.external_tech
 
+               from .util import Progress
+               progress = Progress(context)
                if self.resource_collection:
                        res_out = open_output(os.path.join(path, base+"_resources.mdc"))
 
                        # TODO Export techniques as separate items in the collection
-                       for o in objs:
+                       for i, o in enumerate(objs):
                                res_out.begin("object", '"{}.object"'.format(o.name))
-                               object_export.export(context, res_out, [o])
+                               progress.push_task(o.name, i/len(objs), (i+1)/len(objs))
+                               object_export.export(context, res_out, [o], progress)
+                               progress.pop_task()
                                res_out.end()
                else:
                        object_export.separate_tech = True
@@ -37,7 +41,9 @@ class SceneExporter:
                                os.makedirs(res_dir)
                        for o in objs:
                                obj_out = open_output(os.path.join(res_dir, o.name+".object"))
-                               object_export.export(context, obj_out, [o])
+                               progress.push_task(o.name, i/len(objs), (i+1)/len(objs))
+                               object_export.export(context, obj_out, [o], progress)
+                               progress.pop_task()
 
                for o in objs:
                        out_file.begin("object", '"{}.object"'.format(o.name))