diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-03-15 13:12:37 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-03-15 13:13:41 +0300 |
commit | b7deea029a2ad80757ab6859c88990d036c5729c (patch) | |
tree | f9d91ee3d82d938fc918adce5403c0c7c64c3521 /source/blender/editors/interface/interface.c | |
parent | 647a4ea2f7a057159aae29d875e20db2809b563b (diff) |
Fix T47780: Icons don't update in floating panels
Diffstat (limited to 'source/blender/editors/interface/interface.c')
-rw-r--r-- | source/blender/editors/interface/interface.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c index e18066f149e..daef84c311f 100644 --- a/source/blender/editors/interface/interface.c +++ b/source/blender/editors/interface/interface.c @@ -2855,14 +2855,16 @@ void ui_but_update_ex(uiBut *but, const bool validate) if (but->block->flag & UI_BLOCK_LOOP) { if (but->rnaprop && (RNA_property_type(but->rnaprop) == PROP_ENUM)) { int value_enum = RNA_property_enum_get(&but->rnapoin, but->rnaprop); - const char *buf; - if (RNA_property_enum_name_gettexted( + + EnumPropertyItem item; + if (RNA_property_enum_item_from_value_gettexted( but->block->evil_C, - &but->rnapoin, but->rnaprop, value_enum, &buf)) + &but->rnapoin, but->rnaprop, value_enum, &item)) { - size_t slen = strlen(buf); + size_t slen = strlen(item.name); ui_but_string_free_internal(but); - ui_but_string_set_internal(but, buf, slen); + ui_but_string_set_internal(but, item.name, slen); + but->icon = item.icon; } } } |