Skip to content
Snippets Groups Projects
Commit c40e9a1a authored by Campbell Barton's avatar Campbell Barton
Browse files

Docs: invoke_search_popup uses bl_property

Also add code example in docs.
parent 21f19224
No related branches found
No related tags found
No related merge requests found
"""
Enum Search Popup
+++++++++++++++++
You may want to have an operator prompt the user to select an item
from a search field, this can be done using :class:`bpy.types.Operator.invoke_search_popup`.
"""
import bpy
from bpy.props import EnumProperty
class SearchEnumOperator(bpy.types.Operator):
bl_idname = "object.search_enum_operator"
bl_label = "Search Enum Operator"
bl_property = "my_search"
my_search = EnumProperty(
name="My Search",
items=(
('FOO', "Foo", ""),
('BAR', "Bar", ""),
('BAZ', "Baz", ""),
),
)
def execute(self, context):
self.report({'INFO'}, "Selected:" + self.my_search)
return {'FINISHED'}
def invoke(self, context, event):
context.window_manager.invoke_search_popup(self)
return {'RUNNING_MODAL'}
bpy.utils.register_class(SearchEnumOperator)
# test call
bpy.ops.object.search_enum_operator('INVOKE_DEFAULT')
...@@ -459,8 +459,11 @@ void RNA_api_wm(StructRNA *srna) ...@@ -459,8 +459,11 @@ void RNA_api_wm(StructRNA *srna)
/* invoke enum */ /* invoke enum */
func = RNA_def_function(srna, "invoke_search_popup", "rna_Operator_enum_search_invoke"); func = RNA_def_function(srna, "invoke_search_popup", "rna_Operator_enum_search_invoke");
RNA_def_function_ui_description(func, "Operator search popup invoke (search in values of " RNA_def_function_ui_description(
"operator's type 'prop' EnumProperty, and execute it on confirmation)"); func,
"Operator search popup invoke which "
"searches values of the operator's :class:`bpy.types.Operator.bl_property` "
"(which must be an EnumProperty), executing it on confirmation");
rna_generic_op_invoke(func, 0); rna_generic_op_invoke(func, 0);
/* invoke functions, for use with python */ /* invoke functions, for use with python */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment