Global.buildMacroHelp ()
build a more scripting-compatible object structure of the HELP.macros

  • Returns
    Object the resulting object tree
Sourcecode in Global/objectFunctions.js:
1:   function buildMacroHelp() {
2:      var sorter = function(a, b) {
3:         var str1 = a.name.toLowerCase();
4:         var str2 = b.name.toLowerCase();
5:         if (str1 > str2)
6:            return 1;
7:         else if (str1 < str2)
8:            return -1;
9:         return 0;
10:     }
11:  
12:     var macroHelp = {};
13:     var ref = macroHelp.Global = [];
14:     var macrolist = HELP.macros.Global;
15:     for (var i in macrolist)
16:        ref.push({name: i, storyid: macrolist[i]});
17:     ref.sort(sorter);
18:  
19:     var ref = macroHelp.HopObject = [];
20:     var macrolist = HELP.macros.HopObject;
21:     for (var i in macrolist)
22:        ref.push({name: i, storyid: macrolist[i]});
23:     ref.sort(sorter);
24:  
25:     for (var proto in HELP.macros) {
26:        if (proto.indexOf("_") == 0 || proto == "Global" || proto == "HopObject")
27:           continue;
28:        var macrolist = HELP.macros[proto];
29:        var ref = macroHelp[proto] = [];
30:        var keys = "";
31:        for (var i in macrolist) {
32:           ref.push({name: i, storyid: macrolist[i]});
33:           keys += i + ",";
34:        }
35:        for (var n in macroHelp.HopObject) {
36:           var shared = macroHelp.HopObject[n];
37:           if (keys.indexOf(shared.name + ",") < 0)
38:              ref.push(shared);
39:        }
40:        ref.sort(sorter);
41:     }
42:     return macroHelp;
43:  }