Ejemplo n.º 1
0
        public override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            if (!ThemeVisualStyles.RenderClientAreas)
            {
                base.OnRenderGrip(e);
                return;
            }
            if (e.GripStyle == ToolStripGripStyle.Hidden)
            {
                return;
            }
            VisualStyleElement element = e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical ?
                                         VisualStyleElement.Rebar.Gripper.Normal :
                                         VisualStyleElement.Rebar.GripperVertical.Normal;

            if (!VisualStyleRenderer.IsElementDefined(element))
            {
                base.OnRenderGrip(e);
                return;
            }
            new VisualStyleRenderer(element).DrawBackground(e.Graphics, e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical ?
                                                            // GetPartSize seems to return useless values.
                                                            new Rectangle(2, 0, 5, 20) :
                                                            new Rectangle(0, 2, 20, 5));
        }
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     if (renderGrip)
     {
         base.OnRenderGrip(e);
     }
 }
Ejemplo n.º 3
0
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            using (var brush = new SolidBrush(ColorTable.Grip))
            {
                var x = e.GripBounds.X + 1;
                var y = e.GripBounds.Y + 2;
                switch (e.GripDisplayStyle)
                {
                case ToolStripGripDisplayStyle.Horizontal:
                    x += 4;
                    while (x < e.GripBounds.Right - 4)
                    {
                        e.Graphics.FillRectangle(brush, new Rectangle(x, y, 2, 2));
                        x += 4;
                    }
                    break;

                case ToolStripGripDisplayStyle.Vertical:
                    y += 4;
                    while (y < e.GripBounds.Bottom - 4)
                    {
                        e.Graphics.FillRectangle(brush, new Rectangle(x, y, 2, 2));
                        y += 4;
                    }
                    break;
                }
            }
        }
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            if (e == null)
            {
                throw new ArgumentNullException("e");
            }

            LinearGradientMode lgm = default(LinearGradientMode);
            Rectangle          r   = default(Rectangle);

            if (e.GripDisplayStyle == ToolStripGripDisplayStyle.Horizontal)
            {
                lgm = LinearGradientMode.Vertical;
                r   = new Rectangle(e.GripBounds.Left + 2, e.GripBounds.Top, e.GripBounds.Width - 6, e.GripBounds.Height - 3);
            }
            else
            {
                lgm = LinearGradientMode.Horizontal;
                r   = new Rectangle(e.GripBounds.Left, e.GripBounds.Top + 2, e.GripBounds.Width - 3, e.GripBounds.Height - 6);
            }

            using (LinearGradientBrush lgb = new LinearGradientBrush(r, ScaleColorPct(this.m_color1, 80), ScaleColorPct(this.m_color2, 80), lgm))
            {
                e.Graphics.FillRectangle(lgb, r);
            }

            using (Pen p = new Pen(this.m_itemBorderColor))
            {
                e.Graphics.DrawRectangle(p, r);
            }
        }
Ejemplo n.º 5
0
        public void ToolStripRenderer_OnRenderGrip_Invoke_Nop(ToolStripGripRenderEventArgs e)
        {
            var renderer  = new SubToolStripRenderer();
            int callCount = 0;

            renderer.RenderGrip += (sender, e) => callCount++;
            renderer.OnRenderGrip(e);
            Assert.Equal(0, callCount);
        }
        // ---- METHODS (PROTECTED) ------------------------------------------------------------------------------------

        /// <summary>
        /// </summary>
        /// <param name="e">A <see cref="ToolStripGripRenderEventArgs" /> that contains the event data.</param>
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            using (HatchBrush brush = new HatchBrush(HatchStyle.Percent20, ColorTable.GripDark, ColorTable.GripLight))
            {
                Rectangle patternRectangle = e.GripBounds;
                patternRectangle.Inflate(2, -4);
                e.Graphics.FillRectangle(brush, patternRectangle);
            }
        }
