Ejemplo n.º 1
0
        //internal void OnKeyUp(char key, KeypadActions action )
        //{
        //    EventHandler<KeypadEventArgs> temp =
        //        EventRegistrationTokenTable<EventHandler<KeypadEventArgs>>
        //        .GetOrCreateEventRegistrationTokenTable(ref m_KeyUpTokenTable)
        //        .InvocationList;
        //    if (temp != null)
        //    {
        //        temp(this, new KeypadEventArgs(key, action ));
        //    }
        //}

        //internal void OnKeyDown(char key, KeypadActions action)
        //{
        //    EventHandler<KeypadEventArgs> temp =
        //        EventRegistrationTokenTable<EventHandler<KeypadEventArgs>>
        //        .GetOrCreateEventRegistrationTokenTable(ref m_KeyDownTokenTable)
        //        .InvocationList;
        //    if (temp != null)
        //    {
        //        temp(this, new KeypadEventArgs(key, action));
        //    }
        //}

        //internal void OnKeyJolding(char key, KeypadActions action)
        //{
        //    EventHandler<KeypadEventArgs> temp =
        //        EventRegistrationTokenTable<EventHandler<KeypadEventArgs>>
        //        .GetOrCreateEventRegistrationTokenTable(ref m_KeyHoldingTokenTable)
        //        .InvocationList;
        //    if (temp != null)
        //    {
        //        temp(this, new KeypadEventArgs(key, action));
        //    }
        //}



        public void RaiseEvent(object sender, KeypadEventArgs e)
        {
            // Action relevant event
            switch (e.Action)
            {
            case KeypadActions.Down:
                if (m_KeyDownTokenTable == null)
                {
                    return;
                }
                m_KeyDownTokenTable.InvocationList.Invoke(sender, e);
                break;

            case KeypadActions.Up:
                if (m_KeyUpTokenTable == null)
                {
                    return;
                }
                m_KeyUpTokenTable.InvocationList.Invoke(sender, e);
                break;

            case KeypadActions.Holding:
                if (m_KeyHoldingTokenTable == null)
                {
                    return;
                }
                m_KeyHoldingTokenTable.InvocationList.Invoke(sender, e);
                break;
            }
        }
Ejemplo n.º 2
0
        public void RaiseEvent(object sender, string keyString)
        {
            //Validate keyString
            if (keyString.Length != 2)
            {
                return;
            }

            KeypadEventArgs e      = null;
            char            action = keyString[0];
            char            key    = keyString[1];

            e = new KeypadEventArgs(action, key);

            RaiseEvent(sender, e);
        }