From 582b23827b7dbe8ec4fbacf2479c291c344c90cc Mon Sep 17 00:00:00 2001 From: Luis Rodrigues Date: Fri, 3 Apr 2026 01:26:10 +0100 Subject: [PATCH] aplicar botoes rudimentares na frame accoes --- ...64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png | Bin 0 -> 2062 bytes ...64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png | Bin 0 -> 1538 bytes ...64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png | Bin 0 -> 2296 bytes ...64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png | Bin 0 -> 1121 bytes ...64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png | Bin 0 -> 1873 bytes modules/gui.py | 57 ++++++++++++++++++ 6 files changed, 57 insertions(+) create mode 100644 assets/play_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png create mode 100644 assets/restart_alt_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png create mode 100644 assets/settings_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png create mode 100644 assets/step_over_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png create mode 100644 assets/stop_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png diff --git a/assets/play_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png b/assets/play_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png new file mode 100644 index 0000000000000000000000000000000000000000..ff60424c905cf6f1738a15c80872847cfce8b4e1 GIT binary patch literal 2062 zcmV+p2=VucP)x11@m};yMKmA3mIyl9DnW&c}3ic3#7KL74wzNl8hky1Ke{wYRrd zmXwq<$7@`Alz_&@MiJn9yza0JXj^M*>)b(u1~pphE7f|000Msz&r6lw4Ft%JSNr$x zzt})UOEjhg96fq;JwRt`dA1ZvOicW|u(0rcOZ5xXVnP5TJ`BryH9(z1rc%6^^9{`R zCZUs@oSa8Z7(j5MK1|?sxylwgqx19ge^kk-{tryRkt0WH0Dg;)qqi8b1;})&z&QUW zlak1&Rs8mZkKX>Gq9Q@Q^<_=KfddEnW@KdiE%QvUXBnY!d3kw1TO)HQl3_#nx`$U^ znZ4B1)V{g7xgxuaFDnAX?Ti3J=_|P=Gb-O1BhgTRh)IZTlZi5&@@#IO#srY^`Hb)} z35YrZzg8oTz#?F%14D`1P@g`1a&vNWPMA0_BH+-WLzy@^Epf1d;GZ#Z98{M2u#7sf z#BIlPIv5c^3U*0=Pbc_|K?AbU2hTM0K6UAKfhS4Vo;CqEJBZOCF2mDswn^7nPslYi zG|b?Z`mxhC)8kj}JU8q3(;`4td~mW1CokwY>1i3+bPzoS_;#v%>k{Bj{aQx;I+gKw z{!d}7C+K3QPcSOuQwlKp>oEF|so{7AAMxd`Q4sPjS@4)2799ejMjxYNFNOjv}VT8Qs84_x(lm52a;q4*g(g58 z#VLvahmEyNi+MIS{dB;-9_+InGMn*pj}ZZG7Abs57?pK`O8nH4g%G&XOOQ+}9yoAd zgVKC$`gRX=z2-+1Y1xgd;ML{s5ny%k)hU zAePTjmvjoCydS9>B9gWZkONE*0zziMu$pXGpi2VF&2sc0z#IbygEV`s~G_ zbGLOE%7PTD%d`e~I9UpYa$NurFdhPSI0ms20=xT~$nVk&ppn=S-lGr6VQ2!C*~z9Z zj*whH0#4G&iLTLTF(uh8+6aNuwK71m1pZHoAcHWA${n@aqsu&l_!Rmp9P)2Nz~j0E zxC_YFDBq>)+%0F30sHVb+}2+>>vr=#+A#$tF$KQYB0#eHdlo?bYyp`xLiiYtuYI<@ zB6^Vi51&&b-^rvjGD7?ob^V`O;jIKdC1~Id0;1L}f!6}n)zv9wWo1zd3|+9Q4B*g2 zHjmMy%T-+;PPvMTisTU^MzlMBvmsy$2JUniS%;B_Z2v=!hN&^cbgXPJ`X|WFY~8sZk<%i8EGQ)lesO_)9}*skRRBTk zfbSjfJ?gZ<_Zum;%7a^41cb9dY>13?0euz{UJn93s4gS_93%gV%gz>XIr{)lH`)Y* zNpNp8CcyL(n05mQ8kd$n!7nEGq(}F>a2XRI4EY?E zN?-$ZHXEqUE%lgjLYFs-E^mX(Agy(#&9g=;0t5i&UNR#g*4MHFNgbRc9LrJGA7T;x z@#DvDr48SM&lH)xAS+dC0wO>lVJpBqkHhodH#`Y0GhO(I?vXQpV$I;U6SapqKPm{x zfe8@KNzLm?O`UTCB4flzicQypyodGx_?*RS2;V328p-GGogA;=I2n2qCqsV=5`4&a zPy+ecvv;(S+iwxst60TD3bM0sXr<_C=0R7-$g za#xwlUFCw?uBE*T)OwTvw>Nr-bb1KUPEY2Q4>4Kc8X#(cIDP&tbGwSUEjrG)TyZ5J sE)f|z=_SCBu!~N-Hv=xZAvFx>UmgxcZd#C&Z2$lO07*qoM6N<$f?d(Q=Kufz literal 0 HcmV?d00001 diff --git a/assets/restart_alt_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png b/assets/restart_alt_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png new file mode 100644 index 0000000000000000000000000000000000000000..5228f3f45aeceb86fac9d0840d131251ed184510 GIT binary patch literal 1538 zcmV+d2L1VoP)pxc_M~nY=CROb8Xg@bK`u#>U39A;`m&!Pc;YSN1{!P>I2Z2B1=d z4-LS?#6-@N-jPUT|Kj4}Y5u18jPd^=#(}9YOCit_U|?IvfM=?Cn;4HREG+Eq?Cku> zM%b-PpaAIke{gJrTj#WPdl@9(@Igop*;vkDbic&2$4$=x z9W`Z~ZSYFYGXO*I1^agc;X^+lsM5ktnqcEjec136gQvz!anIr0vj*Z_IQH8Ly;?Fm z*z5(y$H%_{!p#o7S!^{(dR>=w4S?XU!0BHchBG*0Rh#Vi(T)NgilbUb8hLkd9Emwt5B2Y?4{jRhfR=oHbqKnkE}@QcM_=Oz+~|AGii zqSILhlC1OuKw?M|kW{wn0kAquF%@520LLtKB^#xpv8o(Y>kLpE5)3VBigIK?RN7lX z$m7?S__w8?I~t8{X>D!&+QybO0OtP$WKU>HPXM6J#z@dIl)y*W(9aHb;@d$RyVd~a z=H@oe&(F_kO8>&hMK(r)mH|LNHq?R4(nU6GXJvZG#;!F0rOeAWT^KTvw+$fFJD0d zDB68te1O5``k;cd(M#}8!N)N8s;xmkx{yb`p6uh6Yg6z zVuye$0QoF9$=?ffeL(02!jDoXB=TcpW9PHk`PGWF?gT>~)e4wv-S*VlKqw6p{Q zVPIh3oaW}{f1SZIGbQ*T#h((81zFbs@>x(a3ak5M!XsqD>uww>*M|B2R-k|8e9pZG zn1%McwdDyw9>QJx{lMVBNmhzUKaR}UiVw0Czt(Akd#`cu@u=J2RXfiB@(`AO8(?w- zCkLmer#IVfPIMg%cAxNldzk=Vq3(^Z%_Ts50iXm6;kFR=k{}w&`W7LBT2Rwb1tTYWi)T`<4N^ zL8hv1QvWEQvhVGs0MK;@_5QJKV779B04Nv-#3ttKZ}`4^Vq17-1Avk_!)F^aiq!$9 zZP2=0pa673)OWI>q2XbAa*qO127r3WqJCEMGS82@2}s%|Gyqb^!ji862#a*3+Notg orS?o%e$_G{EYg)~r|L7{e;C?hUkdI&dH?_b07*qoM6N<$f_CTr2><{9 literal 0 HcmV?d00001 diff --git a/assets/settings_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png b/assets/settings_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png new file mode 100644 index 0000000000000000000000000000000000000000..3df706cf4a67c27bbd783ab2bdf66c8ae27ad971 GIT binary patch literal 2296 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 literal 0 HcmV?d00001 diff --git a/assets/stop_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png b/assets/stop_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png new file mode 100644 index 0000000000000000000000000000000000000000..5855e12b01c423a755362fb134a031ed94bb621e GIT binary patch literal 1873 zcmV-X2d?;uP)5=rB?mES-4ts58^*jrRo z)RwBa3@ZT5&CP{4@+R+10Ug@Y+uQrlv}x0t0`hCwh6Ml|e+JFZX|>xCY??fI@>)9< zJ#|t6XlZHLN@`c>)dr`aRNkL7Y0|Rb5}ce#0idAoin0O@`JC3Acfy+Xtu!?^*SG4gjZDT3^3 z_#XG+J4ji~wvp?m4GchIW8?UooSZW%B}C;5YfB6m$cTB6eXSw|py<@8Q%@R*agbO8aN@)X zF?P2q6#b6lCAJ0xp$CXV@RhrHv$C@C^YZde*~qj4;ONn#6H)TFLcvQo|D=uLL}?ju zo}y2@;Fe=s4psnw{Gh_{6*ym$s6#>co0^)IGMaqk;vK{uF}pN+i~+#;!$`bbmP!Pc zGi}{rq-mIl$b?Gl_&^ps+349i$pEpr5+%)v1^*Fu31wsWN z?9=Hs1;Cy9hjD(oPIxN66QtkJ=V-#%sP#`vfZ#0%zE5_>L~tsdkLz;xD6-;pvS5{; zEhYdsqEEfeqwc>6!$F-+01&Ir-8RAU1ptAY5%!2Au#f0x>I@0J%m0U{=e1A>>z6L2kpt0zlZ| z*3IN7kF~;S6}Wx?h#_Qwlu9p?N>7-EFk}GU#?JdC+jnC7?Y00o(w}acMpsqM1eKVC z34mBiGeL4Jzr9MxF9RITn$}<(jW7XFm4Oui?d|QkEHBU242X7+LK98XUuA#|uZlK6 z0J@QLL0lFM{306oKW^E|3?O}~aC)mm{4oYBwQ*tuWPqcGQNA}*#-Eu2unhq2k%%7z z0MS^CpAi6nSe|c^4Bm_ntBnA_cn5lHSXLAl7i$+5vhc70V54>!c5jz#+71ABnF4SS z!kN-AGK(JYi*fiN3>yH-cmY`~2W=k!h#hCgqwE0~{}WX5ZtHBA1t`W(*Z`0L6=Xnd z++cb@Ej?hd5df^OYh!!#L-b577Zny3iv4`!Cu{)FFVg)z$>17-xWWhk#S(Zm%wl0= z{EPqq5^93W@l@XD+XVo(8GAnhdH`9xpDeykvRS!Zuj~Pe-QP|CnDBoBz`ZQ)?(WVm zD=X_UDgi;{PT>GEG2?ZE39yOkx0(v80I098�`d>^Cu1#c#^zMP~y*LqkI*2PFT> zvaA7M9Non@dW$4v3ql?+btKFti0+-(d28HO{MgPs=A228`0lwH1b|Cm6xUYHJ~mMZ z830H5WoKvSUN^PzklwODO2iAvLGw~I7wcNoqJ3Jr`r>BUv;rMb}|7f z*)$5^*OIyNqR62#$hLUs$6;QeQMM~7+c!+3@7n|7LJ(Sw&^0zflO0u4d5VLPjm-a_ z_T$%PfX9$_lC+AN8kPz=0(FW&U1l37BLJ9IUc;Q4Gf=t;%!+RHHce@qZOxA`1 zXlpSSo-gLY^IvX0GT}7H=h?~&La%CgLXPeIpg;f!CZEevp9DLr( z?$kRfx{i*H2{UHQ=+wzLCvdh5ae8Vmok)lkm+C@NKL-&DIEYBfJpvADu4Q`rEjrI0 zdrNi?l6mPi$9A&M)+OKuj3MYtlrQoE5~Dxu>FKFdZASQkFZxYMNy&%ERvv1`c)z0N z7X}St;1X~vq#@1X|9;jP0vMu!ip7-JbUno10{lUy43O61k0-SNm@@DB|QED?O zwMHGC?t8)+AS)mnHi%(Sr!I-SlJ2i2S*HCkXk);U zBS&)Bj1XsvciQktv^8B_U8~B=%axlM0cASah9v{M45L?E$hY~tOLz--FBO*=Vt+8z zMyKB`&LH`>V?Qq$j(W*RDFDOiNKn~h00c$ueBm3*fb%7iLH+m-?>**UF{Ps?00000 LNkvXXu0mjfBx`R} literal 0 HcmV?d00001 diff --git a/modules/gui.py b/modules/gui.py index b8cb28d..baebd26 100644 --- a/modules/gui.py +++ b/modules/gui.py @@ -182,6 +182,62 @@ def actualizarInfoPos( ) +def mostrarFrameAccoes(janela: pg.Surface, frm: Frame) -> None: + frm.desenhar(janela, 5, 10) + img_play = pg.image.load( + "assets/play_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png" + ) + img_stop = pg.image.load( + "assets/stop_circle_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png" + ) + img_step = pg.image.load( + "assets/step_over_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png" + ) + img_restart = pg.image.load( + "assets/restart_alt_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png" + ) + img_settings = pg.image.load( + "assets/settings_64dp_E3E3E3_FILL0_wght400_GRAD0_opsz48.png" + ) + janela.blit( + img_play, + ( + frm.posicao[0] + sep_janelas, + frm.posicao[1] + ((frm.tamanho[1] - img_play.get_size()[1]) / 2), + ), + ) + janela.blit( + img_step, + ( + frm.posicao[0] + (sep_janelas + img_play.get_size()[0]), + frm.posicao[1] + ((frm.tamanho[1] - img_step.get_size()[1]) / 2), + ), + ) + janela.blit( + img_stop, + ( + frm.posicao[0] + ((sep_janelas + img_step.get_size()[0]) * 2), + frm.posicao[1] + ((frm.tamanho[1] - img_stop.get_size()[1]) / 2), + ), + ) + janela.blit( + img_restart, + ( + frm.posicao[0] + ((sep_janelas + img_stop.get_size()[0]) * 3), + frm.posicao[1] + + ((frm.tamanho[1] - img_restart.get_size()[1]) / 2), + ), + ) + janela.blit( + img_settings, + ( + frm.posicao[0] + ((sep_janelas + img_restart.get_size()[0]) * 5), + frm.posicao[1] + + ((frm.tamanho[1] - img_settings.get_size()[1]) / 2), + ), + ) + + def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]): if isinstance(mapa, NoneType): raise TypeError("não foi passado mapa (tipo None)") @@ -277,6 +333,7 @@ def main(mapa: Mapa | None, tamanho_mapa: tuple[int, int]): # mostrar estatisticas actualizarEstatisticas(janela, frm_info_mapa, mapa) # mostrar frame_accoes + mostrarFrameAccoes(janela, frm_accoes) pg.display.flip() clock.tick(60)