@dark-engine/platform-desktop
Version:
Dark renderer to desktop platforms like Windows, Linux, macOS via Nodegui and Qt
38 lines (37 loc) • 1 kB
JavaScript
import { QMainWindow } from '@nodegui/nodegui';
import { component } from '@dark-engine/core';
import { qMainWindow } from '../factory';
import { detectIsMenuBar } from './menu-bar';
import { detectIsStatusBar } from './status-bar';
import { detectIsSystemTrayIcon } from './system-tray-icon';
import { throwUnsupported } from '../utils';
const Window = component(props => qMainWindow(props), {
displayName: 'Window',
});
class QDarkMainWindow extends QMainWindow {
constructor() {
super();
this.show();
}
detectIsContainer() {
return true;
}
appendChild(child) {
if (detectIsSystemTrayIcon(child)) return;
if (detectIsMenuBar(child)) {
this.setMenuBar(child);
} else if (detectIsStatusBar(child)) {
this.setStatusBar(child);
} else {
this.setCentralWidget(child);
}
}
insertBefore() {
throwUnsupported(this);
}
removeChild(child) {
child.close();
}
}
export { Window, QDarkMainWindow };
//# sourceMappingURL=window.js.map