From a5fa428e98d6097be75ea83b17a410933031bfca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Severin=20M=C3=BCnger?= Date: Tue, 24 Sep 2013 01:27:25 +0200 Subject: [PATCH 1/5] Added simple image slider widget --- .../image_slider/wsf_image_slider_control.e | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e diff --git a/library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e b/library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e new file mode 100644 index 00000000..f200e258 --- /dev/null +++ b/library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e @@ -0,0 +1,93 @@ +note + description: "Summary description for {WSF_IMAGE_SLIDER_CONTROL}." + author: "" + date: "$Date$" + revision: "$Revision$" + +class + WSF_IMAGE_SLIDER_CONTROL + +inherit + + WSF_CONTROL + +create + make_slider + +feature {NONE} -- Initialization + + make_slider (n: STRING) + -- Initialize with specified name + do + make_control (n, "div") + add_class ("carousel slide") + create list.make_with_tag_name ("ol") + list.add_class ("carousel-indicators") + create slide_wrapper.make_multi_control + slide_wrapper.add_class ("carousel-inner") + end + +feature -- State handling + + set_state (new_state: JSON_OBJECT) + do + end + + state: JSON_OBJECT + do + create Result.make + end + +feature -- Callback + + handle_callback (cname, event: STRING; event_parameter: detachable STRING) + do + -- Do nothing here + end + +feature -- Rendering + + render: STRING + local + temp: STRING + do + temp := list.render + temp.append (slide_wrapper.render) + temp.append (render_tag_with_tagname ("a", "", "href=%"#" + control_name + "%" data-slide=%"next%"", "left carousel-control")) + temp.append (render_tag_with_tagname ("a", "", "href=%"#" + control_name + "%" data-slide=%"prev%"", "right carousel-control")) + Result := render_tag (temp, "") + end + +feature -- Change + + add_image_with_caption (src, alt: STRING; caption: detachable WSF_STATELESS_CONTROL) + -- Add a new image to the slider, with specified url, alternative text and caption element + local + item: WSF_MULTI_CONTROL + do + list.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("li", "data-target=%"#" + control_name + "%" data-slide-to=%"" + list.controls.count.out + "%"", "")); + create item.make_multi_control + item.add_class ("item") + item.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("img", "src=%"" + src + "%" alt=%"" + alt + "%"", "")) + if attached caption as c then + item.add_control (c) + end + end + + add_image (src, alt: STRING) + -- Add a new image to the slider, with specified url and alternative text + local + item: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + do + add_image_with_caption (src, alt, Void) + end + +feature -- Properties + + list: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + -- List of slider links + + slide_wrapper: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + -- List of the single image slides + +end From 6908bfe7bf9288739647059391c9ec5b0eabbd8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Severin=20M=C3=BCnger?= Date: Tue, 24 Sep 2013 02:38:36 +0200 Subject: [PATCH 2/5] Added slider demo --- examples/widgetapp/application.e | 15 +++++-- examples/widgetapp/base_page.e | 13 ++++--- examples/widgetapp/grid_page.e | 9 ++--- examples/widgetapp/image_slider_page.e | 39 +++++++++++++++++++ examples/widgetapp/repeater_page.e | 10 ++--- examples/widgetapp/sample_page.e | 6 +-- .../webcontrol/wsf_page_control.e | 4 +- .../wsf_image_slider_control.e | 8 ++-- .../wsf_js_widget/wsf_js_widget-safe.ecf | 9 +++-- 9 files changed, 82 insertions(+), 31 deletions(-) create mode 100644 examples/widgetapp/image_slider_page.e rename library/server/wsf_js_widget/{image_slider => }/wsf_image_slider_control.e (92%) diff --git a/examples/widgetapp/application.e b/examples/widgetapp/application.e index 6eab7d56..89808dc4 100644 --- a/examples/widgetapp/application.e +++ b/examples/widgetapp/application.e @@ -57,7 +57,6 @@ feature -- Router and Filter create {WSF_LOGGING_FILTER} f f.set_next (l_filter) l_filter := f - filter := l_filter end @@ -78,10 +77,10 @@ feature -- Router and Filter setup_router do - -- router.map (create {WSF_URI_MAPPING}.make ("/hello", create {WSF_AGENT_URI_HANDLER}.make (agent execute_hello))) map_agent_uri ("/", agent execute_hello, Void) map_agent_uri ("/grid", agent grid_demo, Void) map_agent_uri ("/repeater", agent repeater_demo, Void) + map_agent_uri ("/slider", agent slider_demo, Void) -- NOTE: you could put all those files in a specific folder, and use WSF_FILE_SYSTEM_HANDLER with "/" -- this way, it handles the caching and so on @@ -102,7 +101,7 @@ feature -- Helper: mapping feature -- Execution - execute_hello (request: WSF_REQUEST; response: WSF_RESPONSE) + execute_hello (request: WSF_REQUEST; response: WSF_RESPONSE) local page: SAMPLE_PAGE do @@ -132,6 +131,16 @@ feature -- Execution page.execute end + slider_demo (request: WSF_REQUEST; response: WSF_RESPONSE) + local + page: IMAGE_SLIDER_PAGE + do + -- To send a response we need to setup, the status code and + -- the response headers. + create page.make (request, response) + page.execute + end + load_file (name: STRING; request: WSF_REQUEST; response: WSF_RESPONSE) local f: WSF_FILE_RESPONSE diff --git a/examples/widgetapp/base_page.e b/examples/widgetapp/base_page.e index 262bee7a..001c3b31 100644 --- a/examples/widgetapp/base_page.e +++ b/examples/widgetapp/base_page.e @@ -10,6 +10,9 @@ deferred class inherit WSF_PAGE_CONTROL + redefine + control + end feature @@ -17,21 +20,21 @@ feature local navbar: WSF_NAVBAR_CONTROL do - create container.make_multi_control ("container") - container.add_class ("container") + create control.make_multi_control ("container") + control.add_class ("container") create navbar.make_navbar_with_brand ("Example") navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/%"", "Home")) navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/grid%"", "Grid")) navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/repeater%"", "Repeater")) + navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/slider%"", "Image Slider")) navbar.add_list_element_right (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"#%"", "About")) if not attached get_parameter ("ajax") then - container.add_control (navbar) + control.add_control (navbar) end - control := container end feature - container: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] + control: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] end diff --git a/examples/widgetapp/grid_page.e b/examples/widgetapp/grid_page.e index 5b7dc318..95895d4a 100644 --- a/examples/widgetapp/grid_page.e +++ b/examples/widgetapp/grid_page.e @@ -22,17 +22,16 @@ feature initialize_controls do Precursor - container.add_control (create {WSF_BASIC_CONTROL}.make_with_body("h1","","Grid Demo")) + control.add_control (create {WSF_BASIC_CONTROL}.make_with_body("h1","","Grid Demo")) create datasource.make_news create search_query.make_autocomplete ("query", create {GOOGLE_AUTOCOMPLETION}.make) search_query.add_class ("form-control") search_query.set_change_event (agent change_query) - container.add_control (search_query) - container.add_control (create {WSF_BASIC_CONTROL}.make_with_body("h2","","Results")) + control.add_control (search_query) + control.add_control (create {WSF_BASIC_CONTROL}.make_with_body("h2","","Results")) create grid.make_grid ("mygrid", <>, datasource) - container.add_control (grid) - control := container + control.add_control (grid) end change_query diff --git a/examples/widgetapp/image_slider_page.e b/examples/widgetapp/image_slider_page.e new file mode 100644 index 00000000..4f456bfe --- /dev/null +++ b/examples/widgetapp/image_slider_page.e @@ -0,0 +1,39 @@ +note + description: "Summary description for {IMAGE_SLIDER_PAGE}." + author: "" + date: "$Date$" + revision: "$Revision$" + +class + IMAGE_SLIDER_PAGE + +inherit + + BASE_PAGE + redefine + initialize_controls + end + +create + make + +feature -- Implementation + + initialize_controls + do + Precursor + create slider.make_slider ("myslider") + slider.add_image ("http://www.placesmustseen.com/wp-content/uploads/2013/01/paris-eiffel-tower.jpg", "Eiffel Tower") + control.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("h1", "", " Image Slider Demo")) + control.add_control (slider) + end + + process + do + end + +feature -- Properties + + slider: WSF_IMAGE_SLIDER_CONTROL + +end diff --git a/examples/widgetapp/repeater_page.e b/examples/widgetapp/repeater_page.e index d76a1592..4c93959c 100644 --- a/examples/widgetapp/repeater_page.e +++ b/examples/widgetapp/repeater_page.e @@ -8,6 +8,7 @@ class REPEATER_PAGE inherit + BASE_PAGE redefine initialize_controls @@ -21,15 +22,15 @@ feature initialize_controls do Precursor - container.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("h1", ""," Repeater Demo")) + control.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("h1", "", " Repeater Demo")) create datasource.make_news create search_query.make_autocomplete ("query", create {GOOGLE_AUTOCOMPLETION}.make) search_query.add_class ("form-control") search_query.set_change_event (agent change_query) - container.add_control (search_query) - container.add_control (create {WSF_BASIC_CONTROL}.make_with_body("h2", "", "Results")) + control.add_control (search_query) + control.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("h2", "", "Results")) create repeater.make_repeater ("myrepeater", datasource) - container.add_control (repeater) + control.add_control (repeater) end change_query @@ -50,4 +51,3 @@ feature datasource: GOOGLE_NEWS_DATASOURCE end - diff --git a/examples/widgetapp/sample_page.e b/examples/widgetapp/sample_page.e index d1fbf6e9..da18fab0 100644 --- a/examples/widgetapp/sample_page.e +++ b/examples/widgetapp/sample_page.e @@ -77,15 +77,15 @@ feature --Result create result_html.make_html ("txtBox3", "p", "") form.add_control (create {WSF_FORM_ELEMENT_CONTROL [STRING]}.make_form_element ("Result", result_html)) - container.add_control (form) + control.add_control (form) --Progress bar - container.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("h4", "", "Autoincrementing progressbar")) + control.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("h4", "", "Autoincrementing progressbar")) create source.make create progress.make_progress_with_source ("progress1", source) source.set_control (progress) progress.set_isolation (true) - container.add_control (progress) + control.add_control (progress) end handle_click2 diff --git a/library/server/wsf_js_widget/webcontrol/wsf_page_control.e b/library/server/wsf_js_widget/webcontrol/wsf_page_control.e index b38b0d64..31d5d769 100644 --- a/library/server/wsf_js_widget/webcontrol/wsf_page_control.e +++ b/library/server/wsf_js_widget/webcontrol/wsf_page_control.e @@ -145,7 +145,7 @@ feature -- Implementation end end -feature -- EVENT HANDLING +feature -- Event handling handle_callback (cname: STRING; event: STRING; event_parameter: detachable STRING) -- Forward callback to control @@ -153,7 +153,7 @@ feature -- EVENT HANDLING control.handle_callback (cname, event, event_parameter) end -feature {WSF_PAGE_CONTROL, WSF_CONTROL} -- STATE MANAGEMENT +feature {WSF_PAGE_CONTROL, WSF_CONTROL} -- State management state: JSON_OBJECT do diff --git a/library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e b/library/server/wsf_js_widget/wsf_image_slider_control.e similarity index 92% rename from library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e rename to library/server/wsf_js_widget/wsf_image_slider_control.e index f200e258..c8d99362 100644 --- a/library/server/wsf_js_widget/image_slider/wsf_image_slider_control.e +++ b/library/server/wsf_js_widget/wsf_image_slider_control.e @@ -63,7 +63,7 @@ feature -- Change add_image_with_caption (src, alt: STRING; caption: detachable WSF_STATELESS_CONTROL) -- Add a new image to the slider, with specified url, alternative text and caption element local - item: WSF_MULTI_CONTROL + item: WSF_STATELESS_MULTI_CONTROL do list.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("li", "data-target=%"#" + control_name + "%" data-slide-to=%"" + list.controls.count.out + "%"", "")); create item.make_multi_control @@ -77,17 +77,17 @@ feature -- Change add_image (src, alt: STRING) -- Add a new image to the slider, with specified url and alternative text local - item: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + item: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] do add_image_with_caption (src, alt, Void) end feature -- Properties - list: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + list: WSF_STATELESS_MULTI_CONTROL -- List of slider links - slide_wrapper: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + slide_wrapper: WSF_STATELESS_MULTI_CONTROL -- List of the single image slides end diff --git a/library/server/wsf_js_widget/wsf_js_widget-safe.ecf b/library/server/wsf_js_widget/wsf_js_widget-safe.ecf index 037a9b78..901f9d88 100644 --- a/library/server/wsf_js_widget/wsf_js_widget-safe.ecf +++ b/library/server/wsf_js_widget/wsf_js_widget-safe.ecf @@ -16,12 +16,13 @@ - - - - + + + + + From c52a51337837f35a7ee86fb04679eb0c9f27398c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Severin=20M=C3=BCnger?= Date: Tue, 24 Sep 2013 14:38:01 +0200 Subject: [PATCH 3/5] Changed slider --- .../server/wsf_js_widget/wsf_image_slider_control.e | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/library/server/wsf_js_widget/wsf_image_slider_control.e b/library/server/wsf_js_widget/wsf_image_slider_control.e index c8d99362..60c0b7c5 100644 --- a/library/server/wsf_js_widget/wsf_image_slider_control.e +++ b/library/server/wsf_js_widget/wsf_image_slider_control.e @@ -5,7 +5,7 @@ note revision: "$Revision$" class - WSF_IMAGE_SLIDER_CONTROL + WSF_SLIDER_CONTROL inherit @@ -72,22 +72,26 @@ feature -- Change if attached caption as c then item.add_control (c) end + slide_wrapper.add_control (item) end add_image (src, alt: STRING) -- Add a new image to the slider, with specified url and alternative text - local - item: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] do add_image_with_caption (src, alt, Void) end + add_control(c:WSF_STATELESS_CONTROL) + do + + end + feature -- Properties list: WSF_STATELESS_MULTI_CONTROL -- List of slider links slide_wrapper: WSF_STATELESS_MULTI_CONTROL - -- List of the single image slides + -- List of the single slides end From f51201eae14c73e764b1733b13bb6d991a0de8e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Severin=20M=C3=BCnger?= Date: Tue, 24 Sep 2013 15:02:33 +0200 Subject: [PATCH 4/5] Removed WSF_STATELESS_MULTI_CONTROL --- examples/widgetapp/base_page.e | 2 +- examples/widgetapp/image_slider_page.e | 2 +- .../wsf_js_widget/navbar/wsf_navbar_control.e | 39 ++++++------ .../webcontrol/wsf_stateless_multi_control.e | 59 ------------------- .../wsf_js_widget/wsf_image_slider_control.e | 14 ++--- 5 files changed, 31 insertions(+), 85 deletions(-) delete mode 100644 library/server/wsf_js_widget/webcontrol/wsf_stateless_multi_control.e diff --git a/examples/widgetapp/base_page.e b/examples/widgetapp/base_page.e index 001c3b31..2c119c19 100644 --- a/examples/widgetapp/base_page.e +++ b/examples/widgetapp/base_page.e @@ -22,7 +22,7 @@ feature do create control.make_multi_control ("container") control.add_class ("container") - create navbar.make_navbar_with_brand ("Example") + create navbar.make_navbar_with_brand ("navbar1", "Example") navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/%"", "Home")) navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/grid%"", "Grid")) navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/repeater%"", "Repeater")) diff --git a/examples/widgetapp/image_slider_page.e b/examples/widgetapp/image_slider_page.e index 4f456bfe..21af24b9 100644 --- a/examples/widgetapp/image_slider_page.e +++ b/examples/widgetapp/image_slider_page.e @@ -34,6 +34,6 @@ feature -- Implementation feature -- Properties - slider: WSF_IMAGE_SLIDER_CONTROL + slider: WSF_SLIDER_CONTROL end diff --git a/library/server/wsf_js_widget/navbar/wsf_navbar_control.e b/library/server/wsf_js_widget/navbar/wsf_navbar_control.e index 75eb3948..d3fbf2c6 100644 --- a/library/server/wsf_js_widget/navbar/wsf_navbar_control.e +++ b/library/server/wsf_js_widget/navbar/wsf_navbar_control.e @@ -9,30 +9,29 @@ class inherit - WSF_STATELESS_MULTI_CONTROL + WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] redefine render end create - make_navbar, - make_navbar_with_brand + make_navbar, make_navbar_with_brand feature {NONE} -- Initialization - make_navbar + make_navbar (n: STRING) --Initialize do - make_multi_control + make_multi_control (n) add_class ("navbar navbar-inverse navbar-fixed-top") - create nav.make_with_tag_name ("ul") + create nav.make_with_tag_name (control_name + "_nav", "ul") nav.add_class ("nav navbar-nav") end - make_navbar_with_brand (b: STRING) + make_navbar_with_brand (n, b: STRING) -- Initialize with specified brand string do - make_navbar + make_navbar (n) brand := b end @@ -65,10 +64,16 @@ feature -- Change add_list_element_right (c: WSF_STATELESS_CONTROL) -- Add element in li tag to right aligned part of navbar local - right: WSF_STATELESS_MULTI_CONTROL - li: WSF_STATELESS_MULTI_CONTROL + name: STRING + li: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] do - create li.make_with_tag_name ("li") + name := control_name + "_rightlink"; + if attached nav_right as right then + name := name + right.controls.count.out + else + name := name + "0" + end + create li.make_with_tag_name (name, "li") li.add_control (c) add_element_right (li) end @@ -76,9 +81,9 @@ feature -- Change add_list_element (c: WSF_STATELESS_CONTROL) -- Add element in li tag to main nav local - li: WSF_STATELESS_MULTI_CONTROL + li: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] do - create li.make_with_tag_name ("li") + create li.make_with_tag_name (control_name + "_link" + nav.controls.count.out, "li") li.add_control (c) add_element (li) end @@ -86,12 +91,12 @@ feature -- Change add_element_right (c: WSF_STATELESS_CONTROL) -- Add element to right aligned part of navbar local - right: WSF_STATELESS_MULTI_CONTROL + right: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] do if attached nav_right as r then right := r else - create right.make_with_tag_name ("ul") + create right.make_with_tag_name (control_name + "_rightnav", "ul") right.add_class ("nav navbar-nav navbar-right") nav_right := right end @@ -109,10 +114,10 @@ feature -- Properties brand: detachable STRING -- Optional brand of the navbar - nav: WSF_STATELESS_MULTI_CONTROL + nav: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] -- Middle nav - nav_right: detachable WSF_STATELESS_MULTI_CONTROL + nav_right: detachable WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] -- Right nav end diff --git a/library/server/wsf_js_widget/webcontrol/wsf_stateless_multi_control.e b/library/server/wsf_js_widget/webcontrol/wsf_stateless_multi_control.e deleted file mode 100644 index 4fe5a98c..00000000 --- a/library/server/wsf_js_widget/webcontrol/wsf_stateless_multi_control.e +++ /dev/null @@ -1,59 +0,0 @@ -note - description: "Summary description for {WSF_STATELESS_MULTI_CONTROL}." - author: "" - date: "$Date$" - revision: "$Revision$" - -class - WSF_STATELESS_MULTI_CONTROL - -inherit - - WSF_STATELESS_CONTROL - -create - make_multi_control, make_with_tag_name - -feature {NONE} -- Initialization - - make_multi_control - -- Initialize with default tag "div" - do - make_with_tag_name ("div") - end - - make_with_tag_name (t: STRING) - -- Initialize with specified tag - do - make (t) - controls := create {ARRAYED_LIST [WSF_STATELESS_CONTROL]}.make (5); - end - -feature -- Rendering - - render: STRING - -- HTML representation of this stateless multi control - do - Result := "" - across - controls as c - loop - Result := c.item.render + Result - end - Result := render_tag (Result, "") - end - -feature -- Change - - add_control (c: WSF_STATELESS_CONTROL) - -- Add control to this stateless multi control - do - controls.put_front (c) - end - -feature -- Properties - - controls: ARRAYED_LIST [WSF_STATELESS_CONTROL] - -- List of controls - -end diff --git a/library/server/wsf_js_widget/wsf_image_slider_control.e b/library/server/wsf_js_widget/wsf_image_slider_control.e index 60c0b7c5..7e1f4948 100644 --- a/library/server/wsf_js_widget/wsf_image_slider_control.e +++ b/library/server/wsf_js_widget/wsf_image_slider_control.e @@ -21,9 +21,9 @@ feature {NONE} -- Initialization do make_control (n, "div") add_class ("carousel slide") - create list.make_with_tag_name ("ol") + create list.make_with_tag_name (control_name+"_links", "ol") list.add_class ("carousel-indicators") - create slide_wrapper.make_multi_control + create slide_wrapper.make_multi_control (control_name+"_wrapper") slide_wrapper.add_class ("carousel-inner") end @@ -63,10 +63,10 @@ feature -- Change add_image_with_caption (src, alt: STRING; caption: detachable WSF_STATELESS_CONTROL) -- Add a new image to the slider, with specified url, alternative text and caption element local - item: WSF_STATELESS_MULTI_CONTROL + item: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] do list.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("li", "data-target=%"#" + control_name + "%" data-slide-to=%"" + list.controls.count.out + "%"", "")); - create item.make_multi_control + create item.make_multi_control (control_name+"_item"+slide_wrapper.controls.count.out) item.add_class ("item") item.add_control (create {WSF_BASIC_CONTROL}.make_with_body ("img", "src=%"" + src + "%" alt=%"" + alt + "%"", "")) if attached caption as c then @@ -83,15 +83,15 @@ feature -- Change add_control(c:WSF_STATELESS_CONTROL) do - + end feature -- Properties - list: WSF_STATELESS_MULTI_CONTROL + list: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] -- List of slider links - slide_wrapper: WSF_STATELESS_MULTI_CONTROL + slide_wrapper: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] -- List of the single slides end From 83329ca4b7a11a6316f22e63a12914c821e5d797 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Severin=20M=C3=BCnger?= Date: Tue, 24 Sep 2013 15:18:14 +0200 Subject: [PATCH 5/5] Moved to draft --- .../kernel}/autocompletion/wsf_autocompletion.e | 0 .../autocompletion/wsf_simple_autocompletion.e | 0 .../wsf_js_widget/kernel}/grid/wsf_datasource.e | 0 .../wsf_js_widget/kernel}/grid/wsf_entity.e | 0 .../kernel}/grid/wsf_grid_column.e | 0 .../kernel}/grid/wsf_grid_control.e | 0 .../kernel}/grid/wsf_grid_image_column.e | 0 .../kernel}/grid/wsf_pagable_datasource.e | 0 .../kernel}/grid/wsf_pagination_control.e | 0 .../kernel}/grid/wsf_repeater_control.e | 0 .../kernel}/input/wsf_autocomplete_control.e | 0 .../kernel}/input/wsf_checkbox_control.e | 0 .../kernel}/input/wsf_checkbox_list_control.e | 0 .../kernel}/input/wsf_input_control.e | 0 .../kernel}/input/wsf_password_control.e | 0 .../kernel}/input/wsf_textarea_control.e | 0 .../kernel}/navbar/wsf_navbar_control.e | 0 .../kernel}/progressbar/wsf_progress_control.e | 0 .../kernel}/progressbar/wsf_progresssource.e | 0 .../kernel/slider}/wsf_image_slider_control.e | 0 .../kernel}/validator/wsf_decimal_validator.e | 0 .../kernel}/validator/wsf_email_validator.e | 0 .../kernel}/validator/wsf_max_validator.e | 0 .../kernel}/validator/wsf_min_validator.e | 0 .../validator/wsf_phone_number_validator.e | 0 .../kernel}/validator/wsf_regexp_validator.e | 0 .../kernel}/validator/wsf_validatable.e | 0 .../kernel}/validator/wsf_validator.e | 0 .../kernel}/webcontrol/wsf_basic_control.e | 0 .../kernel}/webcontrol/wsf_button_control.e | 0 .../kernel}/webcontrol/wsf_control.e | 0 .../kernel}/webcontrol/wsf_form_control.e | 0 .../webcontrol/wsf_form_element_control.e | 0 .../kernel}/webcontrol/wsf_html_control.e | 0 .../kernel}/webcontrol/wsf_multi_control.e | 0 .../kernel}/webcontrol/wsf_page_control.e | 0 .../kernel}/webcontrol/wsf_stateless_control.e | 0 .../kernel}/webcontrol/wsf_value_control.e | 0 .../wsf_js_widget/wsf_js_widget-safe.ecf | 17 +++++------------ .../library}/wsf_js_widget/wsf_js_widget.ecf | 16 +++++----------- examples/widgetapp/widgetapp.ecf | 2 +- 41 files changed, 11 insertions(+), 24 deletions(-) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/autocompletion/wsf_autocompletion.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/autocompletion/wsf_simple_autocompletion.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_datasource.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_entity.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_grid_column.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_grid_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_grid_image_column.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_pagable_datasource.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_pagination_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/grid/wsf_repeater_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/input/wsf_autocomplete_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/input/wsf_checkbox_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/input/wsf_checkbox_list_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/input/wsf_input_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/input/wsf_password_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/input/wsf_textarea_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/navbar/wsf_navbar_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/progressbar/wsf_progress_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/progressbar/wsf_progresssource.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel/slider}/wsf_image_slider_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_decimal_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_email_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_max_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_min_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_phone_number_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_regexp_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_validatable.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/validator/wsf_validator.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_basic_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_button_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_form_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_form_element_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_html_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_multi_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_page_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_stateless_control.e (100%) rename {library/server/wsf_js_widget => draft/library/wsf_js_widget/kernel}/webcontrol/wsf_value_control.e (100%) rename {library/server => draft/library}/wsf_js_widget/wsf_js_widget-safe.ecf (56%) rename {library/server => draft/library}/wsf_js_widget/wsf_js_widget.ecf (59%) diff --git a/library/server/wsf_js_widget/autocompletion/wsf_autocompletion.e b/draft/library/wsf_js_widget/kernel/autocompletion/wsf_autocompletion.e similarity index 100% rename from library/server/wsf_js_widget/autocompletion/wsf_autocompletion.e rename to draft/library/wsf_js_widget/kernel/autocompletion/wsf_autocompletion.e diff --git a/library/server/wsf_js_widget/autocompletion/wsf_simple_autocompletion.e b/draft/library/wsf_js_widget/kernel/autocompletion/wsf_simple_autocompletion.e similarity index 100% rename from library/server/wsf_js_widget/autocompletion/wsf_simple_autocompletion.e rename to draft/library/wsf_js_widget/kernel/autocompletion/wsf_simple_autocompletion.e diff --git a/library/server/wsf_js_widget/grid/wsf_datasource.e b/draft/library/wsf_js_widget/kernel/grid/wsf_datasource.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_datasource.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_datasource.e diff --git a/library/server/wsf_js_widget/grid/wsf_entity.e b/draft/library/wsf_js_widget/kernel/grid/wsf_entity.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_entity.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_entity.e diff --git a/library/server/wsf_js_widget/grid/wsf_grid_column.e b/draft/library/wsf_js_widget/kernel/grid/wsf_grid_column.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_grid_column.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_grid_column.e diff --git a/library/server/wsf_js_widget/grid/wsf_grid_control.e b/draft/library/wsf_js_widget/kernel/grid/wsf_grid_control.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_grid_control.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_grid_control.e diff --git a/library/server/wsf_js_widget/grid/wsf_grid_image_column.e b/draft/library/wsf_js_widget/kernel/grid/wsf_grid_image_column.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_grid_image_column.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_grid_image_column.e diff --git a/library/server/wsf_js_widget/grid/wsf_pagable_datasource.e b/draft/library/wsf_js_widget/kernel/grid/wsf_pagable_datasource.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_pagable_datasource.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_pagable_datasource.e diff --git a/library/server/wsf_js_widget/grid/wsf_pagination_control.e b/draft/library/wsf_js_widget/kernel/grid/wsf_pagination_control.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_pagination_control.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_pagination_control.e diff --git a/library/server/wsf_js_widget/grid/wsf_repeater_control.e b/draft/library/wsf_js_widget/kernel/grid/wsf_repeater_control.e similarity index 100% rename from library/server/wsf_js_widget/grid/wsf_repeater_control.e rename to draft/library/wsf_js_widget/kernel/grid/wsf_repeater_control.e diff --git a/library/server/wsf_js_widget/input/wsf_autocomplete_control.e b/draft/library/wsf_js_widget/kernel/input/wsf_autocomplete_control.e similarity index 100% rename from library/server/wsf_js_widget/input/wsf_autocomplete_control.e rename to draft/library/wsf_js_widget/kernel/input/wsf_autocomplete_control.e diff --git a/library/server/wsf_js_widget/input/wsf_checkbox_control.e b/draft/library/wsf_js_widget/kernel/input/wsf_checkbox_control.e similarity index 100% rename from library/server/wsf_js_widget/input/wsf_checkbox_control.e rename to draft/library/wsf_js_widget/kernel/input/wsf_checkbox_control.e diff --git a/library/server/wsf_js_widget/input/wsf_checkbox_list_control.e b/draft/library/wsf_js_widget/kernel/input/wsf_checkbox_list_control.e similarity index 100% rename from library/server/wsf_js_widget/input/wsf_checkbox_list_control.e rename to draft/library/wsf_js_widget/kernel/input/wsf_checkbox_list_control.e diff --git a/library/server/wsf_js_widget/input/wsf_input_control.e b/draft/library/wsf_js_widget/kernel/input/wsf_input_control.e similarity index 100% rename from library/server/wsf_js_widget/input/wsf_input_control.e rename to draft/library/wsf_js_widget/kernel/input/wsf_input_control.e diff --git a/library/server/wsf_js_widget/input/wsf_password_control.e b/draft/library/wsf_js_widget/kernel/input/wsf_password_control.e similarity index 100% rename from library/server/wsf_js_widget/input/wsf_password_control.e rename to draft/library/wsf_js_widget/kernel/input/wsf_password_control.e diff --git a/library/server/wsf_js_widget/input/wsf_textarea_control.e b/draft/library/wsf_js_widget/kernel/input/wsf_textarea_control.e similarity index 100% rename from library/server/wsf_js_widget/input/wsf_textarea_control.e rename to draft/library/wsf_js_widget/kernel/input/wsf_textarea_control.e diff --git a/library/server/wsf_js_widget/navbar/wsf_navbar_control.e b/draft/library/wsf_js_widget/kernel/navbar/wsf_navbar_control.e similarity index 100% rename from library/server/wsf_js_widget/navbar/wsf_navbar_control.e rename to draft/library/wsf_js_widget/kernel/navbar/wsf_navbar_control.e diff --git a/library/server/wsf_js_widget/progressbar/wsf_progress_control.e b/draft/library/wsf_js_widget/kernel/progressbar/wsf_progress_control.e similarity index 100% rename from library/server/wsf_js_widget/progressbar/wsf_progress_control.e rename to draft/library/wsf_js_widget/kernel/progressbar/wsf_progress_control.e diff --git a/library/server/wsf_js_widget/progressbar/wsf_progresssource.e b/draft/library/wsf_js_widget/kernel/progressbar/wsf_progresssource.e similarity index 100% rename from library/server/wsf_js_widget/progressbar/wsf_progresssource.e rename to draft/library/wsf_js_widget/kernel/progressbar/wsf_progresssource.e diff --git a/library/server/wsf_js_widget/wsf_image_slider_control.e b/draft/library/wsf_js_widget/kernel/slider/wsf_image_slider_control.e similarity index 100% rename from library/server/wsf_js_widget/wsf_image_slider_control.e rename to draft/library/wsf_js_widget/kernel/slider/wsf_image_slider_control.e diff --git a/library/server/wsf_js_widget/validator/wsf_decimal_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_decimal_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_decimal_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_decimal_validator.e diff --git a/library/server/wsf_js_widget/validator/wsf_email_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_email_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_email_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_email_validator.e diff --git a/library/server/wsf_js_widget/validator/wsf_max_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_max_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_max_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_max_validator.e diff --git a/library/server/wsf_js_widget/validator/wsf_min_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_min_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_min_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_min_validator.e diff --git a/library/server/wsf_js_widget/validator/wsf_phone_number_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_phone_number_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_phone_number_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_phone_number_validator.e diff --git a/library/server/wsf_js_widget/validator/wsf_regexp_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_regexp_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_regexp_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_regexp_validator.e diff --git a/library/server/wsf_js_widget/validator/wsf_validatable.e b/draft/library/wsf_js_widget/kernel/validator/wsf_validatable.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_validatable.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_validatable.e diff --git a/library/server/wsf_js_widget/validator/wsf_validator.e b/draft/library/wsf_js_widget/kernel/validator/wsf_validator.e similarity index 100% rename from library/server/wsf_js_widget/validator/wsf_validator.e rename to draft/library/wsf_js_widget/kernel/validator/wsf_validator.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_basic_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_basic_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_basic_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_basic_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_button_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_button_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_button_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_button_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_form_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_form_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_form_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_form_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_form_element_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_form_element_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_form_element_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_form_element_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_html_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_html_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_html_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_html_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_multi_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_multi_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_multi_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_multi_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_page_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_page_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_page_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_page_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_stateless_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_stateless_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_stateless_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_stateless_control.e diff --git a/library/server/wsf_js_widget/webcontrol/wsf_value_control.e b/draft/library/wsf_js_widget/kernel/webcontrol/wsf_value_control.e similarity index 100% rename from library/server/wsf_js_widget/webcontrol/wsf_value_control.e rename to draft/library/wsf_js_widget/kernel/webcontrol/wsf_value_control.e diff --git a/library/server/wsf_js_widget/wsf_js_widget-safe.ecf b/draft/library/wsf_js_widget/wsf_js_widget-safe.ecf similarity index 56% rename from library/server/wsf_js_widget/wsf_js_widget-safe.ecf rename to draft/library/wsf_js_widget/wsf_js_widget-safe.ecf index 901f9d88..e7f38069 100644 --- a/library/server/wsf_js_widget/wsf_js_widget-safe.ecf +++ b/draft/library/wsf_js_widget/wsf_js_widget-safe.ecf @@ -10,19 +10,12 @@ - - + + - - - - - - - - - - + + + diff --git a/library/server/wsf_js_widget/wsf_js_widget.ecf b/draft/library/wsf_js_widget/wsf_js_widget.ecf similarity index 59% rename from library/server/wsf_js_widget/wsf_js_widget.ecf rename to draft/library/wsf_js_widget/wsf_js_widget.ecf index 6bcb5bed..5da166aa 100644 --- a/library/server/wsf_js_widget/wsf_js_widget.ecf +++ b/draft/library/wsf_js_widget/wsf_js_widget.ecf @@ -10,18 +10,12 @@ - - + + - - - - - - - - - + + + diff --git a/examples/widgetapp/widgetapp.ecf b/examples/widgetapp/widgetapp.ecf index 7611e274..4e95c200 100644 --- a/examples/widgetapp/widgetapp.ecf +++ b/examples/widgetapp/widgetapp.ecf @@ -13,7 +13,7 @@ - +