From 398ad5a40a8d593a75f8e98df552bc49008dff88 Mon Sep 17 00:00:00 2001
From: Alexander Izmailov <yarolig@gmail.com>
Date: Thu, 30 Oct 2014 19:43:48 +0300
Subject: [PATCH] Add icons for static fields and functions.

Icons for static members in completion list now with S letter.
Task-number: QTCREATORBUG-203
Change-Id: I6c997ad14eeb500936ffe73e2fc0ad8e552a46c9
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
---
 src/libs/cplusplus/Icons.cpp               |  37 ++++++++++++++++-----
 src/libs/cplusplus/Icons.h                 |  12 +++++++
 src/libs/cplusplus/cplusplus.qrc           |   8 ++++-
 src/libs/cplusplus/images/func_priv_st.png | Bin 0 -> 685 bytes
 src/libs/cplusplus/images/func_prot_st.png | Bin 0 -> 679 bytes
 src/libs/cplusplus/images/func_st.png      | Bin 0 -> 651 bytes
 src/libs/cplusplus/images/static.png       | Bin 0 -> 164 bytes
 src/libs/cplusplus/images/var_priv_st.png  | Bin 0 -> 676 bytes
 src/libs/cplusplus/images/var_prot_st.png  | Bin 0 -> 658 bytes
 src/libs/cplusplus/images/var_st.png       | Bin 0 -> 629 bytes
 src/plugins/classview/classviewutils.cpp   |   6 ++++
 11 files changed, 53 insertions(+), 10 deletions(-)
 create mode 100644 src/libs/cplusplus/images/func_priv_st.png
 create mode 100644 src/libs/cplusplus/images/func_prot_st.png
 create mode 100644 src/libs/cplusplus/images/func_st.png
 create mode 100644 src/libs/cplusplus/images/static.png
 create mode 100644 src/libs/cplusplus/images/var_priv_st.png
 create mode 100644 src/libs/cplusplus/images/var_prot_st.png
 create mode 100644 src/libs/cplusplus/images/var_st.png

diff --git a/src/libs/cplusplus/Icons.cpp b/src/libs/cplusplus/Icons.cpp
index 3d60574808f..1405b178e67 100644
--- a/src/libs/cplusplus/Icons.cpp
+++ b/src/libs/cplusplus/Icons.cpp
@@ -46,10 +46,16 @@ Icons::Icons()
       _funcPublicIcon(QLatin1String(":/codemodel/images/func.png")),
       _funcProtectedIcon(QLatin1String(":/codemodel/images/func_prot.png")),
       _funcPrivateIcon(QLatin1String(":/codemodel/images/func_priv.png")),
+      _funcPublicStaticIcon(QLatin1String(":/codemodel/images/func_st.png")),
+      _funcProtectedStaticIcon(QLatin1String(":/codemodel/images/func_prot_st.png")),
+      _funcPrivateStaticIcon(QLatin1String(":/codemodel/images/func_priv_st.png")),
       _namespaceIcon(QLatin1String(":/codemodel/images/namespace.png")),
       _varPublicIcon(QLatin1String(":/codemodel/images/var.png")),
       _varProtectedIcon(QLatin1String(":/codemodel/images/var_prot.png")),
       _varPrivateIcon(QLatin1String(":/codemodel/images/var_priv.png")),
+      _varPublicStaticIcon(QLatin1String(":/codemodel/images/var_st.png")),
+      _varProtectedStaticIcon(QLatin1String(":/codemodel/images/var_prot_st.png")),
+      _varPrivateStaticIcon(QLatin1String(":/codemodel/images/var_priv_st.png")),
       _signalIcon(QLatin1String(":/codemodel/images/signal.png")),
       _slotPublicIcon(QLatin1String(":/codemodel/images/slot.png")),
       _slotProtectedIcon(QLatin1String(":/codemodel/images/slot_prot.png")),
