ATMLCommonLibrary.forms.ATMLLibraryForm.ATMLLibraryForm C# (CSharp) Method

ATMLLibraryForm() public method

public ATMLLibraryForm ( Type classType ) : System
classType System.Type
return System
        public ATMLLibraryForm(Type classType)
        {
            InitializeComponent();
            HideOnClose = true;
            try
            {
                object control = Activator.CreateInstance(classType);
                _listControl = control as ATMLLibraryListControl;
                if (_listControl != null)
                {
                    Controls.Add(_listControl);
                    _listControl.Location = new Point(0, toolStrip.Bottom);
                    _listControl.Width = ClientSize.Width;
                    _listControl.Height = ClientSize.Height - toolStrip.Height;
                    _listControl.Anchor = AnchorStyles.Bottom | AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right;
                    var actionable = _listControl as IAtmlActionable;
                    if (actionable != null)
                        actionable.AtmlObjectAction += OnAtmlObjectAction;

                    Text = _listControl.ListName + @"s";
                    _listControl.InitializeForm += delegate(Form form)
                    {
                        var atmlForm = form as ATMLForm;
                        if (atmlForm != null) atmlForm.CloseOnSave = false;
                    };
                }
                var mnuContextMenu = new ContextMenu();
                TabPageContextMenu = mnuContextMenu;
                var mnuItemNew = new MenuItem();
                mnuItemNew.Text = @"Close";
                mnuItemNew.Click += mnuItemNew_Click;
                mnuContextMenu.MenuItems.Add(mnuItemNew);
                mnuItemNew.Tag = this;
            }
            catch (Exception e )
            {
                LogManager.Error( e, "Error creating instance for class type: {0}", classType );
            }
        }