public:
explicit FileActivityListModel(QObject *parent = nullptr);
- QString localPath() const;
+ [[nodiscard]] QString localPath() const;
signals:
void localPathChanged();
namespace OCC {
+Q_LOGGING_CATEGORY(lcFileDetails, "nextcloud.gui.filedetails", QtInfoMsg)
+
FileDetails::FileDetails(QObject *parent)
: QObject(parent)
{
const auto folder = FolderMan::instance()->folderForPath(_localPath);
const auto file = _localPath.mid(folder->cleanPath().length() + 1);
- folder->journalDb()->getFileRecord(file, &_fileRecord);
+ if (!folder->journalDb()->getFileRecord(file, &_fileRecord)) {
+ qCWarning(lcFileDetails) << "Invalid file record for path:"
+ << _localPath
+ << "will not load file details.";
+ }
_filelockState = _fileRecord._lockstate;
updateLockExpireString();
public:
explicit FileDetails(QObject *parent = nullptr);
- QString localPath() const;
- QString name() const;
- QString sizeString() const;
- QString lastChangedString() const;
- QString iconUrl() const;
- QString lockExpireString() const;
- bool isFolder() const;
+ [[nodiscard]] QString localPath() const;
+ [[nodiscard]] QString name() const;
+ [[nodiscard]] QString sizeString() const;
+ [[nodiscard]] QString lastChangedString() const;
+ [[nodiscard]] QString iconUrl() const;
+ [[nodiscard]] QString lockExpireString() const;
+ [[nodiscard]] bool isFolder() const;
public slots:
void setLocalPath(const QString &localPath);
using ShareeSet = QVector<ShareePtr>; // FIXME: make it a QSet<Sharee> when Sharee can be compared
- int rowCount(const QModelIndex &parent = QModelIndex()) const override;
- QHash<int, QByteArray> roleNames() const override;
- QVariant data(const QModelIndex &index, const int role) const override;
+ [[nodiscard]] int rowCount(const QModelIndex &parent = QModelIndex()) const override;
+ [[nodiscard]] QHash<int, QByteArray> roleNames() const override;
+ [[nodiscard]] QVariant data(const QModelIndex &index, const int role) const override;
- AccountState *accountState() const;
- bool shareItemIsFolder() const;
- QString searchString() const;
- bool fetchOngoing() const;
- LookupMode lookupMode() const;
+ [[nodiscard]] AccountState *accountState() const;
+ [[nodiscard]] bool shareItemIsFolder() const;
+ [[nodiscard]] QString searchString() const;
+ [[nodiscard]] bool fetchOngoing() const;
+ [[nodiscard]] LookupMode lookupMode() const;
signals:
void accountStateChanged();
void shareesFetched(const QJsonDocument &reply);
private:
- ShareePtr parseSharee(const QJsonObject &data) const;
+ [[nodiscard]] ShareePtr parseSharee(const QJsonObject &data) const;
QTimer _userStoppedTypingTimer;
explicit ShareModel(QObject *parent = nullptr);
- QVariant data(const QModelIndex &index, const int role) const override;
- int rowCount(const QModelIndex &parent = QModelIndex()) const override;
- QHash<int, QByteArray> roleNames() const override;
+ [[nodiscard]] QVariant data(const QModelIndex &index, const int role) const override;
+ [[nodiscard]] int rowCount(const QModelIndex &parent = QModelIndex()) const override;
+ [[nodiscard]] QHash<int, QByteArray> roleNames() const override;
- AccountState *accountState() const;
- QString localPath() const;
+ [[nodiscard]] AccountState *accountState() const;
+ [[nodiscard]] QString localPath() const;
- bool accountConnected() const;
- bool sharingEnabled() const;
- bool publicLinkSharesEnabled() const;
- bool userGroupSharingEnabled() const;
- bool canShare() const;
+ [[nodiscard]] bool accountConnected() const;
+ [[nodiscard]] bool sharingEnabled() const;
+ [[nodiscard]] bool publicLinkSharesEnabled() const;
+ [[nodiscard]] bool userGroupSharingEnabled() const;
+ [[nodiscard]] bool canShare() const;
- bool fetchOngoing() const;
- bool hasInitialShareFetchCompleted() const;
+ [[nodiscard]] bool fetchOngoing() const;
+ [[nodiscard]] bool hasInitialShareFetchCompleted() const;
signals:
void localPathChanged();
void slotShareExpireDateSet(const QString &shareId);
private:
- QString displayStringForShare(const SharePtr &share) const;
- QString iconUrlForShare(const SharePtr &share) const;
- QString avatarUrlForShare(const SharePtr &share) const;
- long long enforcedMaxExpireDateForShare(const SharePtr &share) const;
- bool expireDateEnforcedForShare(const SharePtr &share) const;
+ [[nodiscard]] QString displayStringForShare(const SharePtr &share) const;
+ [[nodiscard]] QString iconUrlForShare(const SharePtr &share) const;
+ [[nodiscard]] QString avatarUrlForShare(const SharePtr &share) const;
+ [[nodiscard]] long long enforcedMaxExpireDateForShare(const SharePtr &share) const;
+ [[nodiscard]] bool expireDateEnforcedForShare(const SharePtr &share) const;
bool _fetchOngoing = false;
bool _hasInitialShareFetchCompleted = false;
public:
explicit SortedShareModel(QObject *parent = nullptr);
- ShareModel *shareModel() const;
+ [[nodiscard]] ShareModel *shareModel() const;
signals:
void shareModelChanged();
void setShareModel(ShareModel *shareModel);
protected:
- bool lessThan(const QModelIndex &sourceLeft, const QModelIndex &sourceRight) const override;
+ [[nodiscard]] bool lessThan(const QModelIndex &sourceLeft, const QModelIndex &sourceRight) const override;
private slots:
void sortModel();