Vagyojaka 5.5.7
Loading...
Searching...
No Matches
customdelegates.h
Go to the documentation of this file.
1#pragma once
2
3#include <QStyledItemDelegate>
4#include <QComboBox>
5
6
8class QModelIndex;
9
10class AudioPlayerDelegate : public QStyledItemDelegate {
11 Q_OBJECT
12
13public:
14 AudioPlayerDelegate(const QString& baseDir, QObject* parent = nullptr);
15 ~AudioPlayerDelegate() override;
16
17 QWidget* createEditor(QWidget* parent, const QStyleOptionViewItem& option, const QModelIndex& index) const override;
18 void setEditorData(QWidget* editor, const QModelIndex& index) const override;
19 void setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const override;
20 void updateEditorGeometry(QWidget* editor, const QStyleOptionViewItem& option, const QModelIndex& index) const override;
21 void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override;
22
23 void stopAllPlayers() const;
24 void cleanupUnusedEditors() const;
25 void setBaseDir(QString pBaseDir);
26
27private:
28 QString m_baseDir;
29 mutable QMap<QModelIndex, AudioPlayerWidget*> m_activeEditors;
30 mutable QModelIndex m_lastPlayingIndex;
31};
32
33class ComboBoxDelegate : public QStyledItemDelegate {
34 Q_OBJECT
35public:
36 ComboBoxDelegate(int min, int max, const QColor& color, QObject* parent = nullptr);
37 QWidget* createEditor(QWidget* parent, const QStyleOptionViewItem& option, const QModelIndex& index) const override;
38 void setEditorData(QWidget* editor, const QModelIndex& index) const override;
39 void setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const override;
40 void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override;
41
42private:
44 QColor m_color;
45};
Definition customdelegates.h:10
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition customdelegates.cpp:18
QModelIndex m_lastPlayingIndex
Definition customdelegates.h:30
QString m_baseDir
Definition customdelegates.h:28
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition customdelegates.cpp:64
void cleanupUnusedEditors() const
Definition customdelegates.cpp:82
void stopAllPlayers() const
Definition customdelegates.cpp:75
AudioPlayerDelegate(const QString &baseDir, QObject *parent=nullptr)
Definition customdelegates.cpp:8
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition customdelegates.cpp:41
QMap< QModelIndex, AudioPlayerWidget * > m_activeEditors
Definition customdelegates.h:29
void setBaseDir(QString pBaseDir)
Definition customdelegates.cpp:94
void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition customdelegates.cpp:58
~AudioPlayerDelegate() override
Definition customdelegates.cpp:13
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition customdelegates.cpp:49
Definition audioplayerwidget.h:13
Definition customdelegates.h:33
ComboBoxDelegate(int min, int max, const QColor &color, QObject *parent=nullptr)
Definition customdelegates.cpp:99
QColor m_color
Definition customdelegates.h:44
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition customdelegates.cpp:104
int m_min
Definition customdelegates.h:43
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition customdelegates.cpp:146
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition customdelegates.cpp:138
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition customdelegates.cpp:129
int m_max
Definition customdelegates.h:43