using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; namespace SC.XR.Unity { public class SCInputFieldBase : Selectable, IUpdateSelectedHandler, IEventSystemHandler, IBeginDragHandler, IDragHandler, IEndDragHandler, IPointerClickHandler, ISubmitHandler, ICanvasElement, ILayoutElement { #region Base public virtual float minWidth { get; } public virtual float preferredWidth { get; } public virtual float flexibleWidth { get; } public virtual float minHeight { get; } public virtual float preferredHeight { get; } public virtual float flexibleHeight { get; } public virtual int layoutPriority { get; } public virtual void CalculateLayoutInputHorizontal() { } public virtual void CalculateLayoutInputVertical() { } public virtual void GraphicUpdateComplete() { } public virtual void LayoutComplete() { } public virtual void OnBeginDrag(PointerEventData eventData) { } public virtual void OnDrag(PointerEventData eventData) { } public virtual void OnEndDrag(PointerEventData eventData) { } public virtual void OnPointerClick(PointerEventData eventData) { } public virtual void OnSubmit(BaseEventData eventData) { } public virtual void OnUpdateSelected(BaseEventData eventData) { } public virtual void Rebuild(CanvasUpdate executing) { } public virtual void Append(string input) { } public virtual void Append(char input) { } #endregion #region Common public virtual int selectionAnchorPosition { get; set; } public virtual int selectionFocusPosition { get; set; } public virtual int caretPosition { get; set; } public virtual string text { get; set; } #endregion #region Override #endregion #region Custom [SerializeField] public SCKeyboardEnum m_SCKeyboardEnum = SCKeyboardEnum.SCKeyboard2D; #endregion } }