brisk constructor refactored
[brisk.git] / web / menu.js
1    var g_menu_tree = null;
2    var g_menu_ct   = 0;
3    var g_menu_st   = 0;
4    var g_menu_cb   = null;
5
6    function menu_init() {
7      g_menu_tree  = new Array(null, null, null);
8
9      g_menu_tree[0] = new Array();
10      g_menu_tree[0][0] = $('menu_webstart');
11      g_menu_tree[0][1] = $('menu_commands');
12      if ($('menu_poll') != null)
13          g_menu_tree[0][2] = $('menu_poll');
14
15      g_menu_tree[1] = new Array();
16      g_menu_tree[1][0] = $('menu_meeting');
17      g_menu_tree[1][1] = $('menu_state');
18      g_menu_tree[1][2] = $('menu_listen');
19    }
20        
21    function menu_show(id) {
22      $(id).style.visibility = 'visible';
23    }
24
25    function menu_over(over,obj) {
26      g_menu_ct += over;
27      g_menu_st ++;
28      
29
30      if (over < 0) {
31        g_menu_cb = setTimeout(menu_hide, 0, g_menu_st, 0); 
32      }
33      else {
34        if (g_menu_cb != null) {
35          clearTimeout(g_menu_cb);
36          g_menu_cb = null;
37        }
38      }
39    }
40
41
42 function menu_hide(st,lev) {
43     if (st == g_menu_st || lev > 0) {
44         for (e = lev ; e < g_menu_tree.length ; e++) {
45             if (g_menu_tree[e] != null) {
46                 for (i = 0 ; i < g_menu_tree[e].length ; i++) {
47                     if (g_menu_tree[e][i] != null) {
48                         g_menu_tree[e][i].style.visibility = "hidden";
49                     }
50                 }
51             }
52         }
53         if (st == g_menu_st && lev == 0) {
54             g_menu_ct   = 0;
55             g_menu_st   = 0;
56         }
57     }
58 }
59