diff --git a/src/lib/QtWidgets/QLayout/index.ts b/src/lib/QtWidgets/QLayout/index.ts index bb13efe92..d8340959d 100644 --- a/src/lib/QtWidgets/QLayout/index.ts +++ b/src/lib/QtWidgets/QLayout/index.ts @@ -1,8 +1,10 @@ import { Component } from "../../core/Component"; +import { NodeWidget } from "../../QtGui/QWidget"; // All Layouts should extend this abstract class. export abstract class NodeLayout extends Component { type: string = "layout"; + abstract addWidget: (childWidget: NodeWidget, ...args: any[]) => void; } // export class QLayout extends NodeLayout { //Dont need QLayout for now diff --git a/src/lib/core/FlexLayout/index.ts b/src/lib/core/FlexLayout/index.ts index acf31ae51..fd965714b 100644 --- a/src/lib/core/FlexLayout/index.ts +++ b/src/lib/core/FlexLayout/index.ts @@ -8,9 +8,10 @@ export class FlexLayout extends NodeLayout { native: NativeElement = new addon.FlexLayout(); protected flexNode?: FlexNode; - addWidget = (childWidget: NodeWidget, childFlexNode: FlexNode) => { + addWidget = (childWidget: NodeWidget, childFlexNode?: FlexNode) => { + const childYogaNode = childFlexNode || childWidget.getFlexNode(); this.children.add(childWidget); - this.native.addWidget(childWidget.native, childFlexNode); + this.native.addWidget(childWidget.native, childYogaNode); }; setFlexNode = (flexNode: FlexNode) => { this.flexNode = flexNode;