bebraw
3/27/2010 - 8:09 AM

gistfile1.js

var PANELS = ["brushes", "canvas", "menu", "modifiers", "palette", "playback"];

var panels = {}
// note that due JS namespaces i is visible at instance init! -> better use j
for (j = 0; j < PANELS.length; j++) {
    panelName = PANELS[j];
    panel = eval("new " + panelName + "()");
    panels[panelName] = panel;

    shortcut.add((j+1).toString(), function() {
        // XXX: panelName retains its last state! how to work past this?
        if($("#" + panelName + "Pod").is(':visible')) {
            $("#" + panelName + "Pod").click();
        }
        else {
            $("#" + panelName + "Panel").dialog('close');
        }
    });
}