Exemplo n.º 1
0
        private void btnOK_Click(object sender, System.EventArgs e)
        {
            if (currentProject != null)
            {
                if (!string.IsNullOrEmpty(content.Trim()))
                {
                    this.Hide();

                    if (isProjectBased)
                    {
                        currentPgm = new ProjectBasedPgm(currentProject, cmbPrograms.Text);
                    }
                    else
                    {
                        currentPgm = new FileBasedPgm(currentProject, this.txtProject.Text);
                    }

                    if (this.pgmDialogMode == PgmDialogMode.SaveProgram || this.pgmDialogMode == PgmDialogMode.SaveProgramAs)
                    {
                        this.cmbPrograms.SelectedIndexChanged -= new System.EventHandler(this.cmbPrograms_SelectedIndexChanged);
                        string today = DateTime.Now.ToShortDateString();

                        if (programRow == null)
                        {
                            programRow = this.CreateProgramRow(currentProject);
                        }
                        programRow[ColumnNames.PGM_CONTENT] = content;
                        programRow[ColumnNames.PGM_AUTHOR]  = txtAuthor.Text.ToString();
                        programRow[ColumnNames.PGM_COMMENT] = txtComment.Text.ToString();
                        programRow[ColumnNames.PGM_NAME]    = cmbPrograms.Text.ToString();
                        string   createDate = txtDateCreated.Text.ToString();
                        DateTime tryDateTime;
                        if (DateTime.TryParse(createDate, out tryDateTime) == false)
                        {
                            createDate = DateTime.Now.ToString();
                        }
                        programRow[ColumnNames.PGM_CREATE_DATE] = createDate;
                        programRow[ColumnNames.PGM_MODIFY_DATE] = DateTime.Now.ToString();
                        cmbPrograms.Enabled = true;
                        currentPgm.PgmSave(programRow);
                        this.cmbPrograms.Refresh();
                        this.cmbPrograms.SelectedIndexChanged += new System.EventHandler(this.cmbPrograms_SelectedIndexChanged);
                    }
                    else
                    {
                        if (programRow == null)
                        {
                            //programRow = currentPgm.PgmLoad(this.txtProject.Text);
                        }
                    }
                }
                else
                {
                    // DEFECT: 231
                    if (this.pgmDialogMode == PgmDialogMode.SaveProgram || this.pgmDialogMode == PgmDialogMode.SaveProgramAs)
                    {
                        MsgBox.ShowWarning(SharedStrings.WARNING_CANNOT_SAVE_BLANK_PGM);
                    }
                    else
                    {
                        MsgBox.ShowWarning(SharedStrings.WARNING_CANNOT_OPEN_PROGRAM);
                    }
                    DialogResult = DialogResult.OK;
                }
            }
            else
            {
                if (string.IsNullOrEmpty(txtComment.Text))
                {
                    DialogResult = DialogResult.None;
                }
                else
                {
                    if (this.pgmDialogMode == PgmDialogMode.SaveProgram || this.pgmDialogMode == PgmDialogMode.SaveProgramAs)
                    {
                        Epi.Analysis.FileBasedPgm.PgmSave(this.ProgramName.ToString(), txtComment.Text.ToString());
                    }
                }

                if (!isProjectBased)
                {
                    DialogResult = DialogResult.OK;
                }
                else
                {
                    DialogResult = DialogResult.None;
                }
            }
        }