/// <summary>
        /// Constructor
        /// </summary>
		public ReflexilWindow() : base()
		{
			InitializeComponent();
            DoubleBuffered = true;

            NotSupportedHandler nsh = new NotSupportedHandler();

            m_handlers.Add(new AssemblyDefinitionHandler());
            m_handlers.Add(new AssemblyNameReferenceHandler());
            m_handlers.Add(new ModuleDefinitionHandler());
            m_handlers.Add(new TypeDefinitionHandler());
			m_handlers.Add(new MethodDefinitionHandler());
            m_handlers.Add(new PropertyDefinitionHandler());
            m_handlers.Add(new FieldDefinitionHandler());
            m_handlers.Add(new EventDefinitionHandler());
            m_handlers.Add(new EmbeddedResourceHandler());
            m_handlers.Add(new LinkedResourceHandler());
            m_handlers.Add(new AssemblyLinkedResourceHandler());
            m_handlers.Add(nsh);

            foreach (IHandler handler in m_handlers)
            {
                (handler as Control).Dock = DockStyle.Fill;
                if (handler != nsh)
                {
                    nsh.LabInfo.Text += " - " + handler.Label + "\n";
                }
            }

#if DEBUG
            PGrid.Visible = true;
#endif
		}
		/// <summary>
		/// Constructor
		/// </summary>
		public ReflexilWindow(bool useMergedAssemblyModuleHandler = false)
		{
			InitializeComponent();
			DoubleBuffered = true;

			var nsh = new NotSupportedHandler();

			if (useMergedAssemblyModuleHandler)
				_handlers.Add(new MergedAssemblyModuleDefinitionHandler());
			else
			{
				_handlers.Add(new AssemblyDefinitionHandler());
				_handlers.Add(new ModuleDefinitionHandler());
			}

			_handlers.Add(new AssemblyNameReferenceHandler());
			_handlers.Add(new TypeDefinitionHandler());
			_handlers.Add(new MethodDefinitionHandler());
			_handlers.Add(new PropertyDefinitionHandler());
			_handlers.Add(new FieldDefinitionHandler());
			_handlers.Add(new EventDefinitionHandler());
			_handlers.Add(new EmbeddedResourceHandler());
			_handlers.Add(new LinkedResourceHandler());
			_handlers.Add(new AssemblyLinkedResourceHandler());
			_handlers.Add(nsh);

			foreach (var handler in _handlers)
			{
				var control = handler as Control;
				if (control != null)
					control.Dock = DockStyle.Fill;

				if (handler != nsh)
				{
					nsh.LabInfo.Text += @" - " + handler.Label + Environment.NewLine;
				}
			}

#if DEBUG
			PGrid.Visible = true;
#endif
		}