Skip to content
Snippets Groups Projects
Commit d4954213 authored by Renne Thomas's avatar Renne Thomas
Browse files

Complete xtandem view and add no engine view

parent c497f4d6
No related branches found
No related tags found
No related merge requests found
Showing with 596 additions and 81 deletions
......@@ -207,6 +207,7 @@ SET(XTPCPP_SRCS
./gui/waiting_message_dialog/waitingmessagedialog.cpp
./gui/widgets/automatic_filter_widget/automaticfilterwidget.cpp
./gui/widgets/engines_view/xtandemparamwidget.cpp
./gui/widgets/engines_view/noengineparamwidget.cpp
./gui/widgets/contaminant_widget/contaminantwidget.cpp
./gui/widgets/decoy_widget/decoywidget.cpp
./gui/widgets/xic_extraction_method_widget/xicextractionmethodwidget.cpp
......@@ -245,6 +246,7 @@ SET (GUI_UIS
./gui/waiting_message_dialog/waiting_message_dialog.ui
./gui/widgets/automatic_filter_widget/automatic_filter_widget.ui
./gui/widgets/engines_view/xtandem_view_widget.ui
./gui/widgets/engines_view/no_engine_view_widget.ui
./gui/widgets/contaminant_widget/contaminant_widget.ui
./gui/widgets/decoy_widget/decoy_widget.ui
./gui/xic_view/xic_box/xic_box.ui
......
......@@ -20,63 +20,56 @@
<property name="contextMenuPolicy">
<enum>Qt::CustomContextMenu</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="labelEngineName">
<property name="text">
<string>Engine name</string>
</property>
</widget>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QLabel" name="labelEngineName">
<property name="text">
<string>Engine name</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="labelEngineVersion">
<property name="text">
<string>Engine Version</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QLabel" name="labelEngineVersion">
<property name="text">
<string>Engine Version</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="XtandemParamWidget" name="xtandem_view_widget" native="true"/>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="closeButton">
<property name="text">
<string>Close</string>
</property>
</widget>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="closeButton">
<property name="text">
<string>Close</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
<customwidgets>
<customwidget>
<class>XtandemParamWidget</class>
<extends>QWidget</extends>
<header>gui/widgets/engines_view/xtandemparamwidget.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections>
<connection>
......
......@@ -24,7 +24,8 @@
#include "ui_engine_detail_view.h"
#include "enginedetailwindow.h"
#include "gui/widgets/engines_view/xtandemparamwidget.h"
#include "gui/widgets/engines_view/noengineparamwidget.h"
#include "../../../mainwindow.h"
#include <QSettings>
......@@ -53,11 +54,33 @@ EngineDetailWindow::setIdentificationEngineParam(
void
EngineDetailWindow::updateDisplay()
{
QString params_file = m_identificationEngine->get()->getResourceName();
ui->labelEngineName->setText(
m_identificationEngine->get()->getIdentificationEngineName());
ui->labelEngineVersion->setText(
m_identificationEngine->get()->getIdentificationEngineVersion());
m_params_file = m_identificationEngine->get()->getResourceName();
ui->xtandem_view_widget->setAutomaticXTandemParameters(m_params_file);
TandemParametersFile param_file(params_file);
if(param_file.exists())
{
TandemParameters xtandem_parameters = param_file.getTandemParameters();
if(m_identificationEngine->get()->getIdentificationEngineName() ==
"X!Tandem")
{
XtandemParamWidget *xtandem_view_widget;
xtandem_view_widget = new XtandemParamWidget(this);
ui->verticalLayout->insertWidget(1, xtandem_view_widget);
xtandem_view_widget->setAutomaticXTandemParameters(
xtandem_parameters);
}
}
else
{
NoEngineParamWidget *no_engine_view_widget;
no_engine_view_widget = new NoEngineParamWidget(this, params_file);
ui->verticalLayout->insertWidget(1, no_engine_view_widget);
}
}
......@@ -55,6 +55,5 @@ class EngineDetailWindow : public QMainWindow
private:
Ui::EngineDetailView *ui;
ProjectWindow *m_project_window;
QString m_params_file;
IdentificationDataSourceSp *m_identificationEngine = nullptr;
};
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>NoEngineParamWidget</class>
<widget class="QWidget" name="NoEngineParamWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>605</width>
<height>740</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>16</pointsize>
</font>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout_7">
<item row="0" column="0">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>label</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>
/*******************************************************************************
* Copyright (c) 2017 Olivier Langella <olivier.langella@u-psud.fr>.
*
* This file is part of XTPcpp.
*
* XTPcpp is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* XTPcpp is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with XTPcpp. If not, see <http://www.gnu.org/licenses/>.
*
* Contributors:
* Olivier Langella <olivier.langella@u-psud.fr> - initial API and
*implementation
******************************************************************************/
#include "noengineparamwidget.h"
#include "../../project_view/projectwindow.h"
#include "ui_no_engine_view_widget.h"
#include <QDebug>
NoEngineParamWidget::NoEngineParamWidget(QWidget *parent, QString file_name)
: QWidget(parent), ui(new Ui::NoEngineParamWidget)
{
qDebug() << "begin";
ui->setupUi(this);
QString message =
file_name + "\nwasn't found !!\n Please check if the file exist";
ui->label->setText(message);
qDebug() << "end";
}
NoEngineParamWidget::~NoEngineParamWidget()
{
qDebug() << "NoEngineParamWidget::~NoEngineParamWidget";
delete ui;
qDebug() << "end";
}
/*******************************************************************************
* Copyright (c) 2017 Olivier Langella <olivier.langella@u-psud.fr>.
*
* This file is part of XTPcpp.
*
* XTPcpp is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* XTPcpp is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with XTPcpp. If not, see <http://www.gnu.org/licenses/>.
*
* Contributors:
* Olivier Langella <olivier.langella@u-psud.fr> - initial API and
*implementation
******************************************************************************/
#pragma once
#include <QWidget>
namespace Ui
{
class NoEngineParamWidget;
}
class NoEngineParamWidget : public QWidget
{
Q_OBJECT
public:
explicit NoEngineParamWidget(QWidget *parent, QString file_name);
~NoEngineParamWidget();
Ui::NoEngineParamWidget *ui;
};
This diff is collapsed.
......@@ -47,13 +47,10 @@ XtandemParamWidget::~XtandemParamWidget()
}
void
XtandemParamWidget::setAutomaticXTandemParameters(QString params_file)
XtandemParamWidget::setAutomaticXTandemParameters(
TandemParameters xtandem_parameters)
{
qDebug() << "begin ";
// TandemParametersFile param_file(params_file);
TandemParametersFile param_file("/home/trenne/test_tandem.xml");
TandemParameters xtandem_parameters = param_file.getTandemParameters();
setSpectrumParameters(xtandem_parameters);
setProteinParameters(xtandem_parameters);
setResidueParameters(xtandem_parameters);
......@@ -67,11 +64,77 @@ XtandemParamWidget::setAutomaticXTandemParameters(QString params_file)
void
XtandemParamWidget::setSpectrumParameters(TandemParameters xtandem_parameters)
{
ui->parenttIonMHMassToleranceWindowUnitLineEdit->setText(
xtandem_parameters.getValue(
"spectrum, parent monoisotopic mass error units"));
ui->parentIonMHMassToleranceLowerWindowLineEdit->setText(
xtandem_parameters.getValue(
"spectrum, parent monoisotopic mass error minus"));
ui->parentIonMHMassToleranceUpperWindowLineEdit->setText(
xtandem_parameters.getValue(
"spectrum, parent monoisotopic mass error plus"));
ui->anticipateCarbonIsotopeParentIonAssignmentsErrorsLineEdit->setText(
xtandem_parameters.getValue(
"spectrum, parent monoisotopic mass isotope error"));
ui->setTheMaximumPrecursorChargeToBeScoredLineEdit->setText(
xtandem_parameters.getValue("spectrum, maximum parent charge"));
ui->useChemicalAverageOrMonoisotopicMassForFragmentIonsLineEdit->setText(
xtandem_parameters.getValue("spectrum, fragment mass type"));
ui->unitsForFragmentIonMassToleranceMonoisotopicLineEdit->setText(
xtandem_parameters.getValue(
"spectrum, fragment monoisotopic mass error units"));
ui->fragmentIonMassToleranceMonoisotopicLineEdit->setText(
xtandem_parameters.getValue(
"spectrum, parent monoisotopic mass error minus"));
ui->controlTheUseOfTheNeutralLossWindowLineEdit->setText(
xtandem_parameters.getValue("spectrum, use neutral loss window"));
ui->neutralLossMassLineEdit->setText(
xtandem_parameters.getValue("spectrum, neutral loss mass"));
ui->neutralLossWindowDaltonsLineEdit->setText(
xtandem_parameters.getValue("spectrum, neutral loss window"));
ui->setTheDynamicRangeToScoreSpectraLineEdit->setText(
xtandem_parameters.getValue("spectrum, dynamic range"));
ui->maximumNumberOfPeaksToUseInASpectrumLineEdit->setText(
xtandem_parameters.getValue("spectrum, total peaks"));
ui->minimumNumberOfPeaksForASpectrumToBeConsideredLineEdit->setText(
xtandem_parameters.getValue("spectrum, minimum peaks"));
ui->minimumMZFragmentToBeConsideredLineEdit->setText(
xtandem_parameters.getValue("spectrum, minimum fragment mz"));
ui->minimumParentMHToBeConsideredLineEdit->setText(
xtandem_parameters.getValue("spectrum, minimum parent m+h"));
ui->alterHowProteinSequencesAreRetrievedFromFASTAFilesLineEdit->setText(
xtandem_parameters.getValue("spectrum, sequence batch size"));
ui->useContrastAngleLineEdit->setText(
xtandem_parameters.getValue("spectrum, use contrast angle"));
ui->setNumberOfThreadsLineEdit->setText(
xtandem_parameters.getValue("spectrum, threads"));
}
void
XtandemParamWidget::setProteinParameters(TandemParameters xtandem_parameters)
{
ui->defineProteinCleavageSiteLineEdit->setText(
xtandem_parameters.getValue("protein, cleavage site"));
ui->useSemiEnzymaticCleavageRulesLineEdit->setText(
xtandem_parameters.getValue("protein, cleavage semi"));
ui->moietyAddedToPeptideCTerminusByCleavageLineEdit->setText(
xtandem_parameters.getValue("protein, cleavage C-terminal mass change"));
ui->moietyAddedToPeptideNTerminusByCleavageLineEdit->setText(
xtandem_parameters.getValue("protein, cleavage N-terminal mass change"));
ui->moietyAddedToProteinCTerminusLineEdit->setText(
xtandem_parameters.getValue(
"protein, C-terminal residue modification mass"));
ui->moietyAddedToProteinNTerminusLineEdit->setText(
xtandem_parameters.getValue(
"protein, N-terminal residue modification mass"));
ui->proteinNTerminusCommonModificationsLineEdit->setText(
xtandem_parameters.getValue("protein, quick acetyl"));
ui->proteinNTerminusCyclisationLineEdit->setText(
xtandem_parameters.getValue("protein, quick pyrolidone"));
ui->interpretationOfPeptidePhosphorylationModelLineEdit->setText(
xtandem_parameters.getValue("protein, stP bias"));
ui->modifyTheResidueMassesOfOneAllAminoAcidsLineEdit->setText(
xtandem_parameters.getValue("protein, modified residue mass file"));
}
void
......@@ -93,6 +156,20 @@ XtandemParamWidget::setResidueParameters(TandemParameters xtandem_parameters)
void
XtandemParamWidget::setScoringParameters(TandemParameters xtandem_parameters)
{
ui->minimumNumberOfIonsToScoreAPeptideLineEdit->setText(
xtandem_parameters.getValue("scoring, minimum ion count"));
ui->maximumMissedCleavageSitesLineEdit->setText(
xtandem_parameters.getValue("scoring, maximum missed cleavage sites"));
ui->compensateForVerySmallSequenceListFileLineEdit->setText(
xtandem_parameters.getValue("scoring, cyclic permutation"));
ui->automaticallyPerformReverseDatabaseSearchLineEdit->setText(
xtandem_parameters.getValue("scoring, include reverse"));
ui->useYIonsLineEdit->setText(xtandem_parameters.getValue("scoring, y ions"));
ui->useBIonsLineEdit->setText(xtandem_parameters.getValue("scoring, b ions"));
ui->useCIonsLineEdit->setText(xtandem_parameters.getValue("scoring, c ions"));
ui->useZIonsLineEdit->setText(xtandem_parameters.getValue("scoring, z ions"));
ui->useAIonsLineEdit->setText(xtandem_parameters.getValue("scoring, a ions"));
ui->useXIonsLineEdit->setText(xtandem_parameters.getValue("scoring, x ions"));
}
void
......@@ -145,4 +222,31 @@ XtandemParamWidget::setRefineParameters(TandemParameters xtandem_parameters)
void
XtandemParamWidget::setOutputParameters(TandemParameters xtandem_parameters)
{
ui->highestEValueToRecordPeptidesLineEdit->setText(
xtandem_parameters.getValue("output, maximum valid expectation value"));
ui->highestEValueToRecordProteinsLineEdit->setText(
xtandem_parameters.getValue(
"output, maximum valid protein expectation value"));
ui->resultsTypeLineEdit->setText(
xtandem_parameters.getValue("output, results"));
ui->sortResultsByLineEdit->setText(
xtandem_parameters.getValue("output, sort results by"));
ui->writeProteinsLineEdit->setText(
xtandem_parameters.getValue("output, proteins"));
ui->writeProteinSequencesLineEdit->setText(
xtandem_parameters.getValue("output, sequences"));
ui->writeOnlyFirstProteinSequenceLineEdit->setText(
xtandem_parameters.getValue("output, one sequence copy"));
ui->writeSpectrumInformationsLineEdit->setText(
xtandem_parameters.getValue("output, spectra"));
ui->writeParametersLineEdit->setText(
xtandem_parameters.getValue("output, parameters"));
ui->writeHistogramsLineEdit->setText(
xtandem_parameters.getValue("output, histograms"));
ui->histogramColumnWidthLineEdit->setText(
xtandem_parameters.getValue("output, histogram column width"));
ui->hashFilenameWithDateAndTimeStampLineEdit->setText(
xtandem_parameters.getValue("output, path hashing"));
ui->xSLTStyleSheetPathToViewXMLResultsLineEdit->setText(
xtandem_parameters.getValue("output, xsl path"));
}
......@@ -41,7 +41,7 @@ class XtandemParamWidget : public QWidget
explicit XtandemParamWidget(QWidget *parent);
~XtandemParamWidget();
void setAutomaticXTandemParameters(QString params_file);
void setAutomaticXTandemParameters(TandemParameters xtandem_parameters);
private slots:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment