From 9db93cf4c9712c1d656ed8bcbddc19538e8d8806 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Severin=20M=C3=BCnger?= Date: Sun, 15 Sep 2013 00:44:20 +0200 Subject: [PATCH] Included navbar example --- examples/widgetapp/sample_page.e | 14 ++- examples/widgetapp/widget.css | 2 +- .../webcontrol/navbar/wsf_navbar_control.e | 100 +++++------------- .../webcontrol/wsf_stateless_control.e | 2 +- 4 files changed, 40 insertions(+), 78 deletions(-) diff --git a/examples/widgetapp/sample_page.e b/examples/widgetapp/sample_page.e index 90c6b1a7..e8143306 100644 --- a/examples/widgetapp/sample_page.e +++ b/examples/widgetapp/sample_page.e @@ -18,16 +18,18 @@ feature initialize_controls local - container: WSF_MULTI_CONTROL[WSF_STATELESS_CONTROL] + container: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL] navbar: WSF_NAVBAR_CONTROL form: WSF_FORM_CONTROL n1_container: WSF_FORM_ELEMENT_CONTROL [STRING] n2_container: WSF_FORM_ELEMENT_CONTROL [STRING] n3_container: WSF_FORM_ELEMENT_CONTROL [STRING] cats_container: WSF_FORM_ELEMENT_CONTROL [LIST [STRING]] + link1: WSF_BASIC_CONTROL + link2: WSF_BASIC_CONTROL s: FLAG_AUTOCOMPLETION do - create s.make(<<["dz", "Algeria"], ["be", "Belgium"] , ["ca", "Canada"],["de", "Deutschland"], ["england", "England"], ["fi", "Finland"], ["gr", "Greece"], ["hu", "Hungary"]>>) + create s.make (<<["dz", "Algeria"], ["be", "Belgium"], ["ca", "Canada"], ["de", "Deutschland"], ["england", "England"], ["fi", "Finland"], ["gr", "Greece"], ["hu", "Hungary"]>>) create container.make_multi_control ("container") create navbar.make_navbar ("Sample Page") create textbox1.make_input ("txtBox1", "1") @@ -35,6 +37,14 @@ feature create autocompletion1.make_autocomplete ("autocompletion1", s) create button1.make_button ("sample_button1", "SUM") create textbox_result.make_html ("txtBox3", "p", "") + create link1.make_control ("a") + create link2.make_control ("a") + link1.set_content ("Home") + link1.set_attributes ("href=%"#%"") + link2.set_content ("About") + link2.set_attributes ("href=%"#%"") + navbar.add_element (link1) + navbar.add_element_right (link2) button1.set_click_event (agent handle_click) button1.add_class ("col-lg-offset-2") create form.make_form_control ("panel") diff --git a/examples/widgetapp/widget.css b/examples/widgetapp/widget.css index cc8042c2..3d4a966f 100644 --- a/examples/widgetapp/widget.css +++ b/examples/widgetapp/widget.css @@ -1,5 +1,5 @@ body { - padding-top: 30px; + padding-top: 80px; } .twitter-typeahead { diff --git a/library/server/wsf_html/webcontrol/navbar/wsf_navbar_control.e b/library/server/wsf_html/webcontrol/navbar/wsf_navbar_control.e index 435df76c..162b37c4 100644 --- a/library/server/wsf_html/webcontrol/navbar/wsf_navbar_control.e +++ b/library/server/wsf_html/webcontrol/navbar/wsf_navbar_control.e @@ -20,6 +20,29 @@ feature nav: WSF_STATELESS_MULTI_CONTROL [WSF_STATELESS_CONTROL] + nav_right: WSF_STATELESS_MULTI_CONTROL [WSF_STATELESS_CONTROL] + +feature + + add_element (c: WSF_STATELESS_CONTROL) + do + add_element_to_nav (c, nav) + end + + add_element_right (c: WSF_STATELESS_CONTROL) + do + add_element_to_nav (c, nav_right) + end + + add_element_to_nav (e: WSF_STATELESS_CONTROL; n: WSF_STATELESS_MULTI_CONTROL [WSF_STATELESS_CONTROL]) + local + li: WSF_STATELESS_MULTI_CONTROL [WSF_STATELESS_CONTROL] + do + create li.make_with_tag_name ("li") + li.add_control (e) + n.add_control (li) + end + feature {NONE} -- Initialization make_navbar (b: STRING) @@ -37,6 +60,7 @@ feature {NONE} -- Initialization create collapse_button.make_with_tag_name ("button") create collapse.make_multi_control create nav.make_with_tag_name ("ul") + create nav_right.make_with_tag_name ("ul") create brand.make_control ("a") create icon_bar.make_control ("span") container.add_class ("container") @@ -53,85 +77,13 @@ feature {NONE} -- Initialization header.add_control (collapse_button) header.add_control (brand) nav.add_class ("nav navbar-nav") + nav_right.add_class ("nav navbar-nav navbar-right") collapse.add_class ("navbar-collapse") collapse.add_control (nav) + collapse.add_control (nav_right) container.add_control (header) container.add_control (collapse) add_control (container) - - -- EXAMPLE NAVBAR USED AS REFERENCE - -- end end diff --git a/library/server/wsf_html/webcontrol/wsf_stateless_control.e b/library/server/wsf_html/webcontrol/wsf_stateless_control.e index 4c033a75..6497f6c8 100644 --- a/library/server/wsf_html/webcontrol/wsf_stateless_control.e +++ b/library/server/wsf_html/webcontrol/wsf_stateless_control.e @@ -54,7 +54,7 @@ feature l_attributes := l_attributes + " class=%"" + css_classes_string + "%"" end Result := "<" + tag + " " + l_attributes - if body.is_empty and not tag.is_equal ("textarea") and not tag.is_equal ("span") and not tag.is_equal ("button") then + if body.is_empty and not tag.is_equal ("textarea") and not tag.is_equal ("span") and not tag.is_equal ("button") and not tag.is_equal ("ul") then Result := Result + " />" else Result := Result + " >" + body + ""