@dark-engine/platform-desktop
Version:
Dark renderer to desktop platforms like Windows, Linux, macOS via Nodegui and Qt
38 lines (37 loc) • 1.14 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
exports.detectIsMenu = exports.QDarkMenu = exports.Menu = void 0;
const nodegui_1 = require('@nodegui/nodegui');
const core_1 = require('@dark-engine/core');
const factory_1 = require('../factory');
const action_1 = require('./action');
const utils_1 = require('../utils');
const Menu = (0, core_1.component)(props => (0, factory_1.qMenu)(props), { displayName: 'Menu' });
exports.Menu = Menu;
class QDarkMenu extends nodegui_1.QMenu {
detectIsContainer() {
return true;
}
appendChild(child) {
if (child instanceof action_1.QDarkAction) {
this.addAction(child);
} else {
console.warn('Menu supports only Action as its children!');
(0, utils_1.throwUnsupported)(this);
}
}
insertBefore() {
(0, utils_1.throwUnsupported)(this);
}
removeChild(child) {
if (child instanceof action_1.QDarkAction) {
this.removeAction(child);
}
}
}
exports.QDarkMenu = QDarkMenu;
function detectIsMenu(value) {
return value instanceof QDarkMenu;
}
exports.detectIsMenu = detectIsMenu;
//# sourceMappingURL=menu.js.map