diff --git a/src/allimagesmodel.h b/src/allimagesmodel.h --- a/src/allimagesmodel.h +++ b/src/allimagesmodel.h @@ -32,9 +32,9 @@ FilePathRole = Qt::UserRole + 1 }; - virtual QHash roleNames() const; - virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; - virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + QHash roleNames() const override; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; private Q_SLOTS: void slotPopulate(); diff --git a/src/exiv2extractor.cpp b/src/exiv2extractor.cpp --- a/src/exiv2extractor.cpp +++ b/src/exiv2extractor.cpp @@ -113,7 +113,7 @@ QDateTime val = dateTimeFromString(value.toString().c_str()); if (val.isValid()) { // Datetime is stored in exif as local time. - val.setUtcOffset(0); + val.setOffsetFromUtc(0); return val; } } diff --git a/src/filesystemtracker.cpp b/src/filesystemtracker.cpp --- a/src/filesystemtracker.cpp +++ b/src/filesystemtracker.cpp @@ -54,7 +54,7 @@ connect(kdirnotify, &org::kde::KDirNotify::FilesAdded, this, &FileSystemTracker::setSubFolder); connect(kdirnotify, &org::kde::KDirNotify::FileRenamedWithLocalPath, - this, [this](const QString &src, const QString &dst, const QString &dstPath) { + this, [this](const QString &src, const QString &dst, const QString &) { removeFile(src); slotNewFiles({dst}); }); diff --git a/src/imagefoldermodel.h b/src/imagefoldermodel.h --- a/src/imagefoldermodel.h +++ b/src/imagefoldermodel.h @@ -56,7 +56,7 @@ void setUrl(QString& url); QString url() const; - QVariant data(const QModelIndex &index, int role) const; + QVariant data(const QModelIndex &index, int role) const override; int count() const {return rowCount();} Q_INVOKABLE int indexForUrl(const QString &url) const; diff --git a/src/imagelistmodel.h b/src/imagelistmodel.h --- a/src/imagelistmodel.h +++ b/src/imagelistmodel.h @@ -37,9 +37,9 @@ explicit ImageListModel(QObject* parent = 0); ~ImageListModel(); - virtual QHash< int, QByteArray > roleNames() const; - virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; - virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + QHash< int, QByteArray > roleNames() const override; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; Types::LocationGroup locationGroup() const; void setLocationGroup(const Types::LocationGroup &group); diff --git a/src/imagelocationmodel.h b/src/imagelocationmodel.h --- a/src/imagelocationmodel.h +++ b/src/imagelocationmodel.h @@ -34,9 +34,9 @@ public: explicit ImageLocationModel(QObject* parent = 0); - virtual QHash< int, QByteArray > roleNames() const; - virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; - virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + QHash< int, QByteArray > roleNames() const override; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; Types::LocationGroup group() const; void setGroup(Types::LocationGroup group); diff --git a/src/imageprocessorrunnable.h b/src/imageprocessorrunnable.h --- a/src/imageprocessorrunnable.h +++ b/src/imageprocessorrunnable.h @@ -32,7 +32,7 @@ Q_OBJECT public: ImageProcessorRunnable(QString& filePath, ReverseGeoCoder* coder); - virtual void run(); + void run() override; signals: void finished(); diff --git a/src/imageprocessorrunnable.cpp b/src/imageprocessorrunnable.cpp --- a/src/imageprocessorrunnable.cpp +++ b/src/imageprocessorrunnable.cpp @@ -65,7 +65,7 @@ ii.dateTime = extractor.dateTime(); if (ii.dateTime.isNull()) { - ii.dateTime = QFileInfo(m_path).created(); + ii.dateTime = QFileInfo(m_path).birthTime(); } QMetaObject::invokeMethod(ImageStorage::instance(), "addImage", Qt::AutoConnection, Q_ARG(const ImageInfo&, ii)); diff --git a/src/imagestorage.cpp b/src/imagestorage.cpp --- a/src/imagestorage.cpp +++ b/src/imagestorage.cpp @@ -374,7 +374,7 @@ QString year = query.value(0).toString(); QString month = query.value(1).toString(); - QString display = QDate::longMonthName(month.toInt()) + ", " + year; + QString display = QLocale().monthName(month.toInt(), QLocale::LongFormat) + ", " + year; QByteArray key; QDataStream stream(&key, QIODevice::WriteOnly); @@ -396,7 +396,7 @@ QString month = query.value(1).toString(); QString week = query.value(2).toString(); - QString display = "Week " + week + ", " + QDate::longMonthName(month.toInt()) + ", " + year; + QString display = "Week " + week + ", " + QLocale().monthName(month.toInt(), QLocale::LongFormat) + ", " + year; QByteArray key; QDataStream stream(&key, QIODevice::WriteOnly); diff --git a/src/imagetimemodel.h b/src/imagetimemodel.h --- a/src/imagetimemodel.h +++ b/src/imagetimemodel.h @@ -33,9 +33,9 @@ public: explicit ImageTimeModel(QObject* parent = 0); - virtual QHash< int, QByteArray > roleNames() const; - virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; - virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + QHash< int, QByteArray > roleNames() const override; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; Types::TimeGroup group() const; void setGroup(Types::TimeGroup group); diff --git a/src/qmlplugins.h b/src/qmlplugins.h --- a/src/qmlplugins.h +++ b/src/qmlplugins.h @@ -30,8 +30,8 @@ Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") public: - virtual void initializeEngine(QQmlEngine *engine, const char *uri); - virtual void registerTypes(const char *uri); + void initializeEngine(QQmlEngine *engine, const char *uri) override; + void registerTypes(const char *uri) override; }; #endif diff --git a/src/qmlplugins.cpp b/src/qmlplugins.cpp --- a/src/qmlplugins.cpp +++ b/src/qmlplugins.cpp @@ -41,7 +41,11 @@ void QmlPlugins::registerTypes(const char *uri) { +#if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) qmlRegisterType (); +#else + qmlRegisterAnonymousType(uri, 0); +#endif qmlRegisterType (uri, 0, 1, "TagModel"); qmlRegisterType (uri, 0, 1, "ImageLocationModel"); qmlRegisterType (uri, 0, 1, "ImageTimeModel"); diff --git a/src/sortmodel.h b/src/sortmodel.h --- a/src/sortmodel.h +++ b/src/sortmodel.h @@ -45,11 +45,11 @@ QByteArray sortRoleName() const; void setSortRoleName(const QByteArray& name); - QHash roleNames() const; - QVariant data(const QModelIndex & index, int role) const; + QHash roleNames() const override; + QVariant data(const QModelIndex & index, int role) const override; bool lessThan(const QModelIndex & source_left, const QModelIndex & source_right) const override; - virtual void setSourceModel(QAbstractItemModel* sourceModel); + void setSourceModel(QAbstractItemModel* sourceModel) override; bool containImages(); bool hasSelectedImages(); diff --git a/src/sortmodel.cpp b/src/sortmodel.cpp --- a/src/sortmodel.cpp +++ b/src/sortmodel.cpp @@ -127,7 +127,7 @@ case Roles::SelectedRole: { return m_selectionModel->isSelected(index); } - + case Roles::Thumbnail: { QUrl thumbnailSource(QString( /*"file://" + */data( index, Roles::ImageUrlRole).toString())); @@ -141,7 +141,7 @@ m_previewTimer->start(100); const_cast(this)->m_filesToPreview[item.url()] = QPersistentModelIndex(index); } - + case Roles::SourceIndex: { return mapToSource(index).row(); } diff --git a/src/tagmodel.h b/src/tagmodel.h --- a/src/tagmodel.h +++ b/src/tagmodel.h @@ -35,16 +35,16 @@ ColorRole = Qt::UserRole + 1 }; - virtual QHash roleNames() const; - virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; - virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + QHash roleNames() const override; + QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; + int rowCount(const QModelIndex& parent = QModelIndex()) const override; signals: void tagsChanged(); void colorsChanged(); public slots: - virtual bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()); + bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()) override; QStringList tags() const; void setTags(const QStringList& tags);