UNPKG

nwjs-bootstrap2

Version:

Minimalistic NW.js app bootstrap 2

33 lines 1.1 kB
export default { /** * Create menu from preset structure * @param {object} structure * @returns {nw.Menu} */ create: function(structure) { const menu = new nw.Menu({ type: "menubar" }); for (const label in structure) { const items = structure[label]; menu.append(new nw.MenuItem({ label: label, submenu: (function() { const subMenu = new nw.Menu(); for (const label in items) { if (label.startsWith("separator") === true) { subMenu.append(new nw.MenuItem({ type: "separator" })); continue; } const item = items[label]; item.label = label; subMenu.append(new nw.MenuItem(item)); } return subMenu; })() })); } nw.Window.get().menu = menu; return menu; } }