public FormMain()
        {
            InitializeComponent();

              if ( Settings.Default.Recent == null )
            Settings.Default.Recent = new System.Collections.Specialized.StringCollection();

              SetStyle( ControlStyles.OptimizedDoubleBuffer, true );
              m_itemLog.Checked = Settings.Default.LogVisible;
              BuildRecentMenu();

              Application.DoEvents();

              LoadActionLibraries();

              m_dialogSaveProject = new SaveFileDialog() {
            Title = "Save project as",
            Filter = "GMK Assembler project (*.gmkasm)|*.gmkasm|All files|*",
            DefaultExt = ".gmkasm"
              };

              m_dialogOpenProject = new OpenFileDialog() {
            Title = "Open project",
            Filter = m_dialogSaveProject.Filter,
            DefaultExt = m_dialogSaveProject.DefaultExt
              };

              m_project = new ProjectManager();
              m_project.ProjectStateChanged += Project_ProjectStateChanged;
              m_project.NameChanged += Project_NameChanged;
              m_project.ProjectOpened += Project_Opened;
              m_project.ProjectClosed += Project_Closed;
              m_project.ProjectSaved += Project_Saved;
              m_project.GameFilePathChanged += Project_GameProjectPathChanged;
        }
        public FormSettings( ProjectManager aProject )
        {
            InitializeComponent();
              m_project = aProject;

              m_errorProvider.SetIconAlignment( m_editProjectName, ErrorIconAlignment.MiddleLeft );
              m_errorProvider.SetIconAlignment( m_editDirectory, ErrorIconAlignment.MiddleLeft );
        }