87 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
#if FRAMEWORK20
 | 
						|
using System;
 | 
						|
using System.Collections.Generic;
 | 
						|
using System.Text;
 | 
						|
using System.Windows.Forms.Design;
 | 
						|
using System.ComponentModel.Design;
 | 
						|
using System.ComponentModel;
 | 
						|
using System.Collections;
 | 
						|
using DevComponents.DotNetBar.Schedule;
 | 
						|
 | 
						|
namespace DevComponents.DotNetBar.Design
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// Represents designer for the CalendarView control.
 | 
						|
    /// </summary>
 | 
						|
    public class CalendarViewDesigner : ControlDesigner
 | 
						|
    {
 | 
						|
        #region Internal Implementation
 | 
						|
        public override void Initialize(IComponent component)
 | 
						|
        {
 | 
						|
            base.Initialize(component);
 | 
						|
            if (component == null || component.Site == null || !component.Site.DesignMode)
 | 
						|
                return;
 | 
						|
 | 
						|
#if !TRIAL
 | 
						|
            IDesignerHost dh = this.GetService(typeof(IDesignerHost)) as IDesignerHost;
 | 
						|
            if (dh != null)
 | 
						|
                dh.LoadComplete += new EventHandler(DesignerLoadComplete);
 | 
						|
#endif
 | 
						|
        }
 | 
						|
#if FRAMEWORK20
 | 
						|
        public override void InitializeNewComponent(IDictionary defaultValues)
 | 
						|
        {
 | 
						|
            base.InitializeNewComponent(defaultValues);
 | 
						|
            SetDesignTimeDefaults();
 | 
						|
        }
 | 
						|
#else
 | 
						|
		public override void OnSetComponentDefaults()
 | 
						|
		{
 | 
						|
            SetDesignTimeDefaults();
 | 
						|
			base.OnSetComponentDefaults();
 | 
						|
		}
 | 
						|
#endif
 | 
						|
 | 
						|
        private void SetDesignTimeDefaults()
 | 
						|
        {
 | 
						|
            CalendarView calendar = this.Control as CalendarView;
 | 
						|
#if !TRIAL
 | 
						|
            string key = GetLicenseKey();
 | 
						|
            calendar.LicenseKey = key;
 | 
						|
#endif
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region Licensing Stuff
 | 
						|
#if !TRIAL
 | 
						|
        internal static string GetLicenseKey()
 | 
						|
        {
 | 
						|
            string key = "";
 | 
						|
            Microsoft.Win32.RegistryKey regkey = Microsoft.Win32.Registry.LocalMachine;
 | 
						|
            regkey = regkey.OpenSubKey("Software\\DevComponents\\Licenses", false);
 | 
						|
            if (regkey != null)
 | 
						|
            {
 | 
						|
                object keyValue = regkey.GetValue("DevComponents.DotNetBar.DotNetBarManager2");
 | 
						|
                if (keyValue != null)
 | 
						|
                    key = keyValue.ToString();
 | 
						|
            }
 | 
						|
            return key;
 | 
						|
        }
 | 
						|
        private void DesignerLoadComplete(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            IDesignerHost dh = this.GetService(typeof(IDesignerHost)) as IDesignerHost;
 | 
						|
            if (dh != null)
 | 
						|
                dh.LoadComplete -= new EventHandler(DesignerLoadComplete);
 | 
						|
 | 
						|
            string key = GetLicenseKey();
 | 
						|
            CalendarView calendar = this.Control as CalendarView;
 | 
						|
            if (key != "" && calendar != null && calendar.LicenseKey == "" && calendar.LicenseKey != key)
 | 
						|
                TypeDescriptor.GetProperties(calendar)["LicenseKey"].SetValue(calendar, key);
 | 
						|
        }
 | 
						|
#endif
 | 
						|
        #endregion
 | 
						|
    }
 | 
						|
}
 | 
						|
#endif
 | 
						|
 |