35 #ifndef OPENMS_VISUAL_APPLICATIONS_TOPPVIEWBASE_H
36 #define OPENMS_VISUAL_APPLICATIONS_TOPPVIEWBASE_H
55 #include <QtGui/QMainWindow>
56 #include <QtGui/QButtonGroup>
57 #include <QtGui/QActionGroup>
58 #include <QtCore/QStringList>
59 #include <QtCore/QProcess>
66 class QListWidgetItem;
68 class QTreeWidgetItem;
80 class EnhancedWorkspace;
82 class Spectrum1DWidget;
83 class Spectrum2DWidget;
84 class Spectrum3DWidget;
86 class MultiGradientSelector;
110 friend class TestTOPPView;
150 void addDataFile(
const String& filename,
bool show_options,
bool add_to_recent,
String caption =
"",
UInt window_id = 0,
Size spectrum_id = 0);
161 void addDataDB(
UInt db_id,
bool show_options,
String caption =
"",
UInt window_id = 0);
178 void addData(
FeatureMapSharedPtrType feature_map,
ConsensusMapSharedPtrType consensus_map, std::vector<PeptideIdentification>& peptides,
ExperimentSharedPtrType peak_map,
LayerData::DataType data_type,
bool show_as_1d,
bool show_options,
bool as_new_window =
true,
const String& filename =
"",
const String& caption =
"",
UInt window_id = 0,
Size spectrum_id = 0);
181 void loadFiles(
const StringList& list, QSplashScreen* splash_screen);
188 void loadPreferences(
String filename =
"");
191 void savePreferences();
197 const LayerData* getCurrentLayer()
const;
230 void updateCurrentPath();
234 void openFileDialog();
236 void openExampleDialog();
238 void openDatabaseDialog();
240 void showGoToDialog();
242 void preferencesDialog();
244 void layerStatistics();
248 void layerActivated();
250 void layerZoomChanged();
254 void layerDeactivated();
256 void activate1DSpectrum(
int index);
258 void activate1DSpectrum(std::vector<
int, std::allocator<int> > indices);
260 void deactivate1DSpectrum(
int index);
264 void updateToolBar();
266 void updateLayerBar();
268 void updateViewBar();
270 void viewChanged(
int);
272 void updateFilterBar();
280 void tileHorizontal();
287 void showStatusMessage(std::string msg,
OpenMS::UInt time);
289 void showCursorStatus(
double mz,
double rt);
291 void showCursorStatusInvert(
double mz,
double rt);
293 void showTOPPDialog();
295 void annotateWithID();
297 void showSpectrumGenerationDialog();
299 void showSpectrumAlignmentDialog();
301 void showSpectrumAs1D(
int index);
302 void showSpectrumAs1D(std::vector<
int, std::allocator<int> > indices);
304 void showCurrentPeaksAs2D();
306 void showCurrentPeaksAs3D();
308 void showAboutDialog();
312 void saveLayerVisible();
314 void toggleGridLines();
316 void toggleAxisLegends();
318 void showPreferences();
320 void metadataDatabaseDialog();
322 void metadataFileDialog();
327 void setDrawMode1D(
int);
328 void setIntensityMode(
int);
329 void changeLayerFlag(
bool);
330 void changeLabel(QAction*);
331 void changeUnassigned(QAction*);
333 void toggleProjections();
337 void loadFile(QString);
343 void layerSelectionChange(
int);
346 void layerFilterVisibilityChange(
bool);
348 void layerContextMenu(
const QPoint& pos);
350 void logContextMenu(
const QPoint& pos);
352 void layerVisibilityChange(QListWidgetItem* item);
354 void filterContextMenu(
const QPoint& pos);
356 void filterEdit(QListWidgetItem* item);
358 void layerEdit(QListWidgetItem* );
362 void finishTOPPToolExecution(
int exitCode, QProcess::ExitStatus exitStatus);
364 void abortTOPPTool();
366 void rerunTOPPTool();
368 void showSpectrumBrowser();
370 void showSpectrumMetaData(
int spectrum_index);
375 void closeByTab(
int id);
378 void enhancedWorkspaceWindowChanged(
int id);
380 void openRecentFile();
382 void copyLayer(
const QMimeData* data,
QWidget* source,
int id = -1);
386 void updateProcessLog();
389 void fileChanged_(
const String&);
392 void initializeDefaultParameters_();
395 std::set<String> getFilenamesOfOpenFiles_();
402 QStringList getFileList_(
const String& path_overwrite =
"");
481 QLabel* message_label_;
491 void addRecentFile_(
const String& filename);
494 void updateRecentMenu_();
524 void checkPreferences_();
527 void closeEvent(QCloseEvent* event);
538 void showLogMessage_(LogState state,
const String& heading,
const String& body);
544 void showTOPPDialog_(
bool visible);
String layer_name
Definition: TOPPViewBase.h:514
LayerData::ConsensusMapSharedPtrType ConsensusMapSharedPtrType
Definition: TOPPViewBase.h:123
QLabel * rt_label_
RT label for messages in the status bar.
Definition: TOPPViewBase.h:486
TOPPViewIdentificationViewBehavior * identificationview_behavior_
TOPPView behavior for the identification view.
Definition: TOPPViewBase.h:555
QDockWidget * filter_dock_widget_
Definition: TOPPViewBase.h:411
QAction * linkZoom_action_
Definition: TOPPViewBase.h:438
QButtonGroup * draw_group_1d_
Definition: TOPPViewBase.h:453
QToolBar * tool_bar_1d_
Definition: TOPPViewBase.h:452
Behavior of TOPPView in identification mode.
Definition: TOPPViewIdentificationViewBehavior.h:50
std::vector< QAction * > recent_actions_
list of the recently opened files actions (menu entries)
Definition: TOPPViewBase.h:498
A more convenient string class.
Definition: String.h:56
QAction * dm_hulls_2d_
Definition: TOPPViewBase.h:462
QToolBar * tool_bar_2d_ident_
Definition: TOPPViewBase.h:459
LayerData::ExperimentSharedPtrType ExperimentSharedPtrType
Definition: TOPPViewBase.h:128
bool visible
Definition: TOPPViewBase.h:519
LayerData::ConsensusMapType ConsensusMapType
Definition: TOPPViewBase.h:121
QListWidget * filters_
Definition: TOPPViewBase.h:425
TOPPViewBehaviorInterface * view_behavior_
The current TOPPView view behavior.
Definition: TOPPViewBase.h:553
Main window of TOPPView tool.
Definition: TOPPViewBase.h:104
String tool
Definition: TOPPViewBase.h:510
String file_name
Definition: TOPPViewBase.h:513
QToolBar * tool_bar_2d_feat_
Definition: TOPPViewBase.h:457
DataType
Dataset types.
Definition: LayerData.h:64
A container for features.
Definition: FeatureMap.h:111
QToolBar * tool_bar_2d_cons_
Definition: TOPPViewBase.h:458
Base class for visualization canvas classes.
Definition: SpectrumCanvas.h:94
A container for consensus elements.
Definition: ConsensusMap.h:60
QToolBar * tool_bar_2d_peak_
Definition: TOPPViewBase.h:456
SpectraIdentificationViewWidget * spectra_identification_view_widget_
Definition: TOPPViewBase.h:417
QAction * dm_elements_2d_
Definition: TOPPViewBase.h:467
QAction * dm_hull_2d_
Definition: TOPPViewBase.h:461
FileWatcher * watcher_
Watcher that tracks file changes (in order to update the data in the different views) ...
Definition: TOPPViewBase.h:430
String in
Definition: TOPPViewBase.h:511
bool zoom_together_
Stores whether the individual windows should zoom together (be linked) or not.
Definition: TOPPViewBase.h:436
boost::shared_ptr< ExperimentType > ExperimentSharedPtrType
SharedPtr on MSExperiment.
Definition: LayerData.h:120
QTime timer
Definition: TOPPViewBase.h:518
QDockWidget * layer_dock_widget_
Definition: TOPPViewBase.h:409
bool watcher_msgbox_
Holds the messageboxes for each layer that are currently popped up (to avoid popping them up again...
Definition: TOPPViewBase.h:433
QAction * dm_ident_2d_
Definition: TOPPViewBase.h:469
Size spectrum_id
Definition: TOPPViewBase.h:516
SpectraViewWidget * spectra_view_widget_
Definition: TOPPViewBase.h:416
QLabel * mz_label_
m/z label for messages in the status bar
Definition: TOPPViewBase.h:484
TOPPViewSpectraViewBehavior * spectraview_behavior_
TOPPView behavior for the spectra view.
Definition: TOPPViewBase.h:557
LayerData::FeatureMapSharedPtrType FeatureMapSharedPtrType
Definition: TOPPViewBase.h:118
UInt window_id
Definition: TOPPViewBase.h:515
Param param
Definition: TOPPViewBase.h:509
QActionGroup * group_label_2d_
Definition: TOPPViewBase.h:464
boost::shared_ptr< ConsensusMap > ConsensusMapSharedPtrType
SharedPtr on consensus features.
Definition: LayerData.h:114
Warning.
Definition: TOPPViewBase.h:534
QTabWidget * views_tabwidget_
Tabwidget that hold the different views on the loaded data.
Definition: TOPPViewBase.h:551
A class for connecting to a SQL database.
Definition: DBConnection.h:60
static const String CAPTION_3D_SUFFIX_
Suffix appended to caption of tabs when layer is shown in 3D.
Definition: TOPPViewBase.h:575
boost::shared_ptr< FeatureMap<> > FeatureMapSharedPtrType
SharedPtr on feature map.
Definition: LayerData.h:108
String out
Definition: TOPPViewBase.h:512
Management and storage of parameters / INI files.
Definition: Param.h:69
Behavior of TOPPView in spectra view mode.
Definition: TOPPViewSpectraViewBehavior.h:50
Representation of a mass spectrometry experiment.
Definition: MSExperiment.h:68
QButtonGroup * intensity_button_group_
Definition: TOPPViewBase.h:449
QToolButton * dm_unassigned_2d_
Definition: TOPPViewBase.h:465
QToolBar * tool_bar_
Definition: TOPPViewBase.h:446
Notice.
Definition: TOPPViewBase.h:533
String list.
Definition: StringList.h:56
QStringList recent_files_
list of the recently opened files
Definition: TOPPViewBase.h:496
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:144
Definition: EnhancedWorkspace.h:49
Interface class to model different behaviors of TOPPView.
Definition: TOPPViewBehaviorInterface.h:47
LogState
Log message states.
Definition: TOPPViewBase.h:531
QDockWidget * views_dockwidget_
Definition: TOPPViewBase.h:410
LayerData::FeatureMapType FeatureMapType
Definition: TOPPViewBase.h:116
QTextEdit * log_
Log output window.
Definition: TOPPViewBase.h:441
QListWidget * layer_manager_
Layer management widget.
Definition: TOPPViewBase.h:421
QActionGroup * group_unassigned_2d_
Definition: TOPPViewBase.h:466
EnhancedWorkspace * ws_
Main workspace.
Definition: TOPPViewBase.h:473
A base class for all classes handling default parameters.
Definition: DefaultParamHandler.h:90
String current_path_
Definition: TOPPViewBase.h:548
EnhancedTabBar * tab_bar_
Tab bar. The address of the corresponding window to a tab is stored as an int in tabData() ...
Definition: TOPPViewBase.h:476
Watcher that monitors file changes.
Definition: FileWatcher.h:66
QCheckBox * filters_check_box_
Definition: TOPPViewBase.h:426
QMenu * add_2d_context_
Additional context menu for 2D layers.
Definition: TOPPViewBase.h:541
QToolButton * dm_label_2d_
Definition: TOPPViewBase.h:463
QAction * dm_precursors_2d_
Definition: TOPPViewBase.h:460
QProcess * process
Definition: TOPPViewBase.h:517
Class that stores the data for one layer.
Definition: LayerData.h:58
LayerData::ExperimentType ExperimentType
Definition: TOPPViewBase.h:126
Convenience tab bar implementation.
Definition: EnhancedTabBar.h:60
QAction * projections_2d_
Definition: TOPPViewBase.h:468
ExperimentType::SpectrumType SpectrumType
Peak spectrum type.
Definition: TOPPViewBase.h:130