From fb97508ea7a7cbca9fc61d979e178536137c2feb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E4=B8=87=E9=9D=92?= Date: Thu, 25 Jun 2015 15:34:49 +0800 Subject: [PATCH] Drag the icon --- dde-dock/Panel/panel.cpp | 16 +- .../Resources/images/QtProject-qtcreator.png | Bin 0 -> 1410 bytes dde-dock/Resources/images/brasero.png | Bin 0 -> 2515 bytes dde-dock/Resources/images/crossover.png | Bin 0 -> 4014 bytes dde-dock/Resources/images/d-feet.png | Bin 0 -> 2443 bytes .../images/deepin-multitasking-view.svg | 278 ++++++++++++++++++ dde-dock/Resources/images/display-im6.q16.png | Bin 0 -> 4314 bytes dde-dock/Resources/images/eog.png | Bin 0 -> 2330 bytes dde-dock/Resources/images/file-roller.png | Bin 0 -> 2081 bytes dde-dock/Resources/images/gcr-gnupg.png | Bin 0 -> 1129 bytes dde-dock/Resources/images/gcr-key-pair.png | Bin 0 -> 1903 bytes dde-dock/Resources/images/gcr-key.png | Bin 0 -> 1176 bytes dde-dock/Resources/images/gcr-password.png | Bin 0 -> 902 bytes dde-dock/Resources/images/gcr-smart-card.png | Bin 0 -> 1093 bytes dde-dock/Resources/images/gparted.png | Bin 0 -> 1818 bytes dde-dock/Resources/images/inkscape.png | Bin 0 -> 2155 bytes dde-dock/Resources/images/remmina.png | Bin 0 -> 2009 bytes dde-dock/Resources/images/terminator.png | Bin 0 -> 1740 bytes dde-dock/Resources/images/vim.png | Bin 0 -> 347 bytes dde-dock/Widgets/appitem.cpp | 30 +- dde-dock/Widgets/appitem.h | 9 + dde-dock/Widgets/docklayout.cpp | 70 ++++- dde-dock/Widgets/docklayout.h | 9 + dde-dock/images.qrc | 18 ++ 24 files changed, 420 insertions(+), 10 deletions(-) create mode 100644 dde-dock/Resources/images/QtProject-qtcreator.png create mode 100644 dde-dock/Resources/images/brasero.png create mode 100644 dde-dock/Resources/images/crossover.png create mode 100644 dde-dock/Resources/images/d-feet.png create mode 100644 dde-dock/Resources/images/deepin-multitasking-view.svg create mode 100644 dde-dock/Resources/images/display-im6.q16.png create mode 100644 dde-dock/Resources/images/eog.png create mode 100644 dde-dock/Resources/images/file-roller.png create mode 100644 dde-dock/Resources/images/gcr-gnupg.png create mode 100644 dde-dock/Resources/images/gcr-key-pair.png create mode 100644 dde-dock/Resources/images/gcr-key.png create mode 100644 dde-dock/Resources/images/gcr-password.png create mode 100644 dde-dock/Resources/images/gcr-smart-card.png create mode 100644 dde-dock/Resources/images/gparted.png create mode 100644 dde-dock/Resources/images/inkscape.png create mode 100644 dde-dock/Resources/images/remmina.png create mode 100644 dde-dock/Resources/images/terminator.png create mode 100644 dde-dock/Resources/images/vim.png diff --git a/dde-dock/Panel/panel.cpp b/dde-dock/Panel/panel.cpp index 35b7be594..d11b854c2 100644 --- a/dde-dock/Panel/panel.cpp +++ b/dde-dock/Panel/panel.cpp @@ -6,13 +6,17 @@ Panel::Panel(QWidget *parent) : QWidget(parent) leftLayout->resize(1024,50); leftLayout->move(0,0); - for (int i = 0; i < 5; i ++) - { - AppItem * tmpButton = new AppItem("App" + QString::number(i),":/test/Resources/images/google-chrome.png"); - tmpButton->resize(50,50); + AppItem * b1 = new AppItem("App",":/test/Resources/images/brasero.png");b1->resize(50,50); + AppItem * b2 = new AppItem("App",":/test/Resources/images/crossover.png");b2->resize(50,50); + AppItem * b3 = new AppItem("App",":/test/Resources/images/gcr-gnupg.png");b3->resize(50,50); + AppItem * b4 = new AppItem("App",":/test/Resources/images/display-im6.q16.png");b4->resize(50,50); + AppItem * b5 = new AppItem("App",":/test/Resources/images/eog.png");b5->resize(50,50); - leftLayout->addItem(tmpButton); - } + leftLayout->addItem(b1); + leftLayout->addItem(b2); + leftLayout->addItem(b3); + leftLayout->addItem(b4); + leftLayout->addItem(b5); } void Panel::resize(const QSize &size) diff --git a/dde-dock/Resources/images/QtProject-qtcreator.png b/dde-dock/Resources/images/QtProject-qtcreator.png new file mode 100644 index 0000000000000000000000000000000000000000..274fb8342f3114a983a2827e8949d2f529c2448f GIT binary patch literal 1410 zcmV-|1%3L7P)8P6s4LV=@PeA=$Erahrzed_WiuHX;~8 zO5AugunscX($T_L%cG?ap!J>${VCA$SXp+G)BoQ4-`n%u^Zr>5hXWoZ`4kluLGgd5 zkCSnJN*Y`EbVPvb`+o>439Dwt!%{_d>uLgEv3G=_@B>6R%oDyCwax%*bB-Sr7y_U+ z$jw{38W)-ajDY%cNfY1?o4slpji2E+oEKc`02>}L`FMJvA0CJLYc|-lnFaZ;?1Fb< zj(~a62(tdap!~+^RRiEw17?d2YO1VoXkRikeXfF!6OMyF_X!a3*F%kI9{h6F!E@iPr*j1I+Oxap*lq`SKfZ8vHDDZb zKmxI4!|Ad2z{o6 z?qt?(Y31~Z!WtCU=~%!C1W^bZMt)W^`@Y=zD;!Bb=baM{8|)x{YVO*&)jAEp-@yQ+ zzG8MjMfVBn7o*nuP$K&XOje_J8WrNfrIwpt-O0-UqgAo6U-< z5xK|1fkMBB6NWci46{OfLmz4)atpxK4Crj0s9!hct^73$0IZ8xJUhq5&xV=BV)sV) ztAt|~NaOL?pu0QI)&l?O{4mOzV|R?02c&eu#|jGzH46ZQiUsuPOgKofp(#v)+PdK- zCOe|3T>S;du5-8bpT&CH$H%A2WHQx}Dc7yOF%J}<{EeCC$9)YoSBK%{?Oa+HkScDU zfG0&P=n`){-lS_2TUrsBL5wpi5Aj%^r3KQ?yn@pp9NR%oOS+9r*lC1&a9xIpq{j}w7j^u zI2arp9IdUbZ6+qL`nZS6f!DJEe!8fFs@iZU*?W*?JES_*1vu069kX{w)-;IHhA*5; z=t0GV&tOL9a=E3kv9YOf%a1>l>@$C!2gV*wBr z6yolPjqqW@64Ht_Z|r`nP9l-WGBPq!6A}_&YHA9ELLq208q~nQ=);RPB(7nHy@7J1 zgI2vQq)3VRkx)?muIo0;9GTdd5IvRX0>J82BSrajxCs6Lw(9i6Fn{2%Z*0kQ6e}xDk{nuZlqe8sm%of0ZCdG zP^;C@*Vk8p-oGLM9?1F8a*Nzv&l0e5h^I3zCnqOiU|@in0fpOaHt6c=apB96_GQZnqB;4n@_Ys)K`r>8+7b6LPuS($>~?klfz1pd&gU`CvCFysoU+iNp*I z4FR9eM?h3KhFxc8r-eA)-iC&T=JfRR<$V{dlt}nB5HF{Ng5-LPb$W9Wc4`73ud=eT zk=)*~><^Qb5-Bd1+S}XnI2;aJuh*+dRNN&IaK5ap>>3JAN=kBj?tcLW09$G$2mF$$ Q3;+NC07*qoM6N<$f&@OL5dZ)H literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/brasero.png b/dde-dock/Resources/images/brasero.png new file mode 100644 index 0000000000000000000000000000000000000000..7524c10753d81552744cd8d9f247524257f48584 GIT binary patch literal 2515 zcmV;^2`u)BP)bY*F7Wpd{G_b&hd2{1`SK~z|U z#ggGb($9Fq=?~3VFPVdR0#^zu~plWTv<rt*#Y9{C<{YFL>{FS!)NZwMi63c@*ioleQ*E+im~7^Wlfz{?=1^eAh0VHRQb>)>r}{0Iee; z9T6u9<^Bp%39ekZ%9&sO!fLI59>?+XFTeb9{u=>QtJU>MlAPVRal`o6_H7d)H0X5d zSf8TxT9RalNDGuyD5X(S5k)b5eHlt=(o%}C1!vCuBHX++J=N)S4o^-_&VMCivMOHo28T{)SH^c);2t2WTi5ZmPq*kpj0Z6rU_C?q?E*If{rv7 zFJ9#Af1X|J_IkhdD1>~R>`JNsIC$`zgQFvBX*DjfeYC~+6Mw;`J+Cma?>IyKxA1lW zZzbM=cLDDLQb@c9?;!**g(2_u*#E>6JpJ_3Lw#9x_SC6U$(I83dflIG*|KG9@7}%K z`}7WpsZWcu*r{3+Eix2CNM@7XZ1OTo3{TAC^H14(#90_U+rojWIv_ zLV%MePwsKf|LDk(!=hGOpp)lB$p(bp{lANXAul>OD>1HMX{kfEn-hY-dqMC5@52Kn zLLe-=vzDVrj|pSUk4~OEx#zI}X_~%v^ym={l7(80C@L{=;Kx|kBlJ!a%w-y%{uMKG zebnm;YkD-BJ!-WEOU(|gRu^ME&apxXL18S-RtqWM@Zm!`P1B!#4xn1Ct_dL=+P!-> zwc2MCMTh-Qe3K|jxbXhJ@ZNjpc>kS$F+3Zjh7VA95 zI2z3+?RE#}Jb9k8XU`tI_usBot7~BON%;MVi3w?~#TbJ?uwlbS?%tiDldq%OQZ$y9 zur2^GaqNlXn8Cq*2!c{p!B|7^fmSysG6v@iQ6$ijd~jfhKomS{)gOCNn7_=jIB zP%f8W7~eG}jVW+GXXD5yQcCLeI!WA*b^Qo2j8YlpavxfI``!l^XV1R#mig$~+qdTz z=4@7~&}!$*%*-)6H;-{1;{(=vtPeQvvCgt%$97pRmtR;_0`L8)Fg1~tYQWGbA_#o`X4==PA78d>ncxs_`|L@*;_jK#_%#?Lr(9IpKPLIMkjPV%b zvDRU&#}tNvfePOHU8_pqoEykWB|6vH-=MNqF!>#x3&l9Ain;TGqAjN}Ul>uQPj!PJ023ILi6h#_EF-mHL zlsM;5N+VT7q+wuCv2jE(HZECQtgV+)zPV~YOZjHKUK@#Y8zmjy8@fG1VLi?jH_=$?B7&veZZbT)UjEKA-`lEHo4C{+U1}}y@zh87 z;E6P(slwAGmN_j`0Vyyx1q3s9Zuxe*`P!og(OVyWcqtq|{tV@Eg{*Ihxw%i-ym=G# zdY6DAO%tr~$l#g3|0(Te4MBm@22X=14oIbm;*=mg+SkycgS9C-Rsz|71i0eEXw z2_`2eYf7oNFJHb)mi4h_Xbto8^LQT^85u&UKorGfr3|GNg~^dhAl1W5s02Qsl>j`# z^%$;9VXY$sPY9AEQr!Ib21=>7AI^-cE~8GT^Wy2#|89eKR4Ns+QXdyCTtrI2md*Vn zi9srf)|!E#0R{&L>Fe*KGSJWP@H+bY*C9y|zR8Xa|Ap{v7MmFeMVcfSlXLa*1)Jx+ z7k}M*D*;ZNIB`uW_4CuG|1Ff_5*s$GCrkVI;QV>4E!e(UGEiwCR2!`$;;ckpr9x6F zA(SRfdyH?s!l8*XM5@irxvh9g55_gExpwJ;ptOE{<)Hexu{?^R=Wk3+eQR{|!r0gL z?PtTr^)RnEfAI=CwhpmwSg?MmMYpp=vsEBM11*=3)ToqZDT+2%@9f~(C*zYe+%SlYD2~ukKT(u0Gc(7`t?9+0$Uip|J{CX-AzymwrIGQmv0v`oIX3p4 zIz2aa?w?+N{q;Y-bm>wDaDW9|2*Ira5JHIM#CjzJpr3vA*}YFb`Q%>; zA-+B~zDsP~x>KfoWuhoWYDwO0)9E&8EY_I4JL~7}eiD2L?_W57{?Fcc literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/crossover.png b/dde-dock/Resources/images/crossover.png new file mode 100644 index 0000000000000000000000000000000000000000..fa49c4213df03f5cb09ca5f8cbe0ecf1fdfbaeb1 GIT binary patch literal 4014 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

C6y<_l4li*0%K+h^E=d`oO-9b8Tu>tIr zw9iTiK#J-Y7DRZIs;2H4gLD~jhlS4!y>B~4uDtrn!8vOQ7fsN}I_PyLIH=5yb?I%< zQJiv?_foqee1B!<6)c@uQ5E zNJzya$}Y2aQfxapEsvu;n>}p^%^afN$Yr>GQRm!D`9eKhpuN^ni+m{3z!m1B38<{B zB;-~9OY-?e?UL_Yvtwk;T3r)KY}=$yocJqyd~g4{cV&2*14*vvUIo5k0C!SQ5JKLc zl*$VSs^G_WTC^hUymzt!22$p&I}pCLN@KI3C4{Ts%D2h(f5_vt7_kj<0#^b9E=%8l!k z%K5ilL?3VzEwv^(UPY_#9_r%`zrVOmNx9PL7QeH>EW^>B-F=-hec2C}nXmm)@zB-M zp|ix$-drl;`{b=jh9~T0)S+=Tj8=TW67 z{M0s9r29^qbf~kuB-n)&wjgBs18CT}-tO$kr)e{>U@1(FD{eb{Fp`t$y^Zx2nK)F6 zVU{R2U{12-IHlWsoJLeV$E`8qZ@+wCPY>+q6Sh%J(a>6Yz#(L4Zz@kLx|E>DgurQ7 zZB2-^6up(Fa&jb84-bqFjadV?TBDQIVQa64MzZjt`WR}ABO}@?S-ufw+$N#+IbBUf zjj!)s3huM`{gTFcu*CHCXe!~jV;Qs@M4cw6Ky~$0c8)MQ59xz?mQF)<{8ja~nhZCM z$J0xr!9zoON8A2#xx3~pF!cH_&uXGj=EFb^|JZa8t=n3fw@eG$GOdH!{9H8-S5>*G z{`sq}<+joB_ekD*OV&@glaYeS<&ipBW<81QlKvCBF|3lC0sdFO*PCaI^8T}N+hl-O znbEE@)yNqM`=9i8>#X)|?LNJDJQkH_P*w1DM4i1ZG?66X;C9L__PEgXC|MDS1r}CD z!BvUaJL|vJPua`GCi-6JJ$=$O0XTVa$2#+4@1grwVKKg~^&cO^7!GEK*S=;y(X@eN z9kco$xh7!K+jH9xa3*OFrFidrwv_Le0r)XdC<#to=*+YwbldE0b zvf8+PFbtNIkyB>`;~tBr#@4>f&-WL9wL1&9f?akiDf+A)zP`1VGsh#|v^*uEbh21a zF-mWCx#ah=&W<1?33a#slYTxr?uzg{7#N{sm+*C&f57|f>@4_bXQq4c+FX3=-1L~Y zMdnwwj7nXwg)FMb{~Ej{n-Exdmz>>`DC_QvfpqD=3fo>-(E31eD;4WazOp`7RBT#| VgVrAEBY%F#s*0Kl#eZ46`VWy_e(V4M literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/d-feet.png b/dde-dock/Resources/images/d-feet.png new file mode 100644 index 0000000000000000000000000000000000000000..50a90c8a3a187267d0fe8c187ed066f664220a2e GIT binary patch literal 2443 zcmV;633T>}P)E#!0N!jguz6Bqp(AC%*04d$IR2v%52APJdv7sfcU} zQjhfM%xLDE_xaxMoHIihWB7kI?wg#fwY61jX=&lV${6x>9C-4{C)YB@HVcBVh2yxp zD5YhFVL+0k5lU%~rfH`|Q9QkG-@fs06kzx6-Lk5xzqMMet+lnaoX_Wz3knM0a5$i8 z8iK(frlzJaF)^VG4-XSv*Z=7CdS7_%x##q+4e;1wkJU?(^v>qZn~NG68l?I8d5n&Z zqOY$H7cN|Y-EK!|X(@a@AF8UVkj-Y%+1aVi%*;$^n$~#Wz=6U48DQtmo!@sj9PO>G zt>)6wQtaQqABPSdf~IMP$z-C05S~&Bj^ijHga^PiHa4QJt`3(kUuHc$J!wj5(}4pA zI=(W%jvYHnc%Hx1*4Ac^$K%+$cP|D92Mv?SlrjwCG^KRXFpLSt7{_s3i697GK@jdC zgqU0|7r%Y`cFfPu_C|AAg{^x%ttUM=|Jc~|yC|h#%m8BmAtY2%;@$nH zy?Z}aqEQRwC`s#SAs$a%$!3F@+1Xi(%jE*caal!Cs#Yw4uIu$4k4KKhVwj(wha^j* zX0til*?FRV;>P3?lu}Siq3bkD2su_!QL*jFks~JrLD2J^PNgKjIPP>hlTPOv#b&im z83u!47_ixFj8a;^nnhS+x7+1JA^}xZby=2feDMD9-zAgDBD2M`Kb^_!6h+}(cdqmG zj*mXN003sQnFjzp7UR~qZHi;gp0?SnX+h-2!Eu!UV6)k5!C)}3B0x5q?Vp~W&J-6H z%MOP_P*SPNbUM9G*L6@`uiU!zfsK3iJU=B#l6Lm&S-rWrnfU$QO{s+XsL5hUwzs#x zCd)QWmSx>yv-|VigWr8yib=9EZHTJb<9k;c$G&3;bwhMa3&^ zZO?}C@^l6OJ9g}75JmCtGc$8tYC63;9*;k}YuBz;ad9rQ*;?W&D@P`sMl>2FjIq8I z9WV^zd?*w$Ynld^%Z1U=5!cr5efQ7z+3TmlaqtIJQuE9 z8TnNt7Be%J5}$cySM_gReYKMs^e3Vy@PfcY5O{DL502+!chuJ(i^QWA>zbVBt7|us zR5F1`Bm$o2uXJ^F>8m=348!{71WX{rm@m1D9V0SS`;B z5QI;I=XuR;x4+fY)b#Kp4GmLQuU&t-_KqzD-cmogK6(WM0|QA)X&bQ0KcXAgZv1n0 zHe?zY7+`k09i?TZvXV|e#c_OFQE}l#Nt7UpLegTkoXN{|zOrFM?IQ;d9{go}{d(3n zFz|Byo%e2ETfKn{obAD-p`lDRoBg=EyZaEZim#!^hp)ujc}IQyd5!4&Q2*s`E1Fj4E+~3DP*Z0uDXSo(moDPpy*=pb z>x-$XTG`v%8(9&+?RMK74%^83OeQ+8%XMzL4FiF|duE%xx@2t)rYEjLO(w8z-C9^}b}%ALUmv@c8;iwA zette24u{EZx5H|+LQzskCX+}c5?EMRP{ZLcV~p*KL?X`)4i0AjTjxsw0=M4!duA99 zS8lkAgr+C35DmlU^MX=}6YsrsEfShh4Wi#8n=RI0FnIUe+}w8nY@(EU0D$ND8vy=6 zDLrKv#;G%B&U|vSL_aG5A%p-xRaMpFX*KnF&6bDwWFmoBcow-iYhbt8jdML8O=Q$e ze^SjnkxV8N0F1?80F1i2I)N5&NbD5=8i4GwUSGWa42Z4rXH!@b2aqdS#Mg@bw+QKU8nJK)RLdfx zWl|HNNhoUiFAIs(2>`A|(F}m}vOc>Eh7v-s8VCUZ0l))rWfi3`lSv~Uk0YB&LtTib zGD^aTCsOTdCUXgZZSh@haokd4i(%l4Wm&P2#Sj44^Ku+dOR}^_5Y1UlQ$?!lvDiZL zuez>}1DFS(F3UQzc)#Spau+B7V>J#eUjsY<*_CU*j}wGuEu;M_7EhjCmdR3POZ8qV z!;+}B_-xhUp8)`$?*e>kFOScyUT!zR7wx9_qU8) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + diff --git a/dde-dock/Resources/images/display-im6.q16.png b/dde-dock/Resources/images/display-im6.q16.png new file mode 100644 index 0000000000000000000000000000000000000000..e44a37d4a0113c8cc4965c6733f8c5462ba428d7 GIT binary patch literal 4314 zcmZ{nc{J3I*T+Az7>s3%vWKB>h%jGEG`6v2%Tkf8>|5Eh48}5)oucgPq=oF+BTPu5 zP?pJ928FScC1LXOd(QLE^T%_~x%YL>z2|-JIrooy&P_Bk(PM-2!vO$bGtk$$aZ1#G zodb3n&#$~{J_XcW(^wM#-aKYGc4YW((OLh7F#v>#0RZ74034pC2s8i)LIc2x0{~!h z0D#A@p!K@yX#wVBq^EPrQ~RUc7Ig~7Km%i4MkvW)mKWJWs*;V>suyia=b1Py@O2W za4HiKQ4@KQ9%g=o3ms7dZ1NtG0Smf(;)DjYT(L8%HK0#SY z+44#Um;Y|SlrMr4S)cP^*VI0!e-qXzflW8G78l)A37f7>PS7p79+n`%k`bEpxbG{w z-i*!8YyE}V{w8u;g8tK~jC|3Oe(OIvI_6g-g_HH8F{6uT)0;Eh+}iub#H&|2hL8qd zj3YKk63ASUp#doJ`U|VYq&@@k++m^U{F8HhM^ql-LbgW_2_ThN#!P|E%ih)2%qJR; zMlz`>?InfHb3(7exEoU#Q(_re5a7JZ7nMPT#e3Zr2-H-;Pi5F=3tZbeL4R}W=LS11 zi({hQRA5$Cfe3=K#1e81k`O>}(m~DhKTA+zNlA?KNS2ct>}}Mi<;)dWA;j5zPXI>Y zqKHrm3HNdxb3q<^rMsoTW%askB%!3PL=LFovy%rZ-75G{UEGe4TIo7zFcV&MjhPUl z{SHLZ7}MY))pzY+2>JPw_PVs;zcc%=*xBi3CLW`LJXvE%`1nA*mT1dWEE@`44iG2^+BK&oITjFo5*%yDEyzgyNKc2KU~Xz zaOKMUT`94X!Pxkup`n z7az+KCsNh8T9-Uy>$%j3*Y+al#c$O{MSwkHcmy-{xBIl5!=3L%L@BASV{1tPqH5Lg%&(1F+X*uL;BuLeU~l+J)AwoXu9x_i%6Bj4_pEoZ+&4H-EW`# z4fDLeJKu8l;3}^5h-ZZK_J%>wg4SY%b%%R!_lFk)D~UXWm+MZHSdifXWvdYzO%3jJ zA#G!?X(`QCxtlx==dEoX@~}iSi8N_gIic{5KK|oCnr`KIG5r(C*YClN+Anp|-bpcc zgx4=BmynL1C!1ClGjsWxn_}Dubr&rDuwBj>_MhKlem~nzR+*fH9sGEFVtRP9KU1JT z3~7+Lx$rPSKPV)qC7~~G+4EI$g0sQ2u&1s|#Ker$S5c=R{&Pb~%H0JWk7h(&4O}0< z=XEQc1f7LMomPg?jbhq80$N{05|M}Fkc6UL|L+u6+2u^j1|r+y=TKAV0c zsFYrt(DK60Bq@g~H&i7o{iNur`tLMdoxPjwnNLOQuB&Gli@qfHyP2DC=SB^Q{>ZzZ zZkpG5G@RfmI%HB{qavm6@^iAgLQII;n%0C0eSaN^Pom?G#_X>!Jo0#~+K7Q(!hhab zwFFiYzn^&nxP7PuT3<7aa06=E!LiMZq1sAjrC6Kkw;zhBEUoTA>w(?a{K|21G01cE za7`3f=4;{GI>8zF-5)bQGBK;{tT8hxAQ_xB)K>(QUk@J(N16RVSArUNw;(m*?Td#U zh-qB#Z{b6XhY>Vg})pMbO(R)aIm`lpFrk>_?!k4e@IsJ zQnFpm5wFPHG<0*@npiQuKvRLRtPgfQ!a|t)1F*b~4Gi;%?x>%+J2u?^bms|cw7jVU zDc3|)%`rVxrOY!Jp$j6n!n~|_`j+hu%UU@OGj^|VwlS6{>B&B}VbwwEjt(&#(|Ntp zDxQeMSVsIl48h_jPUNn%r)BG^d2g$0>XZ)ZJ^ z>3x~|>Ii<^1Z8LtU}-2({CZ;cU>1D)MFQXOh_*8<&x|>))pBKj%)L7%Ia%_SnAQn0 z{d|-cq+&zm9dXlPt1&FFR*l8GlT}7C3^CR8ddFuYdWo7t-YIP7P*g8(amJ%E%(S8| zfDSmc#j&gId-dRdHjJhiIhMGWV3k*E!5=?4gNg6+)d@UyA&{_LUV?*GB7?oVL-Ceq znXUDhOebvAV_|5JizHs@e8J3Au(4T86G2<9+Gg~UfJW0R>F?+_4??<|n2Y1yHyU5~ zgE?dVSzdZuDvr74w;j$=U9~LmU$#ZGeCbQ&<(EDvXDDR!^&8E!R!22>BTw zoLug?^wv_lKk>L_F?;U7^KOU`lw3;rjI|%mUY0&|n?lkBZF@M4l>AKhm4DWsNh#(_ zp2h=@Ytx>0{wfkzZ+Q61IkkA;Qp=47`I8?`OzPG7-Tx{puITjRq~7Da$+Gbtj`J^= zd*f$-h4ZctT0xS+Qf-|sEG;iH!mZm`de3=~d+RmAM_#%l-@Vv!oKay2EvsOS?EufL z=i_kI1ny6orEPQug`0||p1o9S!u})au&>D-9287oAl{xSOo5g;?2Kix8D6oR3HT_8 zU@DmY=09}SL*`C0Y#%msHK?wFIsBJlx14O(VBYDaxXpa)f#NfNRR!B`UU6@Pud(xw zHJ_{wmw10>yrVF@dtMPE>!-hZ@y?<)+4}lsure$vXIyhtm?3@hLwhC%oS}GOUHTgM zg7rk@+JPz4fxz6u5g{g#hgqG^+F@+`=*TgzPFp?R)<3xx26KM9p>&?@8cl=oFFl9W z4p+?aq+1C0)TJr8F3l@zlocC9*0S+qjMuPdcySdyTvO%M2t84ccqbnvOC2AU9389K z2&fgRrbGq^(=xst)!D^@HvEU0)z~oEO@{gYOLCj$x zZkyE{Uoeqr4}JA5i%eP3EOfo+HVtF`@Z47QuY^ZlgIE=u@Hl~dsI^rRlQ-db^;C7(m+fL ze&>_ZTP&y!=N=W+BmQAb8;^@tPc+*py7&Rla@(M_yySXL~hO8gv-c%GH{<)v#``Lv-PN>u6>3v03EU ztKwJhkJXwgh^`T^YNwa2|CC&3$J<&1#Zs3Sd$Xr`? zZ>5~(N`Js3Bj(|ZVTIOZPQRS)6T`lt6DInMvfnJ=p0$%CFFdol7ul<~N%}ZWCs+88 zrbnU7a2*>a2KU@pwq9lL%QU4Kibvl7?J7Idv zkst+8XA1v4#o1#$7VsuiS=iGz$eIh;S(XYTTQ?-V>si@VN1yc%3HPr_YsbVJ^LhpcsD(vnKu z)6*Bk`}D;wJJd90QyOPO2L2XAT&C%6K3CHEyjx~D*`mFps5mJr^Pt?ardYynX)}LW zI+~~88C7#8&TWPApXLurC&)7 z&Cz^nh?pY|XT3=lLQEl?WF&7`&zkp0LLNdU#hU&qf?Ko1#}_poP-gS1msFssgf2k~ z&UTOtPO^h0&+R4|FnH+>`&<9Fh@ZuPiGR{f+%q6=q+pSwQT$256||}c=|!3)A$cXE z*NJpZs3O`ehtKzUeKw6pe$9M|-(YZVK3p>z!3u8Vd8>h+Tsl8y zKATsW4Ne;?AGC(tBmO9gTf)-EExw0vY@Zb03RU|Ej5Q?_RJ#RtySDVuMD|8GYBN)2-)%f3x3zkuOU~-FlMw? zC&(Gbs{B2Q;aCHmXy10_YERhd%YGqH*DBD(G0+v`eBbpHfE@Z?MQQZE(r86jU%OU1J D(P$B+ literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/eog.png b/dde-dock/Resources/images/eog.png new file mode 100644 index 0000000000000000000000000000000000000000..6b2a53661cc28fa64bcc3f2cbf166c63af518b5f GIT binary patch literal 2330 zcmV+#3FY>QP)D)vRRRf0nkGDw zfC++-5Yu4n7=shXNt`&lcD(DyK4y1zy*qPfZa)}k>N=?*Qjc^rS9531|98*ad(Lq9 zk+ySZhg&nm7D=#d0*5wT*NY@k{5YMa_xSz(^g`nZ3w_Y<_d5uow+e!#l^4jJ0ujoV zH8#X&DdUbV; zt*~$rC(AM@rJ}Cu&~*w*4J=>YEcW#FwEqwQ?z_P&uRLm*m?&%}glrTWXlQ8E zYisJPix&BKtJMlh4N$6sQVqIJuL#3nnhZ{7E?#>1#cV=JRr>w@@dahT@Ap^QY{DyX z1#26Z)|d_TjdF2u32(F6K&c^qCl-CB2@0U|)6-q)uEItV(k;1YYZ^n&HP3GsH zceMg|Z9xE5ySQ)Lwg+!2D=p^?V|InQt|1m0}_hipK3kIONR#R45&Lt9Y7>4m5lbW7ITu~5DM4%{ffSI702Bw+d zuUd`vZFi%*tQ-!91FEVb5DehUFMGt` z=vd(P4K2GQi*;vbXJ__m0Ho!%HO``b;=m0Os=sPunPfi|1*O|}p)j$}UWzg3-8u7hXFU-}PV8cZ`Vcyhf^VkVSm3Voj{m>f-_d-q)kz4uET9vX$sw-hUzn{ndZUD&wX zhZ~Cls+&0c;YT1O46iqhY-$RXr3Hw^6??~DK7C=?vgJl?ZSBg8mVRbl001x<`(SEv z0(qVS#N#H0zNENy!!|tnyI;eV>4%Uj;$V-6J2!7Z|3CkZTi0*KqC6*#@7juY|N1J@ zQ(;)7N!T3`xa=kbWKexWsiA90{^fl=Z){k92M7^<)6&x7ofkmU^>@ymJ3Eu>$_1r> zAd1NK^7Fgl&8&x}$KY@! z5s!@Frlr+Vq0MOeIwW*m2#iJR>+0+vcxYY#Nyr`<80aU22yo@NK*#&~*xnAfm3R34*;2JS3=z z4CG`!id_<%^)7gFy&!}~>-u$;$?2#&mJud(T?c@?s{&AJynp)Cz*E&#)q+K^K+lK} ziUZic=T%6e1=G{h;GJ1?_jF@%Sw1{2J4D_NS+>IKmOuyr05Ha2G6paPn=OaG)PK(B zB(~I4KWqj~C@-<&Z=If#<<} z+fNw)W}09COw&YGHz9~JhA)n~^W^x_sp%O2?DV{Q008`czsWcpnVOn_$DI$R`QYT6 zQR=+~YgVnpcqjxj9RnxG&~yV?&46Jt80PGX4TAyTz<~oeg4B$Tfx+`E7>-Zad1b}) z)HE2l16R!e0BD))zTx3>tAACgBm8R zk_Dng0AnVmqfrEcV{~9>n2uhak&47_-aGs7Du#(2gpnXfDU*FT|Q z(7*MbJh@}-nst(@CJ_n+*oBM3>cxu}r6OPc$oTlULrtZN9T?{$!I13|b(nFMm&q`% zD09>0xm=`av7oM$tjw*Z(g66ehPtwn((zX_o7+j3p&NHS`42>|nt|QBAD1$jf;~Dl zHwlCvH%#`vMzzD~q;`DQu3gEtwl*oN&pZuqzm+7(E=nQKkgsy%?&^4f^mA`<~{3g8Zi zg1G1K;loh?c%fZ5yU1&+sI0qLRMa#Z{H9lBRNwN%Tj=`H06)Zb--moAlEF%!!&_M1 zh#5n`*S#lFlxl7N7XSeG^8;AP5%S5BBAeY?(g2OiLGKqwK&~SucZKs;IGN)D0P^7} zgx6K^eQHL(OJ;G=pjkwe#N}&cV6Fgn6~ETp+&I|2nXD;uv$uJk3u~J3&_V$gB6cmu z6<1)kb?5-p>)iv~obg<-x${>V1z=vM{`K3x0A`u|gjXKnR{#J207*qoM6N<$f)5;1 Ar2qf` literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/file-roller.png b/dde-dock/Resources/images/file-roller.png new file mode 100644 index 0000000000000000000000000000000000000000..cd43da32b19d23ed25fc5c17a5490a7ab5ae3b35 GIT binary patch literal 2081 zcmV++2;TRJP)V=-L}_z$a%p09X>?^| zAa!nJWpW^NXk{RDWpZtEAa7NE7x6HBLDyZ7<5HgbVG7wVRUJ4ZXi@? zZDjy5FflPLFf%PNHiND7J^%m)`$4#L=s%lAsR4b2)FICj4O(R7~`jDzb?Wcb0OZ@|?pp+&kp-zIjZPYeZq$o5c z6hAPqfNj_X*3X?8@4WBrhqX60Cay~>aipU=bLX7-{pNSh+^b6pg#zxS(R+#xK)Rcx zYR&#J1b>lpkz6y7Ed47A{O_#K1VUM`hdVByf(6`<-jd$x9y)2C0@6^Xt3+hfPS zN(dMT6|1F}-#)6}HnIQ7U6ehmPY zWyP(n#`s$D7fn*=%iFi#Pe(^CczziE3RvTBD5>hRd-m>0mP#ecnDV>-26WMi#Ui1U zem9@btFG_ebY`88fi);#nr4c}@z+dq9ilM&%k=cj?A;Lf`jd};$utdZdTOQ~g~87k z=l`Pugz)~ZuCAz3uFMC1@SD2<2LMe@yzt<@2hE}3Au3{eY|R8zO?$4d??7s3Xebhb z7VidJZ`E64&L3ioaZ1@AEX%4bK3h?OWJ|JLj@k1BQ7sN;&5gfDb|5B_XEw?%zv>N6veJ7yfc->@otmTrR_T{Nb+MyEfd{+bf%< z3E%e{N~kJhlEhY^-Da-qqGs8M;|QMXYLy$6Bcr3E=;`hupL}w5+_J0>Ka&7uD1N!{ zmG)dVFHcQQ!M5gCf%?=Ei3D2P@|c~Q!{~+cxOw9SIOouH9Y!ievY9NVr>7A`{;}J0 zn*`G774~ zZ3~WL-_a?h7#$r&6o)96ufw)2P)b251!D|^P#owxfWg6Y$fnb1U%w&p{rP<>6nOgR zlmGC%`Q%T2`U->)c>Tn22qB;-3LZUt7`t}v1Y-=8(xw8EB!P2|D2gyKK8}`_76f6? zjM4QZ^4S(Z5L~@FhK(H?pr?`yAYB0dzKj5m`Hoj!{vi^YhNWBExxpcP@WDqg4FiUe zf+R_hBngZ$Xqpbsb3q6}-L1ngO!%G;#uxw~js(<%3O$j8VHgO*5D8672!bsu6p$FT zJ=fF1&_xsl003E5u%)XLZx8$tuN_~x{1eiM$!4{cyV_|H3924W$5QG6_IgQ#}%@ZJ(R}$d-%*6OaZ+G`bI8Lou2HT!(*1SPf zU}=qHS;79k-FWrYH!(Fm4MmZgC6Hu>^7RTBV`y8ShpMWu9XkTS)fEK%F#7%3vxEH| z9eHNib7-P08FR1WVLq3E$fQA8LlH$$Ff}zLt4uv(!@i9` z-T!mBQjO5XW&7Xa#tq4$YY;3enxY9;MP1F&aO-FrsYrKF}wh@${8 zkH9%!;X-f-2nZn-)`9@pY!anX8OdY{iqiP~5_$r&vvU|88AeA(8gp~L&!g}e&kL)| zN&o-@0|U{+4}bCLp&{~iPfwfD)@Bk_ksu%zc0U0j7WP51q%%b0R!;zXKDP-U|FZ;u zfOE01A<0nGII2`?;ml0!N2lI7HMaCPND74lip8P?zyM%8@WA~$d+*!!14)*5b1qE$ zuSP`Gw(L_A*UBeH21m{TumRYGLcwnm0Dxk#r~^m=NC1!l&{Qg=EWAc69fKga(^=s5 zXG>$^1$P0|0XT(1K`bM%K!TuA7Pdg*|79_N2tc?9ylCWJAJ6{{9UV$9aSwL&00000 LNkvXXu0mjfe+szs literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/gcr-gnupg.png b/dde-dock/Resources/images/gcr-gnupg.png new file mode 100644 index 0000000000000000000000000000000000000000..f151fdf5e960324a1f4df93b22a9b27050a93e30 GIT binary patch literal 1129 zcmV-v1eW`WP)L_t(oh3%J3Xk1kk$A9NdoY2_R+8SzGo6y!0 z5YdGZt=fgPdJ|_RLb@m@6tz;w7{Q8!fQuHjH55$|%nVJnK~U&IDrpkyl`KTjphU3H zE^3)dM2Ioc78Mib;~f`yW-{MznpQU+crfqWd;k9*_q{piJ~77dUq(%}3v49bgt7y) z1!zHNMmY~mfJ`8anc>b!zk1?#2kf3t15E$85A-$Q0?HR4XMo9h5VsEGKHx#n1FYHn zmU*u=b4>tjTfCWoz7K3cr3W~JXgAOTGy>vH{RKz^w*eD~`?MMEI#*8Hsc7Ebx14~U z25NC=Mf7n*zX5gvO^eI{ZuQIoT2SY-?TFn}PQUUykf}X_$O@27T=!#Oy*KhRFb?_y z$`(ZKXMQ&p#|Dxd0iG=-U-l8$P%MNng0K&z8(0gZfP(}tA2KIjNiEFX+Ec@-rfx*{ z1HoJuB4#)`Qp}_L4hT`;CzLkN97Ma!@bd%tQ_Xm98aQObu_@qq&Y;o>6a}dC4%~|{ z13c#4j}6HigcjAA5qIJNA<0n8j77VzVUK@^IsVwW(=Ov~I zNYS29q7dn>;(0NkmHo5vEpP&7?wC3C(w|iTTy;!=oJSeK;iLR>fepoWn9=CiQURub zb0`-;5{R1sNf2C?Fejh+tJESJiamueNM4`t1K=Wz0s|z2UmN?}rD|wx$6y_)xdW)a zOm6G;10bIhNbfO2FI=p~biq8_-$rt_pZPX@93kN!K-kZ38(%l$t!`DO=G|2UleLFCmqE0uLCdbWqZ`y{B zt)nLWCCIw`^~C|YHuV(m-i2XCyJmnH;5#q%W)5H^{wSI{3KZ6rQUIp4wW>dRv9N9N zH3YN|)hEl%yQX!(w)fwTD-nbUs@vxE@ zOC#_rFpY8)oDU$g4Uxm8^r{B%4x(qh>qFb#w;cDz1_E-$4DG#~1s$v-ITr`nT~2Sw zkHD+(3w7RZf4iP#!M!ABUnKjDaD4#m*1jOC>u)oNQ&3@jhwqQm>lJ?kjutNP`nYaj00000NkvXXu0mjf42bm8 literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/gcr-key-pair.png b/dde-dock/Resources/images/gcr-key-pair.png new file mode 100644 index 0000000000000000000000000000000000000000..2ba1f1516b80ad3903b3a1ceeb54444cf30532c4 GIT binary patch literal 1903 zcmV-#2ax!QP)qBrdIiHg3o!>qmC&-Mi0w?>zb75;?W|p&}w*a-`8nb4GK1`p=m&N9pbD#f>!e zhDN^$a1#K4{&9{cpM3mT%4k0!BtQraFisrmd3~?E^4iHy=U8kmORy=SsVMmcGlftRs}tzff0v-}I|*X{sLe zT=xsdkDq*FDS+0}(gFZDa^%MiD$Mbw)lHviXlT?F073}px(?6vP%0O}83*Sa>({p% zu~=+lV`I~{xm4=g2GjcP+S=8n=~|1O&(8ULz61At@qtDFEeo0S6L;R(8EkHD){@D~ z-SK$M(PT0y{tK`q2?IwP8&<_MT}L93a5-nFt*tXn!&D=YN~9N3;GCgUE@F0W29a8ibn=CGb)3cHaa2}T`dinv!Z1xx;-Rj-K7NrUz6D@t z8Gxo~TP-W7BraVf`Ep^Kq+V(21Lv*VIy$V%NF^#GQ51@K=$wNP4~1eLlv0F3VKlF4 z)+wd1tRM#VJfu=WOgooFp;&wA+ z)5U*$xqZ&N*YW1YEJ+#S{t$}!C^$2~bOy(9;5aTa*$f01;GBaC0URSy-ZCLCK z)(6LtV;kV;yHQu$1k*I3swy;9gQjUvKb*PXV2puL3d$%brC^MrSS%tO3d8f#_XBw8 z+8mG=F6J*i9xNO-M0H=xjC8>(Uj`)^sDZVJ#y$@T3H{O_Xzu4oTzrU3&n&2vQV>cd zr38#JFis_XO`taDmB0F7WupH@X(HsUa=W=`UI#q z4?sdfqL@7g(;r84&7;VCa2TQ4!NTpqf88oVx3gjiSKj zz?lO^9SG)vb8oS5nK5wY!Yy4|+%FYC)u5;*!qF{&q9{wRU`Zj8s$@1)%qohZU--tr z(^JDoJ8VYMQ9|Aek-G?><5+qIZC}moY!N@BJ(19?YBmI1Dq4#MoDOpyF1SZ z2A-8tQB)xwrjU2fPCT*S$-PYlDLwt~lVAFg8ES)Dm>N9r%g*1ftU!JJuqNityY>kw z1c#j-!}QbMqX@cl~Oszw6=BJ`fNZo>L7#* zTAT#Re=SKTkq}hg_0@fj{l5lZ5dZ*2Mmkj_r~3tD7iY4Ib7pYP-i0K;3bq~l)AsGX p@_GdSSb+bh-SD>jCcq5`_z&Wrq(8}K-Ch6y002ovPDHLkV1lSFaOnU5 literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/gcr-key.png b/dde-dock/Resources/images/gcr-key.png new file mode 100644 index 0000000000000000000000000000000000000000..af1abf73ad1b5156c1d5c9f472bfcc1500f964a0 GIT binary patch literal 1176 zcmV;J1ZVq+P)<^)Cj(n39nSoLUQ9=lnQ7s)(;48^;phZcLP%l!FXd`G83FeD#waVHb zZEmi$we9Zyd7k^6=lp)B7h6_1_ht?;_IvZ=9M0kQ;T+B%(cIjO>lwy%t-b_U0xSV; z7(i#|9g7APSGx&M94e?J#jk4cIwG~4i9k#vMDl&5a&PQxFPL03z^TKr?X1nWDEd&y z7iluBKnzSdxS3xdC%=^LpPxz6nFk)<8~yy613o<(zn^sUL!+WCPpLGr(>+jf0>TU; z7`h3eNCQ0i2d2+Gn`JM%`HB6}?rR3I z%kG0`4`TY)=f;@bgG>sn7|aUH-fW&}ljlLrw!sRXmOt-1cJC*D*R=k_VQleyjp1OZ z3Z63v3yv->Zx%WGA~MMz0cdDwOi!Fav}7%cZ#`5dv%Rl@8LSyv^9+-D2CNxc|0}b? z*oEV6`;OCJ?>%Fbrl1kOY$ivjh`CYXUPvGXol6FaUwl+8v?H*wY)XvI53!*;EgTv%O?#w6;7m zHgw|6l0s?sZ_(O7Dmgg2aeymbApILixqz@>ni1seA^3bT1S2b;St2#{EtH&uYcD%VSeIjr{z41VZ&F ziEoByUqCca4#Nmw^oL#2@Wpi1E$snlLM}UiK)4>tOTtP1q%B`w|J(rZSAjr5t5Nh| zkc@DfuoEwfNK1gpMJhQ2*Zl`j9={!BmFvOeV5)Dw>rQm5aP97(CI@cvyW`BfD!Xjc zT6^-0JJEks72mweS6JTaAN*!#+92LI_bGU{a;4@_f-4S$gs{NmB9lxYlT2WAbR1dR z0|3OU8&S7>1JZrZyV4%aF!4z?>^&rnF0CnUdUB0qRmTt?D^h3urrhS_^ha9rYF3%8 zFC1z5Vom@6biQ5F=2YUwBcZ?1m?QBE?u>v763$X0T_wXcAbLLn;-J6P-rY( zkEy9Q?|@Gg*JoUWoeXHDjw+=PCGTSem6}&dp_Dr2qV4nuwAR(zuMXVLm0Q`8xI+WG z%5^rNwEM!`4i{n;(T$ruk45Y)pskXMfO3qc0jht)D%j^QU%a}%75VQBc+Z?GK!Sg)Q>2%H*QwHo_ zT*jDkI-Sl{S3s-QI`na{|K@Q&K0e+M=ks|)grT7!+S}VnBoZtxE|N&puM-dvfO7^oQcdRb zc}7MykMO0XB~qyr!^6V>1VMn-np`di!20@n?Kjmp3`0goM{5PD+%0fO;W%hYHKie? zVG0HZ2LZ6wGB7ZJF^09ZHAIALHjA~EFbo06X0rf9QPdD?tr3x$mJ2Rxtv8z0gh3Ge zk*hS}2G9l2kxVA1D~UZBL#_2jGMStPI)%;C?Ie(*>5I1p3oHW*RF;7OTK4!dp69v0 c88r((0WJ^LBGJ-%@&Et;07*qoM6N<$f?E`easU7T literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/gcr-smart-card.png b/dde-dock/Resources/images/gcr-smart-card.png new file mode 100644 index 0000000000000000000000000000000000000000..b4eaa92deda62814af994544786fa43766058d90 GIT binary patch literal 1093 zcmV-L1iJf)P)5O4B!ml{{Wx>CZB!dMp3zy|3V;1 z?!B(Hy4m~k+6xN6hp?ig{F|NrT`=$C3Je{PL-Bd>4Oi#hq21a;rPD|~19Flqn?j^5 zgwVto2!4Qf24DWpX4muC#%pZ3r%wbj1gJ~l#o22-vpmVU^G}crz5Dd@E|;G&7}LSn z0%Hqoo?}csrzcXbJp3LX@4SEi0PW^B=gvPq5_is178S;Vu{qY{SX+$5wT=XpvoO^~ z?jEh@<7BM{5OuH*3E!;^>SrIw^NKuoSmUua$Jm0cI|ZGNM@dDRMwE&yP5Mz9Pv(HC zgGCaVnO1lo7z`Z2JF3!QY`~ZTYjb}15tbhDq$%h$lIjQ{(&-gUXh}0ur1JRPJ#-); zFFi>D3-bzNa#H1x(owkzYpS931*uAD&pI+4$+AeZ0sB8kq!3gtvhONVC1_|xmdf!q zyhlzHK(}8JV+5%4YYVI`uqLM{tGf71PO1V*QH$$ZyxEBC15%06{t>XHV^DdrRG^ha z$pk6Hk$YiSgvk(3vHp|A4hjZ?g2AAo%E*)^-o~7(+M)&6oo{{}^Jgi>WHCEm10> zRDw<+OQG3F(8Jsxi0^JgKQ5xweYBxcHT}*0n_ST!@=&9oJvoI`Ef(i9bgBrUBvghA zkM6U%-p7}FxN4uipW{aV?NJJjj=#2H%z-;`nU6Zl|NIyUNC||%=IyU(&CIc}_7$xM z=a^l*$nLM}WUXmR+oRXn;>qV<9&rh%^LOH@4rdG{>)(FC*6mwVrJ*o;^tv0|`s4$; zzkE-7=>jo0q>`gUk2!GCPwqjOY_z!i%Il;PEs{hagv9%bSKoRUsWdXxTzc-My9)NO z2Cf5FPbPoYkb(zhX2+IPs({Amy*W8^@OT{{Ir}j=12_XXZGb-jI?bF9QaFWg00000 LNkvXXu0mjf4}j+S literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/gparted.png b/dde-dock/Resources/images/gparted.png new file mode 100644 index 0000000000000000000000000000000000000000..ead33781a32c96622293cb8145e1e1577ad1f8d5 GIT binary patch literal 1818 zcmV+#2j%#QP)z7AmAZ)3Hc2ZbX#uBI6M-8_!C>$cgE1KV zzSs7B&z(747#s|wp(<)Ne40<^XwJ;}e)B(bzWGKdrT8jMex=bL0z3qG2mt8!I{AyY zJKt7HeaG{>^8Yn}lyX4`@!KE2e(-zu8W(paqRy^E?UrSpeD;~=e0EtG62bEEc`L-S z-+r%B3U#wZDHIB&6uDfU?vIaUi^bwo2j6(}%$)#tDIleMt+lny5<+l&;ws%A|CN!E zi&&O*hufd`%{#|TLZNC*)1bV(f{u<3ySKOZ2f(Xe3Lu0y5Rcbr7e_~U@4Y`FJO`~| zf?RNlx~4W7*EJIel;aNsuq=a2Zjr^M85YwihOUk=c4?eO`)M9Eo~I&Efu?0y8?TYQ zy}f(CbO}1U4z0CJYjpqq1NK{8osgbor_)XI*Y{yOzlTX{f~0eWg397}c|05hI#Ow% zG;D(47z~XJ(SLTBrz78G$L5`cLu>f(!w<6QOnTeFH{KllPYUd*Pb9p#xmi-lB>VMG zcx>;tiB?#6fBG4f8@KU6^#Tjo0>xa3V%|eH1%@Rs{1RXJJet&LeI!979OlF)hk0D= zq)^C{NHoav7y5PsUkspW+ROFp*7^F*pC>FAXxsca(V#);{O=K#P5!gvY&WB%o_vy0 zQ;3kimc@LMnZ+?iCohmGxCA1C8<~q#R@Snit%0%Gep>CV)YjJ6gF^$a0KZ)I&fO-z z4m=%;#TXtQrpCKUtYsU{rN5)3KxrCtc|mJy3(eUu*%LNBzZ>V;Nr!4}1MN*)S(+~( z5a^mg)|;okKEcpT4?+kc;Rs5p?VVkR>@QN_iD)$DmP#IzlQ%duSHlbIU!hR*Edu31 zDuR`)nNKm2USeu$l5lMq^(|!xq2XlHjLw{)e2s;W5{ZX~M7V-WGv^5SgOpsCnwr|; z`1qBbz_Gg&5JG&jsj<;FFxZb_m>7mZHj`z2Llc%^vADQ^Zb||HABp+|l@)6c3pwC6)8bee{S^?oVk3-?q&O8HV^&k;cu3fvvu4i}A`PR?r*wn$mKtET; zuVULi{5~IsZXh)YEN8-!=iv$vuB7=_V?1@ZlH}Pmr+UuusQ*>AZQ6ll8>BNC{Qdxb zpFh&sb*T1E1@^SJw|m)ahWh$?hWdwSX=G8=_racPm}mKJsD)IWCvhgSeJ zO?!DmV{_Tk(jwcpZ6TFf;8=Gz8y{(196+p>#cZEV>28X7Znobdq zhX|Gj7#+SuRb@5%Ufg#x_nVlv<$cpM0Vo!VGiaG%gNSnU3QWQ3|rTECc-) ziAJNuqA^_8-L+~7W@hK?{=o~hwzRRSV+#P=x9;FU+TPue%jXyz8lX^gY+oP{&!*Ei zbbx=I?i0%Mh=fB3As%Sp+f6CO(o&ieCr^9I^P)nCj1G`YE%52_lK?BK!c zY0K9aof0TD=axzm(1lWpjhnap)HJOhX;OL$&one$zomd-Evy~8PIiIgb<`sDF%jyOZkH179Gc%o1XslwJT$P0LI1534@_%bZekI z_>Ev?)j|G?V)d3X_wkSE%}r1JW@c*g(_*184%`4HRtgd!LV!Z literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/inkscape.png b/dde-dock/Resources/images/inkscape.png new file mode 100644 index 0000000000000000000000000000000000000000..aa445e4bced18fa72cd03b6181fd369838eabad8 GIT binary patch literal 2155 zcmV-x2$c7UP)bY*F7Wpd{G_b&hd03mcmSaefwb#h~60BCe{a5^t9YH4k4VPh_Bb#rNBXklz@ zE@OIWX5(G}002^SMObu0Z*X~XX=iA307F9{L3DI-X<~JBX>V>VQ)ppwWkGCdYh@s4 zbaZe!FE3+qWnpw_c4cF4ZEbIEb1rXkXD@7NV`Xl0WpgiLc`b8cFEcJMFJ6OMyZ`_P zB}qg+JhK>TnKSU9y_sU$J24@ z>VibVjr4x*N#0AO9=&k>jn#%>{7uued52`)08+|N0`lmw(VO2F#bMYz4HQ)Qf>l{%6}cL-`cZ4oEe00BW4oE3C07nlWKHTuc)*cGBO)`}xmClk(Wk{y7B-2^0kKE+y z&@Ep0{U6!zvCTVy-_64Ti2IeHl=8#Cse=a(MtXaD$!4=yRsqX)u$>YGyM$9JV;9TV zr7DhFrM<0%*pkJ3<>{w*d+^QQ>bm~yf&iqHYk|}I_wSF!<8cy+1i4&}f^FA~7qN>j zwo}G&D>x+&+w~~AKFgPNuwqFw&wMS;=AL=%xd3L(0V(C9K;PcIdz<6&IAddD zq|<3k)8v&SM~Flsm}Z`AE>A9JVdgB%{A5m;mczTFNiu~p+v8v4-zVj!HwXF~HBCD@ zF90d!Bfy!RJ9jSLy?ZyKqobtLX|mZYtqY^pg$dR-q0}`Zf(?`JLSY_xcm)lr#j6K?id!mvPuKOI-QfW#WfSmvQ&ZEj zj*bon1_p2(XPUB9Dv{6U@jMTJbUICce?N|60fe;Ep2z(zvAeh{PAd`1cL(R0u z)-Yk5@40&QousB|Zvd!ylXn=OO>Eo7_iNqO_W&OdP=lCS(|ZJk zVi~2rh58RH#k|qqV;IIiG)=n|nEaBp<#L&1GD#>DA{ve2`#z52;JWU8VF0{Jsb=i< zqP8aYDkut8UPXjgQWsrX=bGbR0xnIRUJkI*_x+YirJ@vzMO@cKRaHWv5Y=k+_8-q7 zzE_!cIpTIm6rtdY$&h&E66wL0DP=|~z%LBLxTfm5j$s)6z(0Z4fGnT_t<`E(Etkvh zYy37uwdQ^W!4wQs3MuS~OXP<7sMx9ZfFA?9PSBYxhMT1znh zo^`hfMMbR(qXg^ms%5H06W^;;fJ?w(;19r%uInB^VCuseW0fzZOak3Ph}A7EEp&Hx zvu@ow7B5~*U0slyH*b!Z23nU0Qj0)czf1b{2R)tQE+ zl;UoXSx-YLWe`{e^a4)->xB??LI^^k5S^W!({0+atULOG5CTAGGy zdGh2hH*VY*Hw>eHe0=w1@MyXUPlu9LB z*QH!80}u*@2#3RjLLmSumC8fF{*jT9m9Fdld}L&#BcIQ&0!F4f;hYmu%~dV+_4PXx zMR^GL7Vz>^HB_tB=@keBXlrYusi_IevdCmIIF54@cn%oev17*?UDv-1YzICM{AFgW zW|dl59$C6{=|^+9+)yHsI3t9Jhr?m=`8YD6i;>M{NvG33a2j}#$?P8nK6T;3 zg?-Uz^e4a%X8as;h5*1Y3_=gS57`GCVw7 z2KE5oX0qh6x~_YMVH6UH#Er(r#zX7Zub;Tv-kcuLb={Lv{*cM8SOL<2Q7)IaB@&5` ztE$=%i^V7wi?p@10aSs@x~|)I=}AZ_e-n$vW-Y_}4y7}t77_tOf!#ugAFW=!8rO9h z8ymxMoGKuJ-UqoW&Kuw^m=6L6fK5OVILl;UjVF literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/remmina.png b/dde-dock/Resources/images/remmina.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c214708f6559826dfe486ce5938c59b4f13b05 GIT binary patch literal 2009 zcmV;~2PXK5P)KbLpeaid{-sq>z)72;rmEaZ&<1|Ab<0vkRoc=@Q3SXuIH*dTs*y<3ghnhO z25)0~#$wGt5<*0++e+Z+Z*2`ZuG_J6 z>DT`~XU?3uE1z7_Ov?g^OTZ-#Ua%N6G{jWXa+cn90_gcGRaI5KC0|=ItGB;ba~uc3 zIf6@qge*%yQW*|ICY!0-v}se>ZL5K;+cvjw&b!+7y?EVm?3%%$L5T>st^+hWX!p^F zAHiGa&ViXX#T<$)$&xD*K}klXk<(Zr%^5ksOY@|R^Bm)>ZSQy6+T|O(f4-@y>7rp6 zwby!kBqRfj0Rl0gKNtd@J=+D}|K7`Bg9P|HEiN%KLLowvmB`x;s%_)5P<(bllOb^8 z#2@zofJb2SQ%{B&!17fqAMHzL(i*V_sQ~WUh)*6VU|BY3nhsyt{0mTI>DHkor##oh zNMA(O#5Lah=^BcJTI>VleQP9I&jJB|^i!k_A$FE^DISLOhSwfb=D~=0I zuMAL8QfkCVsZ^0vZOt^uBSD+slfpd|D@gj5`XT^OB7hW<= z)1@Co?h2J(5h{mNY7{EUD+mN_J-=vh8K7Mu#|R!kFc-}KfWjETR;y%lS@8p7R776RYO1Hh)~B|@sm@a# z0S6Z;5fC;W2}W}|SX6Y}#)t($(PRPW*hCsfkwQi(9FM?;jq6ofk0B~~?@CmCA_8K| z_YgyMO-cA~kG+;h zmhWNy9kG`=7r>gTgU|3oS63JGTkzuffR32wb{++3^{Miy{dE zib7rxDO3?H;hC%w04p^x%W?oX0o$TLy_y5+ArlC+cXoC@=Gb;*_UwCLXebWn-#?Gl zpMv4x5lE-gU}$-ZrIlp)wI#Hr{+(0x5Pxn?OquA!UGF z^{q3bTb|rjR%*q+d+qfe9GU^8wY9Yd!Bf*h!7Iy`KU|5##EY`59C-E6&%ez{yuMzn znUZ?*H_Y)#=YyvXo*xIMyb&Ege!Oqju8rmS{FuM8A}l=3o2HsIQ$M+T`rUg!>%GMA z(2=jUw5(aYXt9Xx)laX&v13R3rp4S@HS8W&m30f(5dn%tu2>H|&}QB8N@h8}0}JLi zIpra*jW#c6hVFOYeYLHvZ7pNWop617cKbo}bS1~czSG?etk55V!LsVa;DZ}S$9$#d6{d@O67A2F(M4{`lb?etYSTnt5|3BaVpsq+@G6^Ld4(s8% za3%H!nLNgAXAN8(7{WVYwz08Mg8xx0%VKqry2i!#x9n6Db*3y!Gte0YFSdL3zx>1F zcl`f?^-nymH_e~-0fJJ|{T20N4E^YTy_Uc5(hCc@;~eZCjDN|CsargFChv5y?TR*m zU~o8_$(A{|Wie&h8I7@lL@F7@Ozu>si66r6ux3^!MG6Lb6 zie2;Wy*HdlCbY`R5aB>BlOuqe+n(!@(S5qOBuKKt<~26Lg$oxT;PZ>iO(K~@BhixC zoY`}w)19Xe0l-635>Qp`rEfg6EJW>?F-BTAh-fUNf#%rw$chm#d|>zu2>Q!J_p1t5 zLtlTdI29?{(fX*C935@hvSm|CN5|1~HxXbckFI&-+P)X}O}uhX)%h7rE$+<|G?f@h rm}cG{nX(3m1PyTK#3d;a_&nu5Q&2?TuZ_Ht00000NkvXXu0mjfLpi^R literal 0 HcmV?d00001 diff --git a/dde-dock/Resources/images/terminator.png b/dde-dock/Resources/images/terminator.png new file mode 100644 index 0000000000000000000000000000000000000000..977bed702b827a95cf13d8f58631130e03d349ec GIT binary patch literal 1740 zcmV;-1~d7IP)(bN1Qm?7i22{nuLioNZK<&rYmeOd z`R$_{Hf%EW+I8*!U!o`~imKq8b3; z{5cjE7e7@1OJ!(ii1iyb@z8@0kNoAYFFXfq&OyJtas4Jc+nnLh{u=Yqc8Zrq6L`VjpQ@f~NNc ze|pVUR55@l^~G&qoGMg}A>Z|VZrM6cT$9KvmDpZvkK{`|bt%#Go?m_K>og3gC{_g( zg`zd8Ac9fhH=^8Q3_J4-I-TOZV6+$a{x}uoiFe;6Pl;}~ON@aSBQZvn0Z_n+FuQII zqxXD?*3=};f4>hZpo$j8`(Q4_#QC8d_sC=T>GMqg^GzhAf*An>RYg%2C1I=~cuxp{ z5DEaw@_5^nXe@RaYArI>>QGr|VN{X6cOr=NXwFp_^A+kHN43==TWBNBmtOb4_U7d= zVr+)7&j zU1(zZ;VANBSd=v?WVJf0zIq?hZqq(+fD8K$Tux4)0@%#rz3&;1z0GPFfRcd}7(vhz zAHvkJG70;X_QNsj6DLusM(CbAOZVxC9zy`t>~a|cEtjzU5IA2}NDqK2DJ5){K}xK; z)MhNp%2=8!DnUvHs`K-#n3-X$aKx}&`u)5}^58w*dvqxP5y5*;W-U&Hzr{c%vD`xY zluJxGOMM;+0M2=`%;Hp7t%*9RG>!@qJigr`I@hyO%Q+en zE3M_W%v@o75XhuU1ptq8t{2i}3Iykp8uXd$3we!(_FinsanotaV>rB8iN8c_4a`>1Tpjg1n;r7_k%RP zeiM@u`}tt+UK#^bF7>Vg+&olaw6TikpL`N&waW2>EG+FON%VK%e2@VTymjm-Lk4!< zwUh04-3`E-ul=2~)6>fqZHL5E^gRE^-?4f{gKvEM2>?EP?+E)Q_AUd`Eph-rl3Xss z5F(<24<4KK7^t~O6*zwIFvkxbE*BZhfefgoL_I*K+vLSx{IYyEd=(b@0FtEgi=BrU zN(QXW2nJ@WIhAV_b>FLyn6s9lZ291;O?68cNGX;2UIn zhwBa{%Q9*sBgjG%xdK435ycq!&Qnie^BiN$6~9`>+yE`t06RZ7gNP7Qf+b1lW}7pt zY^>s=)2C>6Zp`~@$qz2HsJ;F=&wlF>E;vt0iAG~3#wdB7qrGoW4lLS~;(>P#AJQE= zzR23O>prn@0RPG>RAy!|3XR4}wr>3#<6AaUsZ{V=7JiZ+r`@30|-E~egdDq4+^fENAUSnnOp<{T$a zo$Q`H^PeA2?A`ye0rLAExc7mzYj1wWSaU~~W%+eo1P0HPH*&^QRTYtQXHK8peemsf zUIpfis$z_(0XJD|R}7B~H>@=d%%^^8?JRaGAp`+Bz(wG^=_4;PJO^q({J2Fvp;UkX ic-7tyf%&YD=l=s_^?V%!g)wXZ0000NS%G|s0G|-o zy?ggE{AW0D;6Ot|0|P_D|Ns9PfHVVxVfP(*AjMb`R->=d;b*aaz$6Grc8>A8&|3~cJ#=EAl zQh(N!+v&YdbC*qLy3#Ra-Yi#6Hn&AOE3X^J-{fi4xT~UH=f*PWPJcm@$?k%Nzb~7b zg9{Q4rOcHwSXdJh$veYA#cPMejBNcyYog@ehXx#V6cxFmY%c!g+SWR~-49X?lL`;A z2OYd(b#&rnojkYs7sG50960epnMK;CuZRE1VF|CkpIZIQnO^aJ1_e&rQbU`3`j!f^ prZt4{?=dvEVyCl>^WWmXeD+q;v;HP33WR||z|+;wWt~$(69DQDh-3f& literal 0 HcmV?d00001 diff --git a/dde-dock/Widgets/appitem.cpp b/dde-dock/Widgets/appitem.cpp index b50012888..80ac6afbb 100644 --- a/dde-dock/Widgets/appitem.cpp +++ b/dde-dock/Widgets/appitem.cpp @@ -37,7 +37,6 @@ void AppItem::setIcon(const QString &iconPath, int size) { appIcon = new AppIcon(iconPath,this); appIcon->resize(size,size); -// appIcon->setIcon(iconPath); appIcon->move(this->width() / 2, this->height() / 2); } @@ -73,6 +72,22 @@ int AppItem::getIndex() return this->itemIndex; } +QPoint AppItem::getNextPos() +{ + return this->nextPos; +} + +void AppItem::setNextPos(const QPoint &value) +{ + this->nextPos = value; +} + +void AppItem::setNextPos(int x, int y) +{ + this->nextPos.setX(x); + this->nextPos.setY(y); +} + void AppItem::resizeResources() { if (appIcon != NULL) @@ -97,12 +112,13 @@ void AppItem::initBackground() void AppItem::mousePressEvent(QMouseEvent * event) { - qWarning() << "press..."; +// qWarning() << "mouse press..."; emit mousePress(event->globalX(), event->globalY(),this); } void AppItem::mouseReleaseEvent(QMouseEvent * event) { +// qWarning() << "mouse release..."; emit mouseRelease(event->globalX(), event->globalY(),this); } @@ -116,6 +132,16 @@ void AppItem::mouseDoubleClickEvent(QMouseEvent * event) emit mouseDoubleClick(this); } +void AppItem::enterEvent(QEvent *event) +{ + emit mouseEntered(this); +} + +void AppItem::leaveEvent(QEvent *event) +{ + emit mouseExited(this); +} + AppItem::~AppItem() { diff --git a/dde-dock/Widgets/appitem.h b/dde-dock/Widgets/appitem.h index dc2af8ec8..450c606b9 100644 --- a/dde-dock/Widgets/appitem.h +++ b/dde-dock/Widgets/appitem.h @@ -15,6 +15,7 @@ class AppItem : public QFrame { Q_OBJECT + Q_PROPERTY(QPoint pos READ pos WRITE move) public: AppItem(QWidget *parent = 0); AppItem(QString title, QWidget *parent = 0); @@ -29,14 +30,21 @@ public: bool getMoveable(); void setIndex(int value); int getIndex(); + QPoint getNextPos(); + void setNextPos(const QPoint &value); + void setNextPos(int x, int y); protected: void mousePressEvent(QMouseEvent *); void mouseReleaseEvent(QMouseEvent *); void mouseMoveEvent(QMouseEvent *); void mouseDoubleClickEvent(QMouseEvent *); + void enterEvent(QEvent * event); + void leaveEvent(QEvent * event); signals: + void mouseEntered(AppItem *item); + void mouseExited(AppItem *item); void mousePress(int x, int y, AppItem *item); void mouseRelease(int x, int y, AppItem *item); void mouseMove(int x, int y, AppItem *item); @@ -49,6 +57,7 @@ private: private: AppBackground * appBackground = NULL; AppIcon * appIcon = NULL; + QPoint nextPos; int itemIndex; bool itemMoveable = true; diff --git a/dde-dock/Widgets/docklayout.cpp b/dde-dock/Widgets/docklayout.cpp index 45b24ebee..435a2e87e 100644 --- a/dde-dock/Widgets/docklayout.cpp +++ b/dde-dock/Widgets/docklayout.cpp @@ -23,6 +23,9 @@ void DockLayout::insertItem(AppItem *item, int index) appList.insert(index,item); connect(item, SIGNAL(mouseMove(int,int,AppItem*)),this,SLOT(slotItemDrag(int,int,AppItem*))); + connect(item,SIGNAL(mouseRelease(int,int,AppItem*)),this,SLOT(slotItemRelease(int,int,AppItem*))); + connect(item,SIGNAL(mouseEntered(AppItem*)),this,SLOT(slotItemEntered(AppItem*))); + connect(item, SIGNAL(mouseExited(AppItem*)),this,SLOT(slotItemExited(AppItem*))); relayout(); } @@ -103,6 +106,42 @@ void DockLayout::relayout() } } +void DockLayout::dragoutFromLayout(int index) +{ + AppItem * tmpItem = appList.takeAt(index); + tmpItem->setVisible(false); + + if (index == appList.count())//note,target hast been remove before + { + qWarning() << "out of range..."; + return;//at the end of list + } + + //move follow item,note,target hast been remove before + AppItem * followItem = appList.at(index); + followItem->setNextPos(followItem->x() - tmpItem->width() - itemSpacing,0); + //move last item + for (int i = index + 1; i < appList.count(); i ++) + { + AppItem * frontItem = appList.at(i - 1); + AppItem * targetItem = appList.at(i); + targetItem->setNextPos(frontItem->getNextPos().x() + frontItem->width() + itemSpacing,0); + } + + for (int i = index; i < appList.count(); i ++) + { + AppItem *button= appList.at(i); + QPropertyAnimation *animation = new QPropertyAnimation(button, "pos"); + animation->setStartValue(button->pos()); + animation->setEndValue(button->getNextPos()); + animation->setDuration(500 + i * 100); + animation->setEasingCurve(QEasingCurve::InOutBack); + + animation->start(); + } + +} + void DockLayout::sortLeftToRight() { if (appList.count() <= 0) @@ -134,7 +173,7 @@ void DockLayout::sortBottomToTop() int DockLayout::indexOf(AppItem *item) { - return appList.indexOf(item); + return appList.indexOf(item); } int DockLayout::indexOf(int x, int y) @@ -145,5 +184,32 @@ int DockLayout::indexOf(int x, int y) void DockLayout::slotItemDrag(int x, int y, AppItem *item) { - qWarning() << "Item draging..."<setVisible(true); + if (indexOf(item) == -1) + { + qWarning() << "---------" << lastHoverIndex; + insertItem(item,lastHoverIndex); + } +} + +void DockLayout::slotItemEntered(AppItem *item) +{ + this->lastHoverIndex = indexOf(item); +} + +void DockLayout::slotItemExited(AppItem *item) +{ + } diff --git a/dde-dock/Widgets/docklayout.h b/dde-dock/Widgets/docklayout.h index 7b72f9719..1e93ec313 100644 --- a/dde-dock/Widgets/docklayout.h +++ b/dde-dock/Widgets/docklayout.h @@ -3,6 +3,8 @@ #include #include +#include +#include #include "appitem.h" class DockLayout : public QWidget @@ -36,6 +38,7 @@ public: void setSpacing(qreal spacing); void setSortDirection(DockLayout::Direction value); void relayout(); + void dragoutFromLayout(int index); int indexOf(AppItem * item); int indexOf(int x,int y); @@ -45,6 +48,9 @@ public slots: private slots: void slotItemDrag(int x,int y,AppItem *item); + void slotItemRelease(int x, int y, AppItem *item); + void slotItemEntered(AppItem *item); + void slotItemExited(AppItem *item); private: void sortLeftToRight(); @@ -54,6 +60,7 @@ private: private: QList appList; + QMap tmpAppMap;//only one item inside DockLayout::Direction sortDirection = DockLayout::LeftToRight; qreal itemSpacing = 10; @@ -61,6 +68,8 @@ private: qreal rightMargin = 0; qreal topMargin = 0; qreal bottomMargin = 0; + + int lastHoverIndex = 0; }; #endif // DOCKLAYOUT_H diff --git a/dde-dock/images.qrc b/dde-dock/images.qrc index d07d7a34b..1d2103450 100644 --- a/dde-dock/images.qrc +++ b/dde-dock/images.qrc @@ -1,5 +1,23 @@ Resources/images/google-chrome.png + Resources/images/brasero.png + Resources/images/crossover.png + Resources/images/d-feet.png + Resources/images/deepin-multitasking-view.svg + Resources/images/display-im6.q16.png + Resources/images/eog.png + Resources/images/file-roller.png + Resources/images/gcr-gnupg.png + Resources/images/gcr-key-pair.png + Resources/images/gcr-key.png + Resources/images/gcr-password.png + Resources/images/gcr-smart-card.png + Resources/images/gparted.png + Resources/images/inkscape.png + Resources/images/QtProject-qtcreator.png + Resources/images/remmina.png + Resources/images/terminator.png + Resources/images/vim.png