17class RecentProjectsModel :
public QAbstractListModel
24 enum RecentProjectRoles
26 NameRole = Qt::UserRole + 1,
31 explicit RecentProjectsModel (
33 QObject * parent =
nullptr);
35 int rowCount (
const QModelIndex &parent = QModelIndex ())
const override;
37 data (
const QModelIndex &index,
int role = Qt::DisplayRole)
const override;
38 QHash<int, QByteArray> roleNames ()
const override;
40 Q_INVOKABLE
void addRecentProject (
const QString &path);
41 Q_INVOKABLE
void removeRecentProject (
const QString &path);
42 Q_INVOKABLE
void clearRecentProjects ();
43 Q_INVOKABLE
void clearNonExistingProjects ();
46 std::vector<std::unique_ptr<ProjectInfo>> get_recent_projects ()
const;
47 void store_recent_projects (
const QStringList &list);
49 static constexpr int MAX_RECENT_DOCUMENTS = 12;