[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58348] branches/soc-2013-paint/source/ blender/editors/interface/interface_handlers.c: Fix evil issue that prevented popping up a color widget if you had
Antony Riakiotakis
kalast at gmail.com
Wed Jul 17 19:36:07 CEST 2013
Revision: 58348
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58348
Author: psy-fi
Date: 2013-07-17 17:36:07 +0000 (Wed, 17 Jul 2013)
Log Message:
-----------
Fix evil issue that prevented popping up a color widget if you had
closed a previous widget by clicking to a colour button next to it.
Also some style fixes and a better return value.
Modified Paths:
--------------
branches/soc-2013-paint/source/blender/editors/interface/interface_handlers.c
Modified: branches/soc-2013-paint/source/blender/editors/interface/interface_handlers.c
===================================================================
--- branches/soc-2013-paint/source/blender/editors/interface/interface_handlers.c 2013-07-17 17:31:12 UTC (rev 58347)
+++ branches/soc-2013-paint/source/blender/editors/interface/interface_handlers.c 2013-07-17 17:36:07 UTC (rev 58348)
@@ -833,6 +833,8 @@
ui_handler_region_drag_color_remove(C, drag_info);
WM_event_add_mousemove(C);
+ ED_region_tag_redraw(ar);
+
return WM_UI_HANDLER_BREAK;
}
break;
@@ -970,7 +972,7 @@
RNA_property_float_get_array(&but->rnapoin, but->rnaprop, drag_info->color);
drag_info->gamma_corrected = false;
valid = true;
- }else if (but->pointype == UI_BUT_POIN_FLOAT) {
+ } else if (but->pointype == UI_BUT_POIN_FLOAT) {
copy_v3_v3(drag_info->color, (float *)but->poin);
valid = true;
} else if (but->pointype == UI_BUT_POIN_CHAR) {
@@ -978,13 +980,15 @@
valid = true;
}
- if (valid)
+ if (valid) {
WM_event_add_ui_handler(C, &data->window->modalhandlers,
ui_handler_region_drag_color,
ui_handler_region_drag_color_remove,
drag_info);
+ }
else {
MEM_freeN(drag_info);
+ return false;
}
}
else
@@ -3511,7 +3515,9 @@
}
}
#ifdef USE_DRAG_TOGGLE
- if (event->type == LEFTMOUSE && (ui_is_but_bool(but) || but->type == COLOR)) {
+ if (event->type == LEFTMOUSE && event->val == KM_PRESS
+ && (ui_is_but_bool(but) || but->type == COLOR))
+ {
button_activate_state(C, but, BUTTON_STATE_WAIT_DRAG);
data->dragstartx = event->x;
data->dragstarty = event->y;
@@ -3594,7 +3600,7 @@
data->cancel = true;
return WM_UI_HANDLER_BREAK;
}
-
+
if (event->type == LEFTMOUSE && event->val == KM_RELEASE) {
button_activate_state(C, but, BUTTON_STATE_MENU_OPEN);
return WM_UI_HANDLER_BREAK;
More information about the Bf-blender-cvs
mailing list