]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Simplified the clickable resource metadata display. This also fixes a bug where somet...
authorSebastian Trueg <sebastian@trueg.de>
Sat, 21 Nov 2009 09:33:37 +0000 (09:33 +0000)
committerSebastian Trueg <sebastian@trueg.de>
Sat, 21 Nov 2009 09:33:37 +0000 (09:33 +0000)
svn path=/trunk/KDE/kdebase/apps/; revision=1052237

src/panels/information/kloadmetadatathread.cpp
src/panels/information/kloadmetadatathread_p.h
src/panels/information/kmetadatawidget.cpp

index b942c20386f9c43c14a68ce47a82dd39df35d5d4..fa1f3e1e914f4e5f9457e92cbdd19d9c05bf6cc6 100644 (file)
@@ -23,6 +23,7 @@
 #include <kconfiggroup.h>
 #include <kglobal.h>
 #include <klocale.h>
+#include <kdebug.h>
 
 #include <nepomuk/resource.h>
 
@@ -100,11 +101,7 @@ void KLoadMetaDataThread::run()
                     Item item;
                     item.name = prop.name();
                     item.label = tunedLabel(prop.label());
-                    if (it.value().isResource() || it.value().isResourceList()) {
-                        item.resources = it.value().toResourceList();
-                    } else {
-                        item.value = formatValue(it.value());
-                    }
+                    item.value = formatValue(it.value());
                     m_items.append(item);
                 }
                 ++it;
@@ -168,14 +165,14 @@ QString  KLoadMetaDataThread::formatValue(const Nepomuk::Variant& value)
 {
     if (value.isDateTime()) {
         return KGlobal::locale()->formatDateTime(value.toDateTime(), KLocale::FancyLongDate);
-    } else if (value.isResource()) {
-        return value.toResource().genericLabel();
-    } else if (value.isResourceList()) {
-        QStringList list;
+    } else if (value.isResource() || value.isResourceList()) {
+        QStringList links;
         foreach(const Nepomuk::Resource& res, value.toResourceList()) {
-            list << res.genericLabel();
+            links << QString::fromLatin1("<a href=\"%1\">%2</a>")
+                .arg(KUrl(res.resourceUri()).url())
+                .arg(res.genericLabel());
         }
-        return list.join(QLatin1String(";\n"));
+        return QLatin1String("<p>") + links.join(QLatin1String(";\n"));
     } else {
         return value.toString();
     }
index 885e975fc41273a6401f586b7f6b4ab4f4b68b9e..08e4b0855efdd8ac4da50fc9ab0efeae68edc8dd 100644 (file)
@@ -42,7 +42,6 @@ public:
         QString name;
         QString label;
         QString value;
-        QList<Nepomuk::Resource> resources;
     };
 
     KLoadMetaDataThread();
index 7e99c45ff039cac7aba99d42ebcd827a72649686..7109fd282e4d40b7dbf09ed74b00205e152a3623 100644 (file)
@@ -108,12 +108,6 @@ public:
      * Merges items like 'width' and 'height' as one item.
      */
     QList<KLoadMetaDataThread::Item> mergedItems(const QList<KLoadMetaDataThread::Item>& items);
-
-    /**
-     * Returns a (clickable) text for the given item, that can be used for
-     * the information value widget.
-     */
-    QString labelText(const KLoadMetaDataThread::Item& item) const;
 #endif
 
     bool m_sizeVisible;
@@ -372,7 +366,7 @@ void KMetaDataWidget::Private::slotLoadingFinished()
         } else {
             // create new row
             QLabel* infoLabel = new QLabel(item.label, q);
-            QLabel* infoValue = new QLabel(labelText(item), q);
+            QLabel* infoValue = new QLabel(item.value, q);
             connect(infoValue, SIGNAL(linkActivated(QString)),
                     q, SLOT(slotLinkActivated(QString)));
             addRow(infoLabel, infoValue);
@@ -503,21 +497,6 @@ QList<KLoadMetaDataThread::Item>
 
     return mergedItems;
 }
-
-QString KMetaDataWidget::Private::labelText(const KLoadMetaDataThread::Item& item) const
-{
-    if (item.resources.isEmpty()) {
-        return item.value;
-    }
-
-    QStringList links;
-    foreach(const Nepomuk::Resource& res, item.resources) {
-        links << QString::fromLatin1("<a href=\"%1\">%2</a>")
-            .arg(KUrl(res.resourceUri()).url())
-            .arg(res.genericLabel());
-    }
-    return QLatin1String("<p>") + links.join(QLatin1String(";\n"));
-}
 #endif
 
 KMetaDataWidget::KMetaDataWidget(QWidget* parent) :