source: src/UIElements/Views/Qt4/MoleculeList/QtObservedMoleculeObserver.hpp

Candidate_v1.6.1
Last change on this file was 3054f4a, checked in by Frederik Heber <heber@…>, 9 years ago

QtObserved...Observed now get index on ...Removed() signal.

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*
2 * QtObservedMoleculeObserver.hpp
3 *
4 * Created on: Mar 17, 2016
5 * Author: heber
6 */
7
8
9#ifndef QTOBSERVEDMOLECULEOBSERVER_HPP_
10#define QTOBSERVEDMOLECULEOBSERVER_HPP_
11
12// include config.h
13#ifdef HAVE_CONFIG_H
14#include <config.h>
15#endif
16
17#include <QWidget>
18
19#include "UIElements/Qt4/InstanceBoard/QtObservedMolecule.hpp"
20#include "types.hpp"
21
22class QtObservedInstanceBoard;
23
24/** This class serves all QtObservedMolecule instances and relays specific
25 * events, such as ElementChanged.
26 *
27 * This is to have single class that is informed about all changes of a
28 * certain type, but on the Qt side, just as EntityObserver does on the
29 * molecuilder side.
30 *
31 */
32class QtObservedMoleculeObserver : public QWidget
33{
34 Q_OBJECT
35
36public:
37 QtObservedMoleculeObserver(QtObservedInstanceBoard *_board, QWidget * _parent = NULL);
38
39 const moleculeId_t getIdtoIndex(ObservedValue_Index_t _index) const;
40
41signals:
42 void AtomCountChanged(const QtObservedMolecule::ptr _molecule);
43 void FormulaChanged(const QtObservedMolecule::ptr _molecule);
44 void NameChanged(const QtObservedMolecule::ptr _molecule);
45 void SelectionChanged(const QtObservedMolecule::ptr _molecule);
46
47 // relayed signals
48 void MoleculeInserted(const QtObservedMolecule::ptr _molecule);
49 void MoleculeRemoved(ObservedValue_Index_t _index);
50
51private slots:
52 // relayed, and modified signals
53 void atomcountChanged();
54 void formulaChanged();
55 void nameChanged();
56 void selectionChanged();
57
58 void moleculeInserted(const QtObservedMolecule::ptr _molecule);
59 void moleculeRemoved(ObservedValue_Index_t _index);
60
61private:
62 //!> ref to get object from index
63 QtObservedInstanceBoard * const board;
64};
65
66#endif /* QTOBSERVEDMOLECULEOBSERVER_HPP_ */
Note: See TracBrowser for help on using the repository browser.