X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=blender%2Fio_mspgl%2Futil.py;fp=blender%2Fio_mspgl%2Futil.py;h=850f1ddbb71dd754005d80a1e568fb01dc9f9819;hb=328ac951d8df830e1c9ee469b4ab073e9163606d;hp=000190fe05e2cb80510121c90afd945378dd3ba6;hpb=4d7f66ea28c788e12f700216b9c53af9e71b8390;p=libs%2Fgl.git diff --git a/blender/io_mspgl/util.py b/blender/io_mspgl/util.py index 000190fe..850f1ddb 100644 --- a/blender/io_mspgl/util.py +++ b/blender/io_mspgl/util.py @@ -4,13 +4,28 @@ class Progress: self.start = 0.0 self.delta = 1.0 self.last = 0.0 + self.stack = [] self.window_manager = context.window_manager self.window_manager.progress_begin(0.0, 1.0) + def push_task(self, task, low, high): + self.stack.append((task, low, high-low)) + self.set_task("init", 0.0, 0.0) + + def pop_task(self): + self.set_task("finish", 1.0, 1.0) + self.stack.pop() + def set_task(self, task, low, high): + if self.stack: + task = self.stack[-1][0]+": "+task + low = self.stack[-1][1]+self.stack[-1][2]*low + high = self.stack[-1][1]+self.stack[-1][2]*high + self.task = task self.start = low self.delta = high-low + self.set_progress(0) def set_progress(self, value):