]> uap-core.de Git - note.git/commitdiff
implement passing values to a ToggleBuilder main
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Wed, 1 Apr 2026 19:45:36 +0000 (21:45 +0200)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Wed, 1 Apr 2026 19:45:36 +0000 (21:45 +0200)
ui-rs/src/ui/button.rs
ui-rs/src/ui/toolkit.rs
ui-rs/src/ui/window.rs

index f1e440538ff07cbfc55ddb0813ffbef6d34c455a..d0dd9b6c7c9df010e841f213724d9b9b28bf139c 100644 (file)
@@ -7,8 +7,6 @@ use crate::ui::toolkit;
 use crate::ui::ffi::*;
 
 extern "C" {
-    fn ui_window(title: *const c_char) -> *const UiObject;
-
     fn ui_button_create(obj: *const UiObject, args: *const UiButtonArgs);
     fn ui_togglebutton_create(obj: *const UiObject, args: *const UiToggleArgs);
     fn ui_checkbox_create(obj: *const UiObject, args: *const UiToggleArgs);
@@ -462,5 +460,11 @@ impl ToggleBuilder {
         self
     }
 
+    pub fn value(self, value: &toolkit::UiInteger) {
+        unsafe {
+            ui_toggle_args_set_value(self.args, value.ptr);
+        }
+    }
+
     // TODO: value, callback, states
 }
\ No newline at end of file
index 7d29052d4c4beff6676f84a6c561a1469d47ea00..35c62e02fa878c5159adf74243a6de70ef5f7fc9 100644 (file)
@@ -4,23 +4,23 @@ use std::ffi::{c_char, c_int, CStr, CString};
 use crate::ui::ffi;
 
 pub struct UiObject {
-    pub ptr: *const ffi::UiObject
+    pub ptr: *mut ffi::UiObject
 }
 
 pub struct UiText {
-    pub ptr: *const ffi::UiText
+    pub ptr: *mut ffi::UiText
 }
 
 pub struct UiString {
-    pub ptr: *const ffi::UiString
+    pub ptr: *mut ffi::UiString
 }
 
 pub struct UiInteger {
-    pub ptr: *const ffi::UiInteger
+    pub ptr: *mut ffi::UiInteger
 }
 
 pub struct UiDouble {
-    pub ptr: *const ffi::UiDouble
+    pub ptr: *mut ffi::UiDouble
 }
 
 extern "C" {
index 972c1016a0308021f928a0e4ed967bf35853b4e1..0569c749afdea5efae1c2d8cb874c51e4e4732a3 100644 (file)
@@ -7,10 +7,10 @@ use crate::ui::toolkit;
 use crate::ui::ffi::UiObject;
 
 extern "C" {
-    fn ui_window(title: *const c_char) -> *const UiObject;
-    fn ui_sidebar_window(title: *const c_char) -> *const UiObject;
-    fn ui_splitview_window(title: *const c_char, sidebar: c_int) -> *const UiObject;
-    fn ui_simple_window(title: *const c_char) -> *const UiObject;
+    fn ui_window(title: *const c_char) -> *mut UiObject;
+    fn ui_sidebar_window(title: *const c_char) -> *mut UiObject;
+    fn ui_splitview_window(title: *const c_char, sidebar: c_int) -> *mut UiObject;
+    fn ui_simple_window(title: *const c_char) -> *mut UiObject;
 
 
     fn ui_show(ui: *const UiObject);