diff options
author | Stefan Metzmacher <metze@samba.org> | 2008-09-11 16:47:45 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2008-09-12 08:51:07 +0200 |
commit | 7e671ae37f6c951d4db18c446eed52685200b2e0 (patch) | |
tree | c9c3713d27ac0374c08d2b99f7968969bd67c69e /swat2/scripting/menus.js | |
parent | acf11ddd5fbb9e4b0b780f4f95957d79fcc6fcf1 (diff) | |
download | samba-7e671ae37f6c951d4db18c446eed52685200b2e0.tar.gz samba-7e671ae37f6c951d4db18c446eed52685200b2e0.tar.bz2 samba-7e671ae37f6c951d4db18c446eed52685200b2e0.zip |
rename swat => swat2, so that we don't conflict with samba3
metze
(This used to be commit bf852a3dbeee8900fa36978f08a5cdceabcbd926)
Diffstat (limited to 'swat2/scripting/menus.js')
-rw-r--r-- | swat2/scripting/menus.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/swat2/scripting/menus.js b/swat2/scripting/menus.js new file mode 100644 index 0000000000..ddd97c4ca3 --- /dev/null +++ b/swat2/scripting/menus.js @@ -0,0 +1,53 @@ +/* + menu object for SWAT +*/ + +/* + display a menu object. Currently only the "simple", "vertical" menu style + is supported +*/ +function menu_display() { + var i, m = this; + assert(m.style == "simple" && m.orientation == "vertical"); + write('<div class="' + m.class + '">\n'); + write("<i>" + m.name + "</i><br /><ul>\n"); + for (i = 0; i < m.element.length; i++) { + var e = m.element[i]; + write("<li><a href=\"" + e.link + "\">" + e.label + "</a></li>\n"); + } + write("</ul></div>\n"); +} + + +/* + create a menu object with the defaults filled in, ready for display_menu() + */ +function MenuObj(name, num_elements) +{ + var i, o = new Object(); + o.name = name; + o.class = "menu"; + o.style = "simple"; + o.orientation = "vertical" + o.element = new Array(num_elements); + for (i in o.element) { + o.element[i] = new Object(); + } + o.display = menu_display; + return o; +} + +/* + return a menu object created using a title, followed by + a set of label/link pairs +*/ +function simple_menu() { + var i, m = MenuObj(arguments[0], (arguments.length-1)/2); + for (i=0;i<m.element.length;i++) { + var ndx = i*2; + m.element[i].label = arguments[ndx+1]; + m.element[i].link = arguments[ndx+2]; + } + return m; +} + |