annotate widgets/PropertyBox.h @ 58:01ab51f72e84

* Set indent-tabs-mode to nil in Emacs mode direction
author Chris Cannam
date Mon, 20 Mar 2006 11:40:39 +0000
parents 2e2ad8510e52
children 705f05ab42e3
rev   line source
Chris@58 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- 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@5 5 Chris Cannam, Queen Mary University of London, 2005-2006
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@33 18 class QLayout;
Chris@33 19 class QWidget;
Chris@0 20 class QGridLayout;
Chris@34 21 class QVBoxLayout;
Chris@0 22
Chris@0 23 class PropertyBox : public QFrame
Chris@0 24 {
Chris@0 25 Q_OBJECT
Chris@0 26
Chris@0 27 public:
Chris@0 28 PropertyBox(PropertyContainer *);
Chris@0 29 ~PropertyBox();
Chris@0 30
Chris@0 31 PropertyContainer *getContainer() { return m_container; }
Chris@0 32
Chris@34 33 signals:
Chris@34 34 void changePlayGain(float);
Chris@34 35 void changePlayGainDial(int);
Chris@34 36 void changePlayPan(float);
Chris@34 37 void changePlayPanDial(int);
Chris@47 38 void showLayer(bool);
Chris@34 39
Chris@0 40 public slots:
Chris@0 41 void propertyContainerPropertyChanged(PropertyContainer *);
Chris@0 42
Chris@0 43 protected slots:
Chris@0 44 void propertyControllerChanged(int);
Chris@0 45
Chris@34 46 void playGainChanged(float);
Chris@34 47 void playGainDialChanged(int);
Chris@34 48 void playPanChanged(float);
Chris@34 49 void playPanDialChanged(int);
Chris@34 50
Chris@34 51 void populateViewPlayFrame();
Chris@34 52
Chris@0 53 protected:
Chris@0 54 void updatePropertyEditor(PropertyContainer::PropertyName);
Chris@0 55
Chris@33 56 QWidget *m_mainWidget;
Chris@0 57 QGridLayout *m_layout;
Chris@0 58 PropertyContainer *m_container;
Chris@34 59 QFrame *m_viewPlayFrame;
Chris@34 60 QVBoxLayout *m_mainBox;
Chris@0 61 std::map<QString, QLayout *> m_groupLayouts;
Chris@0 62 std::map<QString, QWidget *> m_propertyControllers;
Chris@0 63 };
Chris@0 64
Chris@0 65 #endif