@@ -99,21 +105,22 @@ Icons::IconType Icons::iconTypeForSymbol(const Symbol *symbol)
         } else if (function->isSignal()) {
             return SignalIconType;
         } else if (symbol->isPublic()) {
-            return FuncPublicIconType;
+            return symbol->isStatic() ? FuncPublicStaticIconType : FuncPublicIconType;
         } else if (symbol->isProtected()) {
-            return FuncProtectedIconType;
+            return symbol->isStatic() ? FuncProtectedStaticIconType : FuncProtectedIconType;
         } else if (symbol->isPrivate()) {
-            return FuncPrivateIconType;
+            return symbol->isStatic() ? FuncPrivateStaticIconType : FuncPrivateIconType;
         }
     } else if (symbol->enclosingScope() && symbol->enclosingScope()->isEnum()) {
         return EnumeratorIconType;
     } else if (symbol->isDeclaration() || symbol->isArgument()) {
-        if (symbol->isPublic())
-            return VarPublicIconType;
-        else if (symbol->isProtected())
-            return VarProtectedIconType;
-        else if (symbol->isPrivate())
-            return VarPrivateIconType;
+        if (symbol->isPublic()) {
+            return symbol->isStatic() ? VarPublicStaticIconType : VarPublicIconType;
+        } else if (symbol->isProtected()) {
+            return symbol->isStatic() ? VarProtectedStaticIconType : VarProtectedIconType;
+        } else if (symbol->isPrivate()) {
+            return symbol->isStatic() ? VarPrivateStaticIconType : VarPrivateIconType;
+        }
     } else if (symbol->isEnum()) {
         return EnumIconType;
     } else if (symbol->isForwardClassDeclaration()) {
@@ -156,6 +163,12 @@ QIcon Icons::iconForType(IconType type) const
         return _funcProtectedIcon;
     case FuncPrivateIconType:
         return _funcPrivateIcon;
+    case FuncPublicStaticIconType:
+        return _funcPublicStaticIcon;
+    case FuncProtectedStaticIconType:
+        return _funcProtectedStaticIcon;
+    case FuncPrivateStaticIconType:
+        return _funcPrivateStaticIcon;
     case NamespaceIconType:
         return _namespaceIcon;
     case VarPublicIconType:
@@ -164,6 +177,12 @@ QIcon Icons::iconForType(IconType type) const
         return _varProtectedIcon;
     case VarPrivateIconType:
         return _varPrivateIcon;
+    case VarPublicStaticIconType:
+        return _varPublicStaticIcon;
+    case VarProtectedStaticIconType:
+        return _varProtectedStaticIcon;
+    case VarPrivateStaticIconType:
+        return _varPrivateStaticIcon;
     case SignalIconType:
         return _signalIcon;
     case SlotPublicIconType:
diff --git a/src/libs/cplusplus/Icons.h b/src/libs/cplusplus/Icons.h
index f042f901500..1e6802c7260 100644
--- a/src/libs/cplusplus/Icons.h
+++ b/src/libs/cplusplus/Icons.h
@@ -57,10 +57,16 @@ public:
         FuncPublicIconType,
         FuncProtectedIconType,
         FuncPrivateIconType,
+        FuncPublicStaticIconType,
+        FuncProtectedStaticIconType,
+        FuncPrivateStaticIconType,
         NamespaceIconType,
         VarPublicIconType,
         VarProtectedIconType,
         VarPrivateIconType,
+        VarPublicStaticIconType,
+        VarProtectedStaticIconType,
+        VarPrivateStaticIconType,
         SignalIconType,
         SlotPublicIconType,
         SlotProtectedIconType,
@@ -81,10 +87,16 @@ private:
     QIcon _funcPublicIcon;
     QIcon _funcProtectedIcon;
     QIcon _funcPrivateIcon;
+    QIcon _funcPublicStaticIcon;
+    QIcon _funcProtectedStaticIcon;
+    QIcon _funcPrivateStaticIcon;
     QIcon _namespaceIcon;
     QIcon _varPublicIcon;
     QIcon _varProtectedIcon;
     QIcon _varPrivateIcon;
+    QIcon _varPublicStaticIcon;
+    QIcon _varProtectedStaticIcon;
+    QIcon _varPrivateStaticIcon;
     QIcon _signalIcon;
     QIcon _slotPublicIcon;
     QIcon _slotProtectedIcon;
diff --git a/src/libs/cplusplus/cplusplus.qrc b/src/libs/cplusplus/cplusplus.qrc
index 577d35cb45d..9b5812d83c1 100644
--- a/src/libs/cplusplus/cplusplus.qrc
+++ b/src/libs/cplusplus/cplusplus.qrc
@@ -1,5 +1,5 @@
 <RCC>
-    <qresource prefix="/codemodel" >
+    <qresource prefix="/codemodel">
         <file>images/class.png</file>
         <file>images/struct.png</file>
         <file>images/enum.png</file>
@@ -17,5 +17,11 @@
         <file>images/var.png</file>
         <file>images/var_priv.png</file>
         <file>images/var_prot.png</file>
+        <file>images/func_priv_st.png</file>
+        <file>images/func_prot_st.png</file>
+        <file>images/func_st.png</file>
+        <file>images/var_priv_st.png</file>
+        <file>images/var_prot_st.png</file>
+        <file>images/var_st.png</file>
     </qresource>
 </RCC>
diff --git a/src/libs/cplusplus/images/func_priv_st.png b/src/libs/cplusplus/images/func_priv_st.png
new file mode 100644
index 0000000000000000000000000000000000000000..1d6fa2da795a058ffad34a501f397b00a9459926
GIT binary patch
literal 685
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47z+b@LR^8|S_b77PMs!pEg%EP
zMFxj5TAJ82kww@Tm=0z%H?nHL1w|Ry4yHFZu&4t?xEYvbm^ka1)qrd@2JS{q?J52#
z^^B@OlX)3f1R2>HS=INYHr&~DWP4#tGpEj;_?kvG4WQlzR`mvEwK_%>e}DgaX4SyJ
zz!&}NzHUGJX2!PbNnKyIo_Rfe%d<)AAM~y~8c^n<s`q*8saMlBKj~j{J$J$p*Szie
zkt>zGg?Ra&Ph5XHZ}Lg!{C%bgTXn<NsQNCDa%5v>(U4P|>791oz2vBM#%|-dO<Ex<
zmAn_oI=!B~{hD9RX~+CSmZ>`pqBm#+Em!b(cJ$oy_7#^r%1_$m9574TrWdhR&3}oU
z+tVZGfDV(Ble<+o<$`O;F`LZ2CJ9?~!d9#JERu1aDQ>gRG;z04>_)BN6-r*y1kG0|
z`z}*(pC@5IMZjc+h}9&1V^>$#e+lL_z|b)+3GxeO5PtqaEa=LQ2PywPytQMMTm0`s
z&)I1~|2`;I{rWW1^!dN9QU!m${`;f-{NJZfUq5|4_37wqhW%zh?K?bO977}|O%LwX
zV+mwvxcJ`NZIJ+%^1=xT+h?dMIff*0cP<Y&?|f!)%zMQO789wPzB{HCt(w~=VIRKE
z*4=3GJQp#ad$BUUc2y43eA2X;YiE8{Se><dTk5A<-#Daq<(kzxn_XRab8{eD*uUyu
zT`LYVZ)R72a6<X{gXgFA25-Jy*kBbA^8D47UB7L(1K2go^smg$``Pj&PUD*X-gilt
zCrx2G`mbC(Gs?+Vv%XBpM0eq`DLW4*PdXmI^_bzqx4)0;0{y_?>FVdQ&MBb@0MAqo
AG5`Po

literal 0
HcmV?d00001

diff --git a/src/libs/cplusplus/images/func_prot_st.png b/src/libs/cplusplus/images/func_prot_st.png
new file mode 100644
index 0000000000000000000000000000000000000000..d023fe1fd2111ab789b56268e3e73370f74fe85d
GIT binary patch
literal 679
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47z+b@LR^8|S_b77PMs!pEg%EP
zMFxj5TAJ82kww@Tm=0z%H?nHL1w|Ry4yHFZu&4t?xEYvbm^ka1)qrd@2JS{q?J52#
z^^B@OlX)3f1R2@t8CCYBHZ*hU?1`^wWYah~bxE6$F;H(_Ldvf4t_Ehcheyw5$0flH
zf6>40>-Mv6W^B8j)b(ZSnb*^|Je#!sLGQ|=0c9?#dY`wRdNpnHlm0c=b0-{e&D*XY
zxl-9%h?oEQ#PzrHCZBZ9-)EYzRX2Q%s_z0RM>b{_4LQY`-f8FEOO9G+>^6?uq!qGK
z$$Orp{p;D=uld!ScFaFynYz;;dV@yLas`js;<nG*S6uQaKWUe9z$|H-Uc_28|0Qy6
zGexa$6;8R}T5`-LbFWFl7M-yDkrj7VZhv**`aaXd-A1t+wSo^O)V{fRvnVxlm9p=4
zuPixf896z*OEXsFC#TJoR%8Qu&$J}SFPK62`3JF}D?c8j{QL0Mj#X~)zYjfUrv?4{
zpjh?m(@fLn|Gr8U{Q3It`M*!UWj_7W{q*PGy|&IEmOgHv0UJDB977}|Sr2aX3S(qw
zxcL5ns8kCZXI8<*OJ@X@EIjKP@PhGHRsU~}?~yglP6Z``ts2cu)}~gLns?%D+(TKt
zr(Sz-u>0@r<4Z4D-PvDr{QmEyTN-zVM}K&q=eajg`or`3TSxdFOpm;6$8cxOvk%_{
z3U<yqz3zNN_tlu2)=YDL$EH@)^X&T_IkoMt@M=fj(3KCrn)|26uhzQy;o?h^YgZyx
nS^WsIUza_{E%d5-c<5Ii7GBND!0)RAL2>Kp>gTe~DWM4fMB@{E

literal 0
HcmV?d00001

diff --git a/src/libs/cplusplus/images/func_st.png b/src/libs/cplusplus/images/func_st.png
new file mode 100644
index 0000000000000000000000000000000000000000..05119102edc36a447a52ca8c81ea512a9a57f5f3
GIT binary patch
literal 651
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47?T2gLR^7dG*HW++`_5T#I6No
zph+FdXlY{8L>4@l(cH+Y0T*FqU_6-K+`ys^5s_qI=VW9)kls|!tOgMgVPtP{i>zl<
z1sc9Tt*M?-WnXGTGpEj;_?kvGjXFjZpxy>%wR&dN7yawLZa@2G#<uH8U0=4Ic|Cp0
zvq|e8^sYP_Q1*H2saMlBKj~j{J$J$p*Sziekt>zGKW#bneB%1sd6Q2%=kGI3*s2@8
zM%8zLl;el>$L{A%J?~y})H-9gaoi@Ykd;c_^CazG&)$B`ujaI4{vpfMod(exG=i2Z
zc+3{Jecry}l1KSTyPN}NN!#=y)~fk0k#n0VYJID4$_3YwV>X$4O%k@~gsoQbStR2;
zUD$G;Y2t39*o|7jE0nyZ37W4`_FbmnK2O4aih#)s5vxi3#(xWLOagk|xFpCgm?7xO
zj|VBj&p(L0wPTf=^Y25?*=a8SJ}BlNUH$LFOjXan|30PO`Tg&!)W5I)p8xyw_0y+M
z4apa^fZCUOx;TbNNX8!A=yf<iqT%BEXuV^O0^CYbEfJYqm(HF%SpK2#=)&#?FMjZc
zz0R}V;=H5dpvm=<#ZTl5-_KsMtwHA2Z8d(i(|4L=R>z-Q>>c|yswKG8cGrgQJM&WC
zJaaiOyXM~0Q~kF#9t~2Aye@XJRYkq`Xtwx?-s0}*dJfOFi=DS*Sh=kH)$OlJ?6wQD
x-d$ZT^M*4do!{<Rg2LXcZ<Cvy*nB@c7x&t$Yq>k=!7or`d%F6$taD0e0szd&2F?Hg

literal 0
HcmV?d00001

diff --git a/src/libs/cplusplus/images/static.png b/src/libs/cplusplus/images/static.png
new file mode 100644
index 0000000000000000000000000000000000000000..12c244780de35d4ab03c74a147bc5890f82a2250
GIT binary patch
literal 164
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`*`6+rAr`0KURcQ69Kg`>P+xIP
zfM=7#CI?nyfwYXtR$&JxDMYsNPT(+ExNE9uK11B)kdL#2zpI!3>0mRy7g5+PY7?mF
z+V(KRkhAh2v#MFi{WB*nCLNN9eizun8UAKtleO5MLo>Hdo?QQlaZd%`<~u>cZ-CY^
Nc)I$ztaD0e0syVKJKO*O

literal 0
HcmV?d00001

diff --git a/src/libs/cplusplus/images/var_priv_st.png b/src/libs/cplusplus/images/var_priv_st.png
new file mode 100644
index 0000000000000000000000000000000000000000..81ef73f3f94466e4357f94da7ba762ad0c291982
GIT binary patch
literal 676
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47&8KVLR^7dhM*Yk=v2<gWFP~?
zMFRDkcCbYzAqg-ru&~r`+Rhe%B*-Vg7Lf>2!_L7ZEXop=0AfqZa7QL5b@nm>xj<t%
zI2pNlStFC`Hg4N>@k-(RCFN^3u}37bh67Q8zrR02SUf{$d|+VUlBX}ve)}=^)%(b^
zSI>O?G56)WnNMF$d-%+2?@?WQ$1`8Q&w257+T$15mv36_JFc*Phs3<){6a!gpT5ex
zcGvjeNtJE;<kxPKT)IwZ`T`a<HYH6>*D141kDb@pb5wcr9@*7fBo?m`nZ982yHA#<
zujm{)t-kY+;>KMvD>sTQTzUA(vjs2T8lSkRz5k@@_5)JO*Ne_ye)#b-psVEM<T`KO
zH9UG=bMG;gt^4HGY?WNHR(S4G!AY}JHtkm0yjynFX7NR<g=R12>6<3GV5QiCm4Y)D
za`#N-n>drJd$Oym>t418CxO9YP!i-9%pm;ygILg&9}iOgeRylfD!2IGhn}<3f<7o#
z{rWW1^!dN9QU!m${`;f-@6)GGr@nqY+U+s<0Z{L5PZ!4!iSW>q8@-qc8IFH^Z|=__
zBGb1)F~Hv<vtz-6g;6n89LK9Wt7m^^m0_JePhrPN*TNsp7gBU@1r!7xzI&<scWqtJ
z@+d}+=&z?Qmwb<9ycBBtrA>-Y)ML%Q@5fd>T<m0Vy|Hw+`4cB!sT&e1hPlgL&u_5W
zmsR#s%*HeS%JoLAKj-%D$^ZBKIMb#>8gp0e%CWuTU{V<*UiOY5u4RRN@mI-Dwg+Z9
sT<Py`tnr_Cm0|ILdWIeQST+7L{HxKsICXb^8qgaIp00i_>zopr0IbR(UH||9

literal 0
HcmV?d00001

diff --git a/src/libs/cplusplus/images/var_prot_st.png b/src/libs/cplusplus/images/var_prot_st.png
new file mode 100644
index 0000000000000000000000000000000000000000..f078b2fd34058828a59edd71fda8c87d77ae8b81
GIT binary patch
literal 658
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47&8KVLR^7dhM*Yk=v2<gWFP~?
zMFRDkcCbYzAqg-ru&~r`+Rhe%B*-Vg7Lf>2!_L7ZEXop=0AfqZa7QL5b@nm>xj<t%
zI2pNl>o#sHU%QDtB5~@@y+Uyrtl^0XS=r@_SFnaB9KCTXE<FRJ5e$|*eR=lVkGZej
zN1nZU=If8SFW=34`fA$4XI^`c>e@S=`TBj%i?`DrzsSCP(`w&wh4nim<}K$J5}Nw-
zRpzz3#s^QTY}+TlcAMnVbwbk@u&}WyX==JonPqzHyvClR%A5DduHGWCc#Xi+d7IyT
zvOIl7=g?{Oore@R?vh!#QEcH#fyr|gynJhX;-dEcld9VfNG)G4I)6F;#95s;?;0LG
zuetY_%GP~yYqkdNI=J-K-SaPBschP<w0XDes?Cvm4qtfvHl?sga=}WcO*_xOej_ah
z0#nalO3KR*XwJ(4dd;XL$S;^d`1uF1pesKfr2PBv){a$f@xKo}XQu^yP^|j(X{PD(
ze_y2v{`~v*>9@?Mf4ZOk{JYoIX=`My1=PLV)5S4FLX!31MlBWwhK7g#FKad%Nk~kQ
zSw8t_+9nOn&1Z}61m9U*!E`ij3eOX^SWW5f&RtJ_hlFleamnaUgyi`;@u^`Ct8-7>
z{=R5S-}$YAdunxqX1`%blh5R?ZV)f#?PZiZbNB;CL4Mq{vi^_z&d#k&{m)YHdh4l#
z60SU(@TCWT@MJ|zmCA|vxqIK5RUysH&o6uW&YrT0Pyf}km1>teSG_us9Qv2J?~hu6
TT>6qbpt$sO^>bP0l+XkKmZ2H2

