29 lines
919 B
C++
29 lines
919 B
C++
#ifndef ELAFOOTERMODEL_H
|
|
#define ELAFOOTERMODEL_H
|
|
|
|
#include <QAbstractListModel>
|
|
|
|
#include "ElaDef.h"
|
|
class ElaNavigationNode;
|
|
class ElaFooterModel : public QAbstractListModel
|
|
{
|
|
Q_OBJECT
|
|
Q_PRIVATE_CREATE(ElaNavigationNode*, SelectedNode)
|
|
public:
|
|
explicit ElaFooterModel(QObject* parent = nullptr);
|
|
~ElaFooterModel();
|
|
ElaNavigationType::NodeOperateReturnType addFooterNode(QString footerTitle, QString& footerKey, bool isHasFooterPage, int keyPoints = 0, ElaIconType::IconName awesome = ElaIconType::None);
|
|
int getFooterNodeCount() const;
|
|
ElaNavigationNode* getNavigationNode(QString footerKey);
|
|
void removeNavigationNode(QString footerKey);
|
|
|
|
protected:
|
|
int rowCount(const QModelIndex& parent = QModelIndex()) const override;
|
|
QVariant data(const QModelIndex& index, int role) const override;
|
|
|
|
private:
|
|
QList<ElaNavigationNode*> _footerNodeList;
|
|
};
|
|
|
|
#endif // ELAFOOTERMODEL_H
|