From 1a9b2dadcf125a606b4e039c2b46b084c0bf8eec Mon Sep 17 00:00:00 2001
From: Christiaan Janssen <christiaan.janssen@nokia.com>
Date: Thu, 1 Apr 2010 17:21:18 +0200
Subject: [PATCH] QmlDesigner.ProjectExplorer:  New icons for qml file types

---
 src/plugins/qmljseditor/images/qmlfile.png        | Bin 0 -> 385 bytes
 src/plugins/qmljseditor/qmljseditor.qrc           |   3 ++-
 src/plugins/qmljseditor/qmljseditorplugin.cpp     |   4 ++++
 .../qmlprojectmanager/images/qmlfolder.png        | Bin 0 -> 351 bytes
 .../qmlprojectmanager/images/qmlproject.png       | Bin 0 -> 558 bytes
 src/plugins/qmlprojectmanager/qmlproject.qrc      |   4 +++-
 src/plugins/qmlprojectmanager/qmlprojectnodes.cpp |   9 +++++++++
 .../qmlprojectmanager/qmlprojectplugin.cpp        |   4 ++++
 8 files changed, 22 insertions(+), 2 deletions(-)
 create mode 100644 src/plugins/qmljseditor/images/qmlfile.png
 create mode 100644 src/plugins/qmlprojectmanager/images/qmlfolder.png
 create mode 100644 src/plugins/qmlprojectmanager/images/qmlproject.png

