]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/panels/places/placesitem.cpp
don't use temporaries when uneeded
[dolphin.git] / src / panels / places / placesitem.cpp
index ff81e8e63026c5a5ba55746339bb4403b52df6d9..9f9041bfa72236134c661b24ebf80085dd15cce7 100644 (file)
@@ -38,7 +38,6 @@ PlacesItem::PlacesItem(const KBookmark& bookmark, PlacesItem* parent) :
     m_disc(),
     m_mtp(),
     m_signalHandler(nullptr),
-    m_trashDirLister(nullptr),
     m_bookmark()
 {
     m_signalHandler = new PlacesItemSignalHandler(this);
@@ -48,7 +47,6 @@ PlacesItem::PlacesItem(const KBookmark& bookmark, PlacesItem* parent) :
 PlacesItem::~PlacesItem()
 {
     delete m_signalHandler;
-    delete m_trashDirLister;
 }
 
 void PlacesItem::setUrl(const QUrl &url)
@@ -59,11 +57,8 @@ void PlacesItem::setUrl(const QUrl &url)
     // setting an equal URL results in an itemsChanged()
     // signal.
     if (dataValue("url").toUrl() != url) {
-        delete m_trashDirLister;
         if (url.scheme() == QLatin1String("trash")) {
-            QObject::connect(&Trash::instance(), &Trash::emptinessChanged, [this](bool isTrashEmpty){
-                setIcon(isTrashEmpty ? QStringLiteral("user-trash") : QStringLiteral("user-trash-full"));
-            });
+            QObject::connect(&Trash::instance(), &Trash::emptinessChanged, m_signalHandler.data(), &PlacesItemSignalHandler::onTrashEmptinessChanged);
         }
 
         setDataValue("url", url);
@@ -139,7 +134,7 @@ void PlacesItem::setBookmark(const KBookmark& bookmark)
     const QString udi = bookmark.metaDataItem(QStringLiteral("UDI"));
     if (udi.isEmpty()) {
         setIcon(bookmark.icon());
-        setText(i18nc("KFile System Bookmarks", bookmark.text().toUtf8().constData()));
+        setText(i18ndc("kio5", "KFile System Bookmarks", bookmark.text().toUtf8().constData()));
         setUrl(bookmark.url());
         setSystemItem(bookmark.metaDataItem(QStringLiteral("isSystemItem")) == QLatin1String("true"));
     } else {
@@ -245,7 +240,7 @@ void PlacesItem::updateBookmarkForRole(const QByteArray& role)
         //
         // NOTE: It is important to use "KFile System Bookmarks" as context
         // (see PlacesItemModel::createSystemBookmarks()).
-        if (text() != i18nc("KFile System Bookmarks", m_bookmark.text().toUtf8().data())) {
+        if (text() != i18ndc("kio5", "KFile System Bookmarks", m_bookmark.text().toUtf8().data())) {
             m_bookmark.setFullText(text());
         }
     } else if (role == "url") {