[Bf-blender-cvs] [2480bbf] master: Multi-value cancel, keeps scale set

Campbell Barton noreply at git.blender.org
Thu May 28 07:54:15 CEST 2015


Commit: 2480bbff56475b3326ab397ed91900b4e66da757
Author: Campbell Barton
Date:   Thu May 28 15:41:17 2015 +1000
Branches: master
https://developer.blender.org/rB2480bbff56475b3326ab397ed91900b4e66da757

Multi-value cancel, keeps scale set

===================================================================

M	source/blender/editors/interface/interface_handlers.c

===================================================================

diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 5c8b259..6f02782 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -1932,11 +1932,9 @@ static void ui_apply_but(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
 
 		if (data->str) MEM_freeN(data->str);
 		data->str = data->origstr;
-		data->origstr = NULL;
 		data->value = data->origvalue;
-		data->origvalue = 0.0;
 		copy_v3_v3(data->vec, data->origvec);
-		data->origvec[0] = data->origvec[1] = data->origvec[2] = 0.0f;
+		/* postpone clearing origdata */
 	}
 	else {
 		/* we avoid applying interactive edits a second time
@@ -2076,6 +2074,12 @@ static void ui_apply_but(bContext *C, uiBlock *block, uiBut *but, uiHandleButton
 	ui_selectcontext_apply(C, but, &data->select_others, data->value, data->origvalue);
 #endif
 
+	if (data->cancel) {
+		data->origstr = NULL;
+		data->origvalue = 0.0;
+		zero_v3(data->origvec);
+	}
+
 	but->editstr = editstr;
 	but->editval = editval;
 	but->editvec = editvec;




More information about the Bf-blender-cvs mailing list