- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg) - LoginPanel: InputField placeholder本地化、字体颜色保持 - HistoryPanel: 用时数据本地化、placeholder本地化 - RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建) - AppraiseWindowBase: 评价等级本地化、操作消息重建 - EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized - StudentOperateRecorder: 新增InjectOperateMsgLocalized方法 - LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选 - 字体切换时保留颜色和verticalOverflow
61 lines
1.9 KiB
C#
61 lines
1.9 KiB
C#
namespace VRTK.Examples.PanelMenu
|
|
{
|
|
// Panel Menu UI Slider
|
|
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
using VRTK;
|
|
|
|
/// <summary>
|
|
/// Demo component for example scene.
|
|
/// </summary>
|
|
/// <example>
|
|
/// See the demo scene for a complete example: [ 040_Controls_Panel_Menu ]
|
|
/// </example>
|
|
public class PanelMenuUISlider : MonoBehaviour
|
|
{
|
|
#region Variables
|
|
|
|
private Slider slider;
|
|
|
|
#endregion Variables
|
|
|
|
#region Unity Methods
|
|
|
|
private void Start()
|
|
{
|
|
slider = GetComponent<Slider>();
|
|
if (slider == null)
|
|
{
|
|
VRTK_Logger.Warn(VRTK_Logger.GetCommonMessage(VRTK_Logger.CommonMessageKeys.REQUIRED_COMPONENT_MISSING_FROM_GAMEOBJECT, "PanelMenuUISlider", "Slider", "the same"));
|
|
return;
|
|
}
|
|
|
|
GetComponentInParent<VRTK_PanelMenuItemController>().PanelMenuItemSwipeLeft += new PanelMenuItemControllerEventHandler(OnPanelMenuItemSwipeLeft);
|
|
GetComponentInParent<VRTK_PanelMenuItemController>().PanelMenuItemSwipeRight += new PanelMenuItemControllerEventHandler(OnPanelMenuItemSwipeRight);
|
|
}
|
|
|
|
#endregion Unity Methods
|
|
|
|
#region UI Events
|
|
|
|
private void OnPanelMenuItemSwipeLeft(object sender, PanelMenuItemControllerEventArgs e)
|
|
{
|
|
slider.value -= 1;
|
|
SendMessageToInteractableObject(e.interactableObject);
|
|
}
|
|
|
|
private void OnPanelMenuItemSwipeRight(object sender, PanelMenuItemControllerEventArgs e)
|
|
{
|
|
slider.value += 1;
|
|
SendMessageToInteractableObject(e.interactableObject);
|
|
}
|
|
|
|
private void SendMessageToInteractableObject(GameObject interactableObject)
|
|
{
|
|
interactableObject.SendMessage("UpdateSliderValue", slider.value);
|
|
}
|
|
|
|
#endregion UI Events
|
|
}
|
|
} |