namespace Cthangover.Core.UI.Tool.SceneBuilder { /// /// Declarative description of a single editable node property in the scene /// builder inspector. Instances come from /// and are consumed by to build row editors. /// doubles as the .tscn property name written back by /// , so only keys Godot's Set() understands /// may appear here — the runtime builder applies unknown keys the same way, /// which keeps live preview and saved file consistent. /// public class InspectableProperty { public string Key { get; set; } public InspectorPropertyKind Kind { get; set; } /// Whole-number mode: committed values are rounded and serialized as .tscn ints. public bool IsInteger { get; set; } public double Min { get; set; } = -100000d; public double Max { get; set; } = 100000d; public double Step { get; set; } = 1d; public long[] EnumValues { get; set; } public string[] EnumLabels { get; set; } } }