- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg) - LoginPanel: InputField placeholder本地化、字体颜色保持 - HistoryPanel: 用时数据本地化、placeholder本地化 - RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建) - AppraiseWindowBase: 评价等级本地化、操作消息重建 - EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized - StudentOperateRecorder: 新增InjectOperateMsgLocalized方法 - LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选 - 字体切换时保留颜色和verticalOverflow
36 lines
1020 B
C#
36 lines
1020 B
C#
namespace VRTK.UnityEventHelper
|
|
{
|
|
using UnityEngine;
|
|
|
|
public abstract class VRTK_UnityEvents<T> : MonoBehaviour where T : Component
|
|
{
|
|
private T component;
|
|
|
|
protected abstract void AddListeners(T component);
|
|
protected abstract void RemoveListeners(T component);
|
|
|
|
protected virtual void OnEnable()
|
|
{
|
|
component = GetComponent<T>();
|
|
|
|
if (component != null)
|
|
{
|
|
AddListeners(component);
|
|
}
|
|
else
|
|
{
|
|
string eventsScriptName = GetType().Name;
|
|
string scriptName = component.GetType().Name;
|
|
VRTK_Logger.Error(string.Format("The {0} script requires to be attached to a GameObject that contains a {1} script.", eventsScriptName, scriptName));
|
|
}
|
|
}
|
|
|
|
protected virtual void OnDisable()
|
|
{
|
|
if (component != null)
|
|
{
|
|
RemoveListeners(component);
|
|
}
|
|
}
|
|
}
|
|
} |