diff options
author | Jacques Lucke <mail@jlucke.com> | 2019-01-09 12:39:31 +0300 |
---|---|---|
committer | Jacques Lucke <mail@jlucke.com> | 2019-01-09 12:40:05 +0300 |
commit | 22ddd573638582ad5213bb4a7ff23ccae50dd285 (patch) | |
tree | 45f521fa73ae8a4062113c297e3e0703a549c2ca /source/blender/editors/util | |
parent | 06d1c2f7373d3b506675dd671661be26bc50704f (diff) |
Fix T60338: Allow user to input units of another system
Diffstat (limited to 'source/blender/editors/util')
-rw-r--r-- | source/blender/editors/util/numinput.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/source/blender/editors/util/numinput.c b/source/blender/editors/util/numinput.c index e3c0f6ca685..817b12fbc4d 100644 --- a/source/blender/editors/util/numinput.c +++ b/source/blender/editors/util/numinput.c @@ -258,13 +258,7 @@ bool user_string_to_number(bContext *C, const char *str, const UnitSettings *uni { #ifdef WITH_PYTHON double unit_scale = BKE_scene_unit_scale(unit, type, 1.0); - if (!bUnit_ContainsUnit(str, unit->system, type)) { - int success = BPY_execute_string_as_number(C, NULL, str, true, r_value); - *r_value *= bUnit_PreferredInputUnitScalar(unit, type); - *r_value /= unit_scale; - return success; - } - else { + if (bUnit_ContainsUnit(str, type)) { char str_unit_convert[256]; BLI_strncpy(str_unit_convert, str, sizeof(str_unit_convert)); bUnit_ReplaceString( @@ -273,6 +267,12 @@ bool user_string_to_number(bContext *C, const char *str, const UnitSettings *uni return BPY_execute_string_as_number(C, NULL, str_unit_convert, true, r_value); } + else { + int success = BPY_execute_string_as_number(C, NULL, str, true, r_value); + *r_value *= bUnit_PreferredInputUnitScalar(unit, type); + *r_value /= unit_scale; + return success; + } #else *r_value = atof(str); return true; |