11import bpy
22from bpy_types import (Operator )
33from bpy_extras .io_utils import (ImportHelper , ExportHelper )
4- from bpy .props import ( StringProperty , BoolProperty , EnumProperty )
4+ from bpy .props import *
55from . import (importer , exporter )
66
77bl_info = {
@@ -59,6 +59,42 @@ def execute(self, context):
5959
6060 return {'FINISHED' }
6161
62+ #
63+ # The error message operator. When invoked, pops up a dialog
64+ # window with the given message.
65+ #
66+ class MessageOperator (bpy .types .Operator ):
67+ bl_idname = "error.message"
68+ bl_label = "Message"
69+ message = StringProperty (name = "" )
70+
71+ def execute (self , context ):
72+ self .report ({'INFO' }, self .message )
73+ print (self .message )
74+ return {'FINISHED' }
75+
76+ def invoke (self , context , event ):
77+ wm = context .window_manager
78+ return wm .invoke_popup (self , width = 500 , height = 500 )
79+
80+ def draw (self , context ):
81+ self .layout .alignment = 'CENTER'
82+ self .layout .label ("Message" )
83+ row = self .layout .row () #split(0.80)
84+ row .prop (self , "message" )
85+ row = self .layout .row ()
86+ row .alignment = 'CENTER'
87+ row .operator ("error.ok" )
88+
89+ #
90+ # The OK button in the error dialog
91+ #
92+ class OkOperator (bpy .types .Operator ):
93+ bl_idname = "error.ok"
94+ bl_label = "OK"
95+ def execute (self , context ):
96+ return {'FINISHED' }
97+
6298def menu_func_export (self , context ):
6399 self .layout .operator (ClausewitzExporter .bl_idname , text = "Export .mesh (Clausewitz Engine)" )
64100
@@ -69,9 +105,12 @@ def register():
69105 bpy .utils .register_module (__name__ )
70106 bpy .types .INFO_MT_file_export .append (menu_func_export )
71107 bpy .types .INFO_MT_file_import .append (menu_func_import )
72-
108+ bpy .utils .register_class (OkOperator )
109+ bpy .utils .register_class (MessageOperator )
73110
74111def unregister ():
75112 bpy .utils .unregister_module (__name__ )
76113 bpy .types .INFO_MT_file_export .remove (menu_func_export )
77114 bpy .types .INFO_MT_file_import .remove (menu_func_import )
115+ bpy .utils .unregister_class (OkOperator )
116+ bpy .utils .unregister_class (MessageOperator )
0 commit comments