OpenMS
SpectraIDViewTab Class Reference

Tabular visualization / selection of identified spectra. More...

#include <OpenMS/VISUAL/SpectraIDViewTab.h>

Inheritance diagram for SpectraIDViewTab:
[legend]
Collaboration diagram for SpectraIDViewTab:
[legend]

Classes

class  SelfResizingTableView_
 

Signals

void spectrumSelected (int spectrum_index, int pep_id_index, int pep_hit_index)
 request to show a specific spectrum, and (if available) a specific pepId + pepHit in there (otherwise -1, -1) More...
 
void spectrumDeselected (int spectrum_index)
 request to unshow a spectrum More...
 
void requestVisibleArea1D (double lower_mz, double upper_mz)
 request to zoom into a 1D spec More...
 

Public Member Functions

 SpectraIDViewTab (const Param &preferences, QWidget *parent=nullptr)
 Constructor. More...
 
 ~SpectraIDViewTab () override=default
 Destructor. More...
 
bool hasData (const LayerDataBase *layer) override
 
void updateEntries (LayerDataBase *model) override
 set layer data and create table anew; if given a nullptr or the layer is not LayerDataPeak, behaves as clear() More...
 
LayerDataBasegetLayer ()
 get layer data More...
 
void clear () override
 clears all visible data from table widget and voids the layer More...
 
- Public Member Functions inherited from DefaultParamHandler
 DefaultParamHandler (const String &name)
 Constructor with name that is displayed in error messages. More...
 
 DefaultParamHandler (const DefaultParamHandler &rhs)
 Copy constructor. More...
 
virtual ~DefaultParamHandler ()
 Destructor. More...
 
DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator. More...
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator. More...
 
void setParameters (const Param &param)
 Sets the parameters. More...
 
const ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () const
 Non-mutable access to the name. More...
 
void setName (const String &name)
 Mutable access to the name. More...
 
const std::vector< String > & getSubsections () const
 Non-mutable access to the registered subsections. More...
 

Public Attributes

bool ignore_update = false
 Helper member to block outgoing signals. More...
 

Protected Slots

void updateEntries_ ()
 Rebuild table entries. More...
 
void updateProteinEntries_ (int spec_cell_row_idx)
 Rebuild protein table entries. More...
 
void switchOrientation_ ()
 Switch horizontal or vertical layout of the PSM and Proteintable. More...
 

Private Slots

void saveIDs_ ()
 Saves the (potentially filtered) IDs as an idXML or mzIdentML file. More...
 
void updatedSingleCell_ (QTableWidgetItem *item)
 update PeptideIdentification / PeptideHits, when data in the table changes (status of checkboxes) More...
 
void currentCellChanged_ (int row, int column, int old_row, int old_column)
 Cell clicked in table_widget; emits which spectrum (row) was clicked, and may show additional data. More...
 
void createProteinToPeptideIDMap_ ()
 Create 'protein accession to peptide identification' map using C++ STL unordered_map. More...
 
void currentSpectraSelectionChanged_ ()
 Cell selected or deselected: this is only used to check for deselection, rest happens in currentCellChanged_. More...
 
void updatedSingleProteinCell_ (QTableWidgetItem *)
 update ProteinHits, when data in the table changes (status of checkboxes) More...
 
void proteinCellClicked_ (int row, int column)
 Protein Cell clicked in protein_table_widget; emits which protein (row) was clicked, and may show additional data. More...
 

Private Member Functions

void fillRow_ (const MSSpectrum &spectrum, const int spec_index, const QColor &background_color)
 partially fill the bottom-most row More...
 
void openUniProtSiteWithAccession_ (const QString &accession)
 open browser to navigate to uniport site with accession More...
 

Static Private Member Functions

static QString extractNumFromAccession_ (const QString &listItem)
 extract the required part of the accession More...
 

Private Attributes

LayerDataPeaklayer_ = nullptr
 
QCheckBox * hide_no_identification_ = nullptr
 
QCheckBox * create_rows_for_commmon_metavalue_ = nullptr
 
TableViewtable_widget_ = nullptr
 
TableViewprotein_table_widget_ = nullptr
 
QTableWidgetfragment_window_ = nullptr
 
QSplitter * tables_splitter_ = nullptr
 
bool is_first_time_loading_ = true
 
std::unordered_map< String, std::vector< const PeptideIdentification * > > protein_to_peptide_id_map
 

Additional Inherited Members

- Static Public Member Functions inherited from DefaultParamHandler
static void writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &key_prefix="")
 Writes all parameters to meta values. More...
 
- Protected Member Functions inherited from DefaultParamHandler
virtual void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. More...
 
- Protected Attributes inherited from DefaultParamHandler
Param param_
 Container for current parameters. More...
 
Param defaults_
 Container for default parameters. This member should be filled in the constructor of derived classes! More...
 
std::vector< Stringsubsections_
 Container for registered subsections. This member should be filled in the constructor of derived classes! More...
 
