diff --git a/src/lib/core/FlexLayout/index.ts b/src/lib/core/FlexLayout/index.ts index 6b1a7fe5a..914f05666 100644 --- a/src/lib/core/FlexLayout/index.ts +++ b/src/lib/core/FlexLayout/index.ts @@ -5,11 +5,17 @@ import { NodeLayout } from "../../QtWidgets/QLayout"; export class FlexLayout extends NodeLayout { native = new addon.FlexLayout(); + protected flexNode?: FlexNode; + protected childFlexNodes = new Set(); + addWidget(childWidget: NodeWidget, childFlexNode: FlexNode) { this.children.add(childWidget); + this.childFlexNodes.add(childFlexNode); + this.native.addWidget(childWidget.native, childFlexNode.native); } setFlexNode(flexNode: FlexNode) { + this.flexNode = flexNode; this.native.setFlexNode(flexNode.native); } } diff --git a/src/lib/core/YogaWidget/index.ts b/src/lib/core/YogaWidget/index.ts index 515769f01..8934b8d51 100644 --- a/src/lib/core/YogaWidget/index.ts +++ b/src/lib/core/YogaWidget/index.ts @@ -3,7 +3,6 @@ import { FlexNode } from "../FlexLayout/FlexNode"; export abstract class YogaWidget extends Component { getFlexNode(): FlexNode { - const nativeFlexNode = this.native.getFlexNode(); - return new FlexNode(nativeFlexNode); + return new FlexNode(this.native.getFlexNode()); } }