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>2014-02-19 04:30:06 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-02-19 04:35:45 +0400
commit64664541b696998e3b12bfcd43fa9cc892d1e758 (patch)
treead1d45e327f004ccf4fe4c55e846f35ff43fb33a /source/blender/editors/interface/interface.c
parent2a9e33fba56c0d99aa224c91860be25783363ad5 (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.c19
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: