diff options
author | Campbell Barton <ideasman42@gmail.com> | 2017-11-02 10:19:11 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2017-11-02 10:21:59 +0300 |
commit | e32c1bd5d03148b123c8d2664b6164fe5cbd5c12 (patch) | |
tree | e6e425d4a8723c81f70d7e70e2d4e5fc6fe2ab74 /source/blender/editors/interface/interface_handlers.c | |
parent | 765e28948e706d8fce97c23d4d050a607971488b (diff) |
UI: use button_operator in operator_menu_hold
Move draw calls into UI_menutype_draw
Diffstat (limited to 'source/blender/editors/interface/interface_handlers.c')
-rw-r--r-- | source/blender/editors/interface/interface_handlers.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index 57f9b2ae356..bd94ac2f1d4 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -6789,11 +6789,8 @@ static bool ui_but_menu(bContext *C, uiBut *but) /*bool is_idprop = RNA_property_is_idprop(prop);*/ /* XXX does not work as expected, not strictly needed */ bool is_set = RNA_property_is_set(ptr, prop); - /* set the prop and pointer data for python access to the hovered ui element; TODO, index could be supported as well*/ - PointerRNA temp_ptr; - RNA_pointer_create(NULL, &RNA_Property, but->rnaprop, &temp_ptr); - uiLayoutSetContextPointer(layout, "button_prop", &temp_ptr); - uiLayoutSetContextPointer(layout, "button_pointer", ptr); + /* Set the (button_pointer, button_prop) and pointer data for Python access to the hovered ui element. */ + uiLayoutSetContextFromBut(layout, but); /* second slower test, saved people finding keyframe items in menus when its not possible */ if (is_anim) @@ -7012,9 +7009,7 @@ static bool ui_but_menu(bContext *C, uiBut *but) } /* Set the operator pointer for python access */ - if (but->opptr) { - uiLayoutSetContextPointer(layout, "button_operator", but->opptr); - } + uiLayoutSetContextFromBut(layout, but); uiItemS(layout); } @@ -7066,10 +7061,7 @@ static bool ui_but_menu(bContext *C, uiBut *but) mt = WM_menutype_find("WM_MT_button_context", true); if (mt) { - Menu menu = {NULL}; - menu.layout = uiLayoutColumn(layout, false); - menu.type = mt; - mt->draw(C, &menu); + UI_menutype_draw(C, mt, uiLayoutColumn(layout, false)); } UI_popup_menu_end(C, pup); |