Skip to content
Snippets Groups Projects
Commit ff2bd115 authored by Langella Olivier's avatar Langella Olivier
Browse files

replacing identifications tabs with combo box

parent fc510053
No related branches found
No related tags found
No related merge requests found
...@@ -141,6 +141,9 @@ const QVariant IdentificationDataSource::getIdentificationEngineStatistics(Ident ...@@ -141,6 +141,9 @@ const QVariant IdentificationDataSource::getIdentificationEngineStatistics(Ident
} }
pappso::SpectrumSp IdentificationDataSource::getSpectrumSp(unsigned int scan_number) const { pappso::SpectrumSp IdentificationDataSource::getSpectrumSp(unsigned int scan_number) const {
if (_ms_run_sp.get()->getMzFormat() == MzFormat::MGF) {
scan_number = scan_number-1;
}
pappso::SpectrumSp spectrum_sp = SpectrumStore::getSpectrumSpFromMsRunSp(_ms_run_sp, scan_number); pappso::SpectrumSp spectrum_sp = SpectrumStore::getSpectrumSpFromMsRunSp(_ms_run_sp, scan_number);
return spectrum_sp; return spectrum_sp;
} }
......
...@@ -291,7 +291,7 @@ void IdentificationGroup::startPtmGrouping () { ...@@ -291,7 +291,7 @@ void IdentificationGroup::startPtmGrouping () {
} }
const QString IdentificationGroup::getTabName() const { const QString IdentificationGroup::getTabName() const {
return _ms_run_list[0]->getFilename(); return _ms_run_list[0]->getSampleName();
} }
......
...@@ -25,22 +25,13 @@ ...@@ -25,22 +25,13 @@
#include "ui_identification_group_widget.h" #include "ui_identification_group_widget.h"
#include <QDebug> #include <QDebug>
IdentificationGroupWidget::IdentificationGroupWidget(ProjectWindow * parent, IdentificationGroup* p_identification_group): IdentificationGroupWidget::IdentificationGroupWidget(QWidget * parent):
QWidget(parent), QWidget(parent),
ui(new Ui::IdentificationGroupWidget) ui(new Ui::IdentificationGroupWidget)
{ {
qDebug() << "IdentificationGroupWidget::IdentificationGroupWidget begin";
_p_project_window = parent;
_p_identification_group = p_identification_group;
ui->setupUi(this);
#if QT_VERSION >= 0x050000
// Qt5 code
connect (_p_project_window, &ProjectWindow::identificationGroupGrouped, this,&IdentificationGroupWidget::doIdentificationGroupGrouped);
#else
// Qt4 code
connect (_p_project_window, SIGNAL(identificationGroupGrouped(IdentificationGroup *)), this,SLOT(doIdentificationGroupGrouped(IdentificationGroup *))); ui->setupUi(this);
#endif qDebug() << "IdentificationGroupWidget::IdentificationGroupWidget begin";
qDebug() << "IdentificationGroupWidget::IdentificationGroupWidget end"; qDebug() << "IdentificationGroupWidget::IdentificationGroupWidget end";
} }
...@@ -52,6 +43,20 @@ IdentificationGroupWidget::~IdentificationGroupWidget() ...@@ -52,6 +43,20 @@ IdentificationGroupWidget::~IdentificationGroupWidget()
qDebug() << "IdentificationGroupWidget::~IdentificationGroupWidget end"; qDebug() << "IdentificationGroupWidget::~IdentificationGroupWidget end";
} }
void IdentificationGroupWidget::setIdentificationGroup(ProjectWindow * parent, IdentificationGroup* p_identification_group) {
_p_identification_group = p_identification_group;
_p_project_window = parent;
#if QT_VERSION >= 0x050000
// Qt5 code
connect (_p_project_window, &ProjectWindow::identificationGroupGrouped, this,&IdentificationGroupWidget::doIdentificationGroupGrouped);
#else
// Qt4 code
connect (_p_project_window, SIGNAL(identificationGroupGrouped(IdentificationGroup *)), this,SLOT(doIdentificationGroupGrouped(IdentificationGroup *)));
#endif
}
void IdentificationGroupWidget::doViewPtmIslandList() { void IdentificationGroupWidget::doViewPtmIslandList() {
qDebug() << "IdentificationGroupWidget::doViewPtmIslandList begin " << _p_identification_group; qDebug() << "IdentificationGroupWidget::doViewPtmIslandList begin " << _p_identification_group;
_p_project_window->doViewPtmIslandList(_p_identification_group); _p_project_window->doViewPtmIslandList(_p_identification_group);
...@@ -66,6 +71,7 @@ void IdentificationGroupWidget::doViewProteinList() { ...@@ -66,6 +71,7 @@ void IdentificationGroupWidget::doViewProteinList() {
} }
void IdentificationGroupWidget::doIdentificationGroupGrouped(IdentificationGroup * p_identification_group) { void IdentificationGroupWidget::doIdentificationGroupGrouped(IdentificationGroup * p_identification_group) {
qDebug() << "IdentificationGroupWidget::doIdentificationGroupGrouped begin " << _p_identification_group << " " << p_identification_group;
if (_p_identification_group == p_identification_group) { if (_p_identification_group == p_identification_group) {
vector< MsRunSp > ms_run_list = _p_identification_group->getMsRunSpList(); vector< MsRunSp > ms_run_list = _p_identification_group->getMsRunSpList();
ui->sample_number_display->setText(QString("%1").arg(ms_run_list.size())); ui->sample_number_display->setText(QString("%1").arg(ms_run_list.size()));
...@@ -76,4 +82,5 @@ void IdentificationGroupWidget::doIdentificationGroupGrouped(IdentificationGroup ...@@ -76,4 +82,5 @@ void IdentificationGroupWidget::doIdentificationGroupGrouped(IdentificationGroup
ui->grouped_peptide_display->setText(QString("%1").arg(_p_identification_group->countPeptideMass(ValidationState::grouped))); ui->grouped_peptide_display->setText(QString("%1").arg(_p_identification_group->countPeptideMass(ValidationState::grouped)));
_p_identification_group->countPeptideMatch(ValidationState::grouped); _p_identification_group->countPeptideMatch(ValidationState::grouped);
} }
qDebug() << "IdentificationGroupWidget::doIdentificationGroupGrouped end " << _p_identification_group;
} }
...@@ -37,8 +37,11 @@ class IdentificationGroupWidget : public QWidget ...@@ -37,8 +37,11 @@ class IdentificationGroupWidget : public QWidget
public: public:
explicit IdentificationGroupWidget(ProjectWindow * parent, IdentificationGroup* p_identification_group); explicit IdentificationGroupWidget(QWidget * parent);
~IdentificationGroupWidget(); ~IdentificationGroupWidget();
public:
void setIdentificationGroup(ProjectWindow * parent, IdentificationGroup* p_identification_group);
public slots: public slots:
void doViewProteinList(); void doViewProteinList();
...@@ -52,4 +55,5 @@ private: ...@@ -52,4 +55,5 @@ private:
IdentificationGroup* _p_identification_group; IdentificationGroup* _p_identification_group;
}; };
Q_DECLARE_METATYPE(IdentificationGroupWidget *)
#endif // IDENTIFICATIONGROUPWIDGET_H #endif // IDENTIFICATIONGROUPWIDGET_H
...@@ -32,7 +32,10 @@ ...@@ -32,7 +32,10 @@
</attribute> </attribute>
<layout class="QGridLayout" name="gridLayout"> <layout class="QGridLayout" name="gridLayout">
<item row="0" column="0"> <item row="0" column="0">
<layout class="QGridLayout" name="identifications_layout"/> <widget class="QComboBox" name="identifications_combobox"/>
</item>
<item row="1" column="0">
<widget class="QWidget" name="identifications_widget" native="true"/>
</item> </item>
</layout> </layout>
</widget> </widget>
......
...@@ -87,6 +87,8 @@ ProjectWindow::ProjectWindow(MainWindow *parent): ...@@ -87,6 +87,8 @@ ProjectWindow::ProjectWindow(MainWindow *parent):
p_graph->setLineStyle(QCPGraph::LineStyle::lsStepCenter); p_graph->setLineStyle(QCPGraph::LineStyle::lsStepCenter);
//p_graph->setScatterStyle(QCPScatterStyle(QCPScatterStyle::ssDisc, 2.0)); //p_graph->setScatterStyle(QCPScatterStyle(QCPScatterStyle::ssDisc, 2.0));
QVBoxLayout * p_layout = new QVBoxLayout();
ui->identifications_widget->setLayout(p_layout);
#if QT_VERSION >= 0x050000 #if QT_VERSION >= 0x050000
// Qt5 code // Qt5 code
...@@ -638,25 +640,42 @@ void ProjectWindow::setProjectSp(ProjectSp project_sp) { ...@@ -638,25 +640,42 @@ void ProjectWindow::setProjectSp(ProjectSp project_sp) {
doViewProteinList(identification_list[0]); doViewProteinList(identification_list[0]);
//qDeleteAll(ui->identifications_widget->children());
QLayoutItem *wItem;
while (wItem = ui->identifications_widget->layout()->takeAt(0))
delete wItem;
qDebug() << " ProjectWindow::setProjectSp size=" << identification_list.size(); qDebug() << " ProjectWindow::setProjectSp size=" << identification_list.size();
if (identification_list.size() == 1) { if (identification_list.size() == 1) {
ui->identifications_combobox->setVisible(false);
IdentificationGroupWidget * p_identification_widget = new IdentificationGroupWidget(this);
p_identification_widget->setIdentificationGroup(this, identification_list[0]);
IdentificationGroupWidget * identification_widget = new IdentificationGroupWidget(this,identification_list[0]); ui->identifications_widget->layout()->addWidget(p_identification_widget);
ui->identifications_layout->addWidget(identification_widget);
_p_identification_widget = identification_widget;
refreshGroup(identification_list[0]); refreshGroup(identification_list[0]);
} }
else { else {
QTabWidget * p_tabwidget = new QTabWidget(); ui->identifications_combobox->clear();
_p_identification_widget = p_tabwidget; ui->identifications_combobox->setVisible(true);
ui->identifications_layout->addWidget(p_tabwidget);
for (IdentificationGroup * identification_group : identification_list) { for (IdentificationGroup * identification_group : identification_list) {
IdentificationGroupWidget * identification_widget = new IdentificationGroupWidget(this,identification_group); IdentificationGroupWidget * p_identification_widget = new IdentificationGroupWidget(this);
p_tabwidget->addTab(identification_widget, identification_group->getTabName()); p_identification_widget->setVisible(false);
ui->identifications_combobox->addItem(identification_group->getTabName(), QVariant::fromValue(p_identification_widget));
p_identification_widget->setIdentificationGroup(this, identification_group);
ui->identifications_widget->layout()->addWidget(p_identification_widget);
refreshGroup(identification_group); refreshGroup(identification_group);
} }
ui->identifications_combobox->setCurrentIndex(0);
qobject_cast<IdentificationGroupWidget*>(qvariant_cast<QObject*>(ui->identifications_combobox->itemData( ui->identifications_combobox->currentIndex())))->setVisible(true);
} }
AutomaticFilterParameters params = _project_sp.get()->getAutomaticFilterParameters(); AutomaticFilterParameters params = _project_sp.get()->getAutomaticFilterParameters();
......
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