// Creates the UI control that accepts text input private void CreateConsoleControls() { // ConsoleBox { ConsoleBox = new VBoxContainer(); ConsoleBox.Name = nameof(ConsoleBox); ConsoleBox.SetAnchor(0, 0, 1, 1); ConsoleBox.Alignment = BoxContainer.AlignMode.End; AddChild(ConsoleBox); } // HistoryHelpContainer { HistoryHelpContainer = new PanelContainer(); HistoryHelpContainer.Name = nameof(HistoryHelpContainer); ConsoleBox.AddChild(HistoryHelpContainer); HistoryHelpContainer.Visible = false; } // HistoryHelpBox { HistoryHelpBox = new VBoxContainer(); HistoryHelpBox.Name = nameof(HistoryHelpBox); HistoryHelpContainer.AddChild(HistoryHelpBox); } // ConsoleInput { ConsoleInput = new LineEdit(); ConsoleInput.Name = nameof(ConsoleInput); ConsoleBox.AddChild(ConsoleInput); ConsoleInput.ContextMenuEnabled = false; ConsoleInput.Connect("text_entered", this, nameof(OnCommandEntered)); ConsoleInput.Connect("text_changed", this, nameof(OnCommandChanged)); ConsoleInput.GrabFocus(); } }