//
// Copyright (c) 2002
// Ronald Kevin Burton
//
// Z poniższym kodem nie jest związana żadna gwarancja poprawności działania.
// Program został dołączony do książki ".NET CLR. Księga eksperta" w celu
// ilustracji koncepcji i zasad przedstawionych w tej książce. Program może być 
// używany na własne ryzyko.
//
// Przyznaje się prawo do użycia lub kopiowania tego oprogramowania do dowolnego celu
// bez konieczności ponoszenia żadnych opłat pod warunkiem, że powyższe uwagi zostaną 
// zachowane we wszystkich kopiach. Przyznaje się także prawo do modyfikacji kodu
// i dystrybucji zmodyfikowanego kodu pod warunkiem zachowania powyższych uwag
// oraz dołączenia informacji mówiącej o modyfikacji kodu.
//
//
using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;

namespace LicensedControl
{
	/// <summary>
	/// Podsumowanie dla UserControl.
	/// </summary>
	[LicenseProvider(typeof(LicFileLicenseProvider))]
	public class UserControl : System.Windows.Forms.UserControl
	{
		private License license = null;
		private System.Windows.Forms.Label label;
		/// <summary>
		/// Wymagana zmienna.
		/// </summary>
		private System.ComponentModel.Container components = null;

		public UserControl()
		{
			// Dodanie Validate do konstruktora elementu sterującego.
			license = LicenseManager.Validate(typeof(UserControl), this);

			// To wywołanie jest wymagane przez Windows.Forms Form Designer.
			InitializeComponent();

			// TODO: Dodanie inicjalizacji po wywołaniu InitForm.

		}

		public new string Text
		{
			get
			{
				return label.Text;
			}
			set
			{
				label.Text = value;
			}
		}
		/// <summary>
		/// Oczyszczenie używanych zasobów.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if( components != null )
					components.Dispose();
				if (license != null) 
				{
					license.Dispose();
					license = null;
				}
			}
			base.Dispose( disposing );
		}

		#region Component Designer generated code
		/// <summary>
		/// Metoda wymagana do obsługi Designera - nie należy modyfikować
		/// zawartości tej metody przy użyciu edytora kodu.
		/// </summary>
		private void InitializeComponent()
		{
			this.label = new System.Windows.Forms.Label();
			this.SuspendLayout();
			// 
			// label
			// 
			this.label.Location = new System.Drawing.Point(16, 16);
			this.label.Name = "label";
			this.label.Size = new System.Drawing.Size(200, 16);
			this.label.TabIndex = 0;
			this.label.Text = "Własny element sterujący";
			this.label.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
			// 
			// UserControl
			// 
			this.Controls.AddRange(new System.Windows.Forms.Control[] {
																		  this.label});
			this.Name = "UserControl";
			this.Size = new System.Drawing.Size(232, 48);
			this.ResumeLayout(false);

		}
		#endregion
	}
}
