Updated GeneralPanel
Updated UI to have Section for Display Added logic to handle Authorizing Streamer and Bot. Added logic to handle Connecting to OBS. Added Loading/Saving Logic for other settings in the General Panel.
This commit is contained in:
parent
73615a9bb4
commit
ba537bc791
2 changed files with 80 additions and 3 deletions
|
|
@ -11,6 +11,15 @@ func _ready() -> void:
|
|||
%ObsPass.right = EYE_SLASH
|
||||
%ObsPass.secret = true
|
||||
%ObsPass.right_button_pressed.connect(_handle_password_show)
|
||||
%DisplayScreen.item_selected.connect(func(x): Globals.main_win.get_window().current_screen = x)
|
||||
%UseScreen.pressed.connect(func():
|
||||
Globals.main_win.get_window().current_screen = ProjectSettings.get_setting("display/window/size/initial_screen")
|
||||
%DisplayScreen.select(Globals.main_win.get_window().current_screen)
|
||||
%DisplayScreen.disabled = !%UseScreen.button_pressed
|
||||
)
|
||||
%AuthStreamer.pressed.connect(func(): %AuthStreamer.disabled = await Globals.twitcher.authorize_streamer())
|
||||
%AuthBot.pressed.connect(func(): %AuthBot.disabled = await Globals.twitcher.authorize_chatbot())
|
||||
%ConnectObs.pressed.connect(func(): ObsManager.connect_to_host())
|
||||
_load_settings()
|
||||
|
||||
func _load_settings() -> void:
|
||||
|
|
@ -19,6 +28,42 @@ func _load_settings() -> void:
|
|||
%ObsPass.text = Globals.settings.obs_pass
|
||||
%AutoTwitch.button_pressed = Globals.settings.auto_connect_twitch
|
||||
%AutoObs.button_pressed = Globals.settings.auto_connect_obs
|
||||
%ObsRecon.button_pressed = Globals.settings.obs_reconnect
|
||||
|
||||
%ConnectTwitch.disabled = Globals.twitcher.eventsub.is_open
|
||||
%ConnectTwitch.text = "Connect Twitch" if not Globals.twitcher.eventsub.is_open else "Disconnect Twitch"
|
||||
|
||||
for scr in DisplayServer.get_screen_count():
|
||||
%DisplayScreen.add_item("Monitor %d" % (scr + 1))
|
||||
if Globals.settings.display_screen == -1:
|
||||
%UseScreen.button_pressed = false
|
||||
%DisplayScreen.disabled = true
|
||||
else:
|
||||
%UseScreen.button_pressed = true
|
||||
%DisplayScreen.select(Globals.settings.display_screen)
|
||||
%DisplayScreen.disabled = false
|
||||
|
||||
if not Globals.twitcher.streamer_token_loaded:
|
||||
var res := await Globals.twitcher.load_streamer_token()
|
||||
if res == TwitcherExtended.AuthStatus.UNAUTHORIZED:
|
||||
%AuthStreamer.disabled = false
|
||||
else:
|
||||
%AuthStreamer.disabled = true
|
||||
%StreamerName.text = Globals.twitcher.streamer_user.display_name
|
||||
else:
|
||||
%AuthStreamer.disabled = true
|
||||
%StreamerName.text = Globals.twitcher.streamer_user.display_name
|
||||
|
||||
if not Globals.twitcher.chatbot_token_loaded:
|
||||
var res := await Globals.twitcher.load_chatbot_token()
|
||||
if res == TwitcherExtended.AuthStatus.UNAUTHORIZED:
|
||||
%AuthBot.disabled = false
|
||||
else:
|
||||
%AuthBot.disabled = true
|
||||
%BotName.text = Globals.twitcher.bot_user.display_name
|
||||
else:
|
||||
%AuthBot.disabled = true
|
||||
%BotName.text = Globals.twitcher.bot_user.display_name
|
||||
|
||||
func apply_settings() -> void:
|
||||
Globals.settings.obs_host = %ObsHost.text
|
||||
|
|
@ -26,6 +71,12 @@ func apply_settings() -> void:
|
|||
Globals.settings.obs_pass = %ObsPass.text
|
||||
Globals.settings.auto_connect_twitch = %AutoTwitch.button_pressed
|
||||
Globals.settings.auto_connect_obs = %AutoObs.button_pressed
|
||||
Globals.settings.obs_reconnect = %ObsRecon.button_pressed
|
||||
if %UseScreen.button_pressed:
|
||||
Globals.settings.display_screen = %DisplayScreen.selected
|
||||
else:
|
||||
Globals.settings.display_screen = -1
|
||||
Globals.main_win.get_window().current_screen = ProjectSettings.get_setting("display/window/size/initial_screen")
|
||||
|
||||
func _handle_password_show() -> void:
|
||||
if %ObsPass.right == EYE_SLASH:
|
||||
|
|
@ -34,3 +85,6 @@ func _handle_password_show() -> void:
|
|||
else:
|
||||
%ObsPass.right = EYE_SLASH
|
||||
%ObsPass.secret = true
|
||||
|
||||
func _exit_tree() -> void:
|
||||
apply_settings()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue