Creating a BGE staging branch.
[blender.git] / doc / python_api / examples / bpy.types.Operator.3.py
1 """
2 Dialog Box
3 ++++++++++
4 This operator uses its :class:`Operator.invoke` function to call a popup.
5 """
6 import bpy
7
8
9 class DialogOperator(bpy.types.Operator):
10     bl_idname = "object.dialog_operator"
11     bl_label = "Simple Dialog Operator"
12
13     my_float = bpy.props.FloatProperty(name="Some Floating Point")
14     my_bool = bpy.props.BoolProperty(name="Toggle Option")
15     my_string = bpy.props.StringProperty(name="String Value")
16
17     def execute(self, context):
18         message = "Popup Values: %f, %d, '%s'" % \
19             (self.my_float, self.my_bool, self.my_string)
20         self.report({'INFO'}, message)
21         return {'FINISHED'}
22
23     def invoke(self, context, event):
24         wm = context.window_manager
25         return wm.invoke_props_dialog(self)
26
27
28 bpy.utils.register_class(DialogOperator)
29
30 # test call
31 bpy.ops.object.dialog_operator('INVOKE_DEFAULT')