String error_name_
 Name that is displayed in error messages during the parameter checking. More...
 
bool check_defaults_
 If this member is set to false no checking if parameters in done;. More...
 
bool warn_empty_defaults_
 If this member is set to false no warning is emitted when defaults are empty;. More...
 

Detailed Description

Tabular visualization / selection of identified spectra.

Constructor & Destructor Documentation

◆ SpectraIDViewTab()

SpectraIDViewTab ( const Param preferences,
QWidget parent = nullptr 
)

Constructor.

◆ ~SpectraIDViewTab()

~SpectraIDViewTab ( )
overridedefault

Destructor.

Member Function Documentation

◆ clear()

void clear ( )
overridevirtual

clears all visible data from table widget and voids the layer

Implements DataTabBase.

◆ createProteinToPeptideIDMap_

void createProteinToPeptideIDMap_ ( )
privateslot

Create 'protein accession to peptide identification' map using C++ STL unordered_map.

◆ currentCellChanged_

void currentCellChanged_ ( int  row,
int  column,
int  old_row,
int  old_column 
)
privateslot

Cell clicked in table_widget; emits which spectrum (row) was clicked, and may show additional data.

◆ currentSpectraSelectionChanged_

void currentSpectraSelectionChanged_ ( )
privateslot

Cell selected or deselected: this is only used to check for deselection, rest happens in currentCellChanged_.

◆ extractNumFromAccession_()

static QString extractNumFromAccession_ ( const QString &  listItem)
staticprivate

extract the required part of the accession

◆ fillRow_()

void fillRow_ ( const MSSpectrum spectrum,
const int  spec_index,
const QColor &  background_color 
)
private

partially fill the bottom-most row

◆ getLayer()

LayerDataBase* getLayer ( )

get layer data

◆ hasData()

bool hasData ( const LayerDataBase layer)
overridevirtual

given a layer, determine if the tab could use it to show data (useful to decide if the tab should be enabled/disabled) If a nullptr is given, it HAS to return false!

Implements DataTabBase.

◆ openUniProtSiteWithAccession_()

void openUniProtSiteWithAccession_ ( const QString &  accession)
private

open browser to navigate to uniport site with accession

◆ proteinCellClicked_

void proteinCellClicked_ ( int  row,
int  column 
)
privateslot

Protein Cell clicked in protein_table_widget; emits which protein (row) was clicked, and may show additional data.

◆ requestVisibleArea1D

void requestVisibleArea1D ( double  lower_mz,
double  upper_mz 
)
signal

request to zoom into a 1D spec

◆ saveIDs_

void saveIDs_ ( )
privateslot

Saves the (potentially filtered) IDs as an idXML or mzIdentML file.

◆ spectrumDeselected

void spectrumDeselected ( int  spectrum_index)
signal

request to unshow a spectrum

◆ spectrumSelected

void spectrumSelected ( int  spectrum_index,
int  pep_id_index,
int  pep_hit_index 
)
signal

request to show a specific spectrum, and (if available) a specific pepId + pepHit in there (otherwise -1, -1)

◆ switchOrientation_

void switchOrientation_ ( )
protectedslot

Switch horizontal or vertical layout of the PSM and Proteintable.

◆ updatedSingleCell_

void updatedSingleCell_ ( QTableWidgetItem *  item)
privateslot

update PeptideIdentification / PeptideHits, when data in the table changes (status of checkboxes)

◆ updatedSingleProteinCell_

void updatedSingleProteinCell_ ( QTableWidgetItem *  )
privateslot

update ProteinHits, when data in the table changes (status of checkboxes)

◆ updateEntries()

void updateEntries ( LayerDataBase model)
overridevirtual

set layer data and create table anew; if given a nullptr or the layer is not LayerDataPeak, behaves as clear()

Implements DataTabBase.

◆ updateEntries_

void updateEntries_ ( )
protectedslot

Rebuild table entries.

◆ updateProteinEntries_

void updateProteinEntries_ ( int  spec_cell_row_idx)
protectedslot

Rebuild protein table entries.

Member Data Documentation

◆ create_rows_for_commmon_metavalue_

QCheckBox* create_rows_for_commmon_metavalue_ = nullptr
private

◆ fragment_window_

QTableWidget* fragment_window_ = nullptr
private

◆ hide_no_identification_

QCheckBox* hide_no_identification_ = nullptr
private

◆ ignore_update

bool ignore_update = false

Helper member to block outgoing signals.

◆ is_first_time_loading_

bool is_first_time_loading_ = true
private

◆ layer_

LayerDataPeak* layer_ = nullptr
private

◆ protein_table_widget_

TableView* protein_table_widget_ = nullptr
private

◆ protein_to_peptide_id_map

std::unordered_map<String, std::vector<const PeptideIdentification*> > protein_to_peptide_id_map
private

◆ table_widget_

TableView* table_widget_ = nullptr
private

◆ tables_splitter_

QSplitter* tables_splitter_ = nullptr
private