--- a/ui/common/types.c Thu Sep 11 20:03:45 2025 +0200 +++ b/ui/common/types.c Thu Sep 11 20:12:42 2025 +0200 @@ -417,7 +417,7 @@ return s->get ? s->get(s) : s->value.ptr; } else { - return 0; + return NULL; } } @@ -447,6 +447,69 @@ return s->get ? s->get(s) : s->value.ptr; } else { + return NULL; + } +} + +void ui_range_set_value(UiRange *r, double value) { + if (r) { + if (r->set) { + r->set(r, value); + } else { + r->value = value; + } + } +} + +void ui_range_set_range(UiRange *r, double min, double max) { + if (r) { + if (r->setrange) { + r->setrange(r, min, max); + } else { + r->min = min; + r->max = max; + } + } +} + +void ui_range_set_extent(UiRange *r, double extent) { + if (r) { + if (r->setextent) { + r->setextent(r, extent); + } else { + r->extent = extent; + } + } +} + +double ui_range_get_value(UiRange *r) { + if (r) { + return r->get ? r->get(r) : r->value; + } else { + return 0; + } +} + +double ui_range_get_min(UiRange *r) { + if (r) { + return r->min; + } else { + return 0; + } +} + +double ui_range_get_max(UiRange *r) { + if (r) { + return r->max; + } else { + return 0; + } +} + +double ui_range_get_extent(UiRange *r) { + if (r) { + return r->extent; + } else { return 0; } }