From 580b5bb8ef24f950581545425b4fee23a6e1c6ab Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Tue, 31 May 2005 02:57:21 +0000 Subject: r7132: - start a convention of making object constructors end in Obj, so we now have FormObj(). This follows the style in the ejs manual - make a new MenuObj object type, with a display_menu() to display it. This will make it easier to make different types of menus. Currently only veritical simple menus are supported. (This used to be commit ac978d4124f773d872dd15205d90a41dcec8a38f) --- swat/scripting/common.js | 44 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 8 deletions(-) (limited to 'swat/scripting') diff --git a/swat/scripting/common.js b/swat/scripting/common.js index 8df419bc60..d087f0d2a6 100644 --- a/swat/scripting/common.js +++ b/swat/scripting/common.js @@ -69,17 +69,45 @@ function always_allowed(uri) { } /* - display a simple menu. First argument is menu title, followed by - pairs of menu item name and link + create a menu object with the defaults filled in, ready for display_menu() + */ +function MenuObj(name, num_elements) +{ + var 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(); + } + return o; +} + +/* + display a menu object. Currently only the "simple", "vertical" menu style + is supported */ -function simple_menu() { - write("" + arguments[0] + "
\n"); } +function simple_menu() { + var m = MenuObj(arguments[0], (arguments.length-1)/2); + for (i=0;i