123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #ifndef FRAMETREEMODEL_H
- #define FRAMETREEMODEL_H
- #include <QAbstractItemModel>
- #include "sequenz.h"
- /*
- * Das Modell des Objekt Baumes, welches alle Daten enthält, die dort angezeigt werden sollen
- */
- class FrameTreeModel : public QAbstractItemModel
- {
- Q_OBJECT
- private:
- Sequenz *seq;
- // Prüft, ob ein Index valide ist
- bool isIndexValid( const QModelIndex &i ) const;
- public:
- explicit FrameTreeModel();
- ~FrameTreeModel();
- // Setzt die Sequenz, welche momenatan annotiert wird
- // s: die neue Sequenz
- void setSequenz( Sequenz *s );
- // Gibt zurück, was für einen bestimten Knoten angezeigt werden soll
- // index: Der Index des Knotens
- // role: Welche daten des Knotens abgefragt werden sollen (z.B.:Name oder Hintergrundfarbe...)
- QVariant data(const QModelIndex &index, int role) const override;
- // Gibt die Flags eines Knotens zurück
- // index: Der Index des Knotens
- Qt::ItemFlags flags(const QModelIndex &index) const override;
- // Gibt die Grunddaten zurück, welche für das zeichnen benötigt werden
- QVariant headerData(int section, Qt::Orientation orientation,
- int role = Qt::DisplayRole) const override;
- // gibt den Index eines Knotens zurück
- QModelIndex index(int row, int column,
- const QModelIndex &parent = QModelIndex()) const override;
- // gibt den Index des Elternknotens zurück
- QModelIndex parent(const QModelIndex &index) const override;
- // gibt die Anzahl der Kindknoten zurück
- int rowCount(const QModelIndex &parent = QModelIndex()) const override;
- // gibt die Anzahl der Attribute eines Kindknotens zurück
- int columnCount(const QModelIndex &parent = QModelIndex()) const override;
- // Ermittelt die zugehörige Kamera und das Zugehörige Bild eines Knotens
- bool clickedOnFrame( const QModelIndex &index, int &camera, int &frame ) const;
- // Gibt den Index des ausgewählten Bildes zurück
- QModelIndex getFrameSelectionIndex() const;
- // Gibt den Index der ausgewählten Kamera zurück
- QModelIndex getCameraSelectionIndex() const;
- // Gibt eine Liste mit ausgewählten Objekten zurück
- QList< QModelIndex > getSelectedPackages() const;
- // Aktualisiert die Tree View
- void update();
- };
- #endif // FRAMETREEMODEL_H
|