annotate widgets/PropertyStack.h @ 38:beb801473743

* Rearrange spectrogram cacheing so that gain, normalization, instantaneous frequency calculations etc can be done from the cached data (increasing the size of the cache, but also the usability).
author Chris Cannam
date Thu, 23 Feb 2006 18:01:31 +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