diff --git a/packages/example/src/form/ControlledFormRoot.tsx b/packages/example/src/form/ControlledFormRoot.tsx index 296a0df..21523b5 100644 --- a/packages/example/src/form/ControlledFormRoot.tsx +++ b/packages/example/src/form/ControlledFormRoot.tsx @@ -1,24 +1,47 @@ -import Godot from "godot" +import Godot, { Vector2 } from "godot" import { Component } from "react-godot-renderer" const CenterContainer = Component.fromClass(Godot.CenterContainer) -const VFlowContainer = Component.fromClass(Godot.VFlowContainer) +const PanelContainer = Component.fromClass(Godot.PanelContainer) +const MarginContainer = Component.fromClass(Godot.MarginContainer) +const VBoxContainer = Component.fromClass(Godot.VBoxContainer) const Label = Component.fromClass(Godot.Label) +const TextEdit = Component.fromClass(Godot.TextEdit) + /** * A form UI where React controls the state */ export function ControlledFormRoot() { + const rootRef = CenterContainer.useRef() + Component.useSignal(rootRef, "ready", () => { + console.log("ready") + }) + return ( - - - - + + + + + + + + + + + ) } diff --git a/packages/react-godot-renderer/src/Reconciler.ts b/packages/react-godot-renderer/src/Reconciler.ts index b4648be..8ca5f67 100644 --- a/packages/react-godot-renderer/src/Reconciler.ts +++ b/packages/react-godot-renderer/src/Reconciler.ts @@ -1,4 +1,4 @@ -import { Node, type NodePathMap, PackedScene, ResourceLoader } from "godot" +import { Control, Node, type NodePathMap, PackedScene, ResourceLoader } from "godot" import ReactReconciler, { type HostConfig } from "react-reconciler" import { hasProperty } from "./utils.js" @@ -233,4 +233,12 @@ const applyNextProps = (instance: Node, nextProps: Record