121 lines
4.7 KiB
C#
121 lines
4.7 KiB
C#
using System;
|
||
using System.Linq;
|
||
using UnityEngine;
|
||
using UnityEngine.UI;
|
||
|
||
public class Panel_PrimaryMenu : MonoBehaviour
|
||
{
|
||
public Button Button_Close;
|
||
public RectTransform ButtonArea;
|
||
public Action<string> onClickMenuSelected;
|
||
|
||
public void Open()
|
||
{
|
||
gameObject.SetActive(true);
|
||
}
|
||
private void Close()
|
||
{
|
||
gameObject.SetActive(false);
|
||
}
|
||
public void Initialized()
|
||
{
|
||
var buttonDictionary = transform.FindComponentDictionary<Button>();
|
||
Button_Close = buttonDictionary.GetOrNull(nameof(Button_Close));
|
||
Button_Close.onClick.AddListener(Close);
|
||
|
||
var layoutGroups = transform.GetComponentsInChildren<VerticalLayoutGroup>(true);
|
||
var buttonsArea = layoutGroups.Where(area => area.name == nameof(ButtonArea)).FirstOrDefault();
|
||
var tabButtonDictionary = buttonsArea.transform.FindComponentDictionary<Button>();
|
||
|
||
foreach (var tabButton in tabButtonDictionary.Values)
|
||
{
|
||
tabButton.onClick.AddListener(() => OnClickMenuTabButton(tabButton.name));
|
||
}
|
||
}
|
||
private void OnClickMenuTabButton(string buttonName)
|
||
{
|
||
onClickMenuSelected?.Invoke(buttonName);
|
||
Close();
|
||
}
|
||
|
||
#region ¹öư ¼öµ¿ ÇÒ´ç
|
||
//private Button Button_Search;
|
||
//private Button Button_Filtering;
|
||
//private Button Button_BerthStatus;
|
||
//private Button Button_OutfittingProgress;
|
||
//private Button Button_QuayBerth;
|
||
//private Button Button_AutomationRate;
|
||
//private Button Button_OutFittingPlan;
|
||
//private Button Button_SteelStockyardStatus;
|
||
//private Button Button_BuildingStatus;
|
||
//private Button Button_AerialVideo;
|
||
|
||
//private void Initialized()
|
||
//{
|
||
// var buttonDictionary = transform.FindComponentDictionary<Button>();
|
||
|
||
// Button_Search = buttonDictionary.GetOrNull(nameof(Button_Search));
|
||
// Button_Filtering = buttonDictionary.GetOrNull(nameof(Button_Filtering));
|
||
// Button_BerthStatus = buttonDictionary.GetOrNull(nameof(Button_BerthStatus));
|
||
// Button_OutfittingProgress = buttonDictionary.GetOrNull(nameof(Button_OutfittingProgress));
|
||
// Button_QuayBerth = buttonDictionary.GetOrNull(nameof(Button_QuayBerth));
|
||
// Button_AutomationRate = buttonDictionary.GetOrNull(nameof(Button_AutomationRate));
|
||
// Button_OutFittingPlan = buttonDictionary.GetOrNull(nameof(Button_OutFittingPlan));
|
||
// Button_SteelStockyardStatus = buttonDictionary.GetOrNull(nameof(Button_SteelStockyardStatus));
|
||
// Button_BuildingStatus = buttonDictionary.GetOrNull(nameof(Button_BuildingStatus));
|
||
// Button_AerialVideo = buttonDictionary.GetOrNull(nameof(Button_AerialVideo));
|
||
|
||
// Button_Search.onClick.AddListener(OnClickSearchButton);
|
||
// Button_Filtering.onClick.AddListener(OnClickFilteringButton);
|
||
// Button_BerthStatus.onClick.AddListener(OnClickBerthStatusButton);
|
||
// Button_OutfittingProgress.onClick.AddListener(OnClickOutfittingProgressButton);
|
||
// Button_QuayBerth.onClick.AddListener(OnClickQuayBerthButton);
|
||
// Button_AutomationRate.onClick.AddListener(OnClickAutomationRateButton);
|
||
// Button_OutFittingPlan.onClick.AddListener(OnClickOutFittingPlanButton);
|
||
// Button_SteelStockyardStatus.onClick.AddListener(OnClickSteelStockyardStatusButton);
|
||
// Button_BuildingStatus.onClick.AddListener(OnClickBuildingStatusButton);
|
||
// Button_AerialVideo.onClick.AddListener(OnClickAerialVideoButton);
|
||
//}
|
||
|
||
//private void OnClickSearchButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_Search.name);
|
||
//}
|
||
//private void OnClickFilteringButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_Filtering.name);
|
||
//}
|
||
//private void OnClickBerthStatusButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_BerthStatus.name);
|
||
//}
|
||
//private void OnClickOutfittingProgressButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_OutfittingProgress.name);
|
||
//}
|
||
//private void OnClickQuayBerthButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_QuayBerth.name);
|
||
//}
|
||
//private void OnClickAutomationRateButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_AutomationRate.name);
|
||
//}
|
||
//private void OnClickOutFittingPlanButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_OutFittingPlan.name);
|
||
//}
|
||
//private void OnClickSteelStockyardStatusButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_SteelStockyardStatus.name);
|
||
//}
|
||
//private void OnClickBuildingStatusButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_BuildingStatus.name);
|
||
//}
|
||
//private void OnClickAerialVideoButton()
|
||
//{
|
||
// onClickMenuSelected?.Invoke(Button_AerialVideo.name);
|
||
//}
|
||
#endregion
|
||
} |