libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::OboListWidget Class Reference

#include <obolistwidget.h>

Inheritance diagram for pappso::OboListWidget:

Signals

void oboTermChanged (OboPsiModTerm oboTerm) const
 

Public Member Functions

 OboListWidget (QWidget *parent=nullptr)
 
 ~OboListWidget ()
 
void filterMzPrecision (double target_mz, PrecisionPtr precision)
 
double getMzTarget () const
 get the current mz value used to filter term list
 
PrecisionPtr getPrecisionPtr () const
 get the current precision used to filter term list
 

Private Slots

void onSelectionChanged (const QItemSelection &selected, const QItemSelection &deselected)
 
void onFilterChanged (pappso::PrecisionPtr precision)
 
void onFilterChanged ()
 
void onFilterChanged (double value)
 

Private Attributes

Ui::OboListWidgetForm * ui
 
OboListModelmpa_oboListModel = nullptr
 
OboListProxyModelmpa_oboListProxyModel = nullptr
 

Detailed Description

Definition at line 49 of file obolistwidget.h.

Constructor & Destructor Documentation

◆ OboListWidget()

OboListWidget::OboListWidget ( QWidget * parent = nullptr)
explicit

Default constructor

Definition at line 38 of file obolistwidget.cpp.

38 : QWidget(parent), ui(new Ui::OboListWidgetForm)
39{
40 qDebug();
41 ui->setupUi(this);
42
43 mpa_oboListModel = new OboListModel(this);
44 mpa_oboListModel->loadPsiMod();
45
46 mpa_oboListProxyModel = new OboListProxyModel(mpa_oboListModel, this);
48 // mpa_oboListProxyModel->setSortRole(Qt::UserRole);
49
50 ui->oboTermListView->setModel(mpa_oboListProxyModel);
51
52 mpa_oboListProxyModel->sort(Qt::AscendingOrder);
53
54 connect(ui->oboTermListView->selectionModel(),
55 &QItemSelectionModel::selectionChanged,
56 this,
58}
Ui::OboListWidgetForm * ui
OboListProxyModel * mpa_oboListProxyModel
void onSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
OboListModel * mpa_oboListModel

References mpa_oboListModel, mpa_oboListProxyModel, onSelectionChanged(), and ui.

◆ ~OboListWidget()

OboListWidget::~OboListWidget ( )

Destructor

Definition at line 60 of file obolistwidget.cpp.

61{
62 delete ui;
63 if(mpa_oboListProxyModel != nullptr)
64 {
66 }
67 if(mpa_oboListModel != nullptr)
68 {
69 delete mpa_oboListModel;
70 }
71}

References mpa_oboListModel, mpa_oboListProxyModel, and ui.

Member Function Documentation

◆ filterMzPrecision()

void pappso::OboListWidget::filterMzPrecision ( double target_mz,
pappso::PrecisionPtr precision )

Definition at line 89 of file obolistwidget.cpp.

90{
91 qDebug();
92 mpa_oboListProxyModel->filterMzPrecision(target_mz, precision);
93 if(precision == nullptr)
94 {
95 ui->massFilterGroupBox->setChecked(false);
96 ui->mzSpinBox->setValue(target_mz);
97 }
98 else
99 {
100 ui->massFilterGroupBox->setChecked(true);
101 ui->precisionWidget->setPrecision(precision);
102 ui->mzSpinBox->setValue(target_mz);
103 }
104}

References mpa_oboListProxyModel, and ui.

◆ getMzTarget()

double pappso::OboListWidget::getMzTarget ( ) const

get the current mz value used to filter term list

Definition at line 143 of file obolistwidget.cpp.

144{
145 return ui->mzSpinBox->value();
146}

References ui.

◆ getPrecisionPtr()

pappso::PrecisionPtr pappso::OboListWidget::getPrecisionPtr ( ) const

get the current precision used to filter term list

Definition at line 149 of file obolistwidget.cpp.

150{
151 if(ui->massFilterGroupBox->isChecked())
152 {
153 return ui->precisionWidget->getPrecision();
154 }
155 return nullptr;
156}

References ui.

◆ oboTermChanged

void pappso::OboListWidget::oboTermChanged ( OboPsiModTerm oboTerm) const
signal

◆ onFilterChanged [1/3]

void pappso::OboListWidget::onFilterChanged ( )
privateslot

Definition at line 107 of file obolistwidget.cpp.

108{
109 qDebug();
110 if(ui->massFilterGroupBox->isChecked())
111 {
112 mpa_oboListProxyModel->filterMzPrecision(ui->mzSpinBox->value(),
113 ui->precisionWidget->getPrecision());
114 }
115 else
116 {
117 mpa_oboListProxyModel->filterMzPrecision(0, nullptr);
118 }
119}

References mpa_oboListProxyModel, and ui.

◆ onFilterChanged [2/3]

void pappso::OboListWidget::onFilterChanged ( double value)
privateslot

Definition at line 122 of file obolistwidget.cpp.

123{
124 qDebug();
125 if(ui->massFilterGroupBox->isChecked())
126 {
127 mpa_oboListProxyModel->filterMzPrecision(ui->mzSpinBox->value(),
128 ui->precisionWidget->getPrecision());
129 }
130 else
131 {
132 mpa_oboListProxyModel->filterMzPrecision(0, nullptr);
133 }
134}

References mpa_oboListProxyModel, and ui.

◆ onFilterChanged [3/3]

void pappso::OboListWidget::onFilterChanged ( pappso::PrecisionPtr precision)
privateslot

Definition at line 137 of file obolistwidget.cpp.

138{
140}

References onFilterChanged().

Referenced by oboTermChanged(), and onFilterChanged().

◆ onSelectionChanged

void pappso::OboListWidget::onSelectionChanged ( const QItemSelection & selected,
const QItemSelection & deselected )
privateslot

Definition at line 74 of file obolistwidget.cpp.

76{
77 QModelIndexList index_list = mpa_oboListProxyModel->mapSelectionToSource(selected).indexes();
78
79 if(index_list.size() > 0)
80 {
81 QModelIndex index = index_list.first();
82 OboPsiModTerm term = mpa_oboListModel->data(index, Qt::UserRole).value<OboPsiModTerm>();
83 qDebug() << term.getAccession();
84 emit oboTermChanged(term);
85 }
86}
void oboTermChanged(OboPsiModTerm oboTerm) const
const QString & getAccession() const

References pappso::OboPsiModTerm::getAccession(), mpa_oboListModel, mpa_oboListProxyModel, and oboTermChanged().

Referenced by OboListWidget(), and oboTermChanged().

Member Data Documentation

◆ mpa_oboListModel

OboListModel* pappso::OboListWidget::mpa_oboListModel = nullptr
private

Definition at line 89 of file obolistwidget.h.

Referenced by OboListWidget(), ~OboListWidget(), and onSelectionChanged().

◆ mpa_oboListProxyModel

OboListProxyModel* pappso::OboListWidget::mpa_oboListProxyModel = nullptr
private

◆ ui

Ui::OboListWidgetForm* pappso::OboListWidget::ui
private

The documentation for this class was generated from the following files: