Пример #1
0
 protected override void OnEnabledChanged(EventArgs e)
 {
     if (Enabled)
     {
         state = NuiImageButtonState.Normal;
     }
     else
     {
         state = NuiImageButtonState.Disabled;
     }
     this.Invalidate();
     base.OnEnabledChanged(e);
 }
Пример #2
0
 protected override void OnMouseDown(MouseEventArgs mevent)
 {
     if (mevent.Button == MouseButtons.Left)
     {
         state = NuiImageButtonState.Down;
     }
     this.Invalidate();
     base.OnMouseDown(mevent);
 }
Пример #3
0
 protected override void OnLostFocus(EventArgs e)
 {
     state = NuiImageButtonState.Normal;
     this.Invalidate();
     base.OnLostFocus(e);
 }
Пример #4
0
 protected override void OnGotFocus(EventArgs e)
 {
     state = NuiImageButtonState.Focus;
     base.OnGotFocus(e);
 }
Пример #5
0
        protected override void OnPaint(PaintEventArgs pevent)
        {
            base.OnPaint(pevent);
            Graphics g = pevent.Graphics;
            g.SmoothingMode = SmoothingMode.AntiAlias;
            g.InterpolationMode = InterpolationMode.HighQualityBilinear;

            if (this.Image != null)
            {
                int BUTTON_WIDTH = this.Image.Width / 4;
                int BUTON_HEIGHT = this.Image.Height;
                if (!Enabled) { state = NuiImageButtonState.Disabled; }

                switch (state)
                {
                    case NuiImageButtonState.Normal:
                        Render.DrawNineRectEx(
                            g,
                            this.Image,
                            ClientRectangle,
                            new Rectangle(0, 0, BUTTON_WIDTH, BUTON_HEIGHT));
                        break;
                    case NuiImageButtonState.Hover:
                        Render.DrawNineRectEx(
                              g,
                              this.Image,
                              ClientRectangle,
                              new Rectangle(BUTTON_WIDTH, 0, BUTTON_WIDTH, BUTON_HEIGHT));
                        break;
                    case NuiImageButtonState.Focus:
                        Render.DrawNineRectEx(
                           g,
                           this.Image,
                           ClientRectangle,
                           new Rectangle(BUTTON_WIDTH, 0, BUTTON_WIDTH, BUTON_HEIGHT));
                        break;

                    case NuiImageButtonState.Down:
                        Render.DrawNineRectEx(
                             g,
                             this.Image,
                             ClientRectangle,
                             new Rectangle(BUTTON_WIDTH * 2, 0, BUTTON_WIDTH, BUTON_HEIGHT));
                        break;
                    case NuiImageButtonState.Disabled:
                        Render.DrawNineRectEx(
                           g,
                           this.Image,
                           ClientRectangle,
                           new Rectangle(BUTTON_WIDTH * 3, 0, BUTTON_WIDTH, BUTON_HEIGHT));
                        break;
                    default:
                        break;
                }
            }

            if (this.Text.Length != 0)
            {
                Rectangle textRect = new Rectangle(3, 0, Width - 6, Height);
                Color textColor = Enabled ? ForeColor : SystemColors.GrayText;
                TextRenderer.DrawText(
                      g,
                      Text,
                      Font,
                      textRect,
                      textColor,
                      GetTextFormatFlags(TextAlign, RightToLeft == RightToLeft.Yes));
            }
        }
Пример #6
0
 protected override void OnMouseUp(MouseEventArgs mevent)
 {
     if (mevent.Button == MouseButtons.Left)
     {
         if (ClientRectangle.Contains(mevent.Location))
         {
             state = NuiImageButtonState.Hover;
         }
         else
         {
             state = NuiImageButtonState.Focus;
         }
     }
     this.Invalidate();
     base.OnMouseUp(mevent);
 }
Пример #7
0
 protected override void OnMouseLeave(EventArgs e)
 {
     if (state == NuiImageButtonState.Hover && Focused)
     {
         state = NuiImageButtonState.Focus;
     }
     else if (state == NuiImageButtonState.Focus)
     {
         state = NuiImageButtonState.Focus;
     }
     else
     {
         state = NuiImageButtonState.Normal;
     }
     this.Invalidate();
     base.OnMouseLeave(e);
 }
Пример #8
0
 protected override void OnMouseEnter(EventArgs e)
 {
     state = NuiImageButtonState.Hover;
     this.Invalidate();
     base.OnMouseEnter(e);
 }