literal 0
HcmV?d00001

diff --git a/src/libs/cplusplus/images/var_st.png b/src/libs/cplusplus/images/var_st.png
new file mode 100644
index 0000000000000000000000000000000000000000..2070ca71b6b072b6afb028bb54d670a02af63ccb
GIT binary patch
literal 629
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47=r_RLR^7dbPyE79i7S<namIr
zgC<qKX$M<m60%_ZrtNGINFvNEY!Qi21%kqiZ0syy2@oz5pFnt3EhCT{6jQfxTlv~e
z>=B8q;XstY5Ejo68o%V}%d_8p%zgDf^6b?!Uw_Pf`EKUZSJNIo^V)m#%-8R8Uc8<5
z_(k^Rn^yadE3DrkF>m>qFW;v=eU*9buJOT>D%<wSuiYlObe+)j1;;;sOTF>H^w@cg
zJx7%{?~z@-MPl(9fvNL0zx!l)`ijn>)9O19DQ?^)vvQ-@!j%G(=PY>n*7(Fl?foZJ
zw;zyNzFu_xa{h_4I&a=JJbGSp?=h9F`{dSam0Yq`c<xf(2{TkS?N-{nTXxlE@kOhJ
zW-sRHn<lwnrPzX%f-@I#_e|xRIFqY;^6|js0YE?Nl?3?(GX!1v@gPO``3JGLcC2!9
z{(a~<JI&?a2gUrOt3S+C_5AxO_0I2qU#0&2`}FD4*RN(h=3+pdi#=T&LnI_w4{Cca
zNn~ia_<V}L`wd22=0~Z=9wZ5}%syKG;Jj&u;jNz2vrCR{6Avf|=zhLp)v8rOKe7((
zx+J#8&y2smevS9-AI3A^fBLk|PxnLlK7RfG*KU2TKmJ?r!=DvXmoJSyplmvGK4YEa
zES-8Lxt=W>t&V<X{O<PhiA+Iy$gH(`2YLgSrnyhwVYVvhtXO!Sy?f}&S-N#KJ*&Jz
dW&2mH%HQUoZoY1Y6E7%oJzf1=);T3K0RWMP3Q_<7

literal 0
HcmV?d00001

diff --git a/src/plugins/classview/classviewutils.cpp b/src/plugins/classview/classviewutils.cpp
index df84c472917..009a98d645b 100644
--- a/src/plugins/classview/classviewutils.cpp
+++ b/src/plugins/classview/classviewutils.cpp
@@ -54,6 +54,9 @@ const int IconSortOrder[] = {
     CPlusPlus::Icons::FuncPublicIconType,
     CPlusPlus::Icons::FuncProtectedIconType,
     CPlusPlus::Icons::FuncPrivateIconType,
+    CPlusPlus::Icons::FuncPublicStaticIconType,
+    CPlusPlus::Icons::FuncProtectedStaticIconType,
+    CPlusPlus::Icons::FuncPrivateStaticIconType,
     CPlusPlus::Icons::SignalIconType,
     CPlusPlus::Icons::SlotPublicIconType,
     CPlusPlus::Icons::SlotProtectedIconType,
@@ -61,6 +64,9 @@ const int IconSortOrder[] = {
     CPlusPlus::Icons::VarPublicIconType,
     CPlusPlus::Icons::VarProtectedIconType,
     CPlusPlus::Icons::VarPrivateIconType,
+    CPlusPlus::Icons::VarPublicStaticIconType,
+    CPlusPlus::Icons::VarProtectedStaticIconType,
+    CPlusPlus::Icons::VarPrivateStaticIconType,
     CPlusPlus::Icons::EnumeratorIconType,
     CPlusPlus::Icons::KeywordIconType,
     CPlusPlus::Icons::MacroIconType,
-- 
GitLab