# # # patch "src/util/IconProvider.cpp" # from [50010e2667d22c4df62b561115be814e694d6a27] # to [2a1d882189b0e4a1b047fbf5c2d7cf5ab36e99b1] # # patch "src/util/IconProvider.h" # from [2b2f908c2f64b59def8971d445238252fde01e66] # to [28d9295d56473b98521a31e71a60d6afb1bb8697] # ============================================================ --- src/util/IconProvider.cpp 50010e2667d22c4df62b561115be814e694d6a27 +++ src/util/IconProvider.cpp 2a1d882189b0e4a1b047fbf5c2d7cf5ab36e99b1 @@ -82,6 +82,9 @@ IconProvider::IconProvider() // file icon QPainter filePainter(&fileImage); + if (i.key() == "ignored") + filePainter.setCompositionMode(QPainter::CompositionMode_SourceAtop); + filePainter.drawImage( 0, 0, overlay.scaled(fileImage.width(), fileImage.height()) @@ -91,12 +94,16 @@ IconProvider::IconProvider() // folder icons QPainter folderPainter1(&folderImageClosed); + if (i.key() == "ignored") + folderPainter1.setCompositionMode(QPainter::CompositionMode_SourceAtop); folderPainter1.drawImage( 0, 0, overlay.scaled(folderImageClosed.width(), folderImageClosed.height()) ); folderPainter1.end(); QPainter folderPainter2(&folderImageOpened); + if (i.key() == "ignored") + folderPainter2.setCompositionMode(QPainter::CompositionMode_SourceAtop); folderPainter2.drawImage( 0, 0, overlay.scaled(folderImageOpened.width(), folderImageOpened.height()) @@ -211,11 +218,25 @@ QIcon IconProvider::getPlainFileIcon() c QIcon IconProvider::getPlainFileIcon() const { - return fileIcons.value("default"); + return getFileIcon("default"); } QIcon IconProvider::getPlainFolderIcon() const { - return folderIcons.value("default"); + return getFolderIcon("default"); } +QIcon IconProvider::getFileIcon(const QString & name) const +{ + if (!fileIcons.contains(name)) + return QIcon(); + return fileIcons.value(name); +} + +QIcon IconProvider::getFolderIcon(const QString & name) const +{ + if (!folderIcons.contains(name)) + return QIcon(); + return folderIcons.value(name); +} + ============================================================ --- src/util/IconProvider.h 2b2f908c2f64b59def8971d445238252fde01e66 +++ src/util/IconProvider.h 28d9295d56473b98521a31e71a60d6afb1bb8697 @@ -35,10 +35,10 @@ public: QIcon getIcon(const ModelItem * item) const; QIcon getPlainFileIcon() const; + QIcon getFileIcon(const QString &) const; QIcon getPlainFolderIcon() const; + QIcon getFolderIcon(const QString &) const; - static const int CdUp; - private: IconProvider(); static IconProvider * instance;