Remove NodeFrame, use QFrame instead

This commit is contained in:
Simon Edwards 2022-04-29 19:40:30 +02:00
parent 38b12759c6
commit b7476a4ea1
5 changed files with 39 additions and 41 deletions

View File

@ -1,5 +1,5 @@
import { QWidget } from './QWidget';
import { NodeFrame, QFrameSignals } from './QFrame';
import { QFrame, QFrameSignals } from './QFrame';
import { ScrollBarPolicy } from '../QtEnums/ScrollBarPolicy';
import { QSize } from '../QtCore/QSize';
import { QScrollBar } from './QScrollBar';
@ -17,7 +17,7 @@ import { QScrollBar } from './QScrollBar';
QAbstractScrollArea will list all methods and properties that are common to all scrollable widgets in the NodeGui world.
*/
export abstract class QAbstractScrollArea<Signals extends QAbstractScrollAreaSignals> extends NodeFrame<Signals> {
export abstract class QAbstractScrollArea<Signals extends QAbstractScrollAreaSignals> extends QFrame<Signals> {
viewportWidget?: QWidget;
setViewport(widget: QWidget): void {
this.viewportWidget = widget;

View File

@ -4,7 +4,37 @@ import { NativeElement } from '../core/Component';
import { checkIfNativeElement } from '../utils/helpers';
import { QRect } from '../QtCore/QRect';
export abstract class NodeFrame<Signals extends QFrameSignals> extends QWidget<Signals> {
/**
> Create and control frame.
* **This class is a JS wrapper around Qt's [QFrame class](https://doc.qt.io/qt-5/qframe.html)**
The QFrame class is the base class of widgets that can have a frame. It can be used directly for creating simple placeholder frames without any contents.
### Example
```javascript
const { QFrame } = require("@nodegui/nodegui");
const frame = new QFrame();
```
*/
export class QFrame<Signals extends QFrameSignals = QFrameSignals> extends QWidget<Signals> {
constructor(arg?: QWidget | NativeElement) {
let native: NativeElement;
let parent;
if (checkIfNativeElement(arg)) {
native = arg as NativeElement;
} else if (arg as QWidget) {
parent = arg as QWidget;
native = new addon.QFrame(parent.native);
} else {
native = new addon.QFrame();
}
super(native);
this.setNodeParent(parent);
}
setFrameRect(r: QRect): void {
this.setProperty('frameRect', r.native);
}
@ -63,35 +93,3 @@ export enum Shape {
}
export type QFrameSignals = QWidgetSignals;
/**
> Create and control frame.
* **This class is a JS wrapper around Qt's [QFrame class](https://doc.qt.io/qt-5/qframe.html)**
The QFrame class is the base class of widgets that can have a frame. It can be used directly for creating simple placeholder frames without any contents.
### Example
```javascript
const { QFrame } = require("@nodegui/nodegui");
const frame = new QFrame();
```
*/
export class QFrame extends NodeFrame<QFrameSignals> {
constructor(arg?: QWidget | NativeElement) {
let native: NativeElement;
let parent;
if (checkIfNativeElement(arg)) {
native = arg as NativeElement;
} else if (arg as QWidget) {
parent = arg as QWidget;
native = new addon.QFrame(parent.native);
} else {
native = new addon.QFrame();
}
super(native);
this.setNodeParent(parent);
}
}

View File

@ -1,6 +1,6 @@
import addon from '../utils/addon';
import { QWidget } from './QWidget';
import { NodeFrame, QFrameSignals } from './QFrame';
import { QFrame, QFrameSignals } from './QFrame';
import { QPixmap } from '../QtGui/QPixmap';
import { QMovie } from '../QtGui/QMovie';
import { AlignmentFlag } from '../QtEnums/AlignmentFlag';
@ -26,7 +26,7 @@ label.setText("Hello");
```
*/
export class QLabel extends NodeFrame<QLabelSignals> {
export class QLabel extends QFrame<QLabelSignals> {
private _picture?: QPicture;
private _pixmap?: QPixmap;
private _movie?: QMovie;

View File

@ -1,6 +1,6 @@
import addon from '../utils/addon';
import { QWidget } from './QWidget';
import { NodeFrame, QFrameSignals } from './QFrame';
import { QFrame, QFrameSignals } from './QFrame';
import { NativeElement } from '../core/Component';
import { Orientation } from '../QtEnums';
@ -34,7 +34,7 @@ splitterHorizontal.addWidget(right);
```
*/
export class QSplitter extends NodeFrame<QSplitterSignals> {
export class QSplitter extends QFrame<QSplitterSignals> {
constructor(parent?: QWidget) {
let native: NativeElement;
if (parent) {

View File

@ -1,6 +1,6 @@
import addon from '../utils/addon';
import { QWidget } from './QWidget';
import { NodeFrame, QFrameSignals } from './QFrame';
import { QFrame, QFrameSignals } from './QFrame';
/**
@ -43,7 +43,7 @@ win.show();
```
*/
export class QStackedWidget extends NodeFrame<QStackedWidgetSignals> {
export class QStackedWidget extends QFrame<QStackedWidgetSignals> {
constructor(parent?: QWidget) {
let native;
if (parent) {