void treeDataGridView_CellDoubleClick (object sender, TreeDataGridViewCellEventArgs e) { if (e.ColumnIndex < 0 || e.RowIndexHierarchy.Count > 1 || e.RowIndexHierarchy.First() < 0) return; var row = GetRowFromRowHierarchy(e.RowIndexHierarchy) as AnalysisRow; var newDataFilter = new DataFilter { FilterSource = this, Analysis = new List<Analysis> { row.Analysis } }; if (AnalysisViewFilter != null) AnalysisViewFilter(this, new ViewFilterEventArgs(newDataFilter)); }
void dataGridView_CellEndEdit (object sender, TreeDataGridViewCellEventArgs e) { var row = dataGridView[e.ColumnIndex, e.RowIndexHierarchy].OwningRow; var importSettingsRow = rows[e.RowIndexHierarchy[0]]; var analysis = importSettingsRow.Analysis; if (e.ColumnIndex == analysisNameColumn.Index) { if (String.IsNullOrEmpty((string) row.Cells[analysisNameColumn.Index].Value)) row.Cells[analysisNameColumn.Index].Value = analysis.name = importSettingsRow.OriginalAnalysisName; } else if (e.ColumnIndex == databaseColumn.Index) { analysis.importSettings.proteinDatabaseFilepath = (string) row.Cells[databaseColumn.Index].Value; row.Cells[databaseColumn.Index].Style.BackColor = File.Exists((string) row.Cells[databaseColumn.Index].Value) ? SystemColors.Window : Color.LightSalmon; // also set all databases equal to the uneditedValue string originalFilename = Path.GetFileName(uneditedValue) ?? uneditedValue; foreach (var importSettingsRow2 in rows) { if (importSettingsRow == importSettingsRow2) continue; string rowFilename = importSettingsRow2.ImportSettings.proteinDatabaseFilepath; rowFilename = Path.GetFileName(rowFilename) ?? rowFilename; if (rowFilename == originalFilename) importSettingsRow2.ImportSettings.proteinDatabaseFilepath = importSettingsRow.ImportSettings.proteinDatabaseFilepath; } } else if (e.ColumnIndex == decoyPrefixColumn.Index) { analysis.importSettings.qonverterSettings.DecoyPrefix = (string) row.Cells[decoyPrefixColumn.Index].Value; importSettingsRow.DecoyPrefix = (string)row.Cells[decoyPrefixColumn.Index].Value; } else if (e.ColumnIndex == maxRankColumn.Index && !Int32.TryParse(row.Cells[maxRankColumn.Index].Value.ToString(), out analysis.importSettings.maxResultRank) || analysis.importSettings.maxResultRank < 1) row.Cells[maxRankColumn.Index].Value = analysis.importSettings.maxResultRank = Convert.ToInt32(uneditedValue); else if (e.ColumnIndex == maxFDRColumn.Index && !Double.TryParse(row.Cells[maxFDRColumn.Index].Value.ToString(), out analysis.importSettings.maxQValue) || analysis.importSettings.maxQValue < 0 || analysis.importSettings.maxQValue > 1) row.Cells[maxFDRColumn.Index].Value = analysis.importSettings.maxQValue = Convert.ToDouble(uneditedValue); else if (e.ColumnIndex == qonverterSettingsColumn.Index) { analysis.importSettings.qonverterSettings = qonverterSettingsByName[(string) row.Cells[qonverterSettingsColumn.Index].Value].ToQonverterSettings(); analysis.importSettings.qonverterSettings.DecoyPrefix = (string) row.Cells[decoyPrefixColumn.Index].Value; importSettingsRow.DecoyPrefix = (string)row.Cells[decoyPrefixColumn.Index].Value; } else if (e.ColumnIndex == ignoreUnmappedPeptidesColumn.Index) analysis.importSettings.ignoreUnmappedPeptides = (bool) row.Cells[ignoreUnmappedPeptidesColumn.Index].Value; }
void dataGridView_CellEndEdit(object sender, TreeDataGridViewCellEventArgs e) { var row = dataGridView[e.ColumnIndex, e.RowIndexHierarchy].OwningRow; var importSettingsRow = rows[e.RowIndexHierarchy[0]]; var analysis = importSettingsRow.Analysis; if (e.ColumnIndex == analysisNameColumn.Index) { if (String.IsNullOrEmpty((string)row.Cells[analysisNameColumn.Index].Value)) { row.Cells[analysisNameColumn.Index].Value = analysis.name = importSettingsRow.OriginalAnalysisName; } } else if (e.ColumnIndex == databaseColumn.Index) { analysis.importSettings.proteinDatabaseFilepath = (string)row.Cells[databaseColumn.Index].Value; row.Cells[databaseColumn.Index].Style.BackColor = File.Exists((string)row.Cells[databaseColumn.Index].Value) ? SystemColors.Window : Color.LightSalmon; // also set all databases equal to the uneditedValue string originalFilename = Path.GetFileName(uneditedValue) ?? uneditedValue; foreach (var importSettingsRow2 in rows) { if (importSettingsRow == importSettingsRow2) { continue; } string rowFilename = importSettingsRow2.ImportSettings.proteinDatabaseFilepath; rowFilename = Path.GetFileName(rowFilename) ?? rowFilename; if (rowFilename == originalFilename) { importSettingsRow2.ImportSettings.proteinDatabaseFilepath = importSettingsRow.ImportSettings.proteinDatabaseFilepath; } } } else if (e.ColumnIndex == decoyPrefixColumn.Index) { analysis.importSettings.qonverterSettings.DecoyPrefix = (string)row.Cells[decoyPrefixColumn.Index].Value; importSettingsRow.DecoyPrefix = (string)row.Cells[decoyPrefixColumn.Index].Value; } else if (e.ColumnIndex == maxRankColumn.Index && !Int32.TryParse(row.Cells[maxRankColumn.Index].Value.ToString(), out analysis.importSettings.maxResultRank) || analysis.importSettings.maxResultRank < 1) { row.Cells[maxRankColumn.Index].Value = analysis.importSettings.maxResultRank = Convert.ToInt32(uneditedValue); } else if (e.ColumnIndex == maxFDRColumn.Index && !Double.TryParse(row.Cells[maxFDRColumn.Index].Value.ToString(), out analysis.importSettings.maxQValue) || analysis.importSettings.maxQValue < 0 || analysis.importSettings.maxQValue > 1) { row.Cells[maxFDRColumn.Index].Value = analysis.importSettings.maxQValue = Convert.ToDouble(uneditedValue); } else if (e.ColumnIndex == qonverterSettingsColumn.Index) { analysis.importSettings.qonverterSettings = qonverterSettingsByName[(string)row.Cells[qonverterSettingsColumn.Index].Value].ToQonverterSettings(); analysis.importSettings.qonverterSettings.DecoyPrefix = (string)row.Cells[decoyPrefixColumn.Index].Value; importSettingsRow.DecoyPrefix = (string)row.Cells[decoyPrefixColumn.Index].Value; } else if (e.ColumnIndex == ignoreUnmappedPeptidesColumn.Index) { analysis.importSettings.ignoreUnmappedPeptides = (bool)row.Cells[ignoreUnmappedPeptidesColumn.Index].Value; } }
void treeDataGridView_CellDoubleClick (object sender, TreeDataGridViewCellEventArgs e) { if (e.ColumnIndex < 0 || e.RowIndexHierarchy.First() < 0) return; Row row = GetRowFromRowHierarchy(e.RowIndexHierarchy); var newDataFilter = new DataFilter() { FilterSource = this }; if (row is SpectrumSourceGroupRow) newDataFilter.SpectrumSourceGroup = new List<SpectrumSourceGroup>() { (row as SpectrumSourceGroupRow).SpectrumSourceGroup }; else if (row is SpectrumSourceRow) newDataFilter.SpectrumSource = new List<SpectrumSource>() { (row as SpectrumSourceRow).SpectrumSource }; else if (row is SpectrumRow) newDataFilter.Spectrum = new List<Spectrum>() { (row as SpectrumRow).Spectrum }; else if (row is AnalysisRow) newDataFilter.Analysis = new List<Analysis>() { (row as AnalysisRow).Analysis }; else if (row is PeptideRow) newDataFilter.Peptide = new List<Peptide>() { (row as PeptideRow).Peptide }; else if (row is ChargeRow) newDataFilter.Charge = new List<int>() { (row as ChargeRow).Charge }; else if (row is PeptideSpectrumMatchRow) { if (SpectrumViewVisualize != null) SpectrumViewVisualize(this, new SpectrumViewVisualizeEventArgs(session, row as PeptideSpectrumMatchRow)); return; } if (SpectrumViewFilter != null) SpectrumViewFilter(this, new ViewFilterEventArgs(newDataFilter)); }