Ejemplo n.º 7
0
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     using (Pen pen = new Pen(AppearanceSettings.BorderColor))
     {
         pen.DashStyle = DashStyle.Dot;
         e.Graphics.DrawLine(pen, e.GripBounds.X, e.GripBounds.Y + 5, e.GripBounds.X, e.GripBounds.Bottom - 7);
         e.Graphics.DrawLine(pen, e.GripBounds.X + 2, e.GripBounds.Y + 5, e.GripBounds.X + 2, e.GripBounds.Bottom - 7);
     }
 }
Ejemplo n.º 8
0
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            Graphics g = e.Graphics;

            using (Pen pen = new Pen(ToolStripBorderColor.Lighten(10))) {
                //pen.DashStyle = DashStyle.Dot;
                g.DrawLine(pen, e.GripBounds.X, e.GripBounds.Y + 1, e.GripBounds.X, e.GripBounds.Bottom);
                g.DrawLine(pen, e.GripBounds.X + 2, e.GripBounds.Y + 1, e.GripBounds.X + 2, e.GripBounds.Bottom);
            }
        }
Ejemplo n.º 9
0
        public void Ctor_Graphics_ToolStrip(Graphics g, ToolStrip toolStrip)
        {
            var e = new ToolStripGripRenderEventArgs(g, toolStrip);

            Assert.Equal(g, e.Graphics);
            Assert.Equal(toolStrip, e.ToolStrip);
            Assert.Equal(new Rectangle(Point.Empty, toolStrip.Size), e.AffectedBounds);
            Assert.Equal(toolStrip.GripRectangle, e.GripBounds);
            Assert.Equal(toolStrip.GripDisplayStyle, e.GripDisplayStyle);
            Assert.Equal(toolStrip.GripStyle, e.GripStyle);
        }
Ejemplo n.º 10
0
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     if (currentRenderer != null)
     {
         currentRenderer.DrawGrip(e);
     }
     else
     {
         base.OnRenderGrip(e);
     }
 }
Ejemplo n.º 11
0
        public void TestToolStripGripRenderEventArgs()
        {
            Graphics  g  = Graphics.FromImage(new Bitmap(5, 5));
            ToolStrip ts = new ToolStrip();
            ToolStripGripRenderEventArgs e = new ToolStripGripRenderEventArgs(g, ts);

            Assert.AreEqual(new Rectangle(2, 0, 3, 25), e.GripBounds, "CCC1");
            Assert.AreEqual(ToolStripGripDisplayStyle.Vertical, e.GripDisplayStyle, "CCC1");
            Assert.AreEqual(ToolStripGripStyle.Visible, e.GripStyle, "CCC3");
            Assert.AreEqual(g, e.Graphics, "CCC4");
            Assert.AreEqual(ts, e.ToolStrip, "CCC5");
        }
Ejemplo n.º 12
0
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            if (e.GripStyle == ToolStripGripStyle.Hidden)
            {
                return;
            }

            Graphics g = e.Graphics;

            using Bitmap img = Properties.Resources.grip.SetColor(ThemeProvider.Theme.Colors.LightBorder);
            g.DrawImageUnscaled(img, new Point(e.AffectedBounds.Left, e.AffectedBounds.Top));
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Used to render the toolstrip's grip handle.
        /// </summary>
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            using (Pen linePen = new Pen(Color.FromArgb(98, 113, 140), 2))
            {
                linePen.DashPattern = new float[] { 1f, 1f };

                // Top position is determined by the toolstrip's padding, the inner border and the grip's size,
                // which we shorten by 8 pixels to make it more appealing.
                Point gripStart = new Point(e.GripBounds.X, e.GripBounds.Y + e.ToolStrip.GripMargin.Top);
                Point gripEnd   = new Point(gripStart.X, e.GripBounds.Y + e.GripBounds.Height - e.ToolStrip.GripMargin.Bottom);
                e.Graphics.DrawLine(linePen, gripStart, gripEnd);
            }
        }
