diff --git a/library/server/wsf_html/webcontrol/wsf_form_control.e b/library/server/wsf_html/webcontrol/wsf_form_control.e
index 8dbd3e8d..7008b2ff 100644
--- a/library/server/wsf_html/webcontrol/wsf_form_control.e
+++ b/library/server/wsf_html/webcontrol/wsf_form_control.e
@@ -22,4 +22,8 @@ feature {NONE}
tag_name := "form"
end
+feature
+
+
+
end
diff --git a/library/server/wsf_html/webcontrol/wsf_form_element_control.e b/library/server/wsf_html/webcontrol/wsf_form_element_control.e
index 2c741216..45fb8380 100644
--- a/library/server/wsf_html/webcontrol/wsf_form_element_control.e
+++ b/library/server/wsf_html/webcontrol/wsf_form_element_control.e
@@ -4,18 +4,31 @@ note
date: "$Date$"
revision: "$Revision$"
-deferred class
- WSF_FORM_ELEMENT_CONTROL
+class
+ WSF_FORM_ELEMENT_CONTROL [G]
+
inherit
+
WSF_CONTROL
feature
- is_valid(value: STRING):BOOLEAN
- do
-
- end
+ is_valid (value: G): BOOLEAN
+ do
+ if attached validate as v then
+ Result := v.item ([value])
+ else
+ Result := True
+ end
+ end
- validate: detachable FUNCTION[ANY, TUPLE[STRING], BOOLEAN]
+
+feature
+
+ value_control: WSF_VALUE_CONTROL[G]
+
+ validate: detachable FUNCTION [ANY, TUPLE [G], BOOLEAN]
+
+
end
diff --git a/library/server/wsf_html/webcontrol/wsf_text_control.e b/library/server/wsf_html/webcontrol/wsf_text_control.e
index 73f2b3f4..63dc34a3 100644
--- a/library/server/wsf_html/webcontrol/wsf_text_control.e
+++ b/library/server/wsf_html/webcontrol/wsf_text_control.e
@@ -11,6 +11,8 @@ inherit
WSF_CONTROL
+ WSF_VALUE_CONTROL [STRING]
+
create
make_text
@@ -57,11 +59,11 @@ feature --EVENT HANDLING
end
end
-feature
+feature -- Implementation
render: STRING
do
- Result := ""
+ Result := render_tag ("", "value=%"" + text + "%"")
end
set_text (t: STRING)
@@ -72,6 +74,11 @@ feature
end
end
+ value: STRING
+ do
+ Result := text
+ end
+
feature
text: STRING
diff --git a/library/server/wsf_html/webcontrol/wsf_validator.e b/library/server/wsf_html/webcontrol/wsf_validator.e
new file mode 100644
index 00000000..f7988814
--- /dev/null
+++ b/library/server/wsf_html/webcontrol/wsf_validator.e
@@ -0,0 +1,16 @@
+note
+ description: "Summary description for {WSF_VALIDATOR}."
+ author: ""
+ date: "$Date$"
+ revision: "$Revision$"
+
+class
+ WSF_VALIDATOR
+
+create
+ make
+
+feature {NONE}
+
+
+end
diff --git a/library/server/wsf_html/webcontrol/wsf_value_control.e b/library/server/wsf_html/webcontrol/wsf_value_control.e
new file mode 100644
index 00000000..31e6cb99
--- /dev/null
+++ b/library/server/wsf_html/webcontrol/wsf_value_control.e
@@ -0,0 +1,16 @@
+note
+ description: "Summary description for {WSF_VALUE_CONTROL}."
+ author: ""
+ date: "$Date$"
+ revision: "$Revision$"
+
+deferred class
+ WSF_VALUE_CONTROL [G]
+
+feature
+
+ value: G
+ deferred
+ end
+
+end