38 #include <OpenMS/VISUAL/OpenMS_GUIConfig.h>
57 #include <QtWidgets/QMainWindow>
58 #include <QtWidgets/QButtonGroup>
59 #include <QtWidgets/QActionGroup>
60 #include <QtCore/QStringList>
61 #include <QtCore/QProcess>
68 class QListWidgetItem;
70 class QTreeWidgetItem;
80 class DataSelectionTabs;
84 class MultiGradientSelector;
130 friend class TestTOPPView;
164 SCAN_IF_NEWER_VERSION,
170 explicit TOPPViewBase(TOOL_SCAN scan_mode = TOOL_SCAN::SCAN_IF_NEWER_VERSION,
QWidget* parent =
nullptr);
179 FILETYPE_UNSUPPORTED,
195 LOAD_RESULT addDataFile(
const String& filename,
bool show_options,
bool add_to_recent,
String caption =
"",
UInt window_id = 0,
Size spectrum_id = 0);
213 void addData(FeatureMapSharedPtrType feature_map,
214 ConsensusMapSharedPtrType consensus_map,
215 std::vector<PeptideIdentification>& peptides,
216 ExperimentSharedPtrType peak_map,
217 ODExperimentSharedPtrType on_disc_peak_map,
221 bool as_new_window =
true,
222 const String& filename =
"",
223 const String& caption =
"",
225 Size spectrum_id = 0);
228 void loadFiles(
const StringList& list, QSplashScreen* splash_screen);
235 void loadPreferences(
String filename =
"");
238 void savePreferences();
241 Param getCanvasParameters(
UInt dim)
const;
276 void updateCurrentPath();
278 void openFilesByDialog(
const String& initial_directory =
"");
280 void showGoToDialog()
const;
282 void preferencesDialog();
284 void layerStatistics()
const;
288 void layerActivated();
290 void layerZoomChanged()
const;
294 void layerDeactivated();
299 void rerunTOPPTool();
302 void updateBarsAndMenus();
304 void updateToolBar();
306 void updateLayerBar();
308 void updateViewBar();
312 void updateFilterBar();
319 void showStatusMessage(std::string msg,
OpenMS::UInt time);
321 void showCursorStatus(
double mz,
double rt);
323 void showCursorStatusInvert(
double mz,
double rt);
325 void showTOPPDialog();
327 void annotateWithAMS();
329 void annotateWithID();
331 void annotateWithOSW();
333 void showSpectrumGenerationDialog();
335 void showSpectrumAlignmentDialog();
337 void showCurrentPeaksAs2D();
339 void showCurrentPeaksAs3D();
341 void showCurrentPeaksAsIonMobility();
343 void showCurrentPeaksAsDIA();
345 void saveLayerAll()
const;
347 void saveLayerVisible()
const;
349 void toggleGridLines()
const;
351 void toggleAxisLegends()
const;
353 void toggleInterestingMZs()
const;
355 void showPreferences()
const;
357 void metadataFileDialog();
362 void setDrawMode1D(
int)
const;
363 void setIntensityMode(
int);
364 void changeLayerFlag(
bool);
365 void changeLabel(QAction*);
366 void changeUnassigned(QAction*);
367 void resetZoom()
const;
368 void toggleProjections();
373 void openFile(
const String& filename);
376 void layerFilterVisibilityChange(
bool)
const;
379 void showSpectrumMetaData(
int spectrum_index)
const;
383 void finishTOPPToolExecution(
int exitCode, QProcess::ExitStatus exitStatus);
385 void abortTOPPTool();
387 void showSpectrumBrowser();
393 void closeByTab(
int id);
395 void showWindow(
int id);
397 void copyLayer(
const QMimeData* data,
QWidget* source,
int id = -1);
401 void updateProcessLog();
404 void fileChanged_(
const String&);
407 void initializeDefaultParameters_();
412 QStringList chooseFilesDialog_(
const String& path_overwrite =
"");
435 bool watcher_msgbox_ =
false;
438 bool zoom_together_ =
false;
482 QMdiSubWindow* lastActiveSubwindow_ =
nullptr;
503 void addRecentFile_(
const String& filename);
526 bool visible_area_only;
534 void closeEvent(QCloseEvent* event)
override;
541 void showTOPPDialog_(
bool visible);
548 void addToolParamsToIni_();
A container for consensus elements.
Definition: ConsensusMap.h:90
A tabbed view, to browse lists of spectra or identifications.
Definition: DataSelectionTabs.h:77
A base class for all classes handling default parameters.
Definition: DefaultParamHandler.h:93
Convenience tab bar implementation.
Definition: EnhancedTabBar.h:62
Definition: EnhancedWorkspace.h:53
A container for features.
Definition: FeatureMap.h:106
Watcher that monitors file changes.
Definition: FileWatcher.h:67
A widget which shows a list of DataFilter items.
Definition: FilterList.h:61
Class that stores the data for one layer.
Definition: LayerDataBase.h:99
boost::shared_ptr< ExperimentType > ExperimentSharedPtrType
SharedPtr on MSExperiment.
Definition: LayerDataBase.h:162
boost::shared_ptr< OnDiscMSExperiment > ODExperimentSharedPtrType
SharedPtr on On-Disc MSExperiment.
Definition: LayerDataBase.h:167
boost::shared_ptr< FeatureMap > FeatureMapSharedPtrType
SharedPtr on feature map.
Definition: LayerDataBase.h:150
boost::shared_ptr< ConsensusMap > ConsensusMapSharedPtrType
SharedPtr on consensus features.
Definition: LayerDataBase.h:156
DataType
Definition: LayerDataBase.h:106
Pimped QListView for Layers of a Canvas.
Definition: LayerListView.h:54
A log window (QTextEdit) with convenience functions.
Definition: LogWindow.h:55
In-Memory representation of a mass spectrometry run.
Definition: MSExperiment.h:73
The representation of a 1D spectrum.
Definition: MSSpectrum.h:70
Management and storage of parameters / INI files.
Definition: Param.h:70
Base class for visualization canvas classes.
Definition: PlotCanvas.h:138
A more convenient string class.
Definition: String.h:60
Main window of TOPPView tool.
Definition: TOPPViewBase.h:127
QDockWidget * filter_dock_widget_
Definition: TOPPViewBase.h:418
QDockWidget * views_dockwidget_
Definition: TOPPViewBase.h:417
LayerDataBase::ConsensusMapSharedPtrType ConsensusMapSharedPtrType
Definition: TOPPViewBase.h:143
TOPPViewMenu menu_
manages the menu items (active/inactive) and recent files etc
Definition: TOPPViewBase.h:488
TOOL_SCAN
Used for deciding whether new tool/util params should be generated or reused from TOPPView's ini file...
Definition: TOPPViewBase.h:157
LayerDataBase::FeatureMapSharedPtrType FeatureMapSharedPtrType
Definition: TOPPViewBase.h:138
QLabel * mz_label_
m/z label for messages in the status bar
Definition: TOPPViewBase.h:496
QToolButton * dm_label_2d_
Definition: TOPPViewBase.h:468
QButtonGroup * draw_group_1d_
Definition: TOPPViewBase.h:458
ExperimentType::SpectrumType SpectrumType
Peak spectrum type.
Definition: TOPPViewBase.h:152
QToolBar * tool_bar_2d_feat_
Definition: TOPPViewBase.h:462
static const String CAPTION_3D_SUFFIX_
Suffix appended to caption of tabs when layer is shown in 3D.
Definition: TOPPViewBase.h:552
EnhancedTabBar tab_bar_
Tab bar. The address of the corresponding window to a tab is stored as an int in tabData()
Definition: TOPPViewBase.h:484
QActionGroup * group_label_2d_
Definition: TOPPViewBase.h:469
TVToolDiscovery tool_scanner_
Scans for tools/utils and generates a param for each.
Definition: TOPPViewBase.h:446
FilterList * filter_list_
Definition: TOPPViewBase.h:428
QAction * dm_precursors_2d_
Definition: TOPPViewBase.h:465
void checkPreferences_()
check if all available preferences get set by the .ini file. If there are some missing entries fill t...
QButtonGroup * intensity_button_group_
Definition: TOPPViewBase.h:454
QActionGroup * group_unassigned_2d_
Definition: TOPPViewBase.h:471
QAction * dm_hull_2d_
Definition: TOPPViewBase.h:466
DataSelectionTabs * selection_view_
Definition: TOPPViewBase.h:424
QAction * dm_ident_2d_
Definition: TOPPViewBase.h:474
LayerDataBase::FeatureMapType FeatureMapType
Definition: TOPPViewBase.h:136
QAction * dm_hulls_2d_
Definition: TOPPViewBase.h:467
EnhancedWorkspace ws_
Main workspace.
Definition: TOPPViewBase.h:478
QToolBar * tool_bar_2d_peak_
Definition: TOPPViewBase.h:461
QAction * dm_elements_2d_
Definition: TOPPViewBase.h:472
TOOL_SCAN scan_mode_
Determines TVToolDiscovery scans for tool/utils and generates new params.
Definition: TOPPViewBase.h:444
RecentFilesMenu recent_files_
manages recent list of filenames and the menu that goes with it
Definition: TOPPViewBase.h:486
QAction * projections_2d_
Definition: TOPPViewBase.h:473
QLabel * message_label_
Label for messages in the status bar.
Definition: TOPPViewBase.h:494
QMenu * add_2d_context_
Additional context menu for 2D layers.
Definition: TOPPViewBase.h:538
LayerListView * layers_view_
Layer management widget.
Definition: TOPPViewBase.h:422
LOAD_RESULT
Definition: TOPPViewBase.h:175
QToolBar * tool_bar_
Definition: TOPPViewBase.h:451
QToolBar * tool_bar_2d_cons_
Definition: TOPPViewBase.h:463
QToolButton * dm_unassigned_2d_
Definition: TOPPViewBase.h:470
String current_path_
Definition: TOPPViewBase.h:545
LayerDataBase::ConsensusMapType ConsensusMapType
Definition: TOPPViewBase.h:141
LayerDataBase::ExperimentSharedPtrType ExperimentSharedPtrType
Definition: TOPPViewBase.h:148
QLabel * rt_label_
RT label for messages in the status bar.
Definition: TOPPViewBase.h:498
QToolBar * tool_bar_1d_
Definition: TOPPViewBase.h:457
QToolBar * tool_bar_2d_ident_
Definition: TOPPViewBase.h:464
LayerDataBase::ODExperimentSharedPtrType ODExperimentSharedPtrType
Definition: TOPPViewBase.h:150
QDockWidget * layer_dock_widget_
Definition: TOPPViewBase.h:416
LogWindow * log_
Log output window.
Definition: TOPPViewBase.h:441
LayerDataBase::ExperimentType ExperimentType
Definition: TOPPViewBase.h:146
unsigned int UInt
Unsigned integer type.
Definition: Types.h:94
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
std::vector< String > StringList
Vector of String.
Definition: ListUtils.h:70
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47