diff --git a/src/gui/project_view/projectwindow.cpp b/src/gui/project_view/projectwindow.cpp index 2a2fc312338512a1b87e1d941dcee3c5281e5eaa..f52b4535557ea368049e64e8d5bd7e809b6ace75 100644 --- a/src/gui/project_view/projectwindow.cpp +++ b/src/gui/project_view/projectwindow.cpp @@ -568,6 +568,7 @@ void ProjectWindow::setProjectSp(ProjectSp project_sp) { _project_sp = project_sp; ui->decoy_regexp_radiobutton->setChecked(true); + ui->decoy_regexp_groupbox->setVisible(true); ui->decoy_database_groupbox->setVisible(false); if (_project_sp.get()->getProteinStore().getDecoyFastaFileList().size() > 0) { ui->decoy_database_files_radiobutton->setChecked(true); diff --git a/src/gui/widgets/contaminant_widget/contaminantwidget.cpp b/src/gui/widgets/contaminant_widget/contaminantwidget.cpp index e316b142b3763fef42eca15a5ff7e7b44bf756f7..7c4f95820d4fe9cd498c4ac034e494112ba54aea 100644 --- a/src/gui/widgets/contaminant_widget/contaminantwidget.cpp +++ b/src/gui/widgets/contaminant_widget/contaminantwidget.cpp @@ -83,6 +83,7 @@ void ContaminantWidget::setFastaFileList(std::vector<FastaFileSp> fasta_file_lis void ContaminantWidget::getProjectContaminants(const Project * p_project) { ui->contaminant_regexp_radiobutton->setChecked(true); + ui->contaminant_protein_regexp_line_edit->setVisible(true); ui->contaminant_database_listview->setVisible(false); if (p_project->getProteinStore().getContaminantFastaFileList().size() > 0) { ui->contaminant_file_radiobutton->setChecked(true); diff --git a/src/utils/proteinstore.cpp b/src/utils/proteinstore.cpp index a08f89ed4bb019a000b7f4bbf15ef619382ed978..e7312b0b630d21b96c377a0984f44327bbb58fb3 100644 --- a/src/utils/proteinstore.cpp +++ b/src/utils/proteinstore.cpp @@ -128,24 +128,27 @@ ProteinXtpSp & ProteinStore::getInstance(ProteinXtpSp & peptide_in) { if (ret.second) { //the protein is new in the store, update content setProteinInformations(ret.first->second); + + if (ret.first->second.get()->getDbxrefList().size() == 0) { + ret.first->second.get()->parseAccession2dbxref(); + } } return (ret.first->second); } -void ProteinStore::setProteinInformations(ProteinXtpSp & peptide_in) { +void ProteinStore::setProteinInformations(ProteinXtpSp & protein_in) { //qDebug() << "ProteinStore::setProteinInformations begin" << peptide_in.get()->getSequence(); - peptide_in.get()->setIsContaminant(false); - peptide_in.get()->setIsDecoy(false); - QString accession = peptide_in.get()->getAccession(); - peptide_in.get()->parseAccession2dbxref(); + protein_in.get()->setIsContaminant(false); + protein_in.get()->setIsDecoy(false); + QString accession = protein_in.get()->getAccession(); if ((!_regexp_contaminant.isEmpty()) && (_regexp_contaminant.indexIn(accession, 0)>-1)) { //qDebug() << "ProteinStore::setProteinInformations is contaminant " << accession; - peptide_in.get()->setIsContaminant(true); + protein_in.get()->setIsContaminant(true); } if ((!_regexp_decoy.isEmpty()) && (_regexp_decoy.indexIn(accession, 0)>-1) ) { - peptide_in.get()->setIsDecoy(true); + protein_in.get()->setIsDecoy(true); } //qDebug() << "ProteinStore::setProteinInformations end"; }