diff --git a/library/server/wsf_html/webcontrol/wsf_button_control.e b/library/server/wsf_html/webcontrol/wsf_button_control.e index 5f2b7a6b..dbb47484 100644 --- a/library/server/wsf_html/webcontrol/wsf_button_control.e +++ b/library/server/wsf_html/webcontrol/wsf_button_control.e @@ -20,7 +20,6 @@ feature {NONE} do control_name := n text := v - click_event := agent donothing end feature {WSF_PAGE_CONTROL, WSF_CONTROL} -- STATE MANAGEMENT @@ -40,10 +39,6 @@ feature {WSF_PAGE_CONTROL, WSF_CONTROL} -- STATE MANAGEMENT feature --EVENT HANDLING - donothing (p: WSF_PAGE_CONTROL) --UGLY HACK MUST BE REMOVED - do - end - set_click_event (e: PROCEDURE [ANY, TUPLE [WSF_PAGE_CONTROL]]) do click_event := e @@ -51,8 +46,8 @@ feature --EVENT HANDLING handle_callback (cname: STRING; event: STRING; page: WSF_PAGE_CONTROL) do - if Current.control_name.is_equal (cname) and attached click_event then - click_event.call ([page]) + if Current.control_name.is_equal (cname) and attached click_event as cevent then + cevent.call ([page]) end end @@ -72,6 +67,6 @@ feature text: STRING - click_event: PROCEDURE [ANY, TUPLE [WSF_PAGE_CONTROL]] + click_event: detachable PROCEDURE [ANY, TUPLE [WSF_PAGE_CONTROL]] end diff --git a/library/server/wsf_html/webcontrol/wsf_text_control.e b/library/server/wsf_html/webcontrol/wsf_text_control.e index 5658bf8f..114c90d7 100644 --- a/library/server/wsf_html/webcontrol/wsf_text_control.e +++ b/library/server/wsf_html/webcontrol/wsf_text_control.e @@ -20,7 +20,6 @@ feature {NONE} do control_name := n text := v - change_event := agent donothing end feature {WSF_PAGE_CONTROL, WSF_CONTROL} -- STATE MANAGEMENT @@ -40,9 +39,6 @@ feature {WSF_PAGE_CONTROL, WSF_CONTROL} -- STATE MANAGEMENT feature --EVENT HANDLING - donothing (p: WSF_PAGE_CONTROL) --UGLY HACK MUST BE REMOVED - do - end set_change_event (e: PROCEDURE [ANY, TUPLE [WSF_PAGE_CONTROL]]) do @@ -51,9 +47,9 @@ feature --EVENT HANDLING handle_callback (cname: STRING; event: STRING; page: WSF_PAGE_CONTROL) do - if Current.control_name.is_equal (cname) and attached change_event then + if Current.control_name.is_equal (cname) and attached change_event as cevent then if event.is_equal ("change") then - change_event.call ([page]) + cevent.call ([page]) end end end @@ -74,6 +70,6 @@ feature text: STRING - change_event: PROCEDURE [ANY, TUPLE [WSF_PAGE_CONTROL]] + change_event: detachable PROCEDURE [ANY, TUPLE [WSF_PAGE_CONTROL]] end