Chris@0
|
1 /* -*- c-basic-offset: 4 -*- vi:set ts=8 sts=4 sw=4: */
|
Chris@0
|
2
|
Chris@0
|
3 /*
|
Chris@0
|
4 A waveform viewer and audio annotation editor.
|
Chris@0
|
5 Chris Cannam, Queen Mary University of London, 2005
|
Chris@0
|
6
|
Chris@0
|
7 This is experimental software. Not for distribution.
|
Chris@0
|
8 */
|
Chris@0
|
9
|
Chris@0
|
10 #ifndef _PROPERTY_BOX_H_
|
Chris@0
|
11 #define _PROPERTY_BOX_H_
|
Chris@0
|
12
|
Chris@0
|
13 #include "base/PropertyContainer.h"
|
Chris@0
|
14
|
Chris@0
|
15 #include <QFrame>
|
Chris@0
|
16 #include <map>
|
Chris@0
|
17
|
Chris@0
|
18 class QGridLayout;
|
Chris@0
|
19
|
Chris@0
|
20 class PropertyBox : public QFrame
|
Chris@0
|
21 {
|
Chris@0
|
22 Q_OBJECT
|
Chris@0
|
23
|
Chris@0
|
24 public:
|
Chris@0
|
25 PropertyBox(PropertyContainer *);
|
Chris@0
|
26 ~PropertyBox();
|
Chris@0
|
27
|
Chris@0
|
28 PropertyContainer *getContainer() { return m_container; }
|
Chris@0
|
29
|
Chris@0
|
30 public slots:
|
Chris@0
|
31 void propertyContainerPropertyChanged(PropertyContainer *);
|
Chris@0
|
32
|
Chris@0
|
33 protected slots:
|
Chris@0
|
34 void propertyControllerChanged(int);
|
Chris@0
|
35
|
Chris@0
|
36 protected:
|
Chris@0
|
37 void updatePropertyEditor(PropertyContainer::PropertyName);
|
Chris@0
|
38
|
Chris@0
|
39 QGridLayout *m_layout;
|
Chris@0
|
40 PropertyContainer *m_container;
|
Chris@0
|
41 std::map<QString, QLayout *> m_groupLayouts;
|
Chris@0
|
42 std::map<QString, QWidget *> m_propertyControllers;
|
Chris@0
|
43 };
|
Chris@0
|
44
|
Chris@0
|
45 #endif
|