diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-02-19 04:30:06 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-02-19 04:35:45 +0400 |
commit | 64664541b696998e3b12bfcd43fa9cc892d1e758 (patch) | |
tree | ad1d45e327f004ccf4fe4c55e846f35ff43fb33a /source/blender/editors/interface/interface.c | |
parent | 2a9e33fba56c0d99aa224c91860be25783363ad5 (diff) |
Fix T38706: dropdown labels in popups not updating
Caused by own recent changes to menu handling
Diffstat (limited to 'source/blender/editors/interface/interface.c')
-rw-r--r-- | source/blender/editors/interface/interface.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c index 68dd50f54ca..2e7bfb162ae 100644 --- a/source/blender/editors/interface/interface.c +++ b/source/blender/editors/interface/interface.c @@ -2491,6 +2491,25 @@ void ui_check_but(uiBut *but) /* name: */ switch (but->type) { + + case MENU: + if (BLI_rctf_size_x(&but->rect) > 24.0f) { + /* only needed for menus in popup blocks that don't recreate buttons on redraw */ + if (but->block->flag & UI_BLOCK_LOOP) { + if (but->rnaprop && (RNA_property_type(but->rnaprop) == PROP_ENUM)) { + int value = RNA_property_enum_get(&but->rnapoin, but->rnaprop); + const char *buf; + if (RNA_property_enum_name_gettexted(but->block->evil_C, + &but->rnapoin, but->rnaprop, value, &buf)) + { + BLI_strncpy(but->str, buf, sizeof(but->strdata)); + } + } + } + BLI_strncpy(but->drawstr, but->str, sizeof(but->drawstr)); + } + break; + case NUM: case NUMSLI: |