Updated FloatingMenu
Added test button from Script Editor. Changed Settings from adding to tree as a panel, and instead use a Window that will handle the panel. Also implemented this for Script Editor.
This commit is contained in:
parent
35931783cc
commit
9075ec35cf
2 changed files with 52 additions and 3 deletions
|
|
@ -5,6 +5,7 @@ const COL_ON := Color.LIGHT_GREEN
|
|||
const COL_OFF := Color.LIGHT_SALMON
|
||||
|
||||
const SETTINGS_PANEL = preload("res://UI/settings_panel.tscn")
|
||||
const SCRIPT_EDITOR = preload("res://UI/Controls/script_editor.tscn")
|
||||
|
||||
# Indicators
|
||||
@onready var indicators: Control = %indicators
|
||||
|
|
@ -18,6 +19,7 @@ const SETTINGS_PANEL = preload("res://UI/settings_panel.tscn")
|
|||
@onready var btn_step_away: GDSubMenuButton = %btn_step_away
|
||||
@onready var btn_tuber: GDSubMenuButton = %btn_tuber
|
||||
@onready var btn_chat: GDSubMenuButton = %btn_chat
|
||||
@onready var btn_script_editor: GDSubMenuButton = %btn_script_editor
|
||||
@onready var btn_user_list: GDSubMenuButton = %btn_user_list
|
||||
@onready var btn_settings: GDSubMenuButton = %btn_settings
|
||||
@onready var btn_end: GDSubMenuButton = %btn_end
|
||||
|
|
@ -25,6 +27,9 @@ const SETTINGS_PANEL = preload("res://UI/settings_panel.tscn")
|
|||
var is_anchored := true
|
||||
var anchored_position: Vector2
|
||||
|
||||
var _set_win: Window
|
||||
var _edit_win: Window
|
||||
|
||||
func start(_main_menu_button: GDSubMenuButton = null) -> void:
|
||||
anchored_position = position
|
||||
var _parent: Control = get_parent()
|
||||
|
|
@ -98,11 +103,43 @@ func calculate_anchored_pos() -> void:
|
|||
func _connect_signals() -> void:
|
||||
btn_end.properly_pressed.connect(func(): get_tree().quit())
|
||||
btn_settings.properly_pressed.connect(_handle_settings)
|
||||
btn_script_editor.properly_pressed.connect(_handle_script_editor)
|
||||
btn_run_obs.properly_pressed.connect(_handle_run_obs)
|
||||
|
||||
|
||||
func _handle_settings() -> void:
|
||||
if _set_win: return
|
||||
var win := Window.new()
|
||||
win.borderless = false
|
||||
win.always_on_top = false
|
||||
win.mode = Window.MODE_WINDOWED
|
||||
var pnl := SETTINGS_PANEL.instantiate()
|
||||
Globals.disable_mouse_passthrough()
|
||||
get_tree().root.add_child(pnl)
|
||||
pnl.show()
|
||||
#Globals.disable_mouse_passthrough()
|
||||
win.add_child(pnl)
|
||||
win.size = Vector2i(1000,800)
|
||||
win.close_requested.connect(func(): win.queue_free(); _set_win = null)
|
||||
win.name = "SettingsWindow"
|
||||
win.title = "Settings"
|
||||
get_tree().root.add_child(win)
|
||||
win.show()
|
||||
_set_win = win
|
||||
|
||||
func _handle_script_editor() -> void:
|
||||
if _edit_win: return
|
||||
var win := Window.new()
|
||||
win.borderless = false
|
||||
win.always_on_top = false
|
||||
win.mode = Window.MODE_WINDOWED
|
||||
var pnl := SCRIPT_EDITOR.instantiate()
|
||||
win.name = "ScriptEditorWindow"
|
||||
win.title = "Script Editor"
|
||||
win.add_child(pnl)
|
||||
win.size = Vector2i(800,600)
|
||||
win.close_requested.connect(func(): win.queue_free(); _edit_win = null)
|
||||
get_tree().root.add_child(win)
|
||||
win.show()
|
||||
_edit_win = win
|
||||
|
||||
func _handle_run_obs() -> void:
|
||||
EventManager.test_notification("Hello World!")
|
||||
#endregion
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue