예제 #1
0
        public void DispatchKeys()
        {
            KeyData key = keyProvider.GetKeyData();

            while (null != key)
            {
                keyCollection.Dispatch(key);
                key = keyProvider.GetKeyData();
            }
        }
예제 #2
0
        public void DispatchPointers()
        {
            KeyData pointKey = pointerProvider.GetKeyData();

            while (null != pointKey)
            {
                pointerCollection.Dispatch(pointKey);
                pointKey = pointerProvider.GetKeyData();
            }
        }
예제 #3
0
        protected override void SetRaycastTargetData(KeyData data, RayCastTarget target)
        {
            var pointerData = data as PointerData;

            if (null == pointerData)
            {
                return;
            }

            pointerData.Data   = target.Data;
            pointerData.IdList = target.IdList;
        }
예제 #4
0
        public virtual void Dispatch(KeyData keyData)
        {
            Rebuild();
            List <KeyPointAction> actions;

            if (dispatchDict.TryGetValue(keyData, out actions))
            {
                foreach (var action in actions)
                {
                    DoDispatch(action, keyData);
                }
            }
        }
예제 #5
0
 public void InsertKey(KeyData key)
 {
     keyProvider.Insert(key);
 }
예제 #6
0
 protected virtual void SetRaycastTargetData(KeyData data, RayCastTarget target)
 {
 }
예제 #7
0
 public void Insert(KeyData key)
 {
     insertQueue.Enqueue(key);
 }