@dark-engine/platform-desktop
Version:
Dark renderer to desktop platforms like Windows, Linux, macOS via Nodegui and Qt
38 lines (37 loc) • 1.22 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
exports.QDarkTab = exports.Tab = void 0;
const nodegui_1 = require('@nodegui/nodegui');
const core_1 = require('@dark-engine/core');
const factory_1 = require('../factory');
const tab_item_1 = require('./tab-item');
const dom_1 = require('../dom');
const Tab = (0, core_1.component)(props => (0, factory_1.qTab)(props), { displayName: 'Tab' });
exports.Tab = Tab;
class QDarkTab extends nodegui_1.QTabWidget {
detectIsContainer() {
return true;
}
appendChild(child) {
if (!(0, tab_item_1.detectIsTabItem)(child)) return;
child.setTab(this);
(0, dom_1.runAtTheEndOfCommit)(() => {
this.addTab(child, child.getIcon(), child.getText());
});
}
insertBefore(child, _, idx) {
if (!(0, tab_item_1.detectIsTabItem)(child)) return;
child.setTab(this);
(0, dom_1.runAtTheEndOfCommit)(() => {
this.insertTab(idx, child, child.getIcon(), child.getText());
});
}
removeChild(child) {
if (!(0, tab_item_1.detectIsTabItem)(child)) return;
this.removeTab(child.getIndex());
child.setTab(null);
child.close();
}
}
exports.QDarkTab = QDarkTab;
//# sourceMappingURL=tab.js.map