Ejemplo n.º 14
0
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            if (e.GripStyle == ToolStripGripStyle.Hidden)
            {
                return;
            }

            var g = e.Graphics;

            using (var img = MenuIcons.grip.SetColor(Colors.LightBorder))
            {
                g.DrawImage(img, new Point(e.AffectedBounds.Left, e.AffectedBounds.Top));
            }
        }
Ejemplo n.º 15
0
        protected override void OnRenderGrip(
            ToolStripGripRenderEventArgs e)
        {
            if (e.GripStyle == ToolStripGripStyle.Visible)
            {
                Rectangle bounds    = e.GripBounds;
                bool      vert      = e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical;
                ToolStrip toolStrip = e.ToolStrip;
                Graphics  g         = e.Graphics;

                if (vert)
                {
                    bounds.X     = e.AffectedBounds.X;
                    bounds.Width = e.AffectedBounds.Width;
                    if (toolStrip is MenuStrip)
                    {
                        if (e.AffectedBounds.Height > e.AffectedBounds.Width)
                        {
                            vert     = false;
                            bounds.Y = e.AffectedBounds.Y;
                        }
                        else
                        {
                            toolStrip.GripMargin = new Padding(0, 2, 0, 2);
                            bounds.Y             = e.AffectedBounds.Y;
                            bounds.Height        = e.AffectedBounds.Height;
                        }
                    }
                    else
                    {
                        toolStrip.GripMargin = new Padding(2, 2, 4, 2);
                        bounds.X++;
                        bounds.Width++;
                    }
                }
                else
                {
                    bounds.Y      = e.AffectedBounds.Y;
                    bounds.Height = e.AffectedBounds.Height;
                }

                DrawDottedGrip(
                    g,
                    bounds,
                    vert,
                    false,
                    ColorTable.BackNormal,
                    ControlPaint.Dark(ColorTable.Base, 0.3F));
            }
        }
Ejemplo n.º 16
0
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            const int GripSize = 5;

            if (e.GripStyle != ToolStripGripStyle.Visible)
            {
                return;
            }

            var graphics = e.Graphics;
            var client   = e.GripBounds;

            switch (e.GripDisplayStyle)
            {
            case ToolStripGripDisplayStyle.Horizontal:
                client.Y     += (client.Width - GripSize) / 2;
                client.Height = 5;
                break;

            case ToolStripGripDisplayStyle.Vertical:
                client.X    += (client.Width - GripSize) / 2;
                client.Width = 5;
                break;
            }
            if (client.Width <= 0 || client.Height <= 0)
            {
                return;
            }
            using (var brush = new HatchBrush(HatchStyle.Percent20, ColorTable.Grip, ColorTable.ToolStripBackground))
            {
                var ro = default(Point);
                try
                {
                    ro = graphics.RenderingOrigin;
                    graphics.RenderingOrigin = new Point(client.X % 4, client.Y % 4);
                }
                catch (NotImplementedException)
                {
                }
                graphics.FillRectangle(brush, client);
                try
                {
                    graphics.RenderingOrigin = ro;
                }
                catch (NotImplementedException)
                {
                }
            }
        }
Ejemplo n.º 17
0
		public virtual void OnRenderGrip (ToolStripGripRenderEventArgs e)
		{
			if (e.GripStyle == ToolStripGripStyle.Hidden)
				return;

			if (e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical) {
				e.Graphics.DrawLine (Pens.White, 0, 2, 1, 2);
				e.Graphics.DrawLine (Pens.White, 0, 2, 0, e.GripBounds.Height - 3);
				e.Graphics.DrawLine (SystemPens.ControlDark, 2, 2, 2, e.GripBounds.Height - 3);
				e.Graphics.DrawLine (SystemPens.ControlDark, 2, e.GripBounds.Height - 3, 0, e.GripBounds.Height - 3);
			}
			else {
				e.Graphics.DrawLine (Pens.White, 2, 0, e.GripBounds.Width - 3, 0);
				e.Graphics.DrawLine (Pens.White, 2, 0, 2, 1);
				e.Graphics.DrawLine (SystemPens.ControlDark, e.GripBounds.Width - 3, 0, e.GripBounds.Width - 3, 2);
				e.Graphics.DrawLine (SystemPens.ControlDark, 2, 2, e.GripBounds.Width - 3, 2);
			}
		}
