nodeguy/src/lib/QtWidgets/QPushButton.ts
Atul R 6035b5d038
Re arrange folders to make more sense (#180)
* Re-arranged qtgui and core

* Re arranges qt widgets
2019-11-08 20:33:17 +01:00

41 lines
1.1 KiB
TypeScript

import addon from '../utils/addon';
import { NodeWidget } from './QWidget';
import { BaseWidgetEvents } from '../core/EventWidget';
import { NativeElement } from '../core/Component';
import { QIcon } from '../QtGui/QIcon';
export const QPushButtonEvents = Object.freeze({
...BaseWidgetEvents,
clicked: 'clicked',
pressed: 'pressed',
released: 'released',
toggled: 'toggled',
});
export class QPushButton extends NodeWidget {
native: NativeElement;
constructor(parent?: NodeWidget) {
let native;
if (parent) {
native = new addon.QPushButton(parent.native);
} else {
native = new addon.QPushButton();
}
super(native);
this.nodeParent = parent;
this.native = native;
}
setText(text: string | number): void {
// react:✓, //TODO:getter
this.native.setText(`${text}`);
}
setFlat(isFlat: boolean): void {
// react:✓, //TODO:getter
this.native.setFlat(isFlat);
}
setIcon(icon: QIcon): void {
// react:✓, //TODO:getter
this.native.setIcon(icon.native);
}
}