annotate widgets/LayerTree.h @ 94:c7ade7ea3cfe

* It turns out we can be more efficient in the spectrogram repaints by marking the spectrogram layer as non-scrollable, and using the spectrogram cache alone instead of both spectrogram and view caches.
author Chris Cannam
date Tue, 09 May 2006 12:43:55 +0000
parents 705f05ab42e3
children 226cb289bdf4
rev   line source
Chris@43 1
Chris@58 2 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@43 3
Chris@43 4 /*
Chris@59 5 Sonic Visualiser
Chris@59 6 An audio file viewer and annotation editor.
Chris@59 7 Centre for Digital Music, Queen Mary, University of London.
Chris@59 8 This file copyright 2006 Chris Cannam.
Chris@43 9
Chris@59 10 This program is free software; you can redistribute it and/or
Chris@59 11 modify it under the terms of the GNU General Public License as
Chris@59 12 published by the Free Software Foundation; either version 2 of the
Chris@59 13 License, or (at your option) any later version. See the file
Chris@59 14 COPYING included with this distribution for more information.
Chris@43 15 */
Chris@43 16
Chris@43 17 #ifndef _LAYER_TREE_H_
Chris@43 18 #define _LAYER_TREE_H_
Chris@43 19
Chris@43 20 #include <QAbstractItemModel>
Chris@43 21
Chris@43 22 class PaneStack;
Chris@56 23 class View;
Chris@56 24 class Layer;
Chris@43 25
Chris@43 26 class LayerTreeModel : public QAbstractItemModel
Chris@43 27 {
Chris@43 28 Q_OBJECT
Chris@43 29
Chris@43 30 public:
Chris@43 31 LayerTreeModel(PaneStack *stack, QObject *parent = 0);
Chris@43 32 virtual ~LayerTreeModel();
Chris@43 33
Chris@43 34 QVariant data(const QModelIndex &index, int role) const;
Chris@43 35
Chris@56 36 Qt::ItemFlags flags(const QModelIndex &index) const;
Chris@43 37
Chris@56 38 QVariant headerData(int section, Qt::Orientation orientation,
Chris@56 39 int role = Qt::DisplayRole) const;
Chris@43 40
Chris@43 41 QModelIndex index(int row, int column,
Chris@43 42 const QModelIndex &parent = QModelIndex()) const;
Chris@43 43
Chris@43 44 QModelIndex parent(const QModelIndex &index) const;
Chris@43 45
Chris@43 46 int rowCount(const QModelIndex &parent = QModelIndex()) const;
Chris@43 47 int columnCount(const QModelIndex &parent = QModelIndex()) const;
Chris@43 48
Chris@43 49 protected:
Chris@43 50 PaneStack *m_stack;
Chris@43 51 };
Chris@43 52
Chris@43 53 #endif