Added dropdown control
This commit is contained in:
@@ -11,17 +11,61 @@ inherit
|
|||||||
|
|
||||||
WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL]
|
WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL]
|
||||||
rename
|
rename
|
||||||
make as make_multi_control
|
make as make_multi_control,
|
||||||
|
make_with_tag_name as make_multi_control_with_tag_name
|
||||||
end
|
end
|
||||||
|
|
||||||
create
|
create
|
||||||
make
|
make, make_with_tag_name
|
||||||
|
|
||||||
feature {NONE} -- Initialization
|
feature {NONE} -- Initialization
|
||||||
|
|
||||||
make (n: STRING)
|
make (n, title: STRING)
|
||||||
|
-- Make a dropdown control with div tag name and specified menu title
|
||||||
do
|
do
|
||||||
make_multi_control (n)
|
make_with_tag_name (n, title, "div")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
make_with_tag_name (n, title, t: STRING)
|
||||||
|
-- Make a dropdown control with specified tag name and menu title (such as li)
|
||||||
|
do
|
||||||
|
make_multi_control_with_tag_name (n, t)
|
||||||
|
add_class ("dropdown")
|
||||||
|
create {WSF_BASIC_CONTROL} dropdown_toggle.make_with_body_class ("a", "data-toggle=%"dropdown%" href=%"#%"", "dropdown-toggle", title + " <strong class=%"caret%"></strong>")
|
||||||
|
create dropdown_menu.make_with_tag_name (n + "_menu", "ul")
|
||||||
|
dropdown_menu.add_class ("dropdown-menu")
|
||||||
|
add_control (dropdown_toggle)
|
||||||
|
add_control (dropdown_menu)
|
||||||
|
end
|
||||||
|
|
||||||
|
feature -- Change
|
||||||
|
|
||||||
|
add_item (c: WSF_STATELESS_CONTROL)
|
||||||
|
local
|
||||||
|
li: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL]
|
||||||
|
do
|
||||||
|
create li.make_with_tag_name (control_name + "_item" + dropdown_menu.controls.count.out, "li")
|
||||||
|
li.add_control (c)
|
||||||
|
dropdown_menu.add_control (li)
|
||||||
|
end
|
||||||
|
|
||||||
|
add_link_item (label, link: STRING)
|
||||||
|
local
|
||||||
|
c: WSF_BASIC_CONTROL
|
||||||
|
do
|
||||||
|
create c.make_with_body ("a", "href=%"" + link + "%"", label)
|
||||||
|
add_item (c)
|
||||||
|
end
|
||||||
|
|
||||||
|
add_divider
|
||||||
|
do
|
||||||
|
dropdown_menu.add_control (create {WSF_BASIC_CONTROL}.make_with_body_class ("li", "", "divider", ""))
|
||||||
|
end
|
||||||
|
|
||||||
|
feature -- Properties
|
||||||
|
|
||||||
|
dropdown_toggle: WSF_STATELESS_CONTROL
|
||||||
|
|
||||||
|
dropdown_menu: WSF_MULTI_CONTROL [WSF_STATELESS_CONTROL]
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -10,16 +10,18 @@ class
|
|||||||
inherit
|
inherit
|
||||||
|
|
||||||
WSF_STATELESS_CONTROL
|
WSF_STATELESS_CONTROL
|
||||||
|
rename
|
||||||
|
make as make_stateless_control
|
||||||
redefine
|
redefine
|
||||||
attributes
|
attributes
|
||||||
end
|
end
|
||||||
|
|
||||||
create
|
create
|
||||||
make_control, make_with_body, make_with_body_class
|
make, make_with_body, make_with_body_class
|
||||||
|
|
||||||
feature {NONE} -- Initialization
|
feature {NONE} -- Initialization
|
||||||
|
|
||||||
make_control (t: STRING)
|
make (t: STRING)
|
||||||
-- Initialize
|
-- Initialize
|
||||||
do
|
do
|
||||||
make_with_body_class (t, "", "", "")
|
make_with_body_class (t, "", "", "")
|
||||||
@@ -28,7 +30,7 @@ feature {NONE} -- Initialization
|
|||||||
make_with_body (t, attr, b: STRING)
|
make_with_body (t, attr, b: STRING)
|
||||||
-- Initialize with specific attributes and body
|
-- Initialize with specific attributes and body
|
||||||
do
|
do
|
||||||
make (t)
|
make_stateless_control (t)
|
||||||
attributes := attr
|
attributes := attr
|
||||||
body := b
|
body := b
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
// Generated by CoffeeScript 1.6.1
|
// Generated by CoffeeScript 1.6.1
|
||||||
|
(function() {
|
||||||
var Mini, WSF_AUTOCOMPLETE_CONTROL, WSF_BUTTON_CONTROL, WSF_CHECKBOX_CONTROL, WSF_CHECKBOX_LIST_CONTROL, WSF_CODEVIEW_CONTROL, WSF_CONTROL, WSF_FORM_ELEMENT_CONTROL, WSF_GRID_CONTROL, WSF_HTML_CONTROL, WSF_INPUT_CONTROL, WSF_MAX_VALIDATOR, WSF_MIN_VALIDATOR, WSF_PAGE_CONTROL, WSF_PAGINATION_CONTROL, WSF_PROGRESS_CONTROL, WSF_REGEXP_VALIDATOR, WSF_REPEATER_CONTROL, WSF_SLIDER_CONTROL, WSF_TEXTAREA_CONTROL, WSF_VALIDATOR, build_control, cache, controls, lazy_load, loaded, show_alert, start_modal, start_modal_big, template, tmpl,
|
var Mini, WSF_AUTOCOMPLETE_CONTROL, WSF_BUTTON_CONTROL, WSF_CHECKBOX_CONTROL, WSF_CHECKBOX_LIST_CONTROL, WSF_CODEVIEW_CONTROL, WSF_CONTROL, WSF_FORM_ELEMENT_CONTROL, WSF_GRID_CONTROL, WSF_HTML_CONTROL, WSF_INPUT_CONTROL, WSF_MAX_VALIDATOR, WSF_MIN_VALIDATOR, WSF_PAGE_CONTROL, WSF_PAGINATION_CONTROL, WSF_PROGRESS_CONTROL, WSF_REGEXP_VALIDATOR, WSF_REPEATER_CONTROL, WSF_SLIDER_CONTROL, WSF_TEXTAREA_CONTROL, WSF_VALIDATOR, build_control, cache, controls, lazy_load, loaded, show_alert, start_modal, start_modal_big, template, tmpl,
|
||||||
__hasProp = {}.hasOwnProperty,
|
__hasProp = {}.hasOwnProperty,
|
||||||
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
|
||||||
@@ -942,3 +943,5 @@ start_modal = lazy_load(['assets/bootstrap.min.js'], function(action) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
start_modal_big = start_modal;
|
start_modal_big = start_modal;
|
||||||
|
|
||||||
|
}).call(this);
|
||||||
|
|||||||
@@ -19,14 +19,20 @@ feature
|
|||||||
initialize_controls
|
initialize_controls
|
||||||
local
|
local
|
||||||
btn: WSF_BUTTON_CONTROL
|
btn: WSF_BUTTON_CONTROL
|
||||||
|
dropdown:WSF_DROPDOWN_CONTROL
|
||||||
do
|
do
|
||||||
create control.make ("container")
|
create control.make ("container")
|
||||||
control.add_class ("container")
|
control.add_class ("container")
|
||||||
|
create dropdown.make_with_tag_name ("mydropdown", "Dropdown", "li")
|
||||||
|
dropdown.add_link_item ("Example link 1", "#")
|
||||||
|
dropdown.add_divider
|
||||||
|
dropdown.add_link_item ("Example link 2", "#")
|
||||||
create navbar.make_with_brand ("navbar1", "Example")
|
create navbar.make_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=%"/%"", "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=%"/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=%"/repeater%"", "Repeater"))
|
||||||
navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/slider%"", "Slider"))
|
navbar.add_list_element (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/slider%"", "Slider"))
|
||||||
|
navbar.add_element (dropdown)
|
||||||
navbar.add_list_element_right (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/about%"", "About"))
|
navbar.add_list_element_right (create {WSF_BASIC_CONTROL}.make_with_body ("a", "href=%"/about%"", "About"))
|
||||||
create btn.make ("scode", "Show Code")
|
create btn.make ("scode", "Show Code")
|
||||||
btn.set_click_event (agent show_code)
|
btn.set_click_event (agent show_code)
|
||||||
|
|||||||
Reference in New Issue
Block a user