[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2674] branches/geodesic_domes/ geodesic_domes_260/third_domes_panel.py: Now error message pop up using DialogOperator ; -)

Peter K.H. Gragert pkhgragert at gmail.com
Mon Nov 28 10:44:00 CET 2011


Revision: 2674
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2674
Author:   pkhg
Date:     2011-11-28 09:43:48 +0000 (Mon, 28 Nov 2011)
Log Message:
-----------
Now error message pop up using DialogOperator ;-)
let me know about it 

Modified Paths:
--------------
    branches/geodesic_domes/geodesic_domes_260/third_domes_panel.py

Modified: branches/geodesic_domes/geodesic_domes_260/third_domes_panel.py
===================================================================
--- branches/geodesic_domes/geodesic_domes_260/third_domes_panel.py	2011-11-28 06:56:56 UTC (rev 2673)
+++ branches/geodesic_domes/geodesic_domes_260/third_domes_panel.py	2011-11-28 09:43:48 UTC (rev 2674)
@@ -55,12 +55,14 @@
         layout = self.layout
         col = layout.column()
         col.operator(GenerateGeodesicDome.bl_idname,"execute me!")
+        ''' 
         if context.scene.error_message == "":
             col.label("No ERROR at this moment")
         else:
             tmp = context.scene.error_message.split("\n")
             for el in tmp:
                 col.label(el)
+        #'''
 
 class GenerateGeodesicDome(bpy.types.Operator):
     bl_label = "Generate geodesic dome objects"
@@ -101,7 +103,7 @@
     facetoggle = BoolProperty(name="facetoggle", description = "with or without faces", default = False )
     faceimporttoggle = BoolProperty(name="faceimporttoggle", default = False )
     face_use_imported_object = BoolProperty(name="Use: imported ", default = False)
-    facewidth = FloatProperty(name="facewidth", min = 0.01, max = 4, default = .50)
+    facewidth = FloatProperty(name="facewidth", min = -1, soft_min = 0.001,  max = 4, default = .50)
     fwtog = BoolProperty(name="fwtog", default = False )
     faceheight = FloatProperty(name="faceheight", min = 0.001, max = 4, default = 1 )
     fhtog = BoolProperty(name="fhtog", default = False )
@@ -681,6 +683,9 @@
                     else:
                         message = obj_name +" does not exist \nor is not a MESH"
                         context.scene.error_message = message
+
+#PKHG_TEST_28-11                        
+                        bpy.ops.object.dialog_operator('INVOKE_DEFAULT')
                         self.report({'ERROR'}, message)
                         print("***ERROR***" + obj_name +" does not exist or is not a MESH")
         elif self.mainpages == "Hubs":
@@ -696,8 +701,8 @@
             hublength = self.hublength
             hstog =  self.hstog
             hmeshname=  self.hmeshname
-#PKHG_TODO_17-11 better info!            
-            if not (hmeshname == "None") and not (hubimpmesh == "None") and  hubtoggle:
+#PKHG_TODO_27-11 better info!??
+            if not (hmeshname == "None") and not (hubimpmesh == "None") and  hubtoggle:                
                 try:                    
                     hub_obj = vefm_259.importmesh(hmeshname,0)
                     hub = vefm_259.hub(hub_obj, True,\
@@ -708,9 +713,11 @@
                     vefm_259.vefm_add_object(mesh)
                     bpy.data.objects[-1].location = (0,0,0)
                 except:
-                    message = "***ERROR*** \neither no mesh for hub\nor " + hmeshname +  " available"
+                    message = "***ERROR*** \neither no mesh for hub\nor " + hmeshname +  " available"                    
                     context.scene.error_message = message
+                    bpy.ops.object.dialog_operator('INVOKE_DEFAULT')
                     print(message)
+                
             else:
                 message = "***INFO***\nuse the hub toggle!"
                 context.scene.error_message = message
@@ -742,6 +749,7 @@
                 else:
                     message = "***ERROR***\n" + strutimpmesh + "\nis not a MESH"
                     context.scene.error_message = message
+                    bpy.ops.object.dialog_operator('INVOKE_DEFAULT')
                     print("***ERROR*** strut obj is not a MESH")
             else:
                 vefm_259.vefm_add_object(basegeodesic)
@@ -768,6 +776,7 @@
                     else:
                         message = "***ERROR***\nno imported message available\n" + "last geodesic used" 
                         context.scene.error_message = message
+                        bpy.ops.object.dialog_operator('INVOKE_DEFAULT')
                         print("\n***ERROR*** no imported mesh available")
                         print("last geodesic used!")
                         faceobject = vefm_259.facetype(basegeodesic,facedata,\
@@ -778,6 +787,7 @@
                 vefm_259.vefm_add_object(facemesh)
 #PKHG_DBG_OK                print("created name = ", bpy.data.objects[-1].name)
                 obj = bpy.data.objects[-1]
+                obj.name = self.fmeshname
                 obj.location = (0,0,0)
         return {'FINISHED'}
 
@@ -844,24 +854,41 @@
                     b = target.verts[facey.vertices[i+1].index]
                 c = centre
                 f = [a,b,c]
-#                f.apped(a)
-#                f.append(b)
-#                f.append(c)
-#                f.v.append(a)
-#                f.v.append(b)
-#                f.v.append(c)
                 target.faces.append(f)
         else:
-#            f=NMesh.Face()
             f = []
             for j in range(len(facey.vertices)):
 
                 a = facey.vertices[j]
                 f.append(target.verts[a.index])
-#                f.v.append(target.verts[a.index])
             target.faces.append(f)
+###error messages test
+        
+class DialogOperator(bpy.types.Operator):
+    bl_idname = "object.dialog_operator"
+    bl_label = "INFO"
 
+#    @classmethod
+#    def poll(self,context):
+#        return context.scene.error_message != ""
+    
+    def draw(self,context):
+        layout = self.layout
+#        message = "***ERROR*** something wrong, \nlook into the console"
+        message = context.scene.error_message
+        col = layout.column()
+        tmp = message.split("\n")
+        for el in tmp:
+            col.label(el)
+        
+    def execute(self, context):
+        return {'FINISHED'}
 
+    def invoke(self, context, event):
+        wm = context.window_manager
+        return wm.invoke_props_dialog(self)
+            
+
 ######### register all
 def register():
     bpy.utils.register_module(__name__)



More information about the Bf-extensions-cvs mailing list