public void DrawTitleImage(Graphics g, Rectangle rect, StiCloudTabulatorPage page) { var imageRect = GetTitleImageRectangle(rect, page); if (!imageRect.IsEmpty) { if (page.Image != null) { g.DrawImage(page.Image, imageRect.X, imageRect.Y, imageRect.Width, imageRect.Height); } } }
public Rectangle GetTitleTextRectangle(Rectangle rect, StiCloudTabulatorPage page) { Rectangle imageRect = GetTitleImageRectangle(rect, page); if (imageRect.IsEmpty) { return(rect); } rect.Y += imageRect.Height + 4; rect.Height -= imageRect.Height; return(rect); }
public void DrawTitleText(Graphics g, Rectangle rect, StiCloudTabulatorPage page) { Rectangle textRect = GetTitleTextRectangle(rect, page); var stringFormat = new StringFormat { HotkeyPrefix = System.Drawing.Text.HotkeyPrefix.Show, LineAlignment = StringAlignment.Center, Alignment = StringAlignment.Center, Trimming = StringTrimming.EllipsisCharacter }; g.DrawString(page.Text, tabulator.Font, SystemBrushes.ControlText, textRect, stringFormat); }
public Size MeasureTitle(Graphics g, StiCloudTabulatorPage page) { Size titleSize = MeasureWrappedString(g, tabulator.Font, page.Text, 95);//Артем: статическая ширина заголовков titleSize.Width += 6; titleSize.Height += 6; Rectangle imageRect = GetTitleImageRectangle(Rectangle.Empty, page); titleSize.Width = Math.Max(titleSize.Width, imageRect.Width + 6); titleSize.Height += imageRect.Height + 6; return(titleSize); }
private void DrawPageTitle(Graphics g, StiCloudTabulatorPage page) { var rect = new Rectangle(page.TitleRect.X, page.TitleRect.Y, page.TitleRect.Width, page.TitleRect.Height); if (this.ShowVerticalScroll) { rect.Y -= this.VScrollBar.Value; } if (rect.Width != 0 && rect.Height != 0) { var contentRect = new Rectangle(rect.X, rect.Y + 3, rect.Width, rect.Height); if (page != SelectedTab) { if (page == this.MouseOverPage) { using (var br = new SolidBrush(StiStyleOffice2013Blue.ColorButtonButtonMouseOver)) { g.FillRectangle(br, contentRect); } } else { using (var br = new SolidBrush(Color.White)) { g.FillRectangle(br, contentRect); } } } else { using (var br = new SolidBrush(StiStyleOffice2013Blue.ColorButtonChecked)) { g.FillRectangle(br, contentRect); } } this.Mode.DrawTitleText(g, rect, page); this.Mode.DrawTitleImage(g, rect, page); } }
public Rectangle GetTitleImageRectangle(Rectangle rect, StiCloudTabulatorPage page) { SizeF imageSize = SizeF.Empty; if (page.Image != null) { imageSize = page.Image.Size; int width = 4; if (rect.Width > 0) { width = ((int)((rect.Width - imageSize.Width) / 2)); } return(new Rectangle(rect.X + width, rect.Y + 10, (int)imageSize.Width, (int)imageSize.Height)); } return(Rectangle.Empty); }
protected override void OnMouseMove(MouseEventArgs e) { base.OnMouseMove(e); var pos = Parent.PointToClient(Cursor.Position); for (int index = 0; index < this.Controls.Count; index++) { var page = this.Controls[index] as StiCloudTabulatorPage; if (page == null || page.Invisible) { continue; } var rect = new Rectangle(page.TitleRect.X, page.TitleRect.Y, page.TitleRect.Width, page.TitleRect.Height); if (this.ShowVerticalScroll) { rect.Y -= this.VScrollBar.Value; } if (rect.Contains(pos)) { if (MouseOverPage != page) { MouseOverPage = page; Invalidate(); } return; } } if (MouseOverPage != null) { MouseOverPage = null; Invalidate(); } }