add UiRange getter/setter functions

Thu, 11 Sep 2025 20:12:42 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Thu, 11 Sep 2025 20:12:42 +0200
changeset 757
2b977b332582
parent 756
72ccba551b4d
child 758
d5ff5520affe

add UiRange getter/setter functions

ui/common/types.c file | annotate | diff | comparison | revisions
ui/ui/toolkit.h file | annotate | diff | comparison | revisions
--- 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;
     }
 }
--- a/ui/ui/toolkit.h	Thu Sep 11 20:03:45 2025 +0200
+++ b/ui/ui/toolkit.h	Thu Sep 11 20:12:42 2025 +0200
@@ -611,6 +611,13 @@
 UIEXPORT char* ui_string_get(UiString *s);
 UIEXPORT void ui_text_set(UiText *s, const char* value);
 UIEXPORT char* ui_text_get(UiText *s);
+UIEXPORT void ui_range_set_value(UiRange *r, double value);
+UIEXPORT void ui_range_set_range(UiRange *r, double min, double max);
+UIEXPORT void ui_range_set_extent(UiRange *r, double extent);
+UIEXPORT double ui_range_get_value(UiRange *r);
+UIEXPORT double ui_range_get_min(UiRange *r);
+UIEXPORT double ui_range_get_max(UiRange *r);
+UIEXPORT double ui_range_get_extent(UiRange *r);
 UIEXPORT void ui_generic_set_image(UiGeneric *g, void *img);
 UIEXPORT void* ui_generic_get_image(UiGeneric *g);
 

mercurial