From 08083b863006133ec93d7fafe278652e0dc657e3 Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Fri, 12 Nov 2021 08:09:41 +0900 Subject: [PATCH] [input] Use double for recipe float values Recipes themselves still use float, but using double in the cexpr values allows bare floating point numbers (which parse as double) to be used, making the bind command line a little more user-friendly. --- libs/input/in_binding.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libs/input/in_binding.c b/libs/input/in_binding.c index ebd30dcf7..1f28810ed 100644 --- a/libs/input/in_binding.c +++ b/libs/input/in_binding.c @@ -336,12 +336,14 @@ in_bind_f (void) .curve = 1, .scale = 1, }; + double curve = recipe.curve; + double scale = recipe.scale; exprsym_t var_syms[] = { {"minzone", &cexpr_int, &recipe.minzone}, {"maxzone", &cexpr_int, &recipe.maxzone}, {"deadzone", &cexpr_int, &recipe.deadzone}, - {"curve", &cexpr_float, &recipe.curve}, - {"scale", &cexpr_float, &recipe.scale}, + {"curve", &cexpr_double, &curve}, + {"scale", &cexpr_double, &scale}, {} }; exprtab_t vars_tab = { var_syms, 0 }; @@ -365,6 +367,8 @@ in_bind_f (void) } } if (i == argc) { + recipe.curve = curve; + recipe.scale = scale; IMT_BindAxis (imt, dev->axis_imt_id + num, axis, &recipe); } Hash_DelTable (vars_tab.tab);