Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2018-07-26 02:59:56 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-07-26 04:53:53 +0300
commitdbd79c097c14d486fe79b91b916a9f854587b27e (patch)
treef3cf68fcccfbe24c8a052bec2ed0c3a155d7dae2 /source/blender/editors/interface/interface_utils.c
parent2df27fa6cf85a6b4534302a41d9588b550029b01 (diff)
WM: Add operator property poll callback
This allows operators to filter out properties from the auto-generated draw functions. Some custom draw functions can move to using this.
Diffstat (limited to 'source/blender/editors/interface/interface_utils.c')
-rw-r--r--source/blender/editors/interface/interface_utils.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source/blender/editors/interface/interface_utils.c b/source/blender/editors/interface/interface_utils.c
index 1aa6f045266..2059fc1c849 100644
--- a/source/blender/editors/interface/interface_utils.c
+++ b/source/blender/editors/interface/interface_utils.c
@@ -159,7 +159,7 @@ uiBut *uiDefAutoButR(uiBlock *block, PointerRNA *ptr, PropertyRNA *prop, int ind
*/
int uiDefAutoButsRNA(
uiLayout *layout, PointerRNA *ptr,
- bool (*check_prop)(PointerRNA *, PropertyRNA *),
+ bool (*check_prop)(PointerRNA *ptr, PropertyRNA *prop, void *user_data), void *user_data,
const char label_align)
{
uiLayout *split, *col;
@@ -172,8 +172,9 @@ int uiDefAutoButsRNA(
RNA_STRUCT_BEGIN (ptr, prop)
{
flag = RNA_property_flag(prop);
- if (flag & PROP_HIDDEN || (check_prop && check_prop(ptr, prop) == 0))
+ if (flag & PROP_HIDDEN || (check_prop && check_prop(ptr, prop, user_data) == 0)) {
continue;
+ }
if (label_align != '\0') {
PropertyType type = RNA_property_type(prop);