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