From b034b40b09362499e475091bc868d034d375cd8e Mon Sep 17 00:00:00 2001 From: Dushyant Basson Date: Sat, 2 Sep 2023 02:29:52 +0530 Subject: [PATCH] application file-icon and window-icon set on ms-windows --- src/qtviewer/CMakeLists.txt | 2 + src/qtviewer/main.cpp | 7 +++- src/qtviewer/resources/ifcopenshell_logo.ico | Bin 58862 -> 58862 bytes src/qtviewer/resources/qt_res.aps | Bin 0 -> 60260 bytes src/qtviewer/resources/qt_res.rc | 37 +++++++++++++++++++ src/qtviewer/resources/qt_resources.qrc | 3 +- src/qtviewer/resources/resource.h | 16 ++++++++ 7 files changed, 61 insertions(+), 4 deletions(-) create mode 100644 src/qtviewer/resources/qt_res.aps create mode 100644 src/qtviewer/resources/qt_res.rc create mode 100644 src/qtviewer/resources/resource.h diff --git a/src/qtviewer/CMakeLists.txt b/src/qtviewer/CMakeLists.txt index f8da024edb..fae7be421a 100644 --- a/src/qtviewer/CMakeLists.txt +++ b/src/qtviewer/CMakeLists.txt @@ -38,6 +38,7 @@ set(CMAKE_AUTORCC ON) set(RESOURCE_FILES resources/qt_resources.qrc + resources/qt_res.rc ) add_executable(${targetName} @@ -48,6 +49,7 @@ add_executable(${targetName} MainWindow.h MainWindow.cpp main.cpp + ${RESOURCE_FILES} ) set_target_properties(${targetName} PROPERTIES diff --git a/src/qtviewer/main.cpp b/src/qtviewer/main.cpp index a6af906d00..4bd3260ac2 100644 --- a/src/qtviewer/main.cpp +++ b/src/qtviewer/main.cpp @@ -6,11 +6,14 @@ int main(int argc, char *argv[]) { QApplication app(argc, argv); - QIcon appIcon(":/resources/ifcopenshell_logo.png"); + // Set the icon in the window title-bar + // "icon" alias defined in .qrc file + // (.rc file sets the file icon on mswindows) + QIcon appIcon(":/icon"); + app.setWindowIcon(appIcon); MainWindow window; - window.setWindowIcon(appIcon); window.show(); return app.exec(); diff --git a/src/qtviewer/resources/ifcopenshell_logo.ico b/src/qtviewer/resources/ifcopenshell_logo.ico index 5414ae39717ecdea7c326e695d94d84e8868c25f..6ec70ca6c613653a2b4b6451419e2da672e138e1 100644 GIT binary patch delta 22 ccmaENn)%&nW^M)sMj(uz#=yX^k^Ave08{S<{{R30 delta 22 bcmaENn)%&nW^M)sMj(uz2BbG~KYj`TQ}hP_ diff --git a/src/qtviewer/resources/qt_res.aps b/src/qtviewer/resources/qt_res.aps new file mode 100644 index 0000000000000000000000000000000000000000..48959dca7b7383212ba4d005134eee0ae415c61e GIT binary patch literal 60260 zcmeI5349Y({=i=;Hy(H`?s}lR=(;_V6j>=(ORt3GPyt1^YjJBiloe?K{d;jJ-nuRx z>#BI6toOkRrJSYVlKUtvP>x>Eo06u9h>-XHPTC~X(v|{gTG|YsFZ1$d=DnHkyu40k zelHP1h#Nr4DoECt2JxyF=*8V)Fmow=s+V^Ot4@gYA|aweW5-XN8kd;x$mFD0!?^en zk0d-iazetSNwG8v&A%uE+<+U#~yq&T}&FwDkD#V_{4rjhj zAKkmV_U#t7iGu)k%*Sq5h|doyCAGZCuqd=63>dO_V3Z*_BGQnok2EY97G+4eeUKq# zR4@I~FQ_9}A!g;|4*FGz?PF4>`o^q&44!Bgo%Xa(v~i|F%R9&x zx<`1w0#@Qa9rvJ5$9=jX<&Is3l+j!COYd2a`*pa7@!#WqF7D^zeh%)(;eHJ62jTt? zc)vJ$%^VT6_C*o3?qw0R{x$fQh}!T*3qAVg-7UOd4Mn(@xCgz&y~I6?mbjO=m$--V zzv8|W_ocW$5|cVD6ZhMr)1Fupoi-ym+Bo~`=rzxNfcqzKKOXnPaIeGtWl=x9BO*7x zDy~KS1?lYp+|1&LW z!`!c;HoW;S+)u;(J-Cm+{Vfq2KkN{(^)oSe+vj5N_OHa?9pBh#0ZKf!3r*x+;$Grj z;vU|TxVPbc5AK)Y{;h~D^T*+S2=061{+fs#Uv&uIxln}f`cZ_ZFBV}LOFZVFxhnFY zdx?9Adx?9Adx`rJ+$ZDy>F^!j8p3ye?}z)Vao=@N#zLR4jOAib=1M!w<)5;eHnG`wz-Y?TGt!UiXdqTU%Fue|n#@?X%kMCGI8e zCGJn)zF<)1s%-=Jqgld|NhM$ZJ$k5Sqp3TYWEWNk~S}KZym62?WX=& z8$RowwQ&;ed-Xf8UGzJ&(@s;lY3gz>5chJxzI77!vj6@~S^f8Kd8gljZKH61L*Jae zA~ZWwgy!yTYE^D8|H5&<*5MxiTWqxZ%zlSIVevP9q9EVuh<$^tJ? z_p;x??GpFD;C+2)&YpWibNBVceaGAK4~afU^2MJI=QgD_x0HQ>yO+2>8Je@#+BbLK z`+alw_rZN9#eFE}p!X4OdbZ%H6}XqUm$dnczIg}Ia36>JPPgLU>)v@!;cTxl)z>-v zt*z1DJNg`@-8f4O_;&Q1iHAzjGdA;Un zzZv)W#36$|pE%@v;*eoD8}ihCG6757tdKTp5>@8975OWZHVeLiu>`NSa?5{Fz&9P&}( zkWIuPn~6jIg*fDsb;QDY;<;7**EyxQKWLIciz;&c?rSmbeQ@6u_uX(0`fj-IhI<&@ z4fow}-yQdt;r=q*UxE7`xc@EgLvcSOI_=4ExPKb=Z{a=-_gPWvUNIAg{0ni&Cx}Bn zNgVR2(_j!ScIpHo&YHQSEKz`3Sezt|SzUb)s0xEHtwy}-S|J&YE(7q}O=hw%dU z0{23{YKn+SeY7L)yW+k(?tg>(YjOWa+y~;mKko0r{cPNSiTka%x7LV5_N4prav8kh znDm=~`+Hl4`*ZF0Vp6B$9#%gla1S#C?gj3v#{3wcW4zDn-Ee;$?t^h37P;}g(YT*Z z4ETG*fTs@LwxFz5ENp!-fsK7uUU#2UQYN(r%4N_;xF3W2doFDE4V|;9aaPJ$tJfK8 zH5c9zxEGN>{YM$|b1CC}{Bf_x{X>Jdeeo)B$P0->&Lj@`S5+*m`}&;HG8vpwF8!yr ze)sjA7ra-GxB6J%p7A~l81M5ZpL1HD zqsuLkLGzAE|8e#Uy06E*I(ty&vg&besbWyZN`d?Cxc9^T*na!BF2sE$ zamc5;KawqP&CZwF6-6@O@uQM!dF9&1;oa+AEx8eCyesYn?v?RAm-IWZwNJl;J09$J zDE-IK?2O~pv9Pl5kpr^NfgGv*u}}v5U$ytDw(fP`2+wC)MHy>_d(kg@cPHG3;eHP8 zw}&3dI{xSMY^nRQKn6U9_q$GO?+*Xo>zp%5KErbQ8_{=1h6s~8JNDhbZ(N`C**mo# z6r2p0jCbYls?x{T%?1Ct_6%y8bg};glkgvJ61T*feEjY={l@RUihlkH#}@hBf9yE- z$t3rP8zPtGE#f|AlS*=9;r^2v-Lt z#korSLQ7LVAc?>baoY2R=_*c0wQWd^OK8ckpt#(%!Fx5V#Yj z!0Umt&ELXW*bz9(oC_9^&4f~ale*XaWEHwCumdt63$iUjcNmH+LR(_7Uu6WnWEM4e zk=Jz)@SORQz~{`@Lr=W>!(fQS`&gI)v*0b5A2_FC5o~}gI2!nDg$-m2A(#Ddt9$KI ztFW^Y$41y{^~L>faDOxILvSC7`=PiWf%|^Azgm%x_f8N6!(kZSN5WWmum&%fX9c}r zo(pflhmZ^@LC;t0<{TV>pFv&#$|~ z>A0VZ`_Faztm|;U3-^0)KOgtucK0uvuMB$Gyb3ZQ9sk*21=&i;<+#qtz2?J8VdoQz z2>h?zeJ9*srCn^fg?68yU1|LY_xpA0ttWJwtv1}-bh}}nRpMUaUgACt_rn$Ufv=i- zKt9MeLN3R7KJI-qpIF*!7FaIUer*ZE{ae~amJDr*)r9-wx-{!a+)La`+)LccTJDWb z_pjsrb=<#>`?f(Y$2m)BcV{yNzf&o+3+(N_EAEHk{u9ktmVLM{$Nfp%OWaG`%f`A7 zdc)iU@`vZl!UD*Tj zLADVxI8J+idnW&y*<4q@3U8V(4tmRcNAQ2lU*Nt}^RY$ZUY@u6cX9tN?%&0I+h9lV ze=0*7@*X%x`CMKp{9iVSz}L*z(nmdj|FqzD%rf}>O6fND^Kd^8_w#Vy`my0I4eZy~ zb@}Hrw%~KG2%KG}e15zk@D=mpf&Vn`52R0aw|mV;l|3LIWE-G@WBdR*)a6~tv%BZs zQ{XcdSL6P*z?UjYY5TS&aX;VELo?r!53&uA!QaVvsCP_1ZQcj}SK$6_KBE`m-bTBZ zP2oOxfu#rJgKXv4IKJijMXo*O9rO;_%(&fwl(Htub>mrdnf^9Akx3)=k` zwENc0e$D5WMEv{0X6XT`aIl-``X=%{WY;|iu<5|hfVWn`!?K5kG1 zzRosZ?cR?V!;f))%H!@=;eHkFSK+>OaDaQcPia?Juh*`%`ry7!?|i3%ARbxxJz$UP z+=YATY4_Z3?g9Ds`_9U}=L;L7cC~e!HWly7c!s*XZtu#;sCM6(_~keK#+%H|;(jge z*W!LH-Y;BAb!)7j@Vss)bm#pm6dIav??b!qh5HoT%Vu%E0rwklzXA6b9u@5KI-V1~ z#QbKw3*NU4DR(ZzyD#G;M&f>Jv$@}l`^~slo-bY~Y_eK(n|LO@$+|$d(K?uUC;SUt zYU8{sCjjpq;CaSD6f~Rrt+?Nc`>nWd+1S{>pP?8Q5rgs9kj>W1@!lT)&i35cgx}vx z9pMYc4E@|}?swvTC+>IRzGY%#zfM9q&;38wZMWWz``_WdYwxXG$84azpNo5?-T%#$ zihEmgx!0z1jhW6hW;)lHEe{*}bU?ey`i5?obp-xzhHkWVd(2%3ad!&mGBF16_qgAJ zd)Zv>b(ysLOxk@W?Y_C$!#*fvTJy9S)*oP&cDHpH{%_W1T07A0t706PpYO!@{sFk( z*{trfaG!I3f9+hBRk=-wF%t1Y747ttPz zX!rGFV_8EKuzZ`g(2}Anw7d$_bOo0CAO!zC@%~%54ENobw-4G&3~x>~%9wy^8kFVc zh0Wx?P*-I6*bxJ+DYaY)s~{70*CJh0V%Z4az2hl|Zg78sxQ86#3sSZJBL;tob%b`A^>=+ucwPs}=fCa1b+LkXav3-e_a}*k zE!Hfsq-nmeOe6l`CgoW$?(NSDX#1{8ys0`3oP&ECv9LcAN1GM=k!7;xQ_GFG?~Hq2 z;+nkf>$F^V<~g`G1^?UpVeosEgK&Sjma!1H7r3{Nd8@k?Z*E-%&dU93<~@u(nHK!E z*$@96H6Jkc=Tpyq9;xdXF4Vk6xt~L9+KUw%8GG_T;J?gQYu+;p#-51a`CjkmbKV>2 zeskap754|fZ0?GCq2Qg)-@qB%pCTS}Co%Yc!+p1)SG>;8-?*!U2Hc7MUS_J5{A2Bn!L z?Oo#9!4}f7U~m7*IZ*IU=WoF2ek}dX`*_b`Y`4q1lD2{3|9-d#e8B7f{M8G)`&eQ` z66tT2;QpAiy{pf`34CvbhoC#O12@#(wu`X4|EnoI;5GW2?X>y2-7Dwe7s!IS@JH~4 zwk_{GkKXS79#eYY=X^)S5!~18>(y=F(f<_T{3{p<-4y={-s$WO`2Cf*w27wlpyl*8 zraJqZ+WwW-N*}Za=DHmC1deBDNd_|+(JI;r44*mz@p&wkW zDXrkSHs2S>+(F~^r0uOm9A;$Td~-UVUmNP{9j@z}Tkx*D52kC%%(vqH_i%-_%-m61 zP$IO&<#u$%M@4Pgo^jU^Gu9_EC>i(r>2r?azwDejh4B79;?~rlrVe3sP?t@nzOV=DYCbi0MIv1ZeHp=)J%ApXlU^Ohj^<$6( z(_sw!q4kJ-E-Y=AEg2Rws&9}^>&%B4NcMX1%DKg|> zVS4Yv0@=Huut^D_d=+a+k7&JS&wOM-vr8jyJ(!=~=SZIHbJ(L8sjpGr5qajLxG>k~ zy)-ZKw(NuHx8)y{x8->hBlWdu_kDBsMnZbuoW0V+7^$yKyAM6II}CP#^e{&1Yt!!g z9o%_MzXRJhf%Gs&>TA>P`7PG2{0{L3kRHZJeQnx3zdhf9-y{A4EXwcDdk`aawQ2VQ z_pELYPY&FZnhVl{7^$mGyC0OX+!yW$%UHGrqz5rlSDSVpo}TOjH;1P$UJTNM7^$nR zyBD}`7rt}hzu_cE4`HMpulw|5F?jno_rp$*9>PdHZQ8x#PRQWxU)~V0?Y|#@^bkhs z@w(>(gm3%IH)6~D@ex}-$pPsBjMU+Euejg-xro^OVL-&@58jX1Jns~9*~Azr-|N1* zHY%|_0yZbhZmzZykP+w$R@%_xnB1*-TOwZ z|7Sqdy4TjjFCd!;BjtMCSG!kcw0RM=_LVNtYhTt!uYKVF$R@%_xnB1w_exT4d`3jC znR79Wjb1Z58)Oq;q)e~-TJEFQz9ga-$BO8*8J9+7g7z$Q5lBh$U?*7h~pq@v5wcb zpP?G>;zk%SEHQ{G{vw7f9@Krv;;=r<Fl5odjzbpp?>b~r=pTkG>N^mkp*LLB$YNXNYLaQD@Kt8Es&pq+ zTJ&_~3!zS5>RcZ!>U2*>Ipq7Q(w$UkA5~h+sIFJh+f$Y9q)H2Q`e|hcXDX`;p-vA} zfIMT;dX=Q6izRXso z*}$1^Q>7`@na{?~^hs4(T@IBw*GYAyDbktG>W;LM?MSD((#jq?^6iIMwNAD@o3u^L ztV)tTrb^FrrP<86jyg@z&irguI#rcs1;;uZ<{8t<9#*g4QQ7l4(wAhr@~>B?Q(gH3 zRq3Z)X&<|znXJc~N|nA;mF`(jdWI{X_oGt6Oy$2zRp}Y7G(CZHot~<+@_tt~o2k63 zUFjLFw34*1(^E+>vA(@usZRUYGpq6`t!iSO8LqT*6}Gi^L-s{B_SG@j>^)M|tD5OS zj#b!phAQn$*2*8`Tu`$db-n8SQKucP)qaf5f;blEjw-Gk6)0)Piwh>5s@muJ(%GtY z>Psu{g=!HtPA4P3g>>`Ra74DxV6R>$v(Oo6|ML+(BJOR$|2K#|hn4wa@_T_^+${z(mvV!BO^xUh*3O<1 z;zs-YMv<71G zD(fBzV5f`hMkGyAClw)(H z_DftlDe@Hk_GtUxr#^~6!vWcF;b2%?U7=0d!4+Ocgs?bt?fE)2sXhK`Qp9N3rk;{2*}b#>;3ICHhV z?I+iDs-r?<$4{IZmzeO#a9d{~N?`5g~?( z(QFw-zLZtlDCP3fJ}EiMd$|5>T>DbB1%ClZXxOm+ZK{TStLstTU8C4WN?+%GbXUC> zmG|n<0@vAB>QcW~mG|YdEO#Bh>wT%Lt4zwVk1bTM<7(gb75GnSC;f}m>$uv9W1as8 Dr%sO> literal 0 HcmV?d00001 diff --git a/src/qtviewer/resources/qt_res.rc b/src/qtviewer/resources/qt_res.rc new file mode 100644 index 0000000000..06595be934 --- /dev/null +++ b/src/qtviewer/resources/qt_res.rc @@ -0,0 +1,37 @@ +// Microsoft Visual C++ generated resource script. +// +#include "resource.h" + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE +BEGIN + "\0" +END + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_ICON1 ICON "ifcopenshell_logo.ico" diff --git a/src/qtviewer/resources/qt_resources.qrc b/src/qtviewer/resources/qt_resources.qrc index 97d832449d..9adc51b707 100644 --- a/src/qtviewer/resources/qt_resources.qrc +++ b/src/qtviewer/resources/qt_resources.qrc @@ -1,6 +1,5 @@ - ifcopenshell_logo.png - ifcopenshell_logo.ico + ifcopenshell_logo.png diff --git a/src/qtviewer/resources/resource.h b/src/qtviewer/resources/resource.h new file mode 100644 index 0000000000..7112d62142 --- /dev/null +++ b/src/qtviewer/resources/resource.h @@ -0,0 +1,16 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by qt_res.rc +// +#define IDI_ICON1 101 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 102 +#define _APS_NEXT_COMMAND_VALUE 40001 +#define _APS_NEXT_CONTROL_VALUE 1000 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif