using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; namespace NexusPowerControl { public delegate void Click(EventArgs e); [DefaultEvent("Click")] public partial class ThemeButton : UserControl { [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public EventHandler OnClickEvent; public ThemeButton() { InitializeComponent(); this.OnClickEvent = null; this.Image = NexusPowerControl.Properties.Resources.missing; this.Text = "template"; this.ToolTip = new ToolTip(); } [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public Image Image { get { return picImage.Image; } set { picImage.Image = value; } } [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public override string Text { get { return lblText.Text; } set { lblText.Text = value; } } [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public ToolTip ToolTip { get { return toolTip1; } protected set { toolTip1 = value; } } [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public string ToolTipText { get { return this.ToolTip.GetToolTip(this); } set { this.ToolTip.SetToolTip(this, value); } } private void ThemeButton_Click(object sender, EventArgs e) { if (this.OnClickEvent != null) { this.OnClickEvent(this, e); } else { base.OnClick(e); } } private void picImage_Click(object sender, EventArgs e) { ThemeButton_Click(sender, e); } private void lblText_Click(object sender, EventArgs e) { ThemeButton_Click(sender, e); } } }