Beispiel #1
0
 def draw(self, context):
     try:
         scene = context.scene
         layout = self.layout
         obj = context.object
         self.do_draw(context, scene, layout, obj)
     except Exception:
         print_exception("do_draw")
         raise
Beispiel #2
0
    def draw_header(self, context):
        try:
            self.layout.label(icon=self.bl_icon)

            scene = context.scene
            layout = self.layout
            obj = context.object
            self.finish_header(context, scene, layout, obj)
        except Exception:
            print_exception("draw_header")
            return
Beispiel #3
0
 def poll(cls, context):
     try:
         result = cls.do_poll(context)
         if callable(result):
             print("[EXCP] {0}:  [do_poll]  Must correct call [{1}]".format(
                 get_logging_name(cls), result))
             return False
         return result
     except Exception:
         print_exception("do_poll")
         return False
    def modal(self, context, event):
        try:
            if self.do_cancel(context, event):
                return self.cancelled()
        except Exception:
            print_exception("do_cancel")
            return self.cancelled()

        try:
            if self.do_continue(context, event):
                try:
                    self.do_iteration(context, event)
                except Exception:
                    print_exception("do_iteration")
                    return self.cancelled()

                return self.running_modal()
        except Exception:
            print_exception("do_continue")
            return self.cancelled()

        try:
            self.do_end(context, event)
        except Exception:
            print_exception("do_end")
            return self.cancelled()

        return self.finished()
    def execute(self, context):
        returning = self.finished()

        try:
            use_global_undo = context.preferences.edit.use_global_undo
            context.preferences.edit.use_global_undo = False
            start = time.perf_counter()
            returning = self.do_execute(context)
            end = time.perf_counter()

            print("[PERF] {0}:  [do_execute]  {1}s".format(
                get_logging_name(self), end - start))

            if returning is None:
                returning = self.finished()
        except Exception:
            print_exception("do_execute")
            time.sleep(1)
            returning = self.cancelled()
        finally:
            context.preferences.edit.use_global_undo = use_global_undo

        return returning