From: Andrea Zagli <azagli@libero.it>
Date: Sat, 4 Mar 2023 14:21:34 +0000 (+0100)
Subject: Field: added set_template.
X-Git-Url: https://saetta.ns0.it/gitweb?a=commitdiff_plain;h=d7f2137394e742e1bb2ba64a9017b3010881c05f;p=rust%2Fzakform

Field: added set_template.
---

diff --git a/src/fields.rs b/src/fields.rs
index 62e68b0..4e79e67 100644
--- a/src/fields.rs
+++ b/src/fields.rs
@@ -46,6 +46,8 @@ pub trait TField {
 
 	fn filter(&mut self);
 
+	fn set_template(&mut self, template: &str);
+
 	fn render(&self) -> String;
 
 	fn any(&mut self) -> &mut dyn Any;
@@ -128,6 +130,13 @@ impl TField for FieldText {
 		}
 	}
 
+	fn set_template(&mut self, template: &str) {
+		match self.field.tmpl.add_raw_template("field", template) {
+			Err(e) => { println!("{:?}", e) },
+			_ => {},
+		};
+	}
+
 	fn render(&self) -> String {
 		let mut s = String::new();
 
@@ -255,6 +264,13 @@ impl TField for FieldTextArea {
 		}
 	}
 
+	fn set_template(&mut self, template: &str) {
+		match self.field.tmpl.add_raw_template("field", template) {
+			Err(e) => { println!("{:?}", e) },
+			_ => {},
+		};
+	}
+
 	fn render(&self) -> String {
 		let mut s = String::new();
 
@@ -399,6 +415,13 @@ impl TField for FieldRadio {
 		}
 	}
 
+	fn set_template(&mut self, template: &str) {
+		match self.field.tmpl.add_raw_template("field", template) {
+			Err(e) => { println!("{:?}", e) },
+			_ => {},
+		};
+	}
+
 	fn render(&self) -> String {
 		let mut s = String::new();
 
@@ -559,6 +582,13 @@ impl TField for FieldSelect {
 		}
 	}
 
+	fn set_template(&mut self, template: &str) {
+		match self.field.tmpl.add_raw_template("field", template) {
+			Err(e) => { println!("{:?}", e) },
+			_ => {},
+		};
+	}
+
 	fn render(&self) -> String {
 		let mut s = String::new();
 
@@ -684,6 +714,13 @@ impl TField for FieldCheck {
 		}
 	}
 
+	fn set_template(&mut self, template: &str) {
+		match self.field.tmpl.add_raw_template("field", template) {
+			Err(e) => { println!("{:?}", e) },
+			_ => {},
+		};
+	}
+
 	fn render(&self) -> String {
 		let mut s = String::new();