/****************************************************************************
* 2024.6 LXD
****************************************************************************/
using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using QFramework;
namespace QFramework
{
public partial class LeveItem : UIElement
{
///
/// Index值
///
[HideInInspector]
public int m_index;
///
/// 设置时间
///
[HideInInspector]
public string m_Time;
///
/// 关卡名称
///
[HideInInspector]
public string m_LevelName;
#region UI状态
///
/// 选择状态
///
[HideInInspector]
public bool m_SelectState;
///
/// 时间图标的选中/取消颜色
///
[Header("时间图标的选中状态")]
public Color m_SelectTimeIconColor;
[Header("时间图标的取消状态")]
public Color m_NormalTimeIconColor;
///
/// 时间字体的选中/取消颜色
///
[Header("时间字体的选中状态")]
public Color m_SelectTimeColor;
[Header("时间字体的选中状态")]
public Color m_NormalTimeColor;
///
/// 关卡名称字体的选中/取消颜色
///
[Header("关卡名称字体的选中状态")]
public Color m_SelectConentColor;
[Header("关卡名称字体的取消状态")]
public Color m_NormalConentColor;
#endregion
///
/// 子集第一个元素
///
public OperationStepDataInfo m_OperationStepDataInfo;
void Start()
{
ClickBtn.onClick.AddListener(OnClickBtnClick);
TimeInputField.onEndEdit.AddListener(OnTimeInputFildEndEditor);
}
///
/// 初始化
///
/// indexz
///
///
public void InitData(int index, OperationStepDataInfo operationStepDataInfo)
{
m_OperationStepDataInfo = operationStepDataInfo;
IdText.text = (index + 1).ToString();
m_index = index;
m_LevelName = operationStepDataInfo.parentStepName;
LeveConentText.text = m_LevelName;
m_Time = m_LevelName;
}
public void OnClickBtnClick()
{
SetSelectState(!m_SelectState);
UIKit.GetPanel().SetSelectState(m_index, m_SelectState);
}
public void SetSelectState(bool state)
{
SelectStateIcon.gameObject.SetActive(state);
if (state)
{
TimeLogo.color = m_SelectTimeIconColor;
LeveConentText.color = m_SelectConentColor;
Placeholder.color = m_SelectTimeColor;
Text.color = m_SelectTimeColor;
}
else
{
TimeLogo.color = m_NormalTimeIconColor;
LeveConentText.color = m_NormalConentColor;
Text.color = m_NormalTimeColor;
Placeholder.color= m_NormalConentColor;
}
m_SelectState = state;
}
public void SetSelectedData(ChallengeConfiguration challengeConfiguration)
{
SetSelectState(true);
TimeInputField.text = challengeConfiguration.LeveTime;
}
private void OnTimeInputFildEndEditor(string conent)
{
m_Time = conent;
UIKit.GetPanel().RefreshTotalTime();
}
}
}