Ejemplo n.º 18
0
        /// <summary>
        /// Raises the <see cref="E:System.Windows.Forms.ToolStripRenderer.RenderGrip"/> event.
        /// </summary>
        /// <param name="e">A <see cref="T:System.Windows.Forms.ToolStripGripRenderEventArgs"/> that contains the event data.</param>
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            base.OnRenderGrip(e);

            if (e.GripStyle == ToolStripGripStyle.Hidden)
            {
                return;
            }

            if (e.GripDisplayStyle == ToolStripGripDisplayStyle.Horizontal)
            {
                e.Graphics.DrawLine(Pens.White, new Point(e.AffectedBounds.Left, e.AffectedBounds.Top), new Point(e.AffectedBounds.Right, e.AffectedBounds.Top));
                e.Graphics.DrawLine(Pens.White, new Point(e.AffectedBounds.Left, e.AffectedBounds.Top + 2), new Point(e.AffectedBounds.Right, e.AffectedBounds.Top + 2));
            }
            else
            {
                e.Graphics.DrawLine(Pens.White, new Point(e.AffectedBounds.Left, e.AffectedBounds.Top), new Point(e.AffectedBounds.Left, e.AffectedBounds.Bottom));
                e.Graphics.DrawLine(Pens.White, new Point(e.AffectedBounds.Left + 2, e.AffectedBounds.Top), new Point(e.AffectedBounds.Left + 2, e.AffectedBounds.Bottom));
            }
        }
Ejemplo n.º 19
0
        public void ToolStripRenderer_DrawGrip_Invoke_CallsRenderGrip(ToolStripGripRenderEventArgs eventArgs)
        {
            var renderer  = new SubToolStripRenderer();
            int callCount = 0;
            ToolStripGripRenderEventHandler handler = (sender, e) =>
            {
                Assert.Same(renderer, sender);
                Assert.Same(eventArgs, e);
                callCount++;
            };

            // Call with handler.
            renderer.RenderGrip += handler;
            renderer.DrawGrip(eventArgs);
            Assert.Equal(1, callCount);

            // Remove handler.
            renderer.RenderGrip -= handler;
            renderer.DrawGrip(eventArgs);
            Assert.Equal(1, callCount);
        }
Ejemplo n.º 20
0
 protected override void OnPaint(PaintEventArgs e)
 {
     try
     {
         using (var tempToolStrip = new ToolStrip())
         {
             Type t    = typeof(ToolStrip).Assembly.GetType("System.Windows.Forms.ToolStripGrip");
             var  ctor = t.GetConstructors(BindingFlags.Instance | BindingFlags.NonPublic)[0];
             using (var fakeGrip = (ToolStripButton)ctor.Invoke(new object[] { }))
             {
                 typeof(ToolStripItem).GetField("bounds", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(fakeGrip, e.ClipRectangle);
                 tempToolStrip.GetType().GetField("toolStripGrip", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(tempToolStrip, fakeGrip);
                 var args = new ToolStripGripRenderEventArgs(e.Graphics, tempToolStrip);
                 Owner.Renderer.DrawGrip(args);
             }
         }
     }
     catch
     {
         base.OnPaint(e);
     }
 }
Ejemplo n.º 21
0
        public virtual void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            if (e.GripStyle == ToolStripGripStyle.Hidden)
            {
                return;
            }

            if (e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical)
            {
                e.Graphics.DrawLine(Pens.White, 0, 2, 1, 2);
                e.Graphics.DrawLine(Pens.White, 0, 2, 0, e.GripBounds.Height - 3);
                e.Graphics.DrawLine(SystemPens.ControlDark, 2, 2, 2, e.GripBounds.Height - 3);
                e.Graphics.DrawLine(SystemPens.ControlDark, 2, e.GripBounds.Height - 3, 0, e.GripBounds.Height - 3);
            }
            else
            {
                e.Graphics.DrawLine(Pens.White, 2, 0, e.GripBounds.Width - 3, 0);
                e.Graphics.DrawLine(Pens.White, 2, 0, 2, 1);
                e.Graphics.DrawLine(SystemPens.ControlDark, e.GripBounds.Width - 3, 0, e.GripBounds.Width - 3, 2);
                e.Graphics.DrawLine(SystemPens.ControlDark, 2, 2, e.GripBounds.Width - 3, 2);
            }
        }
Ejemplo n.º 22
0
		public override void OnRenderGrip (ToolStripGripRenderEventArgs e)
		{
			if (!ThemeVisualStyles.RenderClientAreas) {
				base.OnRenderGrip (e);
				return;
			}
			if (e.GripStyle == ToolStripGripStyle.Hidden)
				return;
			VisualStyleElement element = e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical ?
				VisualStyleElement.Rebar.Gripper.Normal :
				VisualStyleElement.Rebar.GripperVertical.Normal;
			if (!VisualStyleRenderer.IsElementDefined (element)) {
				base.OnRenderGrip (e);
				return;
			}
			new VisualStyleRenderer (element).DrawBackground (e.Graphics, e.GripDisplayStyle == ToolStripGripDisplayStyle.Vertical ?
				// GetPartSize seems to return useless values.
				new Rectangle (2, 0, 5, 20) :
				new Rectangle (0, 2, 20, 5));
		}
Ejemplo n.º 23
0
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     return;
 }
Ejemplo n.º 24
0
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     this.renderer.DrawGrip(e);
 }
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            var g         = e.Graphics;
            var bounds    = e.GripBounds;
            var toolStrip = e.ToolStrip;

            var rightToLeft = e.ToolStrip.RightToLeft == RightToLeft.Yes;

            var height = toolStrip.Orientation == Orientation.Horizontal ? bounds.Height : bounds.Width;
            var width  = toolStrip.Orientation == Orientation.Horizontal ? bounds.Width : bounds.Height;

            var numRectangles = (height - GRIP_PADDING * 2) / 4;

            if (numRectangles > 0)
            {
                numRectangles++;
                // a MenuStrip starts its grip lower and has fewer grip rectangles.
                var yOffset = toolStrip is MenuStrip ? 2 : 0;

                var shadowRects = new Rectangle[numRectangles];
                var startY      = GRIP_PADDING + 1 + yOffset;
                var startX      = width / 2;

                for (var i = 0; i < numRectangles; i++)
                {
                    shadowRects[i] = toolStrip.Orientation == Orientation.Horizontal
                        ? new Rectangle(startX, startY, 1, 1)
                        : new Rectangle(startY, startX, 1, 1);

                    startY += 4;
                }

                // in RTL the GripLight rects should paint to the left of the GripDark rects.
                var xOffset = rightToLeft ? 2 : -2;

                if (rightToLeft)
                {
                    // scoot over the rects in RTL so they fit within the bounds.
                    for (var i = 0; i < numRectangles; i++)
                    {
                        shadowRects[i].Offset(-xOffset, 0);
                    }
                }

                Brush b = _gripBrush;
                for (var i = 0; i < numRectangles - 1; i++)
                {
                    g.FillRectangle(b, shadowRects[i]);
                }

                for (var i = 0; i < numRectangles; i++)
                {
                    shadowRects[i].Offset(xOffset, -2);
                }

                g.FillRectangles(b, shadowRects);

                for (var i = 0; i < numRectangles; i++)
                {
                    shadowRects[i].Offset(-2 * xOffset, 0);
                }

                g.FillRectangles(b, shadowRects);
            }
        }
Ejemplo n.º 26
0
 public new void OnRenderGrip(ToolStripGripRenderEventArgs e) => base.OnRenderGrip(e);
Ejemplo n.º 27
0
 public void DrawGrip(ToolStripGripRenderEventArgs e)
 {
 }
Ejemplo n.º 28
0
 // This method handles the RenderGrip event.
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     DrawTitleBar(
         e.Graphics,
         new Rectangle(0, 0, e.ToolStrip.Width, 7));
 }
Ejemplo n.º 29
0
 protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
 {
     throw null;
 }
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            Graphics  g         = e.Graphics;
            Rectangle bounds    = e.GripBounds;
            ToolStrip toolStrip = e.ToolStrip;

            bool rightToLeft = (e.ToolStrip.RightToLeft == RightToLeft.Yes);

            int height = (toolStrip.Orientation == Orientation.Horizontal) ? bounds.Height : bounds.Width;
            int width  = (toolStrip.Orientation == Orientation.Horizontal) ? bounds.Width : bounds.Height;

            int numRectangles = (height - (GRIP_PADDING * 2)) / 4;

            if (numRectangles > 0)
            {
                numRectangles++;
                // a MenuStrip starts its grip lower and has fewer grip rectangles.
                int yOffset = (toolStrip is MenuStrip) ? 2 : 0;

                Rectangle[] shadowRects = new Rectangle[numRectangles];
                int         startY      = GRIP_PADDING + 1 + yOffset;
                int         startX      = (width / 2);

                for (int i = 0; i < numRectangles; i++)
                {
                    shadowRects[i] = (toolStrip.Orientation == Orientation.Horizontal) ?
                                     new Rectangle(startX, startY, 1, 1) :
                                     new Rectangle(startY, startX, 1, 1);

                    startY += 4;
                }

                // in RTL the GripLight rects should paint to the left of the GripDark rects.
                int xOffset = (rightToLeft) ? 2 : -2;

                if (rightToLeft)
                {
                    // scoot over the rects in RTL so they fit within the bounds.
                    for (int i = 0; i < numRectangles; i++)
                    {
                        shadowRects[i].Offset(-xOffset, 0);
                    }
                }

                Brush b = _gripBrush;
                for (int i = 0; i < numRectangles - 1; i++)
                {
                    g.FillRectangle(b, shadowRects[i]);
                }

                for (int i = 0; i < numRectangles; i++)
                {
                    shadowRects[i].Offset(xOffset, -2);
                }

                g.FillRectangles(b, shadowRects);

                for (int i = 0; i < numRectangles; i++)
                {
                    shadowRects[i].Offset(-2 * xOffset, 0);
                }

                g.FillRectangles(b, shadowRects);
            }
        }
 public void DrawGrip(ToolStripGripRenderEventArgs e)
 {
 }
Ejemplo n.º 32
0
        /// <summary>
        /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed.
        /// <example>
        /// toolstripgriprendereventhandler.BeginInvoke(sender, e, callback);
        /// </example>
        /// </summary>
        public static IAsyncResult BeginInvoke(this ToolStripGripRenderEventHandler toolstripgriprendereventhandler, Object sender, ToolStripGripRenderEventArgs e, AsyncCallback callback)
        {
            if (toolstripgriprendereventhandler == null)
            {
                throw new ArgumentNullException("toolstripgriprendereventhandler");
            }

            return(toolstripgriprendereventhandler.BeginInvoke(sender, e, callback, null));
        }
        protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
        {
            base.OnRenderGrip(e);

            e.Graphics.DrawString("GRIP", SystemFonts.MenuFont, Brushes.Black, e.GripBounds);
        }