Pabo.MozBar.MozPane.PreProcessMessage C# (CSharp) Method

PreProcessMessage() public method

public PreProcessMessage ( Message &msg ) : bool
msg System.Windows.Forms.Message
return bool
        public override bool PreProcessMessage(ref Message msg)
        {
            // Check if message is KEY_DOWN
            if (msg.Msg == WM_KEYDOWN)
            {
                Keys keyData = ((Keys) (int) msg.WParam) |ModifierKeys;
                Keys keyCode = ((Keys) (int) msg.WParam);
                // Make sure we handle certain keys
                switch(keyCode)
                {
                    // Keys used to move forward i list
                    case Keys.Down:
                    case Keys.Right:
                    case Keys.Tab:
                    {
                        // If not at the end handle message
                        if (m_tabIndex < Items.Count-1)
                            return false;
                        //Cant go any further backwards , do not handle message;
                        m_tabIndex = -1;
                        break;
                    }
                    // Keys used to move backwards in list
                    case Keys.Up:
                    case Keys.Left:
                    {
                        // If not at the end handle message
                        if (m_tabIndex >0)
                            return false;
                        //Cant go any further foreward , do not handle message;
                        m_tabIndex = -1;
                        break;
                    }
                    default:
                        break;
                }
            }

            return base.PreProcessMessage (ref msg);
        }