Add sync date next to "Synchronized with local folder"
authorJavier Llorente <javier@opensuse.org>
Tue, 22 Jan 2019 22:16:57 +0000 (23:16 +0100)
committerJavier Llorente <javier@opensuse.org>
Tue, 22 Jan 2019 22:16:57 +0000 (23:16 +0100)
src/gui/folderstatusdelegate.cpp
src/gui/folderstatusdelegate.h
src/gui/folderstatusmodel.cpp

index d0660b4a28eeda1e1f74a593608580a9b0d58cf8..337530da9221f4206f96181e5a9fd6e5b1d81a75 100644 (file)
@@ -168,6 +168,7 @@ void FolderStatusDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
     QString itemString = qvariant_cast<QString>(index.data(SyncProgressItemString));
     int warningCount = qvariant_cast<int>(index.data(WarningCount));
     bool syncOngoing = qvariant_cast<bool>(index.data(SyncRunning));
+    QDateTime syncDate = qvariant_cast<QDateTime>(index.data(SyncDate));
     bool syncEnabled = qvariant_cast<bool>(index.data(FolderAccountConnected));
 
     QRect iconRect = option.rect;
@@ -252,7 +253,7 @@ void FolderStatusDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
     if (!showProgess) {
         painter->setFont(subFont);
         QString elidedRemotePathText = subFm.elidedText(
-            tr("Synchronized with local folder"),
+            tr("Synchronized with local folder (%1)").arg(syncDate.toTimeSpec(Qt::LocalTime).toString(Qt::SystemLocaleShortDate)),
             Qt::ElideRight, remotePathRect.width());
         painter->drawText(QStyle::visualRect(option.direction, option.rect, remotePathRect),
             textAlign, elidedRemotePathText);
index 2879bdb5e4043f049c081e702dcd6eebd3713d4f..b4902abf0a4b6788fbb8bce33f69065985a9893b 100644 (file)
@@ -44,6 +44,7 @@ public:
         SyncProgressItemString,
         WarningCount,
         SyncRunning,
+        SyncDate,
 
         AddButton // 1 = enabled; 2 = disabled
     };
index 563166f34f898fb5a320b7cfae2e36313bf0bba6..fb16dfacbf66916498a7b30ed44ad2fe556551c9 100644 (file)
@@ -218,6 +218,8 @@ QVariant FolderStatusModel::data(const QModelIndex &index, int role) const
         return f->syncResult().errorStrings();
     case FolderStatusDelegate::SyncRunning:
         return f->syncResult().status() == SyncResult::SyncRunning;
+    case FolderStatusDelegate::SyncDate:
+        return f->syncResult().syncTime();
     case FolderStatusDelegate::HeaderRole:
         return f->shortGuiRemotePathOrAppName();
     case FolderStatusDelegate::FolderAliasRole: