- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg) - LoginPanel: InputField placeholder本地化、字体颜色保持 - HistoryPanel: 用时数据本地化、placeholder本地化 - RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建) - AppraiseWindowBase: 评价等级本地化、操作消息重建 - EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized - StudentOperateRecorder: 新增InjectOperateMsgLocalized方法 - LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选 - 字体切换时保留颜色和verticalOverflow
42 lines
1.3 KiB
Plaintext
42 lines
1.3 KiB
Plaintext
namespace VRTK
|
|
{
|
|
using UnityEngine;
|
|
using UnityEditor;
|
|
|
|
[CustomEditor(typeof(VRTK_PolicyList))]
|
|
public class VRTK_PolicyListEditor : Editor
|
|
{
|
|
SerializedProperty staticFlagMask;
|
|
SerializedProperty identifiers;
|
|
|
|
private void OnEnable()
|
|
{
|
|
staticFlagMask = serializedObject.FindProperty("checkType");
|
|
identifiers = serializedObject.FindProperty("identifiers");
|
|
}
|
|
|
|
public override void OnInspectorGUI()
|
|
{
|
|
serializedObject.Update();
|
|
|
|
EditorGUILayout.PropertyField(serializedObject.FindProperty("operation"));
|
|
staticFlagMask.intValue = (int)((VRTK_PolicyList.CheckTypes)EditorGUILayout.EnumMaskField("Check Types", (VRTK_PolicyList.CheckTypes)staticFlagMask.intValue));
|
|
ArrayGUI(identifiers);
|
|
|
|
serializedObject.ApplyModifiedProperties();
|
|
}
|
|
|
|
void ArrayGUI(SerializedProperty property)
|
|
{
|
|
SerializedProperty arraySizeProp = property.FindPropertyRelative("Array.size");
|
|
EditorGUILayout.PropertyField(arraySizeProp);
|
|
EditorGUI.indentLevel++;
|
|
|
|
for (int i = 0; i < arraySizeProp.intValue; i++)
|
|
{
|
|
EditorGUILayout.PropertyField(property.GetArrayElementAtIndex(i));
|
|
}
|
|
EditorGUI.indentLevel--;
|
|
}
|
|
}
|
|
} |