ui updates

This commit is contained in:
2026-06-12 23:29:35 +03:00
parent 9b3d7c4491
commit 5ff72d09c3
26 changed files with 159 additions and 37 deletions
@@ -2,23 +2,22 @@
#include "SettingsScreenWidget.h"
#include "AudioSettingsTab.h"
#include "GameplaySettingsTab.h"
#include "GraphicsSettingsTab.h"
#include "Components/Button.h"
#include "Components/WidgetSwitcher.h"
#include "NakedDesire/Global/NakedDesireUserSettings.h"
#include "NakedDesire/UI/TextButton.h"
void USettingsScreenWidget::NativeOnActivated()
{
Super::NativeOnActivated();
GameplayTabButton->OnClicked.AddUniqueDynamic(this, &USettingsScreenWidget::ShowGameplayTab);
AudioTabButton->OnClicked.AddUniqueDynamic(this, &USettingsScreenWidget::ShowAudioTab);
GraphicsTabButton->OnClicked.AddUniqueDynamic(this, &USettingsScreenWidget::ShowGraphicsTab);
ApplyButton->OnClicked.AddUniqueDynamic(this, &USettingsScreenWidget::OnApplyClicked);
BackButton->OnClicked.AddUniqueDynamic(this, &USettingsScreenWidget::OnBackClicked);
GameplayTabButton->OnClicked().AddUObject(this, &USettingsScreenWidget::ShowGameplayTab);
AudioTabButton->OnClicked().AddUObject(this, &USettingsScreenWidget::ShowAudioTab);
GraphicsTabButton->OnClicked().AddUObject(this, &USettingsScreenWidget::ShowGraphicsTab);
ApplyButton->OnClicked().AddUObject(this, &USettingsScreenWidget::OnApplyClicked);
BackButton->OnClicked().AddUObject(this, &USettingsScreenWidget::OnBackClicked);
// Pull live values into every tab so the controls reflect the current state.
GameplayTab->RefreshFromSettings();
@@ -39,16 +38,25 @@ void USettingsScreenWidget::NativeOnDeactivated()
void USettingsScreenWidget::ShowGameplayTab()
{
TabSwitcher->SetActiveWidget(GameplayTab);
GameplayTabButton->SetIsActive(true);
AudioTabButton->SetIsActive(false);
GraphicsTabButton->SetIsActive(false);
}
void USettingsScreenWidget::ShowAudioTab()
{
TabSwitcher->SetActiveWidget(AudioTab);
GameplayTabButton->SetIsActive(false);
AudioTabButton->SetIsActive(true);
GraphicsTabButton->SetIsActive(false);
}
void USettingsScreenWidget::ShowGraphicsTab()
{
TabSwitcher->SetActiveWidget(GraphicsTab);
GameplayTabButton->SetIsActive(false);
AudioTabButton->SetIsActive(false);
GraphicsTabButton->SetIsActive(true);
}
void USettingsScreenWidget::OnApplyClicked()