X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/525fdd8afc1468dc72e6a150cf75dee4c330bdcd..613a132a3697db603bca593a36f91ee3f9ccafdd:/src/dolphinmodel.cpp diff --git a/src/dolphinmodel.cpp b/src/dolphinmodel.cpp index e74df4d3f..b0e5ef5c4 100644 --- a/src/dolphinmodel.cpp +++ b/src/dolphinmodel.cpp @@ -29,6 +29,7 @@ #include #include #include +#include #endif #include @@ -47,6 +48,8 @@ #include #include +static const char *others = I18N_NOOP2("@title:group Name", "Others"); + DolphinModel::DolphinModel(QObject *parent) : KDirModel(parent) { @@ -89,7 +92,7 @@ QVariant DolphinModel::data(const QModelIndex &index, int role) const if (name.size() > 1 && name.at(1).isLetter()) { retString = name.at(1).toUpper(); } else { - retString = i18nc("@title:group Name", "Others"); + retString = i18nc("@title:group Name", others); } } else { retString = name.at(0).toUpper(); @@ -103,14 +106,14 @@ QVariant DolphinModel::data(const QModelIndex &index, int role) const if (currA->isLetter()) { validCategory = true; } else if (currA->isDigit()) { - return i18nc("@title:group", "Others"); + return i18nc("@title:group Name", others); } else { ++currA; } } if (!validCategory) { - retString = validCategory ? *currA : i18nc("@title:group Name", "Others"); + retString = validCategory ? *currA : i18nc("@title:group Name", others); } else { retString = *currA; } @@ -134,8 +137,7 @@ QVariant DolphinModel::data(const QModelIndex &index, int role) const } case KDirModel::ModifiedTime: { - KDateTime modifiedTime; - modifiedTime.setTime_t(item.time(KIO::UDSEntry::UDS_MODIFICATION_TIME)); + KDateTime modifiedTime = item.time(KFileItem::ModificationTime); modifiedTime = modifiedTime.toLocalZone(); retString = modifiedTime.toString(i18nc("Prints out the month and year: %B is full month name in current locale, and %Y is full year number", "%B, %Y")); @@ -241,6 +243,10 @@ QVariant DolphinModel::data(const QModelIndex &index, int role) const switch (index.column()) { case KDirModel::Name: { retVariant = data(index, KCategorizedSortFilterProxyModel::CategoryDisplayRole); + + if (retVariant == i18nc("@title:group Name", others)) + retVariant = QString(QChar(QChar::ReplacementCharacter)); + break; } @@ -259,8 +265,7 @@ QVariant DolphinModel::data(const QModelIndex &index, int role) const } case KDirModel::ModifiedTime: { - KDateTime modifiedTime; - modifiedTime.setTime_t(item.time(KIO::UDSEntry::UDS_MODIFICATION_TIME)); + KDateTime modifiedTime = item.time(KFileItem::ModificationTime); modifiedTime = modifiedTime.toLocalZone(); retVariant = -(modifiedTime.date().year() * 100 + modifiedTime.date().month()); @@ -325,7 +330,7 @@ quint32 DolphinModel::ratingForIndex(const QModelIndex& index) const DolphinModel* dolphinModel = static_cast(index.model()); KFileItem item = dolphinModel->itemForIndex(index); if (!item.isNull()) { - const Nepomuk::Resource resource(item.url().url(), Nepomuk::NFO::File()); + const Nepomuk::Resource resource(item.url().url(), Soprano::Vocabulary::Xesam::File()); rating = resource.rating(); } return rating; @@ -343,7 +348,7 @@ QString DolphinModel::tagsForIndex(const QModelIndex& index) const DolphinModel* dolphinModel = static_cast(index.model()); KFileItem item = dolphinModel->itemForIndex(index); if (!item.isNull()) { - const Nepomuk::Resource resource(item.url().url(), Nepomuk::NFO::File()); + const Nepomuk::Resource resource(item.url().url(), Soprano::Vocabulary::Xesam::File()); const QList tags = resource.tags(); QStringList stringList; foreach (const Nepomuk::Tag& tag, tags) {