using System.ComponentModel;
using System.Drawing;
namespace DevComponents.DotNetBar
{
	/// 
	/// Represents interface for simple text only tab.
	/// 
	public interface ISimpleTab
	{
		/// 
		/// Gets or sets the text displayed on the tab.
		/// 
		[Browsable(true),DevCoBrowsable(true),Category("Appearance"),Description("Indicates the text displayed on the tab.")]
		string Text{get;set;}
		/// 
		/// Gets or sets whether tab is visible.
		/// 
		[Browsable(true),DevCoBrowsable(true),DefaultValue(true),Category("Behavior"),Description("Indicates whether the tab is visible.")]
		bool Visible{get;set;}
		/// 
		/// Gets the display bounds of the tab.
		/// 
		[Browsable(false)]
		Rectangle DisplayRectangle{get;}
		/// 
		/// Gets or sets the background color of the tab when inactive.
		/// 
		[Browsable(true),Description("Indicates the inactive tab background color."),Category("Style")]
		Color BackColor{get;set;}
		/// 
		/// Gets or sets the target gradient background color of the tab when inactive.
		/// 
		[Browsable(true),Description("Indicates the inactive tab target gradient background color."),Category("Style")]
		Color BackColor2{get;set;}
		/// 
		/// Gets or sets the gradient angle.
		/// 
		[Browsable(true),Description("Indicates the gradient angle."),Category("Style"),DefaultValue(90)]
		int BackColorGradientAngle{get;set;}
		/// 
		/// Gets or sets the light border color when tab is inactive.
		/// 
		[Browsable(true),Description("Indicates the inactive tab light border color."),Category("Style")]
		Color LightBorderColor{get;set;}
		/// 
		/// Gets or sets the dark border color when tab is inactive.
		/// 
		[Browsable(true),Description("Indicates the inactive tab dark border color."),Category("Style")]
		Color DarkBorderColor{get;set;}
		/// 
		/// Gets or sets the border color when tab is inactive.
		/// 
		[Browsable(true),Description("Indicates the inactive tab border color."),Category("Style")]
		Color BorderColor{get;set;}
		/// 
		/// Gets or sets the text color when tab is inactive.
		/// 
		[Browsable(true),Description("Indicates the inactive tab text color."),Category("Style")]
		Color TextColor{get;set;}
		/// 
		/// Gets or sets name of the tab item that can be used to identify item from the code.
		/// 
		[Browsable(true),DevCoBrowsable(true),Category("Design"),Description("Indicates the name used to identify item.")]
		string Name{get;set;}
		/// 
		/// Gets or sets the predefined tab color.
		/// 
		[Browsable(true),DefaultValue(eTabItemColor.Default),Category("Style"),Description("Applies predefined color to tab.")]
		eTabItemColor PredefinedColor{get;set;}
		/// 
		/// Returns the font used for tab text.
		/// 
		/// Reference to font object.
		Font GetTabFont();
		/// 
		/// Returns true if tab is selected tab.
		/// 
		bool IsSelected{get;}
		/// 
		/// Returns true if mouse is over the tab.
		/// 
		bool IsMouseOver{get;}
		/// 
		/// Gets the tab alignment.
		/// 
		eTabStripAlignment TabAlignment{get;}
	}
}