annotate widgets/PropertyStack.h @ 23:ca57f70b0e48

* Add Zero Crossings output from zc plugin (as well as Zero Crossings Count) * Use brief friendly names for layers instead of full transform descriptions * Clearer command names for editing commands * Some efficiencies in drawing dense points in TimeInstantLayer
author Chris Cannam
date Tue, 31 Jan 2006 17:19:45 +0000
parents 46d8f5add6f0
children 2e2ad8510e52
rev   line source
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@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_STACK_H_
Chris@0 11 #define _PROPERTY_STACK_H_
Chris@0 12
Chris@0 13 #include <QFrame>
Chris@0 14 #include <QTabWidget>
Chris@0 15 #include <vector>
Chris@0 16
Chris@0 17 class Layer;
Chris@0 18 class View;
Chris@0 19 class PropertyBox;
Chris@0 20 class PropertyContainer;
Chris@0 21
Chris@0 22 class PropertyStack : public QTabWidget
Chris@0 23 {
Chris@0 24 Q_OBJECT
Chris@0 25
Chris@0 26 public:
Chris@0 27 PropertyStack(QWidget *parent, View *client);
Chris@0 28
Chris@0 29 bool containsContainer(PropertyContainer *container) const;
Chris@19 30 int getContainerIndex(PropertyContainer *container) const;
Chris@0 31
Chris@0 32 signals:
Chris@0 33 void propertyContainerSelected(PropertyContainer *container);
Chris@0 34
Chris@0 35 public slots:
Chris@0 36 void propertyContainerAdded(PropertyContainer *);
Chris@0 37 void propertyContainerRemoved(PropertyContainer *);
Chris@0 38 void propertyContainerPropertyChanged(PropertyContainer *);
Chris@0 39 void propertyContainerNameChanged(PropertyContainer *);
Chris@0 40
Chris@0 41 protected slots:
Chris@0 42 void selectedContainerChanged(int);
Chris@0 43
Chris@0 44 protected:
Chris@0 45 View *m_client;
Chris@0 46 std::vector<PropertyBox *> m_boxes;
Chris@0 47
Chris@0 48 void repopulate();
Chris@0 49 void updateValues(PropertyContainer *);
Chris@0 50 };
Chris@0 51
Chris@0 52 #endif