private void InitList() { Image[] images = new Image[50]; RibbonProfessionalRenderer rend = new RibbonProfessionalRenderer(); Random r = new Random(); using (GraphicsPath path = rend.RoundRectangle(new Rectangle(3, 3, 26, 26), 4)) { using (GraphicsPath outer = rend.RoundRectangle(new Rectangle(0,0,32,32), 4)) { for (int i = 0; i < images.Length; i++) { Bitmap b = new Bitmap(32, 32); using (Graphics g = Graphics.FromImage(b)) { g.SmoothingMode = SmoothingMode.AntiAlias; using (SolidBrush br = new SolidBrush(Color.FromKnownColor((KnownColor)r.Next(1, 150)))) { g.FillPath(br, path); } using (Pen p = new Pen(Color.White, 3)) { g.DrawPath(p, path); } g.DrawPath(Pens.Wheat, path); } images[i] = b; RibbonButton btn = new RibbonButton(); btn.Image = b; lst.Buttons.Add(btn); } } } //lst.DropDownItems.Add(new RibbonSeparator("Available styles")); RibbonButtonList lst2 = new RibbonButtonList(); for (int i = 0; i < images.Length; i++) { RibbonButton btn = new RibbonButton(); btn.Image = images[i]; lst2.Buttons.Add(btn); } lst.DropDownItems.Add(lst2); //lst.DropDownItems.Add(new RibbonSeparator("Style Options")); lst.DropDownItems.Add(new RibbonButton("Save style...")); lst.DropDownItems.Add(new RibbonButton("Create style")); lst.DropDownItems.Add(new RibbonButton("Apply style...")); }
private void InitList() { Image[] images = new Image[50]; RibbonProfessionalRenderer rend = new RibbonProfessionalRenderer(); Random r = new Random(); using (GraphicsPath path = rend.RoundRectangle(new Rectangle(3, 3, 26, 26), 4)) { using (GraphicsPath outer = rend.RoundRectangle(new Rectangle(0, 0, 32, 32), 4)) { for (int i = 0; i < images.Length; i++) { Bitmap b = new Bitmap(32, 32); using (Graphics g = Graphics.FromImage(b)) { g.SmoothingMode = SmoothingMode.AntiAlias; using (SolidBrush br = new SolidBrush(Color.FromKnownColor((KnownColor)r.Next(1, 150)))) { g.FillPath(br, path); } using (Pen p = new Pen(Color.White, 3)) { g.DrawPath(p, path); } g.DrawPath(Pens.Wheat, path); } images[i] = b; RibbonButton btn = new RibbonButton(); btn.Image = b; lst.Buttons.Add(btn); } } } //lst.DropDownItems.Add(new RibbonSeparator("Available styles")); RibbonButtonList lst2 = new RibbonButtonList(); for (int i = 0; i < images.Length; i++) { RibbonButton btn = new RibbonButton(); btn.Image = images[i]; lst2.Buttons.Add(btn); } lst.DropDownItems.Add(lst2); //lst.DropDownItems.Add(new RibbonSeparator("Style Options")); lst.DropDownItems.Add(new RibbonButton("Save style...")); lst.DropDownItems.Add(new RibbonButton("Create style")); lst.DropDownItems.Add(new RibbonButton("Apply style...")); }
/// <summary> /// Raises the <see cref="Paint"/> event /// </summary> /// <param name="e"></param> protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); using (GraphicsPath p = RibbonProfessionalRenderer.RoundRectangle(new Rectangle(Point.Empty, Size), BorderRoundness)) { using (Region r = new Region(p)) { WrappedDropDown.Region = r; } } }
protected void DrawPressedShadow(Graphics g, Rectangle r) { Rectangle shadow = Rectangle.FromLTRB(r.Left, r.Top, r.Right, r.Top + 4); using (GraphicsPath path = RibbonProfessionalRenderer.RoundRectangle(shadow, 3, RibbonProfessionalRenderer.Corners.NorthEast | RibbonProfessionalRenderer.Corners.NorthWest)) using (LinearGradientBrush b = new LinearGradientBrush(shadow, Color.FromArgb(50, Color.Black), Color.FromArgb(0, Color.Black), 90)) { b.WrapMode = WrapMode.TileFlipXY; g.FillPath(b, path); } }
public override void Paint(PaintEventArgs pe) { SmoothingMode smbuff = pe.Graphics.SmoothingMode; pe.Graphics.SmoothingMode = SmoothingMode.AntiAlias; using (GraphicsPath p = RibbonProfessionalRenderer.RoundRectangle(Bounds, 2)) { using (SolidBrush b = new SolidBrush(Color.FromArgb(50, Color.Blue))) { pe.Graphics.FillPath(b, p); } } StringFormat sf = new StringFormat(); sf.Alignment = StringAlignment.Center; sf.LineAlignment = StringAlignment.Center; pe.Graphics.DrawString("Add Tab", SystemFonts.DefaultFont, Brushes.White, Bounds, sf); pe.Graphics.SmoothingMode = smbuff; }
private void InitColorList() { List <Color> colorList = Color.Wheat.GetPalette(); RibbonProfessionalRenderer rend = new RibbonProfessionalRenderer(); this.BackColor = rend.ColorTable.RibbonBackground; #region Color Squares using (GraphicsPath path = RibbonProfessionalRenderer.RoundRectangle(new Rectangle(2, 2, 12, 12), 3), outer = RibbonProfessionalRenderer.RoundRectangle(new Rectangle(0, 0, 16, 16), 3)) { for (int i = 0; i < colorList.Count; i++) { Bitmap bmp = new Bitmap(16, 16); Color color = colorList[i]; using (Graphics g = Graphics.FromImage(bmp)) { g.SmoothingMode = SmoothingMode.AntiAlias; using (Brush br = new SolidBrush(color)) g.FillPath(br, path); using (Pen p = new Pen(Color.White, 2)) g.DrawPath(p, path); g.DrawPath(Pens.Wheat, path); } RibbonButton btn = new RibbonButton(); btn.SmallImage = bmp; btn.Tag = color; btn.MaxSizeMode = RibbonElementSizeMode.Compact; btn.Click += Colors_Click; lstColors.Buttons.Add(btn); } } #endregion }
/// <summary> /// Draws the title bar of the form when not in glass /// </summary> /// <param name="e"></param> private void PaintTitleBar(PaintEventArgs e) { int radius1 = 4, radius2 = radius1 - 0; Rectangle rPath = new Rectangle(Point.Empty, Form.Size); Rectangle rInner = new Rectangle(Point.Empty, new Size(rPath.Width - 1, rPath.Height - 1)); using (GraphicsPath path = RibbonProfessionalRenderer.RoundRectangle(rPath, radius1)) { using (GraphicsPath innerPath = RibbonProfessionalRenderer.RoundRectangle(rInner, radius2)) { if (Ribbon != null && Ribbon.ActualBorderMode == RibbonWindowMode.NonClientAreaCustomDrawn) { RibbonProfessionalRenderer renderer = Ribbon.Renderer as RibbonProfessionalRenderer; if (renderer != null) { e.Graphics.Clear(renderer.ColorTable.RibbonBackground); // draw the Form border explicitly, otherwise problems as MDI parent occur using (SolidBrush p = new SolidBrush(renderer.ColorTable.Caption1)) { e.Graphics.FillRectangle(p, new Rectangle(0, 0, Form.Width, Ribbon.CaptionBarSize)); } renderer.DrawCaptionBarBackground(new Rectangle(0, Margins.Bottom - 1, Form.Width, Ribbon.CaptionBarSize), e.Graphics); using (Region rgn = new Region(path)) { //Set Window Region Form.Region = rgn; SmoothingMode smbuf = e.Graphics.SmoothingMode; e.Graphics.SmoothingMode = SmoothingMode.AntiAlias; using (Pen p = new Pen(renderer.ColorTable.FormBorder, 1)) { e.Graphics.DrawPath(p, innerPath); } e.Graphics.SmoothingMode = smbuf; } } } } } }
private void InitLists() { Image[] images = new Image[255]; RibbonProfessionalRenderer rend = new RibbonProfessionalRenderer(); BackColor = rend.ColorTable.RibbonBackground; Random r = new Random(); #region Color Squares using (GraphicsPath path = RibbonProfessionalRenderer.RoundRectangle(new Rectangle(3, 3, 26, 26), 4)) { using (GraphicsPath outer = RibbonProfessionalRenderer.RoundRectangle(new Rectangle(0, 0, 32, 32), 4)) { for (int i = 0; i < images.Length; i++) { Bitmap b = new Bitmap(32, 32); using (Graphics g = Graphics.FromImage(b)) { g.SmoothingMode = SmoothingMode.AntiAlias; using (SolidBrush br = new SolidBrush(Color.FromArgb(255, i * (255 / images.Length), 0))) { g.FillPath(br, path); } using (Pen p = new Pen(Color.White, 3)) { g.DrawPath(p, path); } g.DrawPath(Pens.Wheat, path); g.DrawString(Convert.ToString(i + 1), Font, Brushes.White, new Point(10, 10)); } images[i] = b; RibbonButton btn = new RibbonButton(); btn.Image = b; lst.Buttons.Add(btn); } } } //lst.DropDownItems.Add(new RibbonSeparator("Available styles")); RibbonButtonList lst2 = new RibbonButtonList(); for (int i = 0; i < images.Length; i++) { RibbonButton btn = new RibbonButton(); btn.Image = images[i]; lst2.Buttons.Add(btn); } lst.DropDownItems.Add(lst2); lst.DropDownItems.Add(new RibbonButton("Save selection as a new quick style...")); lst.DropDownItems.Add(new RibbonButton("Erase Format")); lst.DropDownItems.Add(new RibbonButton("Apply style...")); #endregion #region Theme Colors RibbonButton[] buttons = new RibbonButton[30]; int square = 16; int squares = 4; int sqspace = 2; for (int i = 0; i < buttons.Length; i++) { #region Create color squares Bitmap colors = new Bitmap((square + sqspace) * squares, square + 1); string[] colorss = new string[squares]; using (Graphics g = Graphics.FromImage(colors)) { for (int j = 0; j < 4; j++) { Color sqcolor = GetRandomColor(r); colorss[j] = sqcolor.Name; using (SolidBrush b = new SolidBrush(sqcolor)) { g.FillRectangle(b, new Rectangle(j * (square + sqspace), 0, square, square)); } g.DrawRectangle(Pens.Gray, new Rectangle(j * (square + sqspace), 0, square, square)); } } #endregion buttons[i] = new RibbonButton(colors); buttons[i].Text = string.Join(", ", colorss);; buttons[i].MaxSizeMode = RibbonElementSizeMode.Medium; buttons[i].MinSizeMode = RibbonElementSizeMode.Medium; } RibbonButtonList blst = new RibbonButtonList(buttons); blst.FlowToBottom = false; blst.ItemsSizeInDropwDownMode = new Size(1, 10); itemColors.DropDownItems.Insert(0, blst); itemColors.DropDownResizable = true; #endregion }
protected void DrawButtonSelected(Graphics g, Rectangle bounds, RibbonProfessionalRenderer.Corners corners) { Rectangle outerR = Rectangle.FromLTRB( bounds.Left, bounds.Top, bounds.Right - 1, bounds.Bottom - 1); Rectangle innerR = Rectangle.FromLTRB( bounds.Left + 1, bounds.Top + 1, bounds.Right - 2, bounds.Bottom - 2); Rectangle glossyR = Rectangle.FromLTRB( bounds.Left + 1, bounds.Top + 1, bounds.Right - 2, bounds.Top + Convert.ToInt32((double)bounds.Height * .36)); using (GraphicsPath boundsPath = RibbonProfessionalRenderer.RoundRectangle(outerR, 3, corners)) { using (SolidBrush brus = new SolidBrush(_colorTable.ButtonSelectedBgOut)) g.FillPath(brus, boundsPath); #region Main Bg using (GraphicsPath path = new GraphicsPath()) { path.AddEllipse(new Rectangle(bounds.Left, bounds.Top, bounds.Width, bounds.Height * 2)); path.CloseFigure(); using (PathGradientBrush gradient = new PathGradientBrush(path)) { gradient.WrapMode = WrapMode.Clamp; gradient.CenterPoint = new PointF( Convert.ToSingle(bounds.Left + bounds.Width / 2), Convert.ToSingle(bounds.Bottom)); gradient.CenterColor = _colorTable.ButtonSelectedBgCenter; gradient.SurroundColors = new Color[] { _colorTable.ButtonSelectedBgOut }; Blend blend = new Blend(3); blend.Factors = new float[] { 0f, 0.8f, 0f }; blend.Positions = new float[] { 0f, 0.30f, 1f }; Region lastClip = g.Clip; Region newClip = new Region(boundsPath); newClip.Intersect(lastClip); g.SetClip(newClip.GetBounds(g)); g.FillPath(gradient, path); g.Clip = lastClip; } } #endregion //Border using (Pen p = new Pen(_colorTable.ButtonSelectedBorderOut)) g.DrawPath(p, boundsPath); //Inner border using (GraphicsPath path = RibbonProfessionalRenderer.RoundRectangle(innerR, 3, corners)) using (Pen p = new Pen(_colorTable.ButtonSelectedBorderIn)) g.DrawPath(p, path); //Glossy effect using (GraphicsPath path = RibbonProfessionalRenderer.RoundRectangle(glossyR, 3, (corners & RibbonProfessionalRenderer.Corners.NorthWest) | (corners & RibbonProfessionalRenderer.Corners.NorthEast))) using (LinearGradientBrush b = new LinearGradientBrush( glossyR, _colorTable.ButtonSelectedGlossyNorth, _colorTable.ButtonSelectedGlossySouth, 90)) { b.WrapMode = WrapMode.TileFlipXY; g.FillPath(b, path); } } }