Added methods get/set_disabled/invisible/help/value.
authorAndrea Zagli <azagli@libero.it>
Sat, 18 Feb 2023 09:42:29 +0000 (10:42 +0100)
committerAndrea Zagli <azagli@libero.it>
Sat, 18 Feb 2023 09:42:29 +0000 (10:42 +0100)
examples/form.rs
src/fields.rs

index 296a5ce1ba5fd191f8893f6da1b4a593aaf2bd9b..665634782b027d1598ebd569976ecb0d60b96ad6 100644 (file)
@@ -58,6 +58,7 @@ async fn index(
 
        let mut fi = zakform::fields::FieldText::new("text");
        fi.set_maxlen(10);
+       fi.set_value("some text");
        f.add_field(Box::new(fi));
 
        let mut fi = zakform::fields::FieldRadio::new("radio");
@@ -72,6 +73,8 @@ async fn index(
 
        let mut fi = zakform::fields::FieldCheck::new("checkbox");
        fi.set_label("the check text very very long");
+       fi.set_help("Mandatory field");
+       fi.set_value("on");
        f.add_field(Box::new(fi));
 
        let mut fi = zakform::fields::FieldSelect::new("select");
index 73476bbd096a92c28a4389d0334d58db731512d0..45a0422c4740520653009a9ce3c9ca6d81c0143c 100644 (file)
@@ -20,9 +20,20 @@ pub trait TField {
        fn get_name(&self) -> String;
 
        fn get_label(&self) -> String;
-
        fn set_label(&mut self, label: &str);
 
+       fn get_disabled(&self) -> bool;
+       fn set_disabled(&mut self, disabled: bool);
+
+       fn get_invisible(&self) -> bool;
+       fn set_invisible(&mut self, invisible: bool);
+
+       fn get_help(&self) -> String;
+       fn set_help(&mut self, help: &str);
+
+       fn get_value(&self) -> String;
+       fn set_value(&mut self, value: &str);
+
        fn render(&self) -> String;
 
        fn any(&mut self) -> &mut dyn Any;
@@ -47,6 +58,38 @@ impl TField for FieldText {
                self.field.label = String::from(label);
        }
 
+       fn get_disabled(&self) -> bool {
+               self.field.disabled
+       }
+
+       fn set_disabled(&mut self, disabled: bool) {
+               self.field.disabled = disabled;
+       }
+
+       fn get_invisible(&self) -> bool {
+               self.field.invisible
+       }
+
+       fn set_invisible(&mut self, invisible: bool) {
+               self.field.invisible = invisible;
+       }
+
+       fn get_help(&self) -> String {
+               String::from(&self.field.help)
+       }
+
+       fn set_help(&mut self, help: &str) {
+               self.field.help = String::from(help);
+       }
+
+       fn get_value(&self) -> String {
+               String::from(&self.field.value)
+       }
+
+       fn set_value(&mut self, value: &str) {
+               self.field.value = String::from(value);
+       }
+
        fn render(&self) -> String {
                let mut s = String::new();
 
@@ -116,6 +159,38 @@ impl TField for FieldTextArea {
                self.field.label = String::from(label);
        }
 
+       fn get_disabled(&self) -> bool {
+               self.field.disabled
+       }
+
+       fn set_disabled(&mut self, disabled: bool) {
+               self.field.disabled = disabled;
+       }
+
+       fn get_invisible(&self) -> bool {
+               self.field.invisible
+       }
+
+       fn set_invisible(&mut self, invisible: bool) {
+               self.field.invisible = invisible;
+       }
+
+       fn get_help(&self) -> String {
+               String::from(&self.field.help)
+       }
+
+       fn set_help(&mut self, help: &str) {
+               self.field.help = String::from(help);
+       }
+
+       fn get_value(&self) -> String {
+               String::from(&self.field.value)
+       }
+
+       fn set_value(&mut self, value: &str) {
+               self.field.value = String::from(value);
+       }
+
        fn render(&self) -> String {
                let mut s = String::new();
 
@@ -202,6 +277,38 @@ impl TField for FieldRadio {
                self.field.label = String::from(label);
        }
 
+       fn get_disabled(&self) -> bool {
+               self.field.disabled
+       }
+
+       fn set_disabled(&mut self, disabled: bool) {
+               self.field.disabled = disabled;
+       }
+
+       fn get_invisible(&self) -> bool {
+               self.field.invisible
+       }
+
+       fn set_invisible(&mut self, invisible: bool) {
+               self.field.invisible = invisible;
+       }
+
+       fn get_help(&self) -> String {
+               String::from(&self.field.help)
+       }
+
+       fn set_help(&mut self, help: &str) {
+               self.field.help = String::from(help);
+       }
+
+       fn get_value(&self) -> String {
+               String::from(&self.field.value)
+       }
+
+       fn set_value(&mut self, value: &str) {
+               self.field.value = String::from(value);
+       }
+
        fn render(&self) -> String {
                let mut s = String::new();
 
@@ -304,6 +411,38 @@ impl TField for FieldSelect {
                self.field.label = String::from(label);
        }
 
+       fn get_disabled(&self) -> bool {
+               self.field.disabled
+       }
+
+       fn set_disabled(&mut self, disabled: bool) {
+               self.field.disabled = disabled;
+       }
+
+       fn get_invisible(&self) -> bool {
+               self.field.invisible
+       }
+
+       fn set_invisible(&mut self, invisible: bool) {
+               self.field.invisible = invisible;
+       }
+
+       fn get_help(&self) -> String {
+               String::from(&self.field.help)
+       }
+
+       fn set_help(&mut self, help: &str) {
+               self.field.help = String::from(help);
+       }
+
+       fn get_value(&self) -> String {
+               String::from(&self.field.value)
+       }
+
+       fn set_value(&mut self, value: &str) {
+               self.field.value = String::from(value);
+       }
+
        fn render(&self) -> String {
                let mut s = String::new();
 
@@ -371,6 +510,38 @@ impl TField for FieldCheck {
                self.field.label = String::from(label);
        }
 
+       fn get_disabled(&self) -> bool {
+               self.field.disabled
+       }
+
+       fn set_disabled(&mut self, disabled: bool) {
+               self.field.disabled = disabled;
+       }
+
+       fn get_invisible(&self) -> bool {
+               self.field.invisible
+       }
+
+       fn set_invisible(&mut self, invisible: bool) {
+               self.field.invisible = invisible;
+       }
+
+       fn get_help(&self) -> String {
+               String::from(&self.field.help)
+       }
+
+       fn set_help(&mut self, help: &str) {
+               self.field.help = String::from(help);
+       }
+
+       fn get_value(&self) -> String {
+               String::from(&self.field.value)
+       }
+
+       fn set_value(&mut self, value: &str) {
+               self.field.value = String::from(value);
+       }
+
        fn render(&self) -> String {
                let mut s = String::new();