Beispiel #1
0
 public MouseButtonHidButton(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
     : base(parent, controlDesc)
 {
     this.CanHold       = true;
     this.Image         = Properties.Resources.mouse;
     this.DownImage     = Properties.Resources.mouse_down;
     this.SelectedImage = Properties.Resources.mouse_sel;
 }
Beispiel #2
0
            public HidButton(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
            {
                _parent      = parent;
                _controlDesc = controlDesc;

                this.CatchKey      = controlDesc.CatchKey;
                this.ModifierState = controlDesc.ModifierState;

                this.ButtonClick       += new EventHandler(HidButton_ButtonClick);
                this.ButtonDoubleClick += new EventHandler(HidButton_ButtonClick);
                this.ButtonDown        += new EventHandler(HidButton_ButtonDown);
                this.ButtonUp          += new EventHandler(HidButton_ButtonUp);
                this.ButtonHold        += new EventHandler(HidButton_ButtonHold);
            }
Beispiel #3
0
            public ContainerPanel(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
            {
                _desc = controlDesc;

                this.Width  = controlDesc.Width;
                this.Height = controlDesc.Height;
                this.Left   = controlDesc.Left;
                this.Top    = controlDesc.Top;

                this.Anchor = controlDesc.Anchor;
                this.Dock   = controlDesc.Dock;

                ParseChildren(parent, controlDesc.Controls, this.Controls);
            }
        public static void ParseChildren(CustomInputControl parent, List<Classes.CustomInput.CustomInputControl> controls, ControlCollection controlContainer)
        {
            Bitmap image_down = Properties.Resources.Custom_Button_Down;
            Bitmap image_up = Properties.Resources.Custom_Button_Up;

            foreach (Classes.CustomInput.CustomInputControl controlDesc in controls)
            {
                HidButton imageButton = null;
                Control control = imageButton;

                switch (controlDesc.InputType)
                {
                    case Classes.CustomInputType.Container:
                        {
                            control = new ContainerPanel(parent, controlDesc);
                        }
                        break;
                    case Classes.CustomInputType.KeyCombination:
                    case Classes.CustomInputType.VirtualKey:
                    case Classes.CustomInputType.ScanCode:
                        {
                            control = imageButton = new KeyboardHidButton(parent, controlDesc);

                            if (!string.IsNullOrEmpty(controlDesc.Image))
                            {
                                imageButton.Image = GetBitmap(controlDesc.Image);
                            }
                            else
                            {
                                imageButton.Image = BuildCustomBitmap(image_up, controlDesc.InputDisplay, parent.Font, Color.Black);
                            }
                            if (!string.IsNullOrEmpty(controlDesc.DownImage))
                            {
                                imageButton.DownImage = GetBitmap(controlDesc.DownImage);
                            }
                            else
                            {
                                imageButton.DownImage = BuildCustomBitmap(image_down, controlDesc.InputDisplay, parent.Font, Color.White);
                            }
                            imageButton.SelectedImage = imageButton.DownImage;
                            imageButton.TransparentBackground = controlDesc.TransparentBackground;
                            imageButton.BackColor = parent.BackColor;
                            imageButton.CanHold = false;
                        }
                        break;
                    case Classes.CustomInputType.ShiftKey:
                    case Classes.CustomInputType.AltKey:
                    case Classes.CustomInputType.WinKey:
                        {
                        }
                        break;
                    case Classes.CustomInputType.LeftMouseButton:
                        {
                            imageButton = new MouseButtonHidButton(parent, controlDesc);
                        }
                        break;
                    case Classes.CustomInputType.RightMouseButton:
                        {
                            imageButton = new MouseButtonHidButton(parent, controlDesc);
                        }
                        break;
                    case Classes.CustomInputType.MouseDPad:
                        {
                            // add a control here to map dpad to mouse
                        }
                        break;
                    case Classes.CustomInputType.Accelerometer:
                        {
                            // add a control here to map accelerometer to mouse
                        }
                        break;
                    case Classes.CustomInputType.TouchPad:
                    case Classes.CustomInputType.TouchPadWithScroll:
                        {
                            control = new TouchControl();
                            ((TouchControl)control).HidWriter = parent.HidWriter;
                        }
                        break;
                    default:
                        {
                            // why are we here?
                        }
                        break;
                }
                control.Width = controlDesc.Width;
                control.Height = controlDesc.Height;
                control.Left = controlDesc.Left;
                control.Top = controlDesc.Top;
                control.Tag = controlDesc;

                if (!(control is ContainerPanel))
                {
                    control.Anchor = controlDesc.Anchor;
                    control.Dock = controlDesc.Dock;
                }

                controlContainer.Add(control);
            }
        }
 public MouseButtonHidButton(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
     : base(parent, controlDesc)
 {
     this.CanHold = true;
     this.Image = Properties.Resources.mouse;
     this.DownImage = Properties.Resources.mouse_down;
     this.SelectedImage = Properties.Resources.mouse_sel;
 }
 public KeyboardHidButton(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
     : base(parent, controlDesc)
 {
     this.CanHold = false;
 }
            public HidButton(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
            {
                _parent = parent;
                _controlDesc = controlDesc;

                this.CatchKey = controlDesc.CatchKey;
                this.ModifierState = controlDesc.ModifierState;

                this.ButtonClick += new EventHandler(HidButton_ButtonClick);
                this.ButtonDoubleClick += new EventHandler(HidButton_ButtonClick);
                this.ButtonDown += new EventHandler(HidButton_ButtonDown);
                this.ButtonUp += new EventHandler(HidButton_ButtonUp);
                this.ButtonHold += new EventHandler(HidButton_ButtonHold);
            }
            public ContainerPanel(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
            {
                _desc = controlDesc;

                this.Width = controlDesc.Width;
                this.Height = controlDesc.Height;
                this.Left = controlDesc.Left;
                this.Top = controlDesc.Top;

                this.Anchor = controlDesc.Anchor;
                this.Dock = controlDesc.Dock;

                ParseChildren(parent, controlDesc.Controls, this.Controls);
            }
Beispiel #9
0
 public KeyboardHidButton(CustomInputControl parent, Classes.CustomInput.CustomInputControl controlDesc)
     : base(parent, controlDesc)
 {
     this.CanHold = false;
 }
Beispiel #10
0
        public static void ParseChildren(CustomInputControl parent, List <Classes.CustomInput.CustomInputControl> controls, ControlCollection controlContainer)
        {
            Bitmap image_down = Properties.Resources.Custom_Button_Down;
            Bitmap image_up   = Properties.Resources.Custom_Button_Up;

            foreach (Classes.CustomInput.CustomInputControl controlDesc in controls)
            {
                HidButton imageButton = null;
                Control   control     = imageButton;

                switch (controlDesc.InputType)
                {
                case Classes.CustomInputType.Container:
                {
                    control = new ContainerPanel(parent, controlDesc);
                }
                break;

                case Classes.CustomInputType.KeyCombination:
                case Classes.CustomInputType.VirtualKey:
                case Classes.CustomInputType.ScanCode:
                {
                    control = imageButton = new KeyboardHidButton(parent, controlDesc);

                    if (!string.IsNullOrEmpty(controlDesc.Image))
                    {
                        imageButton.Image = GetBitmap(controlDesc.Image);
                    }
                    else
                    {
                        imageButton.Image = BuildCustomBitmap(image_up, controlDesc.InputDisplay, parent.Font, Color.Black);
                    }
                    if (!string.IsNullOrEmpty(controlDesc.DownImage))
                    {
                        imageButton.DownImage = GetBitmap(controlDesc.DownImage);
                    }
                    else
                    {
                        imageButton.DownImage = BuildCustomBitmap(image_down, controlDesc.InputDisplay, parent.Font, Color.White);
                    }
                    imageButton.SelectedImage         = imageButton.DownImage;
                    imageButton.TransparentBackground = controlDesc.TransparentBackground;
                    imageButton.BackColor             = parent.BackColor;
                    imageButton.CanHold = false;
                }
                break;

                case Classes.CustomInputType.ShiftKey:
                case Classes.CustomInputType.AltKey:
                case Classes.CustomInputType.WinKey:
                {
                }
                break;

                case Classes.CustomInputType.LeftMouseButton:
                {
                    imageButton = new MouseButtonHidButton(parent, controlDesc);
                }
                break;

                case Classes.CustomInputType.RightMouseButton:
                {
                    imageButton = new MouseButtonHidButton(parent, controlDesc);
                }
                break;

                case Classes.CustomInputType.MouseDPad:
                {
                    // add a control here to map dpad to mouse
                }
                break;

                case Classes.CustomInputType.Accelerometer:
                {
                    // add a control here to map accelerometer to mouse
                }
                break;

                case Classes.CustomInputType.TouchPad:
                case Classes.CustomInputType.TouchPadWithScroll:
                {
                    control = new TouchControl();
                    ((TouchControl)control).HidWriter = parent.HidWriter;
                }
                break;

                default:
                {
                    // why are we here?
                }
                break;
                }
                control.Width  = controlDesc.Width;
                control.Height = controlDesc.Height;
                control.Left   = controlDesc.Left;
                control.Top    = controlDesc.Top;
                control.Tag    = controlDesc;

                if (!(control is ContainerPanel))
                {
                    control.Anchor = controlDesc.Anchor;
                    control.Dock   = controlDesc.Dock;
                }

                controlContainer.Add(control);
            }
        }