From 311674ba44bf141d43cdb9e7e6209fd3f552483a Mon Sep 17 00:00:00 2001 From: Marcus Hsieh <80995617+MarcusHsieh@users.noreply.github.com> Date: Fri, 22 Nov 2024 05:39:55 -0800 Subject: [PATCH 1/3] Instantiate pieces and be able to move them around --- embeddings/Wizard-Chess.pro | 14 ++- embeddings/black_bishop.png | Bin 0 -> 1260 bytes embeddings/images/black_bishop.png | Bin 0 -> 1260 bytes embeddings/images/black_king.png | Bin 0 -> 2485 bytes embeddings/images/black_knight.png | Bin 0 -> 1516 bytes embeddings/images/black_pawn.png | Bin 0 -> 797 bytes embeddings/images/black_queen.png | Bin 0 -> 2267 bytes embeddings/images/black_rook.png | Bin 0 -> 725 bytes embeddings/images/white_bishop.png | Bin 0 -> 1944 bytes embeddings/images/white_king.png | Bin 0 -> 2279 bytes embeddings/images/white_knight.png | Bin 0 -> 1878 bytes embeddings/images/white_pawn.png | Bin 0 -> 1294 bytes embeddings/images/white_queen.png | Bin 0 -> 2637 bytes embeddings/images/white_rook.png | Bin 0 -> 933 bytes embeddings/mainwindow.cpp | 133 +++++++++++++++++++++++++++++ embeddings/mainwindow.h | 33 ++++++- embeddings/mainwindow.ui | 2 +- embeddings/resources.qrc | 20 +++++ 18 files changed, 189 insertions(+), 13 deletions(-) create mode 100644 embeddings/black_bishop.png create mode 100644 embeddings/images/black_bishop.png create mode 100644 embeddings/images/black_king.png create mode 100644 embeddings/images/black_knight.png create mode 100644 embeddings/images/black_pawn.png create mode 100644 embeddings/images/black_queen.png create mode 100644 embeddings/images/black_rook.png create mode 100644 embeddings/images/white_bishop.png create mode 100644 embeddings/images/white_king.png create mode 100644 embeddings/images/white_knight.png create mode 100644 embeddings/images/white_pawn.png create mode 100644 embeddings/images/white_queen.png create mode 100644 embeddings/images/white_rook.png create mode 100644 embeddings/resources.qrc diff --git a/embeddings/Wizard-Chess.pro b/embeddings/Wizard-Chess.pro index 7093e7b..ee5b63c 100644 --- a/embeddings/Wizard-Chess.pro +++ b/embeddings/Wizard-Chess.pro @@ -4,10 +4,6 @@ greaterThan(QT_MAJOR_VERSION, 4): QT += widgets CONFIG += c++17 -# You can make your code fail to compile if it uses deprecated APIs. -# In order to do so, uncomment the following line. -#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 - SOURCES += \ main.cpp \ mainwindow.cpp @@ -18,11 +14,13 @@ HEADERS += \ FORMS += \ mainwindow.ui +OTHER_FILES += \ + black_bishop.png + +RESOURCES += \ + resources.qrc + # Default rules for deployment. qnx: target.path = /tmp/$${TARGET}/bin else: unix:!android: target.path = /opt/$${TARGET}/bin !isEmpty(target.path): INSTALLS += target - -RESOURCES += \ - GryffindorLogo.qrc \ - Resources/QTGryffindorLogo.qrc diff --git a/embeddings/black_bishop.png b/embeddings/black_bishop.png new file mode 100644 index 0000000000000000000000000000000000000000..453cb32355348ceadcc41e5c371130e7be1dc45e GIT binary patch literal 1260 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 S+beef0000}!$9&8%1e zBftZ|7R4-Z1y~(jgGy~JB^?It1A|Kpn*k1)+4rbAirmAJ27wza4GS;|T#c-y)S@*B z?5a5SoTPnGg_Ht55ESpNC@KRpJHo7t>qO<^6DGyqIf4;J7kjqRqZ!a6MJ3~)2k z<`=Nt%sxAm1jOFM7acs-0OuWi78C+3X#;S;$?k-c4-nVks{7_D+U@8S2E5JDYgm%J z%%XtbI(p5R@US}7_Jsi)g zBVe~W!Zza;^DjDW1q`eQUOB@y<62t*0|UUrAlPP1v=i`DFs#uy?;2}4FpX1EMy7 z<}NN-S-_G;2>kH1jK=FE<#zaBW`2%FC9O+MTFJnxfc>dSxxk~D`MFA-KNol?Ge1|! z^Y?%gwK+3CSIP6&2A=;qn7m3lD|tJc^XuUpt$PMH^({4_*q?aqqOSX!wg=ql>H&AU bx(@gc{sH)y$U_yZ00000NkvXXu0mjfw8>#< literal 0 HcmV?d00001 diff --git a/embeddings/images/black_queen.png b/embeddings/images/black_queen.png new file mode 100644 index 0000000000000000000000000000000000000000..0d94a1c29a50896a6fbe017e1eeda9b5a42fe0a4 GIT binary patch literal 2267 zcmV<12qgE3P)(5~dA8 zrJ=07jv?R&VRuhI+}&mOdhXp9F%|HauI}v2|DHK#&YYRKGj~N*d6F>cQ7bUfcxv$D zj;97c?kJnc%0y%;unkxO^aJmyYIs6*D0NyAkuLyCf!V+%RXyjxdjU8F)MsQX@TRK1 zP6#(TXKeO0w& zgToF+ylvo~ci<}UJsWp6aL2$)0L`W7T=bwNBGZA8L-7v`d1Ef(>}B5trkbh+*5_2t z1&#)bNP~#HDk3XIWQu{}bCLVJ;hDcUa0h{t1;{p*<)Nh4&)n!PBVk zI1j7pHDCeo2Ox7Pcg3ZZ%Wc13bKu!Mxsl1zUFybt^Y_?eNN zV}N;y>?y=)RQ(Rwt$QEv8+d-w8Bj z{I)yCh++(`0uJP%5M(RwWboY7+E+woVvYEAWXTtig}`zxzIMPw4zs65$Fu9!p5 zz|1jGCnxs}IKPqn8|VG1)HR%=JOPa4;QYd+>~cPK7+((^44#`qnb92O594yH z&Ua7ia?%4%cqUIdrNFI@yhdoq^W;HQgwX| zUDIL@aNh4WqM*Yx5qSgH4=`uW99mjhXlZF76beyWTbsol8yib|FcOJmrK8a(9*-yO zai7nJ-|tVStE#H7R+(-7mvpo92{g| zU|`&pT4{N`UgKpS^+!fV(mml~~w6ye?7Ca+ANKHb$Tg&@z~^2UUC zxV*gl#{T{L>*Db^ot>S8!(ndSx@F=~Q&WT2>m7HmuC8WeWQ1rmN;Dcxdp&i(eS7@U zSVWjVe?G0PtpoxA4j(@JaYskT%z~7M!aZDHU;jZY7E6007K>?5Pmk`}wM(0uo3)~% z;-QVmvu4fGjT<*=dwaV^B9W|KaOlvX!HJ6Dz@kNq{<>z(n#$JJR+cYcPDRCoZRz3R zVY<4yxO(*}H*ek~5{VFrM6%Mu!^2FPG>Mv;8ft56@%#Pw{r+^iwzig~OPA8v*qBxK z_3PKuYwV*(k8T?p8Zv&e_)tBZY@jBrec&;V$D^xPuhzYL_v+cRXY-2P;o)J;>?KYZ z8XD4$jt#Yd{0?e2(Bkj4=`)(@j z@pwoi5)2Lwrr(uQ-cO}3Uc5+eZ*M#vkDmcLu|9L`Qq|#-^exrkaRRO5kPy&-^%afR zcCYYwJlwl?k9a(;Si2|#Sf3N8?l*xCfcI6^ajT;!{T{Z#IV%)-4yeZ3SRYW;*o4+U p(FQ+iJaK;kcxv$DjwjCG{{ez+xA)Q`_t5|V002ovPDHLkV1l?JR_*`* literal 0 HcmV?d00001 diff --git a/embeddings/images/black_rook.png b/embeddings/images/black_rook.png new file mode 100644 index 0000000000000000000000000000000000000000..b9748e87f29861cb4ca00c7ce03df54f3f6b35a0 GIT binary patch literal 725 zcmV;`0xJE9P)qB%30rm0>sTv+%?-hTEN)&BmLZAG~72o44=V znRzoiS&9gXgtzMi^2Q0a9Vgg!oM78=f^A1zFv$|h_atS59g(DhzmWVy^2&z$9FmOF z`X?eHS_YsEK+dqMiv9xN{)YPmD*j1!LHP-#=Pt=_r>+lDv}uyOxAt2p!<@F-!+Dr; z54)meJLg?6lU@GCMDQiw_qA()sm0ER3Ui?5^6 z=%$E#QEF)NlmYAkc!B(@^E&{Sb#m73;nR?O0N`oA-}jo$rg6MYOs7+HIvt3}0Kg*= z`JodhlZ}UnJR`XuMbVSxa+yWQe+a`6BJxT^9vTJ8s)!(;jfnC_!)-ivoj~3=!M5WB z+l~`#J5I3eIKj5#1lvxQ2k{phjRxxVdWIqY5Cj2y-!B^n%J6;oweS0~EoQTsko;(z zXGUUg0SJ-LdDb11T#bh`$x@|Kc{3Oc_R3}R5qB1G9HZCky(D>CM2>Z0WHE=|u2!pq zFbuJ+^Q_-QQG_rID*!%_tc%EZ)fmR7mLvlJRihw!ToaK%wNc@grNRj|p2O8@)oZug zSo^|ZtBl8EOePb(#u`h|A%GYs%S5-^HD6>E84ic*OVtrh>QRy@7p)x@sU%VrvBJ$^ zC)jp$1V6^FLh(QG9Kbw{Vm`cNLh1V17z^1CDwGUJt1OKRZKO4}G`9(pm<*95 z6K!rY^Yp_xXF4{wiF0O*S^w~GW|;Rp=lRY1zR&xd_Z%f6e4S)@(*a~#?|>J(-T^Om z+1|uOl~Oj~Tfh?FZz3|5t!rn!hm}$v03qP7z?Z;)QtD{d0uYg`8Sq0O4#=iWo20a~ zQ~<+%o|PD~2x|d)0Xcc{q{QQK5fQn0^QI`J1Q-WAiwXEWKvu6_oq#n|Sy^fH@`ss@ zBb#&B0^oEyQA)k?gVkzHe9U+hS?pme@EnjUSFR*__wL=hVzF2RhyiOC&5+iie~O-@ z%FD}T_wL;WtN`b-5<`}OzX3F&XX+&T3sAghfPs9V78o=jOG-*)$BrGz&||=FfTFh= z82Bd8W`OP5wM&|sn#52`ON;pZ{^X%O2voh5z`*-J1dy__GI{v$q0FS#)>hfOcdr2* z1&+T}z`)0P=9L2n4#?=}=!~$2;_fh@O3B%?XXga{f8D-) zTU;)ek=SY%G%&EvNKQ9y+?WyS$dMybRaG^m>N51;!2_{ct;X>F?t%nHtETP);`jS! zgcT84wQ7|B(%08FW1CZ_P8mbH9mrdVz#jp!X3ZLT{`~o@z#flB0D1Q8*^F%_Cnu$> ztjvJ^%#0Y#-T?Rsz?m~=aJ${F{1A;sxp3hEZEbA;3=aSNLW+1Hkdy}JyUbT}L`I5;?^w>mmHlC$r$cIVEWX?xo1 z^%`xyzmR%(A7HDhs-mEvV9Jj^pN~KwKzDaHp!IAd65-mlYvkwW0Wrw zw#GHmk(oo<4yglQym*mdFvyA(E9PvQ^RA1c)meR zk%@EoJwWpF^JQ#oETwszsC5g9QhKC^)Vlu~x!k3eObuKo?| z6p_L7qtcYAjrd;ym3eu2G&VLeIyyQpd-UiL>(;FU*bMy6)W|Y0hf9G;rIg&ie}CTd z*HC9?rz~B%)U@R&5nl#?KLzCQ;lr;DYpAZS&a@iZuuMD`DWwX~o*!i*H*6J=)auq*WOfg`083$EA$4_irZ~KG=@PB2tpM)1+NL72 zf%|}o;o)J2&*!6}q9QG4Po6wsU|_)b+MRB2Kt_^QBl@0nb#=8gG&IP-z(C50DiVpv zy?giM(4j+Ox7&@R^><9#kk3S=Y1HCzn=573@8_9fYWfC=5k_2aOJBqsN~G|%~2 z2K*ZM0%#%Wd2gz=eED)Yc<`V+efm^Fp^zLqc1((ki|6G-w->+@;2v7Bv&OVJtdv>- z{1$D9zM{gyLfmdQcDo&?(}~03!0B|7o14qZl`HXhJP9i)DPh~TZCET*m+98lRvtfo zOn-kr{r&xf!(saS`-wy%jE|2qF)@)ij*N^D4o}(bnE*Z!ky+QnIf3{O`%YT=H_Oao0}OQA7}ga?d;sSlg*nq&&$utmoMq;?4+Zk zgZlb<>g(%`QTPYoXEMX>WGcY7fFBhX7t_?#L?jZSy}g}aFi2Nd7r|hVp`jtHR%^m+ zHf?#2#bU%_F{05Zu~>{?Fi3B2@3hx(yWMQrvIU#XHm9H5++4g~FJ7;g_3PKOVZ#Qx zy1F=e^e96^LjYfi$d1;OJNd!nzSt?`85LYix2S&X6_MZ!*YN;8{oLvN7(QZXZv%PJ z{vrjLzCFQ-#Mu)z|Kg_;ce z1_T;POSB@gPk_WgP&7r1NkgNXv7{M>WyJ%%KHNM;#t0r9ryz|Xop z2Y%LVT!0Oq{n9Xu!g%*RUJ+gh`~~=ZygME*;3WSsE#4g)@tSxThOq>w0#fh+PXzja zF275?q*Y_BBVnvN2(ZaO{*eDA0lEJ3SK=WeZV?7B3?m2MOKp^~$tRzT2rNlCIXPwY=giKxZQG{y_V!_-@7}$uJ$v@()mL8) z6x0Cx8PK+E+eU=FckiC*`#+!?P(nh2%F4=g_Uu`CJf0wbuh%Pw!=du>av6qU*1ZJ$ zC|1Bb0NHFdUAuNIWRwE!%$YOF%gZyxJOVU*`t%Wfj~+c5G&)wTTBX+3*0B1yaN&Xq z3JT1+X99mp5dj0Ufqug%gf70yq1!ZqDz-9MchY2LxUzvm|*tva!8&~7vzJT zU}j^d(;2ZCN!qbvhX7eD7Jc^FXOg5(KmBxYrd3^C9aa01^v*l)n8524A@EW_GiJ<) zT8t#U|Ni@f+5P_g`zk6b5}@tdx5uRYg9i_eI)NDt_*a0|uU{V%L0+#{bLPwupf}%q zQ-CH-nxw~%AIGHqix)4Nz?T(*X|&~`8{ol%2cx)!XNF-=Sy_q2Vxgg-0f35%3SM~O zg_yK|=gytM(@;L60p9~~xm+<31TbsXEY_`C2S83v4jVRXh*{eXhr>K=4(Svs^zseq z7lB@@)vDXKZ^vZVNm6ZXtpJsjl*Fvf{{DVVn>NiH(q)QdNK3j0RC_!g_U_#qiy(}d zef;sqG&MB=TnGLU(lOMX(05V(3E;I_t*Wc5i%B$M9pNiit|&b{-Hh(f^#q<#-)Tv@ z1pL9{@$lYz?{WS5^%%q>cGlY3%8C^$=;`SJ->R(oi4~r7H}qYUEx^A3rKhK>rluzB zyWiW}tJ}A4>&q{{)TvXaR9RW6wQJW3P;qgwPMkQQ`uch`H8nl;Fw>XR0j?mP)kdTBq<{!!@Qmuspe=S{4J2NX3ZK-o;(?paO`$F1qB6z zkqakjndi;T&D^?mYp|_^gak@UOR24`H5W4D7U5q19hb#o(bA<$_2GvfsGy0MP_Cu00RR9oIih_hK7b=Nvo}`ZP;@*F)@+c+}vSFYwp~+ELgB0Xsw)? znMrqdH;i}EYHMrL;lqcua^*^;rKN>TL>7xhHk(bw#l@O6YnCQYo*eWXA6k-=lT}hu zqW$~#tGm1Vdy%xdf%L4bEWY{X8}om>{`%{@_10U%lGaNvy%hAQ0q}agbar+QOImex zbzHb`0guPG?ISfcmA<|{`uh4{93$L^KN>|vMLKfi$cSGgBDJorE*(2|Z1DY8KuM2O zbF^C?PWuJma5y-3?i^oz^_3ZgsLbp2a^=bu>g((I`s=R)FP)Rr6KT6qZ(A}9V;b;V z;1~FJ1*NB_vuxQiii(P`+wIuxcBW39%9JTnNJ>fysy{F=fXn5=>2%W4(t^|Jq_MG) znwlCqIyy`@0sjPkC+S*LdZPs%Y{&<`1}FuJL-=5`*|6K~SglrCT3T?qT!X*U5zGOc z0{$K?=%9vJ0S7f|7_R_}fS2*@?XdgHRAA^k**<*VdRqWz!10`<|HfR~SO7n&RM{EFe}@^IQmxt854^S?mMj{ppzI3PYD20? z6AeuyM5&TmwTVVe*QnUoH!OZYjjaoQs?->X8aEoF%O=*uifNoRgOL(z+r;>`AhChy z5?rVX+v`@s4X1Ghky(i7}?d7}H>knKy#XcAx?Hi!tV4tYSwbNiq2VUjQ2Tya3)G zQvdUidI4VozF5U~oo5Vzy8x|PwaNlL0HzPr6u zLEv*hM~)nkBo!7G+WJ2L^MS;#BJeRld-m+n-Me??^Z7z=Uu9=!tFNz5lC)#TjzM+6 zYoH1E6Y%|b0()aP96SMNYincv{P{FAG;rn06(r&F`Pi^w0|^QJV`O=GImyY%9ZgM5 z?=&?v@#xW`X_9h)9AL9C=AXbHfm%r&G0ZVGJq#H7M_-*idsZ&>+!i`JJ9YEsO;uD> zC?g{ywCB5k3c&kT-O|8M0i~p*=;h0oZh?nYZ*Q+IUc9IkD^|!DW5NBvx8Dk2;Ddpl z(3vx5qJkZ&`ucjMrKN>Vbwv{j3?vOayV|;St0bwivQpXE*?Ro=u^Xno(G1$#+qH7# z%Fx?<+e8BY22g%}zIu9kw0-;bU}BdpU2+55>&D1&9347z$ohT*EFE`XARYM97^6TS zpgkRdT3cIHU0tn? zj*f@`cJJP;ZQHg*)aJ&G8y5Hr;2UuT27U}EJw07rU0o3+I#hjqee!y}@_0OQ94Df- z%a$#((7WOW415h}22@*H8x^c1-Me>BfKpRaBW_z)S7(7+h+y*(De#AY7A{;EagPkA z($Z1^+OlO!#BCkN(cHOnE%Z-ZGq^T{uLJ)ER99CQC8~7d#0dd1#<*Ri{EtqaJZXWO zTywZKgfhFxh*tIW^-4@k6riM}q%r$>^X83a&6;JQzvYU#wF99uGx-_cf0)c?i)6;E&p8$PcuQzxwFcuvatXWyP)0_E9LG^(W20`} zy5%~dSFc`a^XAQ=>+IhH9$+J&_3PJ11uRL)$;sAtRxE(40qxwmQ+~fcxG6t(?%b$} zG&eVE(V|76$Fgff{C))J@ZrNz1DBMP*ce+!<8gBk|096n;$mLBcwv*Jy}dnbqwCkN zlbf5%?c2AZ|H$^cl0FVGc^@DrC&xt!;Z;yjV2eveHFnX%{{nR9&K>pk_Uh=-qpGZ| zRCjmxh*!L-s!AS@$6obMfp>=ZTnK2!j2RKHy@ykMeZ7tK*HL*~0DlbV)TvX0f;@lz zTs1W{YHVx_{^mGN=$_R9eg~Lge0~CG@7}#p!%EV_hYxMcC$Rwj6$9tZp(-jW5+I+? zr_Rn!IgX=s>(<%8uYi&f{N(|fK7G2{+S+0Q{QC84JGS%y3DE-o5YWt-Gv)XDgF!Mg zGlL`Vg9i_E;J^Xg7%aomMShTwmAf+zA*!bB%TC(2UrA@4!Ho8VcLCUpW8qn5OY{*&;egr zIEIMcElK(h@Q;D7w~aB6fK1?TlI{)H#u#$|_|WI`aryFP^78T`3F%sCX=%2Y8qO}N zmuZqdqyO}9SQ%q}0sPwQ^>Y6Fd6q9<9!Z_Z;`js8{|Y9lq@;vRn>NKM z#9&QW4;y3N1%Br7c-X&xf2`e)sENF#R{@D@)~q2bD=QA}hu1^`X8|l;yf_Z7M^?x) zoEXk79>DJb%$_|v4z5R*+a8YPpIWTm1K7B6Bh#jZof2cJ?(S||9CzT)fp?!hdlm=R zuJreCm1bbA8#5VWJU|Bh8;0>#kEGUc1~CVI+coun>B+7s;K{Bj;K{E40U1TJHnm@pvR2k7wMpc6WEh@AvCX>%$wn zX(^>11J40G9uM(&JY&1JZ{Ol}|9j&1gHp<#-?7b=Ee2i#5(%9u4ZFnL&D*( zuJR^OW_c!?g?|R5si{d04i2))YL1SMq@$xlOHbSwVa_iMq^PJ!*4EapB&$gz5>i@P zs--)u%w^|q_)CD^-d<{JYYlY_27~nX_v^P`S(?hm3a9)6=767lEQ1Bh2~!@CEQEAa1u?#>U37 z3P+<+@p`>l_%GmVz@7KPz(Zj6BDi#Qb;;u5Vpdtr>guX=cXy}XuU-Hu@>Uq|0>1)M zRaGUUqoY?6{V(I=<5E{wr=?#4{=5?g6fmkcsyA=mOFz#WVW5YL`&N-i#1dJ}+}xb_d_FDxdAlamvvsj1P@ALp9Ys&naY;QX%?pU-E}ke4YaC}41K z@X~xaVL^2pfwRKGLP;bNwp3ShaBv`jKtNad>2+0j2vE+92R zzs+e73o5(=$nx^Ct<}|RZ*PmsFW;CEIG&eV!9L5-F^M#D|H7i^SP+necau{Qz&G*P?U$erG;L`0> zM@XB`u&}8c@k*&_puM)X7Qf%0^EgIHrBbY{tN^?c5kt$`?2~v80oK>oO%7vjej}I_ z{*?0z{_7(9Ln9e*>`AkPe1I;Fy5Vg8jMOf($(CZ^PhXqf6im>%v~iSe3is@tqquMxk31P zmm7qycey5nl~N9+)UDTI?pYHXKGioGn+Wo-WKo_tE zP#Lg$00G45bc)uW1iqPLjtamrQ(HykiV!}elQ6Xd7Py;%Q9uqKJ}hHnW75&lq2vFS zVeIb#M>R|j@GRiGW`u#IfOx%LdHLm+<)xQi5|78DlejYly8@7gh6d5)*s)_ew%=mx zyMd{cXb|9)Yf1R`fNa~g%^
    sH;c-=<)10)l{ab#=+m(2zX(=%YIJFBW6}1CY&| zH%llKlCG{U9UBC0x+;VL2XJc^{j-3qUAxvGymIAA-LNMu@W0bNrIgZf382{mI|Rrl zpL}ABy-IA(P zO4)!V02?=M)K4$78b>L$3~0$UpC(^u$4SlJBfz~P@>v=(N50vBMO?nihjV#&_3G6+ zcB=)Z36T2wdO3RZXx737><8qw+iuGh(qHFto*yU2q9iL}6X~dl^tx<>O)H|$EHE8_ zw70iQC=}AeFRgF^ULd5DlASwu<|6#I$+rEu_~d*&6p<<5r0LXNrBrz){KF4F%-p$i z0hTJInp4!v0G2IVhR5Tfv9S@7i;=}CxW@p`s#U9KXlTf2n^NlgK%425KL?$>--rER zdD3!CQv zdGNsp#qDkLdd92UFXZWJ!yRv>1#+oiX+S41Su z!+?uqO_7~DcgjZ}eWdF@&WlT)gl%ZyI6OQoKA+EQ=prk^;c!^IUaxMoufF=Ku752bE_sEtxl*4vae|hX7M^*OXHB)N9Jh%2>aCz5a6(DFsWHmKI}e(E|J!G8ZeQR1@%=&1Pf&{{1+ePW*nO zFz2k$I+=XE{AWP+?b|0JBB4;oyeQa4iibr+d_JG9zeGyG(q+${Jv!zKK+b)ii@lZzh(6_wLCz>do0~a(`ZOaWBUDsW z;PrZ^joIGb&I1oTaM_^Cw&Y%LXreUlv|}FFo06(6mWY!Sf|rTSy>q# zj|Y#(lh!XODIpSx5Q#(xhr@)!;c5M7G|JS}RKBL|5Ru>H11uz@0s4X4l~T-~KcBj~ zI_m4|(~k4!&&TO>7C3aegu`LZojXT&cQ2V4YX$BrGdO3*B$qod{(TG~EVwpLIM z11P2L1^x**4jw#6dwaW~OC%EX^z;x21c*kX#N%<|@i?(q%;@XC6Nv;amkXE6MQLfN z(KrA0dcD-v)>2tnIV~dF+S+*Mop&Hvoxd$2p}g%cl(0tnNnlS&NeOG#tRWZ-(%s!n zUtb@SlamFHmrKgZ%BZcarLL}y3l}cn^Z6jT74t0-IbD$L#SjKiO1(#NF=B|_Zl}7s znwpv#JRZ+9&!zSq4u@p~nERnnh_h$UGB7Y;Wx{ z0jjF1=)}K3fE;ThZ z)7qRla~K&JacI#smff@~9MYPH{{ zg$pS!FE>1v+8hpt;c>I)qtPglNQ8lb0eX9T>FMb)q9ziF=+j*!xs4Ji*zh7f+W<`1 z?RM$x?373(a-~u=tMvExOKWSZ?&V(>WqXl?e+kHj4I5^Ks96pjI;0bRuNd14{$rZ9 zA@)N^?lR1_xZQ5O+n|&xyyzBshk&(^+~kVIVzcI1U1G7A+;PVpx|cT;YJV|*Jsby^ zoSek(_nQmJRTmK<7!0y#(IWj+MWJI9^YY*X{)1_^V9uO5R99CUt*WYu%F0UPIcwGQ zrDZG@vuxpTnDgh)69@$8>+7ShuaExze#Xbg^=Zd}77_WpAOeMkgm!~&Ci&U+ED&cF zp24OT1U?7aim|=u=ddo?x2_7H8mQ7*HOXz0Qj6x&jt=c+#Y{(YivWW_AIUE*eL$ax vglA;$ObP$L$&G)+U+;2*@bxZVIl}(~G3Pqk!(KD#00000NkvXXu0mjfsr>;1 literal 0 HcmV?d00001 diff --git a/embeddings/images/white_rook.png b/embeddings/images/white_rook.png new file mode 100644 index 0000000000000000000000000000000000000000..a805de496f4d152dd02026bed09b45548b6e88d8 GIT binary patch literal 933 zcmV;W16urvP) zn!ERY_xs*^_wL^BS5ZpQNp!V4fSV=|>~{jeekTy@cLKqFM_aInSR(RXM3jRqiHNvp zuSDdFh}?F#&a{ZsTW#MIrIeNdV}QECVlLY&;HATL%5K^>GtW~xlgV6gI503^pL!x9 zPi+GpI<;3ykdU~)d z%Se321+TBKGdnv=yWs!tE;Q7 z`dF65;^Ly|P#p0rxLhu?wzg&>mX_Ju+tcstVU>PH^Huk{ZP{(yqMPv$kuZ=4?u5f( z#>dC$?d{d_)he}Gjm^zX4i66jegH#Cse&sfx+8pcqxyi)fJ!ElDxc4*>*DC>NR5n) z*dx0S+|`L$dxUL7q!0K2j3kpu=H})Ig^aI-EG#UrwY3HC6&O=W?d$mQEExWX{uGTy zhlYoT&wqRvp<1o7ySq!JQYiutbj1SRru1La`!S$0nT+x2oXuwKsr<@ooF;cmKMne7 zMAfTOSK5bSpX!G0$Y>~{jeey8IEo7}1Q0PO7SFflP<&@JS0Is0eCt1pv+ zp97@RX(lHp4Z4L$B*Mzd3Y;bmFDJI$U}*E70%~1dU21!K+js(?R4S=xG-@XS9(jq? z^9YNG1-t`7gM)(<3Iz%UcZtMS7#$sDV`BqgSw!wDrM_u7GBCOyx#4`YhK}5=c+0ud;;!3GsetupUi(this); ui->stackedWidget->setCurrentIndex(0); + setupBoard(); + setupInitialPositions(); } MainWindow::~MainWindow() @@ -54,6 +56,137 @@ void MainWindow::on_pushButton_EndGame_clicked() ui->stackedWidget->setCurrentIndex(8); } +void MainWindow::setupBoard() +{ + // Map each push button to its chessboard position + for (char col = 'A'; col <= 'H'; ++col) { + for (int row = 1; row <= 8; ++row) { + QString position = QString(col) + QString::number(row); + QString buttonName = "pushButton_" + position; + + // Find the button in the UI and connect its signal + QPushButton* button = findChild(buttonName); + if (button) { + boardMap[position] = button; + connect(button, &QPushButton::clicked, this, &MainWindow::onTileClicked); + } + } + } +} + + +// Add chess pieces to their starting positions +void MainWindow::setupInitialPositions() +{ + // Add white pieces + pieces.append(ChessPiece("rook", "white", "A1")); + pieces.append(ChessPiece("knight", "white", "B1")); + pieces.append(ChessPiece("bishop", "white", "C1")); + pieces.append(ChessPiece("queen", "white", "D1")); + pieces.append(ChessPiece("king", "white", "E1")); + pieces.append(ChessPiece("bishop", "white", "F1")); + pieces.append(ChessPiece("knight", "white", "G1")); + pieces.append(ChessPiece("rook", "white", "H1")); + for (char col = 'A'; col <= 'H'; ++col) + pieces.append(ChessPiece("pawn", "white", QString(col) + "2")); + + // Add black pieces + pieces.append(ChessPiece("rook", "black", "A8")); + pieces.append(ChessPiece("knight", "black", "B8")); + pieces.append(ChessPiece("bishop", "black", "C8")); + pieces.append(ChessPiece("queen", "black", "D8")); + pieces.append(ChessPiece("king", "black", "E8")); + pieces.append(ChessPiece("bishop", "black", "F8")); + pieces.append(ChessPiece("knight", "black", "G8")); + pieces.append(ChessPiece("rook", "black", "H8")); + for (char col = 'A'; col <= 'H'; ++col) + pieces.append(ChessPiece("pawn", "black", QString(col) + "7")); + + // Place pieces on the board + for (ChessPiece &piece : pieces) { + placePieceOnTile(piece.position, piece.type, piece.color); + } +} + + +void MainWindow::placePieceOnTile(const QString& position, const QString& pieceType, const QString& color) +{ + QPushButton* button = boardMap[position]; + if (button) { + QString imagePath = "C:/Users/marcu/OneDrive/ACM/Wizard-Chess/embeddings/images/" + color + "_" + pieceType + ".png"; + qDebug() << "Attempting to open file at:" << imagePath; + + QFile file(imagePath); + if (!file.open(QIODevice::ReadOnly)) { + qDebug() << "Failed to open file at:" << imagePath; + return; + } + + QByteArray byteArray = file.readAll(); + qDebug() << "File read successfully. Bytes length:" << byteArray.length(); + + QImage img = QImage::fromData(byteArray); + if (img.isNull()) { + qDebug() << "Failed to load QImage instance for:" << imagePath; + return; + } + + QPixmap pixmap = QPixmap::fromImage(img); + button->setIcon(QIcon(pixmap)); + button->setIconSize(QSize(40, 40)); + } +} + + + + +// Handle tile clicks +void MainWindow::onTileClicked() +{ + QPushButton* clickedButton = qobject_cast(sender()); + if (!clickedButton) return; + + QString clickedPosition; + for (auto it = boardMap.begin(); it != boardMap.end(); ++it) { + if (it.value() == clickedButton) { + clickedPosition = it.key(); + break; + } + } + + if (selectedPiece) { + // Moving the selected piece + if (isValidMove(selectedPiece->type, selectedPiece->position, clickedPosition)) { + // Update the piece's position + placePieceOnTile(clickedPosition, selectedPiece->type, selectedPiece->color); + boardMap[selectedPiece->position]->setIcon(QIcon()); // Clear the old tile + selectedPiece->position = clickedPosition; + + // Deselect the piece + selectedPiece = nullptr; + } else { + qDebug() << "Invalid move!"; + } + } else { + // Selecting a piece + for (ChessPiece &piece : pieces) { + if (piece.position == clickedPosition) { + selectedPiece = &piece; + break; + } + } + } +} + + +bool MainWindow::isValidMove(const QString& pieceType, const QString& from, const QString& to) +{ + // Placeholder for move validation logic + return true; // Allow all moves for now +} + + + // End void MainWindow::on_pushButton_home_end_clicked() { diff --git a/embeddings/mainwindow.h b/embeddings/mainwindow.h index b086d9d..bc1d67c 100644 --- a/embeddings/mainwindow.h +++ b/embeddings/mainwindow.h @@ -2,6 +2,11 @@ #define MAINWINDOW_H #include +#include +#include +#include +#include +#include QT_BEGIN_NAMESPACE namespace Ui { @@ -9,6 +14,15 @@ class MainWindow; } QT_END_NAMESPACE +class ChessPiece { +public: + QString type; // "pawn", "rook", etc. + QString color; // "white" or "black" + QString position; // Chess notation, e.g., "A1", "B2" + + ChessPiece(QString t, QString c, QString p) : type(t), color(c), position(p) {} +}; + class MainWindow : public QMainWindow { Q_OBJECT @@ -17,15 +31,16 @@ class MainWindow : public QMainWindow MainWindow(QWidget *parent = nullptr); ~MainWindow(); + + private slots: - //void on_pushButton_clicked(); + void onTileClicked(); -// <<<<<<< HEAD void on_pushButton_home_about_clicked(); void on_pushButton_home_end_clicked(); -// ======= + void on_pushButton_start_clicked(); void on_pushButton_tutorial_clicked(); @@ -33,7 +48,6 @@ private slots: void on_pushButton_settings_clicked(); void on_pushButton_about_clicked(); -// >>>>>>> ec80273e3b344ef1a23e998207c077d80fe31758 void on_pushButton_home_settings_clicked(); @@ -53,5 +67,16 @@ private slots: private: Ui::MainWindow *ui; + QMap boardMap; // Map positions (A1, B2) to QPushButtons + QList pieces; // List of chess pieces + QString selectedPiecePosition; // Position of selected piece + ChessPiece* selectedPiece = nullptr; // Currently selected piece + + void setupBoard(); + void setupInitialPositions(); + void placePieceOnTile(const QString& position, const QString& pieceType, const QString& color); + bool isValidMove(const QString& pieceType, const QString& from, const QString& to); + }; + #endif // MAINWINDOW_H diff --git a/embeddings/mainwindow.ui b/embeddings/mainwindow.ui index 66b6837..0a2e26b 100644 --- a/embeddings/mainwindow.ui +++ b/embeddings/mainwindow.ui @@ -68,7 +68,7 @@ rgb(0, 0, 0) } - 8 + 5 diff --git a/embeddings/resources.qrc b/embeddings/resources.qrc new file mode 100644 index 0000000..a83dbb7 --- /dev/null +++ b/embeddings/resources.qrc @@ -0,0 +1,20 @@ + + + black_bishop.png + + + + images/black_bishop.png + images/black_king.png + images/black_knight.png + images/black_pawn.png + images/black_queen.png + images/black_rook.png + images/white_bishop.png + images/white_king.png + images/white_knight.png + images/white_pawn.png + images/white_queen.png + images/white_rook.png + + From 3b0cb16c4f6e0b90368ee881a6fc3f8f17c97888 Mon Sep 17 00:00:00 2001 From: justin-h-im Date: Fri, 22 Nov 2024 15:16:01 -0800 Subject: [PATCH 2/3] fixed relative image path --- embeddings/displaypiece.cpp | 6 ++++++ embeddings/mainwindow.cpp | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 embeddings/displaypiece.cpp diff --git a/embeddings/displaypiece.cpp b/embeddings/displaypiece.cpp new file mode 100644 index 0000000..16bd138 --- /dev/null +++ b/embeddings/displaypiece.cpp @@ -0,0 +1,6 @@ +#include "displaypiece.h" + +DisplayPiece::DisplayPiece() +{ + +} diff --git a/embeddings/mainwindow.cpp b/embeddings/mainwindow.cpp index e65a190..10e5917 100644 --- a/embeddings/mainwindow.cpp +++ b/embeddings/mainwindow.cpp @@ -113,7 +113,7 @@ void MainWindow::placePieceOnTile(const QString& position, const QString& pieceT { QPushButton* button = boardMap[position]; if (button) { - QString imagePath = "C:/Users/marcu/OneDrive/ACM/Wizard-Chess/embeddings/images/" + color + "_" + pieceType + ".png"; + QString imagePath = ":/images/images/" + color + "_" + pieceType + ".png"; qDebug() << "Attempting to open file at:" << imagePath; QFile file(imagePath); From 7dc00879fb1e6e12c0f60131d58070c26fdd6a0a Mon Sep 17 00:00:00 2001 From: justin-h-im Date: Sun, 24 Nov 2024 17:47:53 -0800 Subject: [PATCH 3/3] updated pieces images, added chessboard background image --- embeddings/images/black_bishop.png | Bin 1260 -> 507 bytes embeddings/images/black_king.png | Bin 2485 -> 732 bytes embeddings/images/black_knight.png | Bin 1516 -> 591 bytes embeddings/images/black_pawn.png | Bin 797 -> 281 bytes embeddings/images/black_queen.png | Bin 2267 -> 664 bytes embeddings/images/black_rook.png | Bin 725 -> 418 bytes embeddings/images/chessboardBackground.png | Bin 0 -> 1080 bytes embeddings/images/white_bishop.png | Bin 1944 -> 634 bytes embeddings/images/white_king.png | Bin 2279 -> 617 bytes embeddings/images/white_knight.png | Bin 1878 -> 634 bytes embeddings/images/white_pawn.png | Bin 1294 -> 463 bytes embeddings/images/white_queen.png | Bin 2637 -> 673 bytes embeddings/images/white_rook.png | Bin 933 -> 482 bytes embeddings/mainwindow.cpp | 15 +- embeddings/mainwindow.ui | 1188 +++++++++++++------- embeddings/resources.qrc | 1 + 16 files changed, 803 insertions(+), 401 deletions(-) create mode 100644 embeddings/images/chessboardBackground.png diff --git a/embeddings/images/black_bishop.png b/embeddings/images/black_bishop.png index 453cb32355348ceadcc41e5c371130e7be1dc45e..d6125144762933ad5c8223c6a5d015003269e478 100644 GIT binary patch literal 507 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX3?zBp#Z3TGbpbvhuI>dsKqee)+O!GC=HcOC zWMqU3BC|Jc+z1p$76Ed(xVV^^K_(|BC&$FZl$4Y})Bw2x0s>E;K2=aqIDGhUL_|bY zRn@FnvlcI2eCN)c&dyHp14{NlrLrYKe!&cJd98|n`I!HF-DT|a^UbwCGy2sw*~$D{ zak4si(X_=IUI4A-_jGX#(KtVM^6R1|1A$iONt+Z|CUh^@wp;7ot?%^*^CXV;b(Y?G z@6Kki`J|D$v{bUjvS_O}h|l6SV*G{s$TN(GqD!ggBcnx!8p(JC|I-lLZFl6v_ L^>bP0l+XkKEr-K2 literal 1260 zcmVf{mPz<;qC;@r{ONGTl!rFL<$VFh#<#7o}sOpuV zd4v+uBGQYySb!MtU>ID&%Hi8RwCN0-1tAGm)hzIPgJ$1_!6nRD`lUM0-c!|I!ypl+ z;4guXac1RO{0Pj3#v+8}s1rB?{K1WvBn67VJ3w#Xd;%7GCvd)w(Ch7Q;NhE6FmM9M z`4C&RZQ%KvN-*#&aBUZ2YwbgzqvZtyj{xN+#a8Y0mKF^309P6bnVp^0bULk(NTiYA z9bmYX1%U(QF+Sk;i~hk8S_=*#LdOE4wCk9imo_fYWXd zM1-lSDFz3f_lKUI9suU%<|q^jtgo*#Gc&{5+M1h-lOpo6R>G($7=>~d@DDCw8IQ+x zdwW~!VQg%yQD~pA;A%C(j{@Cp4_8-LNhXu@_xA(N$j0Mwrl+S_Sy>^U&y!B48};!t z@NLsfjYjwkK9-xMr6pBWO(YV2mZ&dUY0|pQPvfnvEda{pa$tS9!78LSIPJPRVm4Od1-f0DL$3sL80*~X=p@wn7 z+)HAw0T+PJfKOG`SB1b6x7`XBXJ+aJj^I=yYVAPf`#UP1y*P(!M_k-(;1uYxz@HV% z0atM@ywuuN;IgWgcE#JPU=cYEJOSJb+yx}?c6TEP?BHCXSOk6o-c{8_Prvk#mxq8) z2)=~VjFo^_sSIFUJq^Tm0pGNMAg`7N;>`$tzXe42we!vFv9w3IVG(1 zQT+pIee3`SD{ZTG6u1XC47>%rrmELm^#rjF?*+WRQMHX=uh_p4-|pBK-0ryL1pf;u WzZkMxRgk3s0000T|N zBrPqyY15{FfBHgs?b2L}hxw6?Z34GoR(@Ng?DD_usz{ zHmjWY@0T|g{C(K3{%Bi}|JpSPo0A{+glavU@$b>DvFgzvJBVU3cvY&$(S$aObV1`rB{0@0*h^e0+8(=;W29Q#QLT6!Px6d6!-N^3Rsf z7tBM?RAj7Fcp@`1Z1W?DFGBMRk4b!g*5PWTv;2&}a#6JejR056&zEdcqrpp8;o8W(+v;Lw8C`y6&@C>Mx>Ww`(GS|j8LOXf^>Gne z>ZD;k!{y?K)g~p+^jF`M=F&bYUHr9TWA&=*9HKjOSB0Dtt7}tGu>Ss4t938mw8A&y z-5K-lKak~FXV#nZX}&Q#joxs%Kns}-^+adu-UTEQ!%x`2xahe L^>bP0l+XkKUkgFE literal 2485 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 Oyn4F&xvXvB1U}ZLxcvCN@M?M zlCI6V$A`&`)9vhLc6Vks#QfmG?7jD#Ip3T!Gk0c3RF(ge?x=JC<<=7LV%HMzV%HL| z-x85}5veQpeoc7>EFw>d$fqLms)z)0%;^Rufr}#2?$y2vlB$;6fJPt<=v+GmEYF&= z&o-{WmtO3<;8;BZZq0&GAZ{Dq?J#~5s46$GW9b#4n+|e6sH zd>!Zm9$d)ha1ar7I=ZV)34&dzy=^y1n_OGzP?@$95|p?uU@sFQ>m23Vlf3i1MaRU zFi;QtZV$Srr$^)QxQa;8;0+B8dhFP-TgrUTo;?ao0Bb4<+-C+UBHGv2X9d~P(o%B9 zckI}qv$M0Rs+!4UbpQVSig86>QFdTpEih{aw|)C|3wCO1N&|s_8>oyM=yW=5`R?rO zRN$jZ0H3l47LUiRpoWHqO3tpm?cBN3@;x>-rnR-T3cOf0VBm@DpiZAYt*WXcBO}_> z)Z{5Jphu4$wV($F2Nh%OzQK23jC<}c*#T|YvPJv*`^}^8c?*Zbdg;=o?9x6}4&dyk zp0YLjbz*pU*zAAEH(-q0&>xio1~i#WTF}vGRDt*W1U^_vSU_X3m<2pAFrXMuYR#Sl z19t&al?Dz5gE~GwuBxij)6-g4SEoR)TaH3r@w^1o6foZxrPFB!2L}PDuC8X+u3Z2z z*A84}w-K13!r3)jb91w`7&&w1jM*RYtfa9mAw6uLmtueJ+&NWMotc@@s;Vjlp7o@p zMWhDUJKwwl^$qZTDGr8*hXDwMLPVocfXCd}xjBcQ1ggy+D_5>06bcm)qNT&Y;}~o4 zqGbXDw70i|OJFzU{0Vbqv~Alq&15oq<;s;}o`zDuUYp;~3benatzNy_x;>pZal-6h zS5irf$O@p-{N2{phKLXjhiPePadklF^c&Ejs)M$^M+$L}tS3z{ZUm5fOln zc@5{uZY{Q>+S=Nxi9|vV9Xh0;P{?gIz6Khy{BCt=o41`jdD6;qBoa~Jt&*?Oz{L`R z>H~rfKEL+@xVN|00`BPOP~bx^79Kyjn3JtpV7ID1r>bfDfQW1b9xcM>Z8A$5VAZNs z0Qb#j;|BQ00^_(2bgJsR*#jcd0Q48=FQ+CaC#`KSfe&L`blm74Af~EcWeKi#+yaPP#W?zNKA;Vx)&}c3j*Z&@>>NLh*A7=qXr@xiB~>=~|PNk8C&Pe(13b9jvpJ{?u@42#HepxH~G`BZUWAb|08PFYk_^WSUo z8#iv4o7eK$c=nx^%x S+beef0000 literal 797 zcmV+&1LFLNP)}!$9&8%1e zBftZ|7R4-Z1y~(jgGy~JB^?It1A|Kpn*k1)+4rbAirmAJ27wza4GS;|T#c-y)S@*B z?5a5SoTPnGg_Ht55ESpNC@KRpJHo7t>qO<^6DGyqIf4;J7kjqRqZ!a6MJ3~)2k z<`=Nt%sxAm1jOFM7acs-0OuWi78C+3X#;S;$?k-c4-nVks{7_D+U@8S2E5JDYgm%J z%%XtbI(p5R@US}7_Jsi)g zBVe~W!Zza;^DjDW1q`eQUOB@y<62t*0|UUrAlPP1v=i`DFs#uy?;2}4FpX1EMy7 z<}NN-S-_G;2>kH1jK=FE<#zaBW`2%FC9O+MTFJnxfc>dSxxk~D`MFA-KNol?Ge1|! z^Y?%gwK+3CSIP6&2A=;qn7m3lD|tJc^XuUpt$PMH^({4_*q?aqqOSX!wg=ql>H&AU bx(@gc{sH)y$U_yZ00000NkvXXu0mjfw8>#< diff --git a/embeddings/images/black_queen.png b/embeddings/images/black_queen.png index 0d94a1c29a50896a6fbe017e1eeda9b5a42fe0a4..fa2fdd85dc975a3c416f058112b7c3cb7efaef96 100644 GIT binary patch literal 664 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX3?zBp#Z3TGlLLH0T-^(NfJ`*N$H&LW$Ose^ z5)xu&W@cew0kTUxFnuIPr6XR0p<_)iWNB9|NSq$9T>1??b^~66AbR!vh(!p&8Ug! zf9pCo)m_!)_1!y%ixu48OXR-ol6^gUgNWiQr)__?GVI*G zlBr1b(lbH7g->!iZ#3`Zo5Qq(m2>`ChUOhoUC(R!K1V5Bml53AZDF+J=miV*`F|QT z^mFgOIK8vVZR=aD9@dLoz9P~}*Ttt)m+xQ^N$Q=Z?DerCH$!NF1V@?p_fuOb@}*<$_e*; zO%0#g^NMUT_YLN6OSWk>)LH5EYNO%Z?dm^O;!JOE*&Q<1Ft*e%eJ*S8PM=##&TU$D zZCBnVpYP8m`>KCb4vf9Js`&o$Q!zeO9rM~_r{&*of2`^2fBbOun~(SRbG$R^Qu+To e{zvJb<8=(ip*ojdhaP$aN)(>1elF{r5}E)x&JEQ7 literal 2267 zcmV<12qgE3P)(5~dA8 zrJ=07jv?R&VRuhI+}&mOdhXp9F%|HauI}v2|DHK#&YYRKGj~N*d6F>cQ7bUfcxv$D zj;97c?kJnc%0y%;unkxO^aJmyYIs6*D0NyAkuLyCf!V+%RXyjxdjU8F)MsQX@TRK1 zP6#(TXKeO0w& zgToF+ylvo~ci<}UJsWp6aL2$)0L`W7T=bwNBGZA8L-7v`d1Ef(>}B5trkbh+*5_2t z1&#)bNP~#HDk3XIWQu{}bCLVJ;hDcUa0h{t1;{p*<)Nh4&)n!PBVk zI1j7pHDCeo2Ox7Pcg3ZZ%Wc13bKu!Mxsl1zUFybt^Y_?eNN zV}N;y>?y=)RQ(Rwt$QEv8+d-w8Bj z{I)yCh++(`0uJP%5M(RwWboY7+E+woVvYEAWXTtig}`zxzIMPw4zs65$Fu9!p5 zz|1jGCnxs}IKPqn8|VG1)HR%=JOPa4;QYd+>~cPK7+((^44#`qnb92O594yH z&Ua7ia?%4%cqUIdrNFI@yhdoq^W;HQgwX| zUDIL@aNh4WqM*Yx5qSgH4=`uW99mjhXlZF76beyWTbsol8yib|FcOJmrK8a(9*-yO zai7nJ-|tVStE#H7R+(-7mvpo92{g| zU|`&pT4{N`UgKpS^+!fV(mml~~w6ye?7Ca+ANKHb$Tg&@z~^2UUC zxV*gl#{T{L>*Db^ot>S8!(ndSx@F=~Q&WT2>m7HmuC8WeWQ1rmN;Dcxdp&i(eS7@U zSVWjVe?G0PtpoxA4j(@JaYskT%z~7M!aZDHU;jZY7E6007K>?5Pmk`}wM(0uo3)~% z;-QVmvu4fGjT<*=dwaV^B9W|KaOlvX!HJ6Dz@kNq{<>z(n#$JJR+cYcPDRCoZRz3R zVY<4yxO(*}H*ek~5{VFrM6%Mu!^2FPG>Mv;8ft56@%#Pw{r+^iwzig~OPA8v*qBxK z_3PKuYwV*(k8T?p8Zv&e_)tBZY@jBrec&;V$D^xPuhzYL_v+cRXY-2P;o)J;>?KYZ z8XD4$jt#Yd{0?e2(Bkj4=`)(@j z@pwoi5)2Lwrr(uQ-cO}3Uc5+eZ*M#vkDmcLu|9L`Qq|#-^exrkaRRO5kPy&-^%afR zcCYYwJlwl?k9a(;Si2|#Sf3N8?l*xCfcI6^ajT;!{T{Z#IV%)-4yeZ3SRYW;*o4+U p(FQ+iJaK;kcxv$DjwjCG{{ez+xA)Q`_t5|V002ovPDHLkV1l?JR_*`* diff --git a/embeddings/images/black_rook.png b/embeddings/images/black_rook.png index b9748e87f29861cb4ca00c7ce03df54f3f6b35a0..4ee5f6bf093493be70891f6d5173d07624af3f73 100644 GIT binary patch literal 418 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX3?zBp#Z3TG$pJnguI>dsjEs!Dyu4LaRT2^s zTwGj0E)Xy=F#$<7Ha2f>Z=hNQ1qC1p0j8#=85tQsaWgYB78Vv)SJ#@F8lY59Pmiak zXI))gNJvO$XD851H#fJ+%F4&KEz&?~iIO0{V20T%{xGtx=l%Fs;z`qz0~b}_I&ZxD z{LjzXUoW}>)m-y*aSYKozjtyif0KehyZ#>G6FQgU7)<~Eo4;xEvxe;Kty|~W^KCmW zFJr)1$E4Kt>r<;l@KV!4uk5pdk7ju_%{6RyH??l~8)SI(R8;gTUqB%h1tc|rhd9*F*obS z>bm<4Nav*Xd~+;f>EnmfvQV zYQVnt*-rh(MHP!vD*e2Zsy;?J-T$jR$v>(5tC6(s_2pS=pz!l_^>bP0l+XkKq0pbg literal 725 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 literal 2279 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 Hr-UW||EMEI literal 1878 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 DH|EM- literal 1294 zcmV+p1@ZccP)U1TJHnm@pvR2k7wMpc6WEh@AvCX>%$wn zX(^>11J40G9uM(&JY&1JZ{Ol}|9j&1gHp<#-?7b=Ee2i#5(%9u4ZFnL&D*( zuJR^OW_c!?g?|R5si{d04i2))YL1SMq@$xlOHbSwVa_iMq^PJ!*4EapB&$gz5>i@P zs--)u%w^|q_)CD^-d<{JYYlY_27~nX_v^P`S(?hm3a9)6=767lEQ1Bh2~!@CEQEAa1u?#>U37 z3P+<+@p`>l_%GmVz@7KPz(Zj6BDi#Qb;;u5Vpdtr>guX=cXy}XuU-Hu@>Uq|0>1)M zRaGUUqoY?6{V(I=<5E{wr=?#4{=5?g6fmkcsyA=mOFz#WVW5YL`&N-i#1dJ}+}xb_d_FDxdAlamvvsj1P@ALp9Ys&naY;QX%?pU-E}ke4YaC}41K z@X~xaVL^2pfwRKGLP;bNwp3ShaBv`jKtNad>2+0j2vE+92R zzs+e73o5(=$nx^Ct<}|RZ*PmsFW;CEIG&eV!9L5-F^M#D|H7i^SP+necau{Qz&G*P?U$erG;L`0> zM@XB`u&}8c@k*&_puM)X7Qf%0^EgIHrBbY{tN^?c5kt$`?2~v80oK>oO%7vjej}I_ z{*?0z{_7(9Ln9e*>`Ads|Ni}BW(J9$J9iF9 zvVs9nL{U)@$mQeX1Cl`CuC6YSAu1{gRQc)CC!jKj6r2Q#|NsBr z#>OT&IeEf_2@MSmE-o%PIXNpS}nK!X8yDI_x_Um*<-bmyTznl0$sDj)5S4F z#-xu38JSg-*6SUc7?J(d~ryJ;gAo1!-uD&M|1>2EU`4oS2B*(LsfZEOFpq_slEw*K|4ix_8Le zSG`MWi*%Rp9aZTTHa`};C*wcs7UzQ!hJgZgF9&)II`GE=uaF=u+y)0Yd5 zFL*uW)h>kK8Vt9 xq$$t4l^=ch_0i4d{pYzC?n>0{T`K>P{UE>U6t}jEH-S;h;OXk;vd$@?2>=FjCQSeU literal 2637 zcmV-T3bOTyP)kPe1I;Fy5Vg8jMOf($(CZ^PhXqf6im>%v~iSe3is@tqquMxk31P zmm7qycey5nl~N9+)UDTI?pYHXKGioGn+Wo-WKo_tE zP#Lg$00G45bc)uW1iqPLjtamrQ(HykiV!}elQ6Xd7Py;%Q9uqKJ}hHnW75&lq2vFS zVeIb#M>R|j@GRiGW`u#IfOx%LdHLm+<)xQi5|78DlejYly8@7gh6d5)*s)_ew%=mx zyMd{cXb|9)Yf1R`fNa~g%^
      sH;c-=<)10)l{ab#=+m(2zX(=%YIJFBW6}1CY&| zH%llKlCG{U9UBC0x+;VL2XJc^{j-3qUAxvGymIAA-LNMu@W0bNrIgZf382{mI|Rrl zpL}ABy-IA(P zO4)!V02?=M)K4$78b>L$3~0$UpC(^u$4SlJBfz~P@>v=(N50vBMO?nihjV#&_3G6+ zcB=)Z36T2wdO3RZXx737><8qw+iuGh(qHFto*yU2q9iL}6X~dl^tx<>O)H|$EHE8_ zw70iQC=}AeFRgF^ULd5DlASwu<|6#I$+rEu_~d*&6p<<5r0LXNrBrz){KF4F%-p$i z0hTJInp4!v0G2IVhR5Tfv9S@7i;=}CxW@p`s#U9KXlTf2n^NlgK%425KL?$>--rER zdD3!CQv zdGNsp#qDkLdd92UFXZWJ!yRv>1#+oiX+S41Su z!+?uqO_7~DcgjZ}eWdF@&WlT)gl%ZyI6OQoKA+EQ=prk^;c!^IUaxMoufF=Ku752bE_sEtxl*4vae|hX7M^*OXHB)N9Jh%2>aCz5a6(DFsWHmKI}e(E|J!G8ZeQR1@%=&1Pf&{{1+ePW*nO zFz2k$I+=XE{AWP+?b|0JBB4;oyeQa4iibr+d_JG9zeGyG(q+${Jv!zKK+b)ii@lZzh(6_wLCz>do0~a(`ZOaWBUDsW z;PrZ^joIGb&I1oTaM_^Cw&Y%LXreUlv|}FFo06(6mWY!Sf|rTSy>q# zj|Y#(lh!XODIpSx5Q#(xhr@)!;c5M7G|JS}RKBL|5Ru>H11uz@0s4X4l~T-~KcBj~ zI_m4|(~k4!&&TO>7C3aegu`LZojXT&cQ2V4YX$BrGdO3*B$qod{(TG~EVwpLIM z11P2L1^x**4jw#6dwaW~OC%EX^z;x21c*kX#N%<|@i?(q%;@XC6Nv;amkXE6MQLfN z(KrA0dcD-v)>2tnIV~dF+S+*Mop&Hvoxd$2p}g%cl(0tnNnlS&NeOG#tRWZ-(%s!n zUtb@SlamFHmrKgZ%BZcarLL}y3l}cn^Z6jT74t0-IbD$L#SjKiO1(#NF=B|_Zl}7s znwpv#JRZ+9&!zSq4u@p~nERnnh_h$UGB7Y;Wx{ z0jjF1=)}K3fE;ThZ z)7qRla~K&JacI#smff@~9MYPH{{ zg$pS!FE>1v+8hpt;c>I)qtPglNQ8lb0eX9T>FMb)q9ziF=+j*!xs4Ji*zh7f+W<`1 z?RM$x?373(a-~u=tMvExOKWSZ?&V(>WqXl?e+kHj4I5^Ks96pjI;0bRuNd14{$rZ9 zA@)N^?lR1_xZQ5O+n|&xyyzBshk&(^+~kVIVzcI1U1G7A+;PVpx|cT;YJV|*Jsby^ zoSek(_nQmJRTmK<7!0y#(IWj+MWJI9^YY*X{)1_^V9uO5R99CUt*WYu%F0UPIcwGQ zrDZG@vuxpTnDgh)69@$8>+7ShuaExze#Xbg^=Zd}77_WpAOeMkgm!~&Ci&U+ED&cF zp24OT1U?7aim|=u=ddo?x2_7H8mQ7*HOXz0Qj6x&jt=c+#Y{(YivWW_AIUE*eL$ax vglA;$ObP$L$&G)+U+;2*@bxZVIl}(~G3Pqk!(KD#00000NkvXXu0mjfsr>;1 diff --git a/embeddings/images/white_rook.png b/embeddings/images/white_rook.png index a805de496f4d152dd02026bed09b45548b6e88d8..4d7643cd0b4ed50b37bb3911d786bb4ae68ff61a 100644 GIT binary patch literal 482 zcmV<80UiE{P)+(43r{x3{-@c!_x01X8F8vRPZ)c%U^dU#b7^*;ar0S8G$ zK~yNum6Pj^f-n$92YQ*dTy-sMx1d1O_kYA~MWs~MxaY^0(37tjCII*r_)r5tlyQ6G z?0F=FbS)u-t4f!lmiR?TCGkKQ*&&w1C4@R{x`d~!=?qDEJ{lfrL$B5jTI<2uD;*-u zFRE8c_2)@>E@h|z3vzB2R9=MI`+d_sX!gakhs$td=NY>bch74LX-l=H)Q9B&7`IQ< zOCOfwwstS3|JM4wzO$jh?M>e=A6`ZSOqFSkr!^{W1B%Mj$C-Ly*?KMR?tGg1nW@jY z3^kx6KOuRx+PTcws24hx$?$6_S+a&z!aJDfBFFK2MV(|1eQU=oZSO^l{KsDcuYA(} Y1&fg)hjtvN4gdfE07*qoM6N<$f@Ac}MF0Q* literal 933 zcmV;W16urvP) zn!ERY_xs*^_wL^BS5ZpQNp!V4fSV=|>~{jeekTy@cLKqFM_aInSR(RXM3jRqiHNvp zuSDdFh}?F#&a{ZsTW#MIrIeNdV}QECVlLY&;HATL%5K^>GtW~xlgV6gI503^pL!x9 zPi+GpI<;3ykdU~)d z%Se321+TBKGdnv=yWs!tE;Q7 z`dF65;^Ly|P#p0rxLhu?wzg&>mX_Ju+tcstVU>PH^Huk{ZP{(yqMPv$kuZ=4?u5f( z#>dC$?d{d_)he}Gjm^zX4i66jegH#Cse&sfx+8pcqxyi)fJ!ElDxc4*>*DC>NR5n) z*dx0S+|`L$dxUL7q!0K2j3kpu=H})Ig^aI-EG#UrwY3HC6&O=W?d$mQEExWX{uGTy zhlYoT&wqRvp<1o7ySq!JQYiutbj1SRru1La`!S$0nT+x2oXuwKsr<@ooF;cmKMne7 zMAfTOSK5bSpX!G0$Y>~{jeey8IEo7}1Q0PO7SFflP<&@JS0Is0eCt1pv+ zp97@RX(lHp4Z4L$B*Mzd3Y;bmFDJI$U}*E70%~1dU21!K+js(?R4S=xG-@XS9(jq? z^9YNG1-t`7gM)(<3Iz%UcZtMS7#$sDV`BqgSw!wDrM_u7GBCOyx#4`YhK}5=c+0ud;;!3GstackedWidget->setCurrentIndex(5); + // QLabel *background = new QLabel(this); + // background->setAlignment(Qt::AlignTop | Qt:: AlignRight); + // background->setGeometry(QRect(15, 20, 300, 320)); + // background->setStyleSheet("background-image:/images/images/chessBoardBackground"); // Add white pieces pieces.append(ChessPiece("rook", "white", "A1")); pieces.append(ChessPiece("knight", "white", "B1")); @@ -106,6 +111,7 @@ void MainWindow::setupInitialPositions() for (ChessPiece &piece : pieces) { placePieceOnTile(piece.position, piece.type, piece.color); } + // ui->stackedWidget->setCurrentIndex(0); } @@ -132,8 +138,13 @@ void MainWindow::placePieceOnTile(const QString& position, const QString& pieceT } QPixmap pixmap = QPixmap::fromImage(img); - button->setIcon(QIcon(pixmap)); - button->setIconSize(QSize(40, 40)); + QIcon icon(pixmap); + icon.addPixmap(pixmap, QIcon::Normal, QIcon::Off); + + + button->setIcon(icon); + button->setIconSize(QSize(30, 30)); + button->setStyleSheet("QPushButton { padding-left: 15px; }, setStyleSheet(QPushButton{background: transparent;});"); } } diff --git a/embeddings/mainwindow.ui b/embeddings/mainwindow.ui index 0a2e26b..5e65947 100644 --- a/embeddings/mainwindow.ui +++ b/embeddings/mainwindow.ui @@ -679,15 +679,40 @@ font: 900 12pt "Segoe UI Black"; - 10 - 20 - 351 - 381 + 20 + 40 + 312 + 312 - - + + QLayout::SizeConstraint::SetDefaultConstraint + + + 5 + + + + + + 30 + 30 + + + + + 30 + 30 + + + + 8 + + + + + 30 @@ -708,14 +733,14 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - A1 + G4 @@ -727,6 +752,12 @@ font: 900 12pt "Segoe UI Black"; 30 + + + 30 + 30 + + 30 @@ -746,14 +777,39 @@ font: 900 12pt "Segoe UI Black"; - - + + + + + 30 + 30 + + + + + 30 + 30 + + + + 2 + + + + + 30 30 + + + 30 + 30 + + 30 @@ -762,25 +818,37 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - C3 + B7 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #000000; @@ -790,12 +858,12 @@ font: 900 12pt "Segoe UI Black"; } - F4 + D4 - - + + 30 @@ -816,19 +884,38 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - B2 + F5 - - + + + + + 30 + 30 + + + + + 30 + 30 + + + + 5 + + + + + 30 @@ -856,12 +943,18 @@ font: 900 12pt "Segoe UI Black"; } - B6 + F4 - - + + + + + 30 + 30 + + 30 @@ -869,18 +962,43 @@ font: 900 12pt "Segoe UI Black"; - A + H - - + + + + + 30 + 30 + + + + + 30 + 30 + + + + E + + + + + 30 30 + + + 30 + 30 + + 30 @@ -889,19 +1007,19 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - H8 + E6 - - + + 30 @@ -929,12 +1047,12 @@ font: 900 12pt "Segoe UI Black"; } - B8 + B4 - - + + 30 @@ -962,12 +1080,12 @@ font: 900 12pt "Segoe UI Black"; } - F1 + C6 - - + + 30 @@ -988,38 +1106,31 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - D3 - - - - - - - - 30 - 30 - - - - G + D8 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1035,18 +1146,24 @@ font: 900 12pt "Segoe UI Black"; } - A8 + D1 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1062,12 +1179,12 @@ font: 900 12pt "Segoe UI Black"; } - F6 + F2 - - + + 30 @@ -1095,51 +1212,23 @@ font: 900 12pt "Segoe UI Black"; } - C1 - - - - - - - - 30 - 30 - - - - D + B8 - - + + 30 30 - - QPushButton { - background-color: #000000; - color: white; - border-radius: 5px; - padding: 5px; -} - - - G3 - - - - - - - - 30 - 30 - + + + 30 + 30 + @@ -1156,12 +1245,12 @@ font: 900 12pt "Segoe UI Black"; } - C6 + H1 - - + + 30 @@ -1182,24 +1271,24 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - B4 + D3 - - - - - 30 - 30 - + + + + + 30 + 30 + @@ -1207,21 +1296,13 @@ font: 900 12pt "Segoe UI Black"; 30 - - QPushButton { - background-color: #FFFFFF; - color: black; - border-radius: 5px; - padding: 5px; -} - - E6 + 7 - - + + 30 @@ -1249,12 +1330,18 @@ font: 900 12pt "Segoe UI Black"; } - E2 + F3 - - + + + + + 30 + 30 + + 30 @@ -1262,18 +1349,24 @@ font: 900 12pt "Segoe UI Black"; - 6 + 4 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1282,25 +1375,37 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - C8 + G1 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #000000; @@ -1310,31 +1415,57 @@ font: 900 12pt "Segoe UI Black"; } - G5 + C7 - - + + + + + 30 + 30 + + + + + 30 + 30 + + 30 30 + + QPushButton { + background-color: #000000; + color: white; + border-radius: 5px; + padding: 5px; +} + - H + H8 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1350,12 +1481,12 @@ font: 900 12pt "Segoe UI Black"; } - E5 + A3 - - + + 30 @@ -1376,25 +1507,37 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - C2 + D6 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #FFFFFF; @@ -1404,31 +1547,24 @@ font: 900 12pt "Segoe UI Black"; } - C4 - - - - - - - - 30 - 30 - - - - E + F1 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1444,31 +1580,24 @@ font: 900 12pt "Segoe UI Black"; } - E8 - - - - - - - - 30 - 30 - - - - 2 + E2 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1477,25 +1606,31 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - H6 + E8 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1511,18 +1646,30 @@ font: 900 12pt "Segoe UI Black"; } - H3 + A2 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #FFFFFF; @@ -1532,12 +1679,12 @@ font: 900 12pt "Segoe UI Black"; } - H5 + B1 - - + + 30 @@ -1565,18 +1712,24 @@ font: 900 12pt "Segoe UI Black"; } - G2 + F7 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1585,19 +1738,19 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - D5 + C1 - - + + 30 @@ -1625,12 +1778,12 @@ font: 900 12pt "Segoe UI Black"; } - B3 + H3 - - + + 30 @@ -1658,18 +1811,30 @@ font: 900 12pt "Segoe UI Black"; } - D2 + E3 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #000000; @@ -1679,18 +1844,24 @@ font: 900 12pt "Segoe UI Black"; } - F2 + G7 - - + + 30 30 + + + 30 + 30 + + 30 @@ -1699,24 +1870,24 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - F7 + H4 - - - - - 30 - 30 - + + + + + 30 + 30 + @@ -1724,27 +1895,44 @@ font: 900 12pt "Segoe UI Black"; 30 - - QPushButton { - background-color: #000000; - color: white; - border-radius: 5px; - padding: 5px; -} + + F + + + + + + + + 30 + 30 + + + + + 30 + 30 + - A3 + D - - + + 30 30 + + + 30 + 30 + + 30 @@ -1760,12 +1948,12 @@ font: 900 12pt "Segoe UI Black"; } - A5 + G5 - - + + 30 @@ -1793,12 +1981,12 @@ font: 900 12pt "Segoe UI Black"; } - H1 + E4 - - + + 30 @@ -1819,25 +2007,37 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - H2 + C8 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #FFFFFF; @@ -1847,17 +2047,17 @@ font: 900 12pt "Segoe UI Black"; } - F3 + G2 - - - - - 30 - 30 - + + + + + 30 + 30 + @@ -1865,27 +2065,25 @@ font: 900 12pt "Segoe UI Black"; 30 - - QPushButton { - background-color: #000000; - color: white; - border-radius: 5px; - padding: 5px; -} - - D8 + B - - + + 30 30 + + + 30 + 30 + + 30 @@ -1901,25 +2099,12 @@ font: 900 12pt "Segoe UI Black"; } - H7 - - - - - - - - 30 - 30 - - - - 8 + A6 - - + + 30 @@ -1947,12 +2132,31 @@ font: 900 12pt "Segoe UI Black"; } - B7 + B5 - - + + + + + 30 + 30 + + + + + 30 + 30 + + + + 1 + + + + + 30 @@ -1973,25 +2177,31 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - A6 + B2 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2007,18 +2217,24 @@ font: 900 12pt "Segoe UI Black"; } - D6 + A7 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2034,18 +2250,24 @@ font: 900 12pt "Segoe UI Black"; } - G8 + C2 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2061,12 +2283,12 @@ font: 900 12pt "Segoe UI Black"; } - E3 + C5 - - + + 30 @@ -2094,12 +2316,18 @@ font: 900 12pt "Segoe UI Black"; } - B5 + D5 - - + + + + + 30 + 30 + + 30 @@ -2107,12 +2335,12 @@ font: 900 12pt "Segoe UI Black"; - 7 + C - - + + 30 @@ -2133,19 +2361,25 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - D1 + C3 - - + + + + + 30 + 30 + + 30 @@ -2153,18 +2387,24 @@ font: 900 12pt "Segoe UI Black"; - B + G - - + + 30 30 + + + 30 + 30 + + 30 @@ -2180,18 +2420,24 @@ font: 900 12pt "Segoe UI Black"; } - F8 + E1 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2207,18 +2453,24 @@ font: 900 12pt "Segoe UI Black"; } - D4 + F8 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2234,18 +2486,43 @@ font: 900 12pt "Segoe UI Black"; } - H4 + E7 - - + + + + + 30 + 30 + + + + + 30 + 30 + + + + 3 + + + + + 30 30 + + + 30 + 30 + + 30 @@ -2261,44 +2538,57 @@ font: 900 12pt "Segoe UI Black"; } - E7 + H6 - - - + + + + + 30 + 30 + + + 30 30 - - 3 - - - - - 30 30 + + QPushButton { + background-color: #000000; + color: white; + border-radius: 5px; + padding: 5px; +} + - C + D2 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2307,26 +2597,19 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - G7 - - - - - - - 5 + C4 - - + + 30 @@ -2354,18 +2637,30 @@ font: 900 12pt "Segoe UI Black"; } - G1 + H2 - - + + 30 30 + + + 30 + 30 + + + + + 30 + 30 + + QPushButton { background-color: #FFFFFF; @@ -2375,18 +2670,24 @@ font: 900 12pt "Segoe UI Black"; } - A4 + H5 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2402,25 +2703,45 @@ font: 900 12pt "Segoe UI Black"; } - G4 + H7 - - + + + + + 30 + 30 + + + + + 30 + 30 + + 30 30 + + QPushButton { + background-color: #000000; + color: white; + border-radius: 5px; + padding: 5px; +} + - F + G3 - - + + 30 @@ -2441,19 +2762,19 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - D7 + A1 - - + + 30 @@ -2474,25 +2795,31 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - E1 + B3 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2508,25 +2835,45 @@ font: 900 12pt "Segoe UI Black"; } - C5 + A5 - - + + + + + 30 + 30 + + + + + 30 + 30 + + 30 30 + + QPushButton { + background-color: #FFFFFF; + color: black; + border-radius: 5px; + padding: 5px; +} + - 4 + G8 - - + + 30 @@ -2547,25 +2894,31 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - C7 + A4 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2574,19 +2927,19 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #000000; - color: white; + background-color: #FFFFFF; + color: black; border-radius: 5px; padding: 5px; } - A7 + D7 - - + + 30 @@ -2607,19 +2960,25 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - A2 + F6 - - + + + + + 30 + 30 + + 30 @@ -2627,18 +2986,24 @@ font: 900 12pt "Segoe UI Black"; - 1 + A - - + + 30 30 + + + 30 + 30 + + 30 @@ -2647,19 +3012,19 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - F5 + E5 - - + + 30 @@ -2687,18 +3052,24 @@ font: 900 12pt "Segoe UI Black"; } - B1 + A8 - - + + 30 30 + + + 30 + 30 + + 30 @@ -2707,14 +3078,33 @@ font: 900 12pt "Segoe UI Black"; QPushButton { - background-color: #FFFFFF; - color: black; + background-color: #000000; + color: white; border-radius: 5px; padding: 5px; } - E4 + B6 + + + + + + + + 30 + 30 + + + + + 30 + 30 + + + + 6 diff --git a/embeddings/resources.qrc b/embeddings/resources.qrc index a83dbb7..6b7f0aa 100644 --- a/embeddings/resources.qrc +++ b/embeddings/resources.qrc @@ -16,5 +16,6 @@ images/white_pawn.png images/white_queen.png images/white_rook.png + images/chessboardBackground.png