mirror of
https://github.com/YACReader/yacreader
synced 2025-07-18 13:04:28 -04:00
Add setting to control what "recent" is considered.
This commit is contained in:
@ -52,12 +52,12 @@ void drawMacOSXFinishedFolderIcon()
|
||||
#define ROOT 1
|
||||
|
||||
FolderModel::FolderModel(QObject *parent)
|
||||
: QAbstractItemModel(parent), isSubfolder(false), rootItem(nullptr), folderIcon(YACReader::noHighlightedIcon(":/images/sidebar/folder.svg")), folderFinishedIcon(YACReader::noHighlightedIcon(":/images/sidebar/folder_finished.svg")), showRecent(false)
|
||||
: QAbstractItemModel(parent), isSubfolder(false), rootItem(nullptr), folderIcon(YACReader::noHighlightedIcon(":/images/sidebar/folder.svg")), folderFinishedIcon(YACReader::noHighlightedIcon(":/images/sidebar/folder_finished.svg")), showRecent(false), recentDays(1)
|
||||
{
|
||||
}
|
||||
|
||||
FolderModel::FolderModel(QSqlQuery &sqlquery, QObject *parent)
|
||||
: QAbstractItemModel(parent), isSubfolder(false), rootItem(nullptr), showRecent(false)
|
||||
: QAbstractItemModel(parent), isSubfolder(false), rootItem(nullptr), showRecent(false), recentDays(1)
|
||||
{
|
||||
QList<QVariant> rootData;
|
||||
rootData << "root"; // id 1, parent 1, title "root"
|
||||
@ -100,6 +100,7 @@ QHash<int, QByteArray> FolderModel::roleNames() const
|
||||
roles[AddedRole] = "added";
|
||||
roles[UpdatedRole] = "updated";
|
||||
roles[ShowRecentRole] = "show_recent";
|
||||
roles[RecentRangeRole] = "recent_range";
|
||||
|
||||
return roles;
|
||||
}
|
||||
@ -185,6 +186,9 @@ QVariant FolderModel::data(const QModelIndex &index, int role) const
|
||||
if (role == FolderModel::ShowRecentRole)
|
||||
return showRecent;
|
||||
|
||||
if (role == FolderModel::RecentRangeRole)
|
||||
return recentDays * 86400;
|
||||
|
||||
if (role != Qt::DisplayRole)
|
||||
return QVariant();
|
||||
|
||||
@ -655,6 +659,16 @@ void FolderModel::setShowRecent(bool showRecent)
|
||||
emit dataChanged(index(0, 0), index(rowCount() - 1, 0), { FolderModel::ShowRecentRole });
|
||||
}
|
||||
|
||||
void FolderModel::setRecentRange(int days)
|
||||
{
|
||||
if (this->recentDays == days)
|
||||
return;
|
||||
|
||||
this->recentDays = days;
|
||||
|
||||
emit dataChanged(index(0, 0), index(rowCount() - 1, 0), { FolderModel::RecentRangeRole });
|
||||
}
|
||||
|
||||
void FolderModel::deleteFolder(const QModelIndex &mi)
|
||||
{
|
||||
beginRemoveRows(mi.parent(), mi.row(), mi.row());
|
||||
|
Reference in New Issue
Block a user