40 lines
884 B
C++
40 lines
884 B
C++
#ifndef NAVIGATIONITEMMODEL_H
|
|
#define NAVIGATIONITEMMODEL_H
|
|
|
|
#include <QObject>
|
|
|
|
class NavigationItemModel : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
Q_PROPERTY(QString pImageSource READ getImageSource NOTIFY imageSourceChanged)
|
|
|
|
signals:
|
|
void imageSourceChanged();
|
|
void clicked();
|
|
|
|
public:
|
|
NavigationItemModel(QObject *parent = Q_NULLPTR);
|
|
|
|
QString getImageSource() const;
|
|
|
|
QString getPath() const;
|
|
bool setPath(const QString & path);
|
|
|
|
NavigationItemModel* getParentItem();
|
|
QList<NavigationItemModel*> getChildren();
|
|
|
|
void appendChild(NavigationItemModel* item);
|
|
void clearChildren();
|
|
|
|
Q_INVOKABLE void onClicked();
|
|
|
|
private:
|
|
QString mPath = QString("");
|
|
QString mImageSource;
|
|
|
|
QList<NavigationItemModel*> mChildren = QList<NavigationItemModel*>();
|
|
NavigationItemModel* mParentItem = nullptr;
|
|
};
|
|
|
|
#endif // NAVIGATIONITEMMODEL_H
|