diff --git a/src/plugins/qmljseditor/images/qmlfile.png b/src/plugins/qmljseditor/images/qmlfile.png
new file mode 100644
index 0000000000000000000000000000000000000000..568a6dd8509cf0ccbd49b8487410883f70678b36
GIT binary patch
literal 385
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^Rm@
z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgg47Dhf(mbv})K%I<?o-U3d7N_4%
z+V6G5LEu=u`7<6)wmzGNqE`NdWaW;f3+8ZGuG=<IIR5CVpbesm(JOmfe=v!OEsyxY
z;uth%V}w)LTA@u3rL=YbBqXFgKY#9w`G@}d?(fwPMowF*<Rs$yW1l_SguDyiQjWd4
zW-R?%|IVHL*83DVZtSh|xs@NcHe+qD;K3;F2E(>ht2DZpvU8PVD{_-7%BFUF;rK1*
ze_VNM-MUG6hi)Yt-8ffJE4$L-R`C2?M<kdJ+<v)`slwJWp!?e+kr(=$*3-*7Gq*;I
zM_t)>xapb|>ko~6H}>rCO}jjC)#PWpRHDAkcs<GSfpA;m;U?$gdCymNnCw4RX!Gy)
b^dG!;rY7B2*{h)q3?BwhS3j3^P6<r_LH?b`

literal 0
HcmV?d00001

diff --git a/src/plugins/qmljseditor/qmljseditor.qrc b/src/plugins/qmljseditor/qmljseditor.qrc
index 11ad582e93e..38e57bac808 100644
--- a/src/plugins/qmljseditor/qmljseditor.qrc
+++ b/src/plugins/qmljseditor/qmljseditor.qrc
@@ -1,5 +1,6 @@
 <RCC>
-    <qresource prefix="/qmljseditor" >
+    <qresource prefix="/qmljseditor">
         <file>QmlJSEditor.mimetypes.xml</file>
+        <file>images/qmlfile.png</file>
     </qresource>
 </RCC>
diff --git a/src/plugins/qmljseditor/qmljseditorplugin.cpp b/src/plugins/qmljseditor/qmljseditorplugin.cpp
index 65e2835a8f7..e1171190cd8 100644
--- a/src/plugins/qmljseditor/qmljseditorplugin.cpp
+++ b/src/plugins/qmljseditor/qmljseditorplugin.cpp
@@ -41,6 +41,7 @@
 #include <coreplugin/coreconstants.h>
 #include <coreplugin/mimedatabase.h>
 #include <coreplugin/uniqueidmanager.h>
+#include <coreplugin/fileiconprovider.h>
 #include <coreplugin/actionmanager/actionmanager.h>
 #include <coreplugin/actionmanager/actioncontainer.h>
 #include <coreplugin/actionmanager/command.h>
@@ -147,6 +148,9 @@ bool QmlJSEditorPlugin::initialize(const QStringList & /*arguments*/, QString *e
 
     error_message->clear();
 
+    Core::FileIconProvider *iconProvider = Core::FileIconProvider::instance();
+    iconProvider->registerIconOverlayForSuffix(QIcon(":/qmljseditor/images/qmlfile.png"), "qml");
+
     return true;
 }
 
diff --git a/src/plugins/qmlprojectmanager/images/qmlfolder.png b/src/plugins/qmlprojectmanager/images/qmlfolder.png
new file mode 100644
index 0000000000000000000000000000000000000000..6192ff6c47a12d97070754ed4f147087854694ef
GIT binary patch
literal 351
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^Rm@
z;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgg47Diqcu~oX;y?{dZJzX3_EKa|j
zxY3I_P{7sySa0HVotD3ho)hCYY~$hJJan4<M#rP|OS~jKv=8k&x8)IkMAsAPX&YR7
zj&68U9j2XKVYae3an;W6=VbNf6fl+a35vQ-?B>XvrF2~4Na2|uKhH9_w0no1b!B;P
z%W%%})vjaJ|I?*h7IGi{Ia%=Kgc9X@@72n-Y<M=I*zg5&OZ<wx&%b`VRhQXX%-3-C
zaWCtSni;pu%rh?73a<;xejHUOy}0a80{5y}%sJoh$LPhMIsW&E*`m2&OP&i_ua!7r
sJ4uD}dc?F;J*EBOn{{UYy?%m!_m>z(lNM2KpjR0@UHx3vIVCg!0M$T@NB{r;

literal 0
HcmV?d00001

diff --git a/src/plugins/qmlprojectmanager/images/qmlproject.png b/src/plugins/qmlprojectmanager/images/qmlproject.png
new file mode 100644
index 0000000000000000000000000000000000000000..e28bdc4d9a8941525755f93a6f71d68fc1b847f1
GIT binary patch
literal 558
zcmV+}0@3}6P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00001b5ch_0Itp)
z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igPy
z4mCR~=~C1H00FK^L_t(I%k7dqYZOrwhM&1R!;leFW<e4BL<A8vT_P%|hzX(_G3;n%
zk!BMKh@HPcY^($k#E;Hqubq`daf@IKE+}FMWC=E+1SN$TvvX(eJvO_Gm8{tMz$p$K
zUf%Pb1ONGFyncqROy3l77SE<EEU%6LjpodK)3?CT=#&f|*vtCb3PDM+_-WOef(Fp=
zvMj4Br4SJSoO4)f5s_Y<xpbqdAKzm3%{yiqbA<Lg(Llh<<~MwRJ-44!mGX!JpSQI!
zz3+~${_bEW5DkQ!J~2dQEcYHg<>2-L00m%0crkHK|HyKja{w$(U(^5#S1)LQ!dlvG
z!?EGR1c8rq#C?FEq&WHTS=DtccUJ*=y)ilI&y3GsR><=LualkvSh{{$&(|tic^=L=
zK2D8k5#ja3S>4THEp21+oae9RxmFuTbp^sOOwu%ELrL*rvZ6(VIF6Gzj+5QnwkG9r
zIkDEU-p(*4XLjyAm64;pe0+d7j*~x~@zDNV+<j2z_>n;XTCLXKJyMt9(Mj=xfE}An
wu`$ALE_WRCOJQY8VNHGME909Y&I6}@0X+@FZFG!&kN^Mx07*qoM6N<$f}DNu2LJ#7

literal 0
HcmV?d00001

diff --git a/src/plugins/qmlprojectmanager/qmlproject.qrc b/src/plugins/qmlprojectmanager/qmlproject.qrc
index 3a446209bf7..82f0873a092 100644
--- a/src/plugins/qmlprojectmanager/qmlproject.qrc
+++ b/src/plugins/qmlprojectmanager/qmlproject.qrc
@@ -1,5 +1,7 @@
 <RCC>
-    <qresource prefix="/qmlproject" >
+    <qresource prefix="/qmlproject">
         <file>QmlProject.mimetypes.xml</file>
+        <file>images/qmlfolder.png</file>
+        <file>images/qmlproject.png</file>
     </qresource>
 </RCC>
diff --git a/src/plugins/qmlprojectmanager/qmlprojectnodes.cpp b/src/plugins/qmlprojectmanager/qmlprojectnodes.cpp
index bbf344cfb44..2569b5a0c1c 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectnodes.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectnodes.cpp
@@ -32,11 +32,13 @@
 #include "qmlproject.h"
 
 #include <coreplugin/ifile.h>
+#include <coreplugin/fileiconprovider.h>
 #include <projectexplorer/projectexplorer.h>
 
 #include <QFileInfo>
 #include <QDir>
 #include <QTextStream>
+#include <QStyle>
 
 namespace QmlProjectManager {
 namespace Internal {
@@ -47,6 +49,13 @@ QmlProjectNode::QmlProjectNode(QmlProject *project, Core::IFile *projectFile)
       m_projectFile(projectFile)
 {
     setDisplayName(QFileInfo(projectFile->fileName()).completeBaseName());
+    // make overlay
+    const QSize desiredSize = QSize(16, 16);
+    const QIcon projectBaseIcon(QLatin1String(":/qmlproject/images/qmlfolder.png"));
+    const QPixmap projectPixmap = Core::FileIconProvider::overlayIcon(QStyle::SP_DirIcon,
+                                                                      projectBaseIcon,
+                                                                      desiredSize);
+    setIcon(QIcon(projectPixmap));
 }
 
 QmlProjectNode::~QmlProjectNode()
diff --git a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp
index ff4abcbc982..3077d69f06c 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp
@@ -40,6 +40,7 @@
 
 #include <extensionsystem/pluginmanager.h>
 
+#include <coreplugin/fileiconprovider.h>
 #include <coreplugin/icore.h>
 #include <coreplugin/mimedatabase.h>
 
@@ -85,6 +86,9 @@ bool QmlProjectPlugin::initialize(const QStringList &, QString *errorMessage)
 
     QmlProjectFileFormat::registerDeclarativeTypes();
 
+    Core::FileIconProvider *iconProvider = Core::FileIconProvider::instance();
+    iconProvider->registerIconOverlayForSuffix(QIcon(":/qmlproject/images/qmlproject.png"), "qmlproject");
+
     return true;
 }
 
-- 
GitLab