62 lines
2.0 KiB
C#
62 lines
2.0 KiB
C#
using AZTECHWB.Core;
|
|
using AZTECHWB.Extensions;
|
|
using AZTECHWB.Management;
|
|
using Cysharp.Threading.Tasks;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace AZTECHWB.UI
|
|
{
|
|
public class SettingPanel : UIPanel
|
|
{
|
|
private GraphicsSettingContent graphicsSetting;
|
|
private ControlSettingContent controlSetting;
|
|
|
|
private Button Button_Accept;
|
|
private Button Button_Reset;
|
|
private Button Button_Close;
|
|
|
|
public override async UniTask Init()
|
|
{
|
|
graphicsSetting = transform.GetComponentInChildren<GraphicsSettingContent>(true);
|
|
graphicsSetting.Init();
|
|
|
|
controlSetting = transform.GetComponentInChildren<ControlSettingContent>(true);
|
|
controlSetting.Init();
|
|
|
|
transform.TryGetComponentInChildren(nameof(Button_Accept), out Button_Accept);
|
|
transform.TryGetComponentInChildren(nameof(Button_Close), out Button_Close);
|
|
transform.TryGetComponentInChildren(nameof(Button_Reset), out Button_Reset);
|
|
|
|
Button_Accept.onClick.AddListener(OnClickAcceptButton);
|
|
Button_Reset.onClick.AddListener(OnClickResetButton);
|
|
Button_Close.onClick.AddListener(OnClickCloseButton);
|
|
|
|
await UniTask.CompletedTask;
|
|
}
|
|
public override void Close()
|
|
{
|
|
var topMenuPanel = AZTECHSceneMain.Instance.GetManager<AZTECHUIManager>().GetCanvas<StaticCanvas>().GetPanel<TopMenuPanel>();
|
|
topMenuPanel.SetToggleButton("Setting", false);
|
|
gameObject.SetActive(false);
|
|
}
|
|
private void OnClickAcceptButton()
|
|
{
|
|
graphicsSetting.Apply();
|
|
controlSetting.Apply();
|
|
}
|
|
private void OnClickResetButton()
|
|
{
|
|
graphicsSetting.ApplyIniToUI();
|
|
controlSetting.ApplyIniToUI();
|
|
}
|
|
private void OnClickCloseButton()
|
|
{
|
|
graphicsSetting.ApplyIniToUI();
|
|
controlSetting.ApplyIniToUI();
|
|
Close();
|
|
}
|
|
}
|
|
}
|
|
|