UNPKG

@dark-engine/platform-desktop

Version:

Dark renderer to desktop platforms like Windows, Linux, macOS via Nodegui and Qt

34 lines (33 loc) 981 B
import { QTabWidget } from '@nodegui/nodegui'; import { component } from '@dark-engine/core'; import { qTab } from '../factory'; import { detectIsTabItem } from './tab-item'; import { runAtTheEndOfCommit } from '../dom'; const Tab = component(props => qTab(props), { displayName: 'Tab' }); class QDarkTab extends QTabWidget { detectIsContainer() { return true; } appendChild(child) { if (!detectIsTabItem(child)) return; child.setTab(this); runAtTheEndOfCommit(() => { this.addTab(child, child.getIcon(), child.getText()); }); } insertBefore(child, _, idx) { if (!detectIsTabItem(child)) return; child.setTab(this); runAtTheEndOfCommit(() => { this.insertTab(idx, child, child.getIcon(), child.getText()); }); } removeChild(child) { if (!detectIsTabItem(child)) return; this.removeTab(child.getIndex()); child.setTab(null); child.close(); } } export { Tab, QDarkTab }; //# sourceMappingURL=tab.js.map