--- a/ui/common/context.c Sat Nov 11 12:22:16 2017 +0100 +++ b/ui/common/context.c Sun Nov 12 12:03:50 2017 +0100 @@ -205,6 +205,10 @@ val = ui_int_new(ctx, NULL); break; } + case UI_VAR_DOUBLE: { + val = ui_double_new(ctx, NULL); + break; + } case UI_VAR_STRING: { val = ui_string_new(ctx, NULL); break; @@ -218,7 +222,7 @@ break; } case UI_VAR_RANGE: { - val = NULL; // TODO + val = ui_range_new(ctx, NULL); break; } } @@ -250,6 +254,14 @@ t->set(t, t->value); break; } + case UI_VAR_DOUBLE: { + UiDouble *f = from->value; + UiDouble *t = to->value; + if(!f->obj) break; + uic_double_copy(f, t); + t->set(t, t->value); + break; + } case UI_VAR_STRING: { UiString *f = from->value; UiString *t = to->value; @@ -298,6 +310,7 @@ void uic_save_var(UiVar *var) { switch(var->type) { case UI_VAR_INTEGER: uic_int_save(var->value); break; + case UI_VAR_DOUBLE: uic_double_save(var->value); break; case UI_VAR_STRING: uic_string_save(var->value); break; case UI_VAR_TEXT: uic_text_save(var->value); break; case UI_VAR_LIST: break; @@ -308,6 +321,7 @@ void uic_unbind_var(UiVar *var) { switch(var->type) { case UI_VAR_INTEGER: uic_int_unbind(var->value); break; + case UI_VAR_DOUBLE: uic_double_unbind(var->value); break; case UI_VAR_STRING: uic_string_unbind(var->value); break; case UI_VAR_TEXT: uic_text_unbind(var->value); break; case UI_VAR_LIST: uic_list_unbind(var->value); break;