Class StartDemoButton
- Namespace
- MoonBark.GridPlacement.Godot.Demos.Loader
- Assembly
- MoonBark.GridPlacement.Godot.dll
Button that loads and switches to a specified demo scene when pressed. Exposes the target scene path as an @export property for editor configuration.
[GlobalClass]
[ScriptPath("res://src/demos/loader/StartDemoButton.cs")]
public class StartDemoButton : Button, IDisposable
- Inheritance
-
GodotObjectNodeCanvasItemControlBaseButtonButtonStartDemoButton
- Implements
- Inherited Members
-
Button.InvokeGodotClassMethod(in godot_string_name, NativeVariantPtrArgs, out godot_variant)Button.HasGodotClassMethod(in godot_string_name)Button.HasGodotClassSignal(in godot_string_name)Button.TextButton.IconButton.FlatButton.AlignmentButton.TextOverrunBehaviorButton.AutowrapModeButton.ClipTextButton.IconAlignmentButton.VerticalIconAlignmentButton.ExpandIconButton.TextDirectionButton.LanguageBaseButton._Pressed()BaseButton.IsHovered()BaseButton.GetDrawMode()BaseButton.EmitSignalPressed()BaseButton.EmitSignalButtonUp()BaseButton.EmitSignalButtonDown()BaseButton.DisabledBaseButton.ToggleModeBaseButton.ButtonPressedBaseButton.ActionModeBaseButton.ButtonMaskBaseButton.KeepPressedOutsideBaseButton.ButtonGroupBaseButton.ShortcutBaseButton.ShortcutFeedbackBaseButton.ShortcutInTooltipBaseButton.PressedBaseButton.ButtonUpBaseButton.ButtonDownBaseButton.ToggledControl.NotificationResizedControl.NotificationMouseEnterControl.NotificationMouseExitControl.NotificationMouseEnterSelfControl.NotificationMouseExitSelfControl.NotificationFocusEnterControl.NotificationFocusExitControl.NotificationThemeChangedControl.NotificationScrollBeginControl.NotificationScrollEndControl.NotificationLayoutDirectionChangedControl._CanDropData(Vector2, Variant)Control._DropData(Vector2, Variant)Control._GetDragData(Vector2)Control._GetMinimumSize()Control._GetTooltip(Vector2)Control._GuiInput(InputEvent)Control._HasPoint(Vector2)Control.AcceptEvent()Control.GetMinimumSize()Control.GetCombinedMinimumSize()Control.SetBegin(Vector2)Control.SetEnd(Vector2)Control.ResetSize()Control.GetBegin()Control.GetEnd()Control.GetParentAreaSize()Control.GetScreenPosition()Control.GetRect()Control.GetGlobalRect()Control.HasFocus()Control.GrabFocus()Control.ReleaseFocus()Control.FindPrevValidFocus()Control.FindNextValidFocus()Control.FindValidFocusNeighbor(Side)Control.BeginBulkThemeOverride()Control.EndBulkThemeOverride()Control.AddThemeIconOverride(StringName, Texture2D)Control.AddThemeStyleboxOverride(StringName, StyleBox)Control.AddThemeFontOverride(StringName, Font)Control.AddThemeColorOverride(StringName, Color)Control.RemoveThemeIconOverride(StringName)Control.RemoveThemeStyleboxOverride(StringName)Control.RemoveThemeFontOverride(StringName)Control.RemoveThemeFontSizeOverride(StringName)Control.RemoveThemeColorOverride(StringName)Control.RemoveThemeConstantOverride(StringName)Control.GetThemeIcon(StringName, StringName)Control.GetThemeStylebox(StringName, StringName)Control.GetThemeFont(StringName, StringName)Control.GetThemeFontSize(StringName, StringName)Control.GetThemeColor(StringName, StringName)Control.GetThemeConstant(StringName, StringName)Control.HasThemeIconOverride(StringName)Control.HasThemeStyleboxOverride(StringName)Control.HasThemeFontOverride(StringName)Control.HasThemeFontSizeOverride(StringName)Control.HasThemeColorOverride(StringName)Control.HasThemeConstantOverride(StringName)Control.HasThemeIcon(StringName, StringName)Control.HasThemeStylebox(StringName, StringName)Control.HasThemeFont(StringName, StringName)Control.HasThemeFontSize(StringName, StringName)Control.HasThemeColor(StringName, StringName)Control.HasThemeConstant(StringName, StringName)Control.GetThemeDefaultBaseScale()Control.GetThemeDefaultFont()Control.GetThemeDefaultFontSize()Control.GetParentControl()Control.GetTooltip(Vector2?)Control.GetCursorShape(Vector2?)Control.ForceDrag(Variant, Control)Control.GrabClickFocus()Control.SetDragForwarding(Callable, Callable, Callable)Control.SetDragPreview(Control)Control.IsDragSuccessful()Control.WarpMouse(Vector2)Control.UpdateMinimumSize()Control.IsLayoutRtl()Control.EmitSignalResized()Control.EmitSignalGuiInput(InputEvent)Control.EmitSignalMouseEntered()Control.EmitSignalMouseExited()Control.EmitSignalFocusEntered()Control.EmitSignalFocusExited()Control.EmitSignalSizeFlagsChanged()Control.EmitSignalMinimumSizeChanged()Control.EmitSignalThemeChanged()Control.ClipContentsControl.CustomMinimumSizeControl.LayoutDirectionControl.AnchorLeftControl.AnchorTopControl.AnchorRightControl.AnchorBottomControl.OffsetLeftControl.OffsetTopControl.OffsetRightControl.OffsetBottomControl.GrowHorizontalControl.GrowVerticalControl.SizeControl.PositionControl.GlobalPositionControl.RotationControl.RotationDegreesControl.ScaleControl.PivotOffsetControl.SizeFlagsHorizontalControl.SizeFlagsVerticalControl.SizeFlagsStretchRatioControl.LocalizeNumeralSystemControl.AutoTranslateControl.TooltipTextControl.TooltipAutoTranslateModeControl.FocusNeighborLeftControl.FocusNeighborTopControl.FocusNeighborRightControl.FocusNeighborBottomControl.FocusNextControl.FocusPreviousControl.FocusModeControl.MouseFilterControl.MouseForcePassScrollEventsControl.MouseDefaultCursorShapeControl.ShortcutContextControl.ThemeControl.ThemeTypeVariationControl.ResizedControl.GuiInputControl.MouseEnteredControl.MouseExitedControl.FocusEnteredControl.FocusExitedControl.SizeFlagsChangedControl.MinimumSizeChangedControl.ThemeChangedCanvasItem.NotificationTransformChangedCanvasItem.NotificationLocalTransformChangedCanvasItem.NotificationDrawCanvasItem.NotificationVisibilityChangedCanvasItem.NotificationEnterCanvasCanvasItem.NotificationExitCanvasCanvasItem.NotificationWorld2DChangedCanvasItem._Draw()CanvasItem.GetCanvasItem()CanvasItem.IsVisibleInTree()CanvasItem.Show()CanvasItem.Hide()CanvasItem.QueueRedraw()CanvasItem.MoveToFront()CanvasItem.DrawTexture(Texture2D, Vector2, Color?)CanvasItem.DrawLcdTextureRectRegion(Texture2D, Rect2, Rect2, Color?)CanvasItem.DrawStyleBox(StyleBox, Rect2)CanvasItem.DrawPrimitive(Vector2[], Color[], Vector2[], Texture2D)CanvasItem.DrawPolygon(Vector2[], Color[], Vector2[], Texture2D)CanvasItem.DrawPolygon(ReadOnlySpan<Vector2>, ReadOnlySpan<Color>, ReadOnlySpan<Vector2>, Texture2D)CanvasItem.DrawColoredPolygon(Vector2[], Color, Vector2[], Texture2D)CanvasItem.DrawMesh(Mesh, Texture2D, Transform2D?, Color?)CanvasItem.DrawMultimesh(MultiMesh, Texture2D)CanvasItem.DrawSetTransformMatrix(Transform2D)CanvasItem.DrawEndAnimation()CanvasItem.GetTransform()CanvasItem.GetGlobalTransform()CanvasItem.GetGlobalTransformWithCanvas()CanvasItem.GetViewportTransform()CanvasItem.GetViewportRect()CanvasItem.GetCanvasTransform()CanvasItem.GetScreenTransform()CanvasItem.GetLocalMousePosition()CanvasItem.GetGlobalMousePosition()CanvasItem.GetCanvas()CanvasItem.GetCanvasLayerNode()CanvasItem.GetWorld2D()CanvasItem.SetInstanceShaderParameter(StringName, Variant)CanvasItem.GetInstanceShaderParameter(StringName)CanvasItem.IsLocalTransformNotificationEnabled()CanvasItem.IsTransformNotificationEnabled()CanvasItem.ForceUpdateTransform()CanvasItem.MakeCanvasPositionLocal(Vector2)CanvasItem.MakeInputLocal(InputEvent)CanvasItem.EmitSignalDraw()CanvasItem.EmitSignalVisibilityChanged()CanvasItem.EmitSignalHidden()CanvasItem.EmitSignalItemRectChanged()CanvasItem.VisibleCanvasItem.ModulateCanvasItem.SelfModulateCanvasItem.ShowBehindParentCanvasItem.TopLevelCanvasItem.ClipChildrenCanvasItem.LightMaskCanvasItem.VisibilityLayerCanvasItem.ZIndexCanvasItem.ZAsRelativeCanvasItem.YSortEnabledCanvasItem.TextureFilterCanvasItem.TextureRepeatCanvasItem.MaterialCanvasItem.UseParentMaterialCanvasItem.DrawCanvasItem.VisibilityChangedCanvasItem.HiddenCanvasItem.ItemRectChangedNode.NotificationEnterTreeNode.NotificationExitTreeNode.NotificationMovedInParentNode.NotificationReadyNode.NotificationPausedNode.NotificationUnpausedNode.NotificationPhysicsProcessNode.NotificationProcessNode.NotificationParentedNode.NotificationUnparentedNode.NotificationSceneInstantiatedNode.NotificationDragBeginNode.NotificationDragEndNode.NotificationPathRenamedNode.NotificationChildOrderChangedNode.NotificationInternalProcessNode.NotificationInternalPhysicsProcessNode.NotificationPostEnterTreeNode.NotificationDisabledNode.NotificationEnabledNode.NotificationResetPhysicsInterpolationNode.NotificationEditorPreSaveNode.NotificationEditorPostSaveNode.NotificationWMMouseEnterNode.NotificationWMMouseExitNode.NotificationWMWindowFocusInNode.NotificationWMWindowFocusOutNode.NotificationWMCloseRequestNode.NotificationWMGoBackRequestNode.NotificationWMSizeChangedNode.NotificationWMDpiChangeNode.NotificationVpMouseEnterNode.NotificationVpMouseExitNode.NotificationWMPositionChangedNode.NotificationOsMemoryWarningNode.NotificationTranslationChangedNode.NotificationWMAboutNode.NotificationCrashNode.NotificationOsImeUpdateNode.NotificationApplicationResumedNode.NotificationApplicationPausedNode.NotificationApplicationFocusInNode.NotificationApplicationFocusOutNode.NotificationTextServerChangedNode.GetNode<T>(NodePath)Node.GetNodeOrNull<T>(NodePath)Node.GetOwner<T>()Node.GetOwnerOrNull<T>()Node.GetParent<T>()Node.GetParentOrNull<T>()Node._EnterTree()Node._ExitTree()Node._GetConfigurationWarnings()Node._Input(InputEvent)Node._ShortcutInput(InputEvent)Node._UnhandledInput(InputEvent)Node._UnhandledKeyInput(InputEvent)Node.PrintOrphanNodes()Node.RemoveChild(Node)Node.HasNode(NodePath)Node.GetNode(NodePath)Node.GetNodeOrNull(NodePath)Node.GetParent()Node.HasNodeAndResource(NodePath)Node.GetNodeAndResource(NodePath)Node.IsInsideTree()Node.IsPartOfEditedScene()Node.IsAncestorOf(Node)Node.IsGreaterThan(Node)Node.GetPath()Node.RemoveFromGroup(StringName)Node.IsInGroup(StringName)Node.GetGroups()Node.PrintTree()Node.PrintTreePretty()Node.GetTreeString()Node.GetTreeStringPretty()Node.GetPhysicsProcessDeltaTime()Node.IsPhysicsProcessing()Node.GetProcessDeltaTime()Node.IsProcessing()Node.IsProcessingInput()Node.IsProcessingShortcutInput()Node.IsProcessingUnhandledInput()Node.IsProcessingUnhandledKeyInput()Node.CanProcess()Node.IsDisplayedFolded()Node.IsProcessingInternal()Node.IsPhysicsProcessingInternal()Node.IsPhysicsInterpolated()Node.IsPhysicsInterpolatedAndEnabled()Node.ResetPhysicsInterpolation()Node.SetTranslationDomainInherited()Node.GetWindow()Node.GetLastExclusiveWindow()Node.GetTree()Node.CreateTween()Node.GetSceneInstanceLoadPlaceholder()Node.IsEditableInstance(Node)Node.GetViewport()Node.QueueFree()Node.RequestReady()Node.IsNodeReady()Node.GetMultiplayerAuthority()Node.IsMultiplayerAuthority()Node.RpcConfig(StringName, Variant)Node.GetRpcConfig()Node.Rpc(StringName, params Variant[])Node.UpdateConfigurationWarnings()Node.CallDeferredThreadGroup(StringName, params Variant[])Node.SetDeferredThreadGroup(StringName, Variant)Node.CallThreadSafe(StringName, params Variant[])Node.SetThreadSafe(StringName, Variant)Node.EmitSignalReady()Node.EmitSignalRenamed()Node.EmitSignalTreeEntered()Node.EmitSignalTreeExiting()Node.EmitSignalTreeExited()Node.EmitSignalChildEnteredTree(Node)Node.EmitSignalChildExitingTree(Node)Node.EmitSignalChildOrderChanged()Node.EmitSignalReplacingBy(Node)Node.EmitSignalEditorDescriptionChanged(Node)Node.EmitSignalEditorStateChanged()Node.NameNode.UniqueNameInOwnerNode.SceneFilePathNode.OwnerNode.MultiplayerNode.ProcessModeNode.ProcessPriorityNode.ProcessPhysicsPriorityNode.ProcessThreadGroupNode.ProcessThreadGroupOrderNode.ProcessThreadMessagesNode.PhysicsInterpolationModeNode.AutoTranslateModeNode.EditorDescriptionNode.ReadyNode.RenamedNode.TreeEnteredNode.TreeExitingNode.TreeExitedNode.ChildEnteredTreeNode.ChildExitingTreeNode.ChildOrderChangedNode.ReplacingByNode.EditorDescriptionChangedNode.EditorStateChangedGodotObject.NotificationPostinitializeGodotObject.NotificationPredeleteGodotObject.NotificationExtensionReloadedGodotObject.IsInstanceValid(GodotObject)GodotObject.WeakRef(GodotObject)GodotObject.Dispose()GodotObject.ToString()GodotObject.ToSignal(GodotObject, StringName)GodotObject._Get(StringName)GodotObject._GetPropertyList()GodotObject._IterGet(Variant)GodotObject._IterInit(Array)GodotObject._IterNext(Array)GodotObject._PropertyCanRevert(StringName)GodotObject._PropertyGetRevert(StringName)GodotObject._Set(StringName, Variant)GodotObject._ValidateProperty(Dictionary)GodotObject.Free()GodotObject.GetClass()GodotObject.Set(StringName, Variant)GodotObject.Get(StringName)GodotObject.SetIndexed(NodePath, Variant)GodotObject.GetIndexed(NodePath)GodotObject.GetPropertyList()GodotObject.GetMethodList()GodotObject.PropertyCanRevert(StringName)GodotObject.PropertyGetRevert(StringName)GodotObject.GetInstanceId()GodotObject.SetScript(Variant)GodotObject.GetScript()GodotObject.SetMeta(StringName, Variant)GodotObject.RemoveMeta(StringName)GodotObject.GetMeta(StringName, Variant)GodotObject.HasMeta(StringName)GodotObject.GetMetaList()GodotObject.HasUserSignal(StringName)GodotObject.RemoveUserSignal(StringName)GodotObject.EmitSignal(StringName, params Variant[])GodotObject.Call(StringName, params Variant[])GodotObject.CallDeferred(StringName, params Variant[])GodotObject.SetDeferred(StringName, Variant)GodotObject.Callv(StringName, Array)GodotObject.HasMethod(StringName)GodotObject.GetMethodArgumentCount(StringName)GodotObject.HasSignal(StringName)GodotObject.GetSignalList()GodotObject.GetSignalConnectionList(StringName)GodotObject.GetIncomingConnections()GodotObject.Disconnect(StringName, Callable)GodotObject.IsConnected(StringName, Callable)GodotObject.HasConnections(StringName)GodotObject.IsBlockingSignals()GodotObject.NotifyPropertyListChanged()GodotObject.CanTranslateMessages()GodotObject.Tr(StringName, StringName)GodotObject.GetTranslationDomain()GodotObject.SetTranslationDomain(StringName)GodotObject.IsQueuedForDeletion()GodotObject.CancelFree()GodotObject.EmitSignalScriptChanged()GodotObject.EmitSignalPropertyListChanged()GodotObject.NativeInstanceGodotObject.ScriptChangedGodotObject.PropertyListChanged
Properties
ScenePath
Path to the scene file to load when this button is pressed. Set this in the editor Inspector to configure which demo scene to load. Example: "res://demos/EcsDemo/ECSDemoScene.tscn"
[Export(PropertyHint.File, "*.tscn")]
public string ScenePath { get; set; }
Property Value
Methods
GetCurrentlyLoadedScenePath()
Gets the currently loaded scene path from the scene tree. This is the active scene, not the target scene.
public string GetCurrentlyLoadedScenePath()
Returns
IsScenePathValid()
Returns true if the ScenePath is set and the file exists.
public bool IsScenePathValid()
Returns
_Ready()
Called when the node is "ready", i.e. when both the node and its children have entered the scene tree. If the node has children, their Godot.Node._Ready() callbacks get triggered first, and the parent node will receive the ready notification afterwards.
Corresponds to the Godot.Node.NotificationReady notification in _Notification(int). See also the @onready annotation for variables.
Usually used for initialization. For even earlier initialization, Godot.GodotObject.GodotObject() may be used. See also Godot.Node._EnterTree().
Note: This method may be called only once for each node. After removing a node from the scene tree and adding it again, Godot.Node._Ready() will not be called a second time. This can be bypassed by requesting another call with Godot.Node.RequestReady(), which may be called anywhere before adding the node again.
public override void _Ready()