]> uap-core.de Git - note.git/commitdiff
add states args to existing widget builders
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Tue, 14 Apr 2026 06:01:13 +0000 (08:01 +0200)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Tue, 14 Apr 2026 06:01:13 +0000 (08:01 +0200)
ui-rs/src/ui/button.rs
ui-rs/src/ui/text.rs

index b44ba78190053eaa8685fed92c8a3c77f6f1194d..344098c14cb1d6209441c2ecfd14a6fbcd73b537 100644 (file)
@@ -268,6 +268,20 @@ impl<'a, T> ButtonBuilder<'a, T> {
         }
         self
     }
+
+    pub fn visibility_states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_button_args_set_visibility_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
+
+    pub fn states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_button_args_set_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
 }
 
 impl<'a, T> ToggleBuilder<'a, T> {
@@ -439,7 +453,19 @@ impl<'a, T> ToggleBuilder<'a, T> {
         self
     }
 
-    // TODO: callback, states
+    pub fn visibility_states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_toggle_args_set_visibility_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
+
+    pub fn states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_toggle_args_set_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
 }
 
 
index 8c914943e72f83b85e599c376d2f04ec3cd3a4c0..66b94fedd59a1b151e94bf7e244ddee990fab8dc 100644 (file)
@@ -173,7 +173,19 @@ impl<'a, T> TextAreaBuilder<'a, T> {
         self
     }
 
-    // TODO: states
+    pub fn visibility_states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_textarea_args_set_visibility_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
+
+    pub fn states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_textarea_args_set_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
 }
 
 
@@ -379,7 +391,19 @@ impl<'a, T> TextFieldBuilder<'a, T> {
         self
     }
 
-    // TODO: states
+    pub fn visibility_states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_textfield_args_set_visibility_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
+
+    pub fn states(&mut self, states: &[i32]) -> &mut Self {
+        unsafe {
+            ui_textfield_args_set_states(self.args, states.as_ptr(), states.len() as c_int);
+        }
+        self
+    }
 }