Source/TabStripBaseDisplay.cs

(开头部分) 17KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Text;
using System.Windows.Forms;

namespace DevComponents.DotNetBar
{
	/// <summary>
	/// Represents base class for tab display.
	/// </summary>
	internal class TabStripBaseDisplay
	{
		#region Private Variables
		private bool m_AntiAlias=true;
		private bool m_HorizontalText=false;
        private bool m_CloseButtonOnTabs = false;
        private Size m_TabCloseButtonSize = new Size(11, 11);
        private int m_TabCloseButtonSpacing = 3;
		#endregion

		public TabStripBaseDisplay()
		{
		}

		#region Methods
		/// <summary>
		/// Main method for painting.
		/// </summary>
		/// <param name="g">Reference to graphics object</param>
		/// <param name="tabStrip">TabStrip to paint</param>
		public virtual void Paint(Graphics g, TabStrip tabStrip)
		{
			if(this.AntiAlias)
			{
				g.SmoothingMode=SmoothingMode.AntiAlias;
                g.TextRenderingHint = DisplayHelp.AntiAliasTextRenderingHint;
			}
		}

		protected virtual void PaintTab(Graphics g, TabItem tab, bool first, bool last)
		{
			if(!tab.Visible)
				return;

            if (tab.Parent!=null && tab.Parent.HasPreRenderTabItem)
            {
                RenderTabItemEventArgs re = new RenderTabItemEventArgs(tab, g);
                tab.Parent.InvokePreRenderTabItem(re);
                if (re.Cancel) return;
            }

            using (GraphicsPath path = GetTabItemPath(tab, first, last))
            {
                TabColors colors = tab.Parent.GetTabColors(tab);

                DrawTabItemBackground(tab, path, colors, g);

                DrawTabText(tab, colors, g);
            }
后面还有 423 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。