From 09950fa6b9b7e74fe066de83b8ac1593f43911cc Mon Sep 17 00:00:00 2001 From: tomaszkrosnowski Date: Tue, 8 Jun 2021 16:53:48 +0200 Subject: [PATCH] [EGD-4384] Status bar roaming indicator Added indicator to let know the user if he is in roaming mode. --- .../topbar/signal/signal0.png | Bin 0 -> 1467 bytes .../topbar/signal/signal0_roaming.png | Bin 0 -> 1570 bytes .../topbar/signal/signal1.png | Bin 0 -> 1489 bytes .../topbar/signal/signal1_roaming.png | Bin 0 -> 1585 bytes .../topbar/signal/signal2.png | Bin 0 -> 1501 bytes .../topbar/signal/signal2_roaming.png | Bin 0 -> 1607 bytes .../topbar/signal/signal3.png | Bin 0 -> 1522 bytes .../topbar/signal/signal3_roaming.png | Bin 0 -> 1619 bytes .../topbar/signal/signal4.png | Bin 0 -> 1512 bytes .../topbar/signal/signal4_roaming.png | Bin 0 -> 1636 bytes .../topbar/signal/signal_noconn.png | Bin 0 -> 1551 bytes image/assets/images/signal0.vpi | Bin 149 -> 267 bytes image/assets/images/signal0_roaming.vpi | Bin 0 -> 447 bytes image/assets/images/signal1.vpi | Bin 157 -> 283 bytes image/assets/images/signal1_roaming.vpi | Bin 0 -> 463 bytes image/assets/images/signal2.vpi | Bin 205 -> 443 bytes image/assets/images/signal2_roaming.vpi | Bin 0 -> 623 bytes image/assets/images/signal3.vpi | Bin 301 -> 571 bytes image/assets/images/signal3_roaming.vpi | Bin 0 -> 751 bytes image/assets/images/signal4.vpi | Bin 445 -> 835 bytes image/assets/images/signal4_roaming.vpi | Bin 0 -> 1015 bytes image/assets/images/signal_noconn.vpi | Bin 0 -> 439 bytes module-gui/gui/widgets/StatusBar.cpp | 5 ++- .../widgets/status-bar/SignalStrengthBar.cpp | 41 +++++++++++++----- .../widgets/status-bar/SignalStrengthBar.hpp | 9 ++-- .../widgets/status-bar/SignalStrengthBase.cpp | 6 --- .../widgets/status-bar/SignalStrengthBase.hpp | 6 +-- .../widgets/status-bar/SignalStrengthText.cpp | 5 ++- .../widgets/status-bar/SignalStrengthText.hpp | 12 ++--- 29 files changed, 48 insertions(+), 36 deletions(-) create mode 100644 art/phone/application_desktop/topbar/signal/signal0.png create mode 100644 art/phone/application_desktop/topbar/signal/signal0_roaming.png create mode 100644 art/phone/application_desktop/topbar/signal/signal1.png create mode 100644 art/phone/application_desktop/topbar/signal/signal1_roaming.png create mode 100644 art/phone/application_desktop/topbar/signal/signal2.png create mode 100644 art/phone/application_desktop/topbar/signal/signal2_roaming.png create mode 100644 art/phone/application_desktop/topbar/signal/signal3.png create mode 100644 art/phone/application_desktop/topbar/signal/signal3_roaming.png create mode 100644 art/phone/application_desktop/topbar/signal/signal4.png create mode 100644 art/phone/application_desktop/topbar/signal/signal4_roaming.png create mode 100644 art/phone/application_desktop/topbar/signal/signal_noconn.png create mode 100644 image/assets/images/signal0_roaming.vpi create mode 100644 image/assets/images/signal1_roaming.vpi create mode 100644 image/assets/images/signal2_roaming.vpi create mode 100644 image/assets/images/signal3_roaming.vpi create mode 100644 image/assets/images/signal4_roaming.vpi create mode 100644 image/assets/images/signal_noconn.vpi diff --git a/art/phone/application_desktop/topbar/signal/signal0.png b/art/phone/application_desktop/topbar/signal/signal0.png new file mode 100644 index 0000000000000000000000000000000000000000..9ca0fd270d880258b53ec677bd87eb3c49933c07 GIT binary patch literal 1467 zcmbVM&5zSY6gNmnuxKxZ15_#a~a7kf;QR|DZGZu$F2IEtbX}&-~{1-tWzO??z+g z?EKufbBdzO2g|ip@!coJ{+-*!`#~_08@tlwi@Bog-Xq60<<4D!*a2vBjjx60AZD?S zBGw}MFir(pQBE!nQ-s$E2QAW}iKl*e{z3&b^3C)wmj9l1QY2uA_>_+P1 z58&hw3WAt$1cq@h$>Gpb$GlL?<+7oIF@&#s>XI}F*1`txSw=ubcQkC3D`3IZEvHm= z-Q&PEt*T*G4XdPC4lJ9{w!!pKg|#ed!`0fEsV(v6sa?)fXc&XRKp&KJmURrvbzQ@> z4cpcPLd!=9M?)>i56&2BB*z&|Ib{iujHt!>+*5_86A5uz&?fmbOd?>$5T%Btn^Mvk z7~uk!_OssDc!UkoBQZ&MF0fXCO}mV(4GNu99 z5}h|kDKS<_&iWZ9^((^7gHlZj{fr>avL<7_*+n&GE(70}7vqA%A;L6~I*x2QMQVr> zPqj_k)Xa)zFEni%S~j#7j+r(z%?UJQ5p9pQgjS&GegYMF6CsYi2#zppvn)nJHH}e+ z7-`Z`K@m&nvmVQYVc}hA^LpU>jf}NvPi*9?XHSEm?mL$2IGU|nV|T+421(9Qf=N*G zR1qPa(g&5$j qy}ziO`u)MJ_aA?L=2iY!|Ngtii39ciHy>}y_8QbzYL8D}zVY$6wb!M`Y!^ZA3GwnpocHB;Js|Y=loXo^ca?&Kz znOQG|K3Qm`S|3yt6?~9_eNfPcf-9xcqEZkqXhB3Dik22Hs8m7pWNvI_y)|%>lXJfF z{r~r$|Nr+@=eA6&y=g7OFcU_lG*7=b(y?xQjJ{tny6MIhVP!|mFjroejy244&r`(Z zz^yGL3+6r0B0i67QpbG94=I{qW;S+0WG&(Z)N#WNH1@lr%PeqhjlC~#ie{+erdwHx z@V2G7nzgiOsW!XuE-=%9l)%Rc0v+EAV%X8x9xtTxbXj0Q50WfuY%w(m7R)NpNrXY3 zS2#<`<-xSdOG-AUsvCeTN(DhI2vU}l6qpmCEQ7(rQfraz!1>bVfi3!{vCSk2p&+!| zZN8o5Nz@P|RaFI17G#;D2rljh3F>e`yne_~!m$;(Vd9biq>QLeT8YL|Px})5a6}u# zgD}y62^|y)5-+BbdO+J6;lftr^^Dt=fIaNvAc-kf8ezjGNl4rze?vXmzQ_O#t!a*I ztm=#Jk4(f#c{i0Y2*|4FxYiA^Fpp!>iY#2-P2F6dstKVUVU&=lMu<1OsOr#VpzGrB=Qke?fR&Jg)nHaU=&NJ6OTmHF!e6Ga^2ANYD65@qZ{%3mQBDY>x!f* z3McbY&t21mMi3_`u&`0mSQ;VTb#15=0hsDH6+9<-s294H#OFn@r5Yp1^ixK{+v$waR%!hE=JJRW> zY0;li+rt6vbrEf9#^gI0+7MqgO2t~?!1{o`P5 QbK1p?@?7c2rk#8L1kU*Vy#N3J literal 0 HcmV?d00001 diff --git a/art/phone/application_desktop/topbar/signal/signal1.png b/art/phone/application_desktop/topbar/signal/signal1.png new file mode 100644 index 0000000000000000000000000000000000000000..9254d5af8f24cd9e035cce5c171c2919ad39f468 GIT binary patch literal 1489 zcmbVM&5IOA6z@b9{Ky7W2%22Vc0on^d!~20v^8t@xZA|utm}Zgi4be5Yi2q--PP%? z*_m1Jq8CLx2%bdnl5mfqfQQ`0iSiU z(?mrPZ4kAeWE?F?r_S^4NmnTH;@p9KtJiE1?;=>&@SY2v8>5p2x054JTC~rYPbwMniEh}Z3P>ZDwuUt z!?r4pa{`#UF{kNsnqeu14J$e{O)!3B&Xz|_xZ-qH-m zaWvi3OjF?qr5L0P^_8?ZJh9-D0_SnYVwwVB5jAL+xia^3Bq7O4vuQC76AzfyN10}* zx{x#kM!3Xf-Mlj-kFZ8MBq1p)IMyh!S(`FiwCR7CF1KGH;Gqq}l4Dz6lBA?4SZ#yL z7zboqbWtB zjuX@(T9&qCP{tB^v_o@F%)PU=t_PmCoYQ99;Ty%u!dVd1Jlk+=TQOB*=x!LoAT1b5 zF$sKE<`GikID)p_tW*)2RU*5Am5Loj%A932lxo#+BCDz6rp<|l*9LuxyCM%J=cBhg z|9KwsIz*j!wj-)jBoJJT3x2hOas6B*-;8IS7z}d;A}ngbm9aKsH);ZkUQsxsl?;T=VHZA^Bwmp*aUYGNx zR{N4(=MC{v;Lq3RZa=&GXqRMsu;Z)WKYjA_}T9P{R_H$;PHd~2NzB# zUthTO#f#7G%t+GAvl|aTJo(SxKYntx@yCXLe&61y;G;upGgeEnetq)W+MiQ=SbV8^XMcuN;$H{u%$<9` z`*AQDlPIN&+utR94(0=!gXqS|rID&l;vN`oYpP{VZ`5W~bfY4dtf)20Jlaq46voSDplVqVJ# zN+!dItk7}SFksOOBh#}`QCDdaA=Ythn6^g+!ORk!yv#GQWh16c0>hN$ie1hsSyZv) z{&^i+jW`eb=k5P_{=vW@b!gUankTN#IDufn3CY#Ad-XGm7JIY013EbaO)IVimA2v} zKsMc5c5XTXUD{?15z>Fii!Ln0m8fY3XrfA@_1}_@BMP{zv}GlZ7TCVob--( znlvr)le9hLkzN;&rgpXP*?!Ux-z(}9rR=kpS0+-Q@H_J_WPe*88k~Q9hg`}r7q{O& zJh(ibK0Q#8F2A_(mURA)TeRQD_T_&1;HlA-wMk{Y@#t%-@4B;dscj#vesg*#HYHy(Tc c@ap)HjeF76hxVTMK5pv8{FMG??&y<$0+O%;?EnA( literal 0 HcmV?d00001 diff --git a/art/phone/application_desktop/topbar/signal/signal2.png b/art/phone/application_desktop/topbar/signal/signal2.png new file mode 100644 index 0000000000000000000000000000000000000000..26e3ed8948476922c1915015ee0855ff676013da GIT binary patch literal 1501 zcmbVM&5ImG6z>s3HX8x~3FHeYIx%F`{;K)d?Mgafw|mWu+M8uE;7SOwrn_dQ*y*lL zckRy1A}p+z75qBnBss=wz>6RrG-7TE2_zoGe?Sk>y97+td^8(bgQlUntE+zXd++z^ zz4!6*(uD)lN2e7-61^WK0<9=#&-W7?tP&2Iq)lT-{qwu;RX{^WeXs1Be&Ui2t!|{`(#BFF z*jNqhP(6PRob4k)5D|_+KkCLA>O1O?7m2xCHdHW#@Kr~hmj=O#zYJWK5>VDFT40sR zVAj^HO0i_yZvtpqbA~x*SVhgMppuCo1mi~)*3z(r>fT#pTjI}AJDexTFnYb7-Ye=X zZ5x(t+lC1Z2sMGwvO&yoUyHL769$iDK}r)&Sqvm2Zn8D*sKV2cgeb{r<7^xz5ip~V z6T{L?DQO4{gB+KvrQMut)&53To-PhkZKa-rUY}AHW=$pE^2w=GH_jaF*Z2u6 z^wJ2oiIK!@735JwF6**Xm=t~$cdpl5cR6J(+7%mF{lWsMExHxUu2eLrTSG^EAJyWF z<2WES&rwBebV@^1vchJoRKc2Q6H6Yysk#H9|#m2-()8_&8F46_B{KvsdH2J-qzsE(KE3rAo?+v^ZP z`kagy!7|q3J)DyHwush$OFKg-Fl5n=#2Ek7Io#V(;1js$8giPqEAf*zJQ9m8mx^}w z_VH5%(F$qJn{Uj0`uO4PeLt8}dmfxR_S@8FkC$$Jap?H%S8vukGml=LzO(t)!4LO- zbnosrhkk$O`quR8rwdkg=Eu8(&L`J?z3P7ZEpm6kZAuOK2!dD`?Bba!?giY>&Oawz3V0z0EGv>9Sdg6!j;w)3 zOq@?}NQ}jqq|A$nXiSzLU?d=>1dtNMC?_VA7*HgM={_vA<{D+CpzZJ4qJL?&>ido& z2#rRAZ$x?GRs>O&WdTTnBykkMc`e(AP0sd)dkh-(kZU@=No*!yge6k<(=7G0Bf)a| zw6@m`6AhTqgpMHcAdu7s8mNzR>Ta!V+&}`ZVGG;7N3mib>r{zPyejz{>i+h1254w? zy>DYvUo5L{!t*o7sf=zwHbr~ImV<=?_DJ1DICGr3IUJ~Q6xGGhCvK6DTJNIrJ(n3( z4K7AzMs$cwJJ50ehErIBK2Ea|kN^kboRlm|k^*D}#P$L@0UfAL471$Y3@XNyD7X$v z^TvQa{8zAnlrnKGNL8B_tYE>hD=gEGrJ|A=aj9YIU3BAmPF3?RDVsIA;T0w)m|R9p zh;kyqNxay0SJ#!C?fK9~IH#pq8X?{^4J8Q>jK^faMUzP4VxTN?B_mqmU@~DOlSz;& zp;+&{Mo>M-gWh@Lf1W?+nzRmK?S^@R>I@P{$(kO$+E%xIrtuTqS}BfG!@d&}jX)FB7~!uv+j|?zya%Vf zBbfG^7X9hBJ#5on=hCKjL9Sn;4e|4wHeO7<^v%nU41Ef=YAezQ4~7S(!vkpK*}}-c ztrHKwerIWLDIZ>)eE;mqPw$<7bBqJ)-`5WAK*p6z!;#hPU+s!SBCD52FJ`r3 z{m|V{zR_CT`^qUbysRBLe-$5__*oiR`f}gwL!aGoX?bnwkDbQK*fSqqv(&{cYrh^n z65apBsmo_hEKa`t&f3jqAK&)c(U^Dm>-Beky!Tk+@Wsf<`wj%HK9`x&&P~jo_!Ick B2?PKD literal 0 HcmV?d00001 diff --git a/art/phone/application_desktop/topbar/signal/signal3.png b/art/phone/application_desktop/topbar/signal/signal3.png new file mode 100644 index 0000000000000000000000000000000000000000..0560f5c172acb6a78bc59d613e9b3f0e6b4d140e GIT binary patch literal 1522 zcmbVMO>Epm6n272e{+cV5%hpYjzE;we-nE*9>q;ld&#cAX|&yn^aK-ocGtxA7<)Fm z8>yn=1`-E^!~ykGfdm&+&IlDa^g>S*XfL2jrBW||Kp?70tr+i*m7)M`EsZ^%`R04? zd-L9Vb7gsHYR~>Xf*?%Qs!pAMpWx%kU6cI%L9L%}>`tmDGeOwv-2Vdd`o=Ea8)<4Njs=+rsVkM za>LtP_e@`0I1J`{h!aGFVbF`hI72;49PlDO&zBVu3?OXX5*KrWVAWj#HcbgIw&As?90toTAN2S_$bYf)I=zky}gsCaOEnk8JTjOKdZiAVukRyK;9{ zrfEyjOw&|Us6Z%jgp~DThI>++&5Riwl6h&6uzG8Q`IH-NMGUzC=-B zB4d>eE@KpsZP8hypAe-^GTKQ!QrX~c&g5zmWTyl(nl>m6#}~CSb{W`qelaF^*2P{B z=Q<8-IYk`Ih$TW5s*-9*u-t$UX%NBkK@}oZ9YS5|2hIMrP#qciT~MAkK4$oT!M=x@ zG>tG<9YnZAlq7D6pok^1X-HFUn0q(7b-iZWD=BRTA>YXAOGiPiVwW_tRFa^q4cv8I zREsl)V~^AvOXLxfgTP0sU)IYQ8j|j7P|{0HC}G1`lZ-jDscRUUO%IOGJJjpsc`!cj z-{<*bX~63chY!q?S7)9;s2XJaYWt)5IZj?1&B6c-at2{9uLVo=@+2U>I9d)KI08f3 zZkuq@|Hz9WETc`<#VJ{A@o3#!@+n+_l9%pKjPg&NgS{ue{`uW6r%r=?mD}Nwr5jg%`1s(t$(e5-`gG^h)9*O?ol7s= zJhk(iuP(kfz1u!?zP&s>Js})%zMI_t*RIo9=cmtK|Kp>obFSjtsvP+6xtAaR^ZM6k zFU`FA*!44eP4?C=`;I+RKd~U3n9?r%e)WrsKW-fUe&giCjmuB{W?h&+n|I|}W!d@U I=qqph4S>VpSO5S3 literal 0 HcmV?d00001 diff --git a/art/phone/application_desktop/topbar/signal/signal3_roaming.png b/art/phone/application_desktop/topbar/signal/signal3_roaming.png new file mode 100644 index 0000000000000000000000000000000000000000..622d4c34ab9b6d0e4dff71ccba28131ddd5bc278 GIT binary patch literal 1619 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 literal 0 HcmV?d00001 diff --git a/image/assets/images/signal0.vpi b/image/assets/images/signal0.vpi index c23c512c0a94801aa45f989e6896ef1340891e71..fad5f2e27017a006d0c2c4b2d71a6b87bd800218 100644 GIT binary patch literal 267 ycmb1OkYo^GWME*B;2#VmKhPzNK!-5FXrKTiCj$dBh!3QhKzww09;iGIWx4?~QUu-r literal 149 TcmY#okYM0vWME)W9YiDmj5GyB diff --git a/image/assets/images/signal0_roaming.vpi b/image/assets/images/signal0_roaming.vpi new file mode 100644 index 0000000000000000000000000000000000000000..70bdd697c918b7ddd63e8190cde5157d20ce3a12 GIT binary patch literal 447 zcmb`D%MQXY3z+GXVw$tT>WCU#;lu) zgD=#Lk~*2y;7eC|Ey4NP)h`NY2VD=MD23YnpbvfU(^KkQNqBgBIbH?YkWaakKp9^> m0}Vpv6BW-I`qTclVw_U}-FGD+QOwW@SdIkdk literal 0 HcmV?d00001 diff --git a/image/assets/images/signal1.vpi b/image/assets/images/signal1.vpi index bf93745126930885f4f9ef32e5b83729f3d4fa43..4d8d7f578f11ee7a3a96ed0727cd5b853e268474 100644 GIT binary patch literal 283 zcmb1OkYo^GWME*B;HM|a0<@74Xdx4n7U2i6K%&@Lyii#texN>11_ox3J|GR|Bbfu{ P^FZZ!fQnIUAx$>`Xnq9Z literal 157 ccmY#okYM0vWME)W9bl3P=mu6GR^Ugl0JJUzM*si- diff --git a/image/assets/images/signal1_roaming.vpi b/image/assets/images/signal1_roaming.vpi new file mode 100644 index 0000000000000000000000000000000000000000..8a2a6549d53eeec305ee48d1a43cc041f0e2579f GIT binary patch literal 463 zcmb7=+Y-Vc3`7&^r8;%uP#^IBf7G*St2on_J_G^_XBV2i?dfLL;>0*m&eAVtb6mAj z(fCB&D5+<&8XQ?vc1zHYi@KwLcF^@l6s1s`AN1}X{PdK1R}wb9UXE9R*5y+!B~Zro yPDg`~`9#IDhR(FZqy9&)2a)qD)MT$VI>}R?c*dX0vD+V^_67$4 literal 0 HcmV?d00001 diff --git a/image/assets/images/signal2.vpi b/image/assets/images/signal2.vpi index cfaad32e681a50a533e1a5171baaec6d58b36165..6266f2ede5455f5d249ce7cfad0ea2535688843d 100644 GIT binary patch literal 443 zcmb1OkYo^GWME*B;HMVJ3N($4pMimqlYxO5$Oh58{BTirs3?%8ohS#$UZ97VU^K`* lC^oYJWmtfii7GO@I7|bZj_wW~XbA8Ct;TdEQmEnA4FHf^1}p#o literal 205 rcmY#okYM0vWME)Wr4z{vw2OnEfq@lBOYjrVV*#oM>0yTJ#S{Smq}>Ir diff --git a/image/assets/images/signal2_roaming.vpi b/image/assets/images/signal2_roaming.vpi new file mode 100644 index 0000000000000000000000000000000000000000..4d5dfb1b8b68ff0a742db62edaf7bb3a47b8210b GIT binary patch literal 623 zcmcJM$r1t~3`7&uajBWY!VCWYkNP^eKU9&0EF|;cR^}yX3ug z3Kl*SM?%$|S;-t}RkA6wKD6qG3TOviUPMt6@#qJ=y9Ymds(O+V63<>vuLP~rCtXq? zjrThp4MOM>m7XQ*OdUq?ClMfp2h2-!jV$kvEc5@e*ca|1vCYymbe7}#rFhNHm1Tt% UbSxTl;A}WBBkEmc=i2w%H-Q2NQ2+n{ literal 0 HcmV?d00001 diff --git a/image/assets/images/signal3.vpi b/image/assets/images/signal3.vpi index 2603e6c7c753411cadd938140c123d6cd83b9c9b..a7e33e73b8d98e9b8ae96207de8cfeda495c7a27 100644 GIT binary patch literal 571 zcmc&wTMmFA3@iA+2L?a!{ui}HLyVYcOpHHtV_nxRV!>!z( zO?;m@cDK^*0VxVC^G!8Z8Kf%l|LP#0hg-;zxpdf(sZG9Rj5kx#biZHF(`@Pfbp2wx G+`R&CI0rlc literal 301 zcmY#okYM0vWME)Wr2@$eG)I7+fq@lFQ-=pKivwyVGu&*-McIJnf=q##38Mx0amxSz DmRAOO diff --git a/image/assets/images/signal3_roaming.vpi b/image/assets/images/signal3_roaming.vpi new file mode 100644 index 0000000000000000000000000000000000000000..bbc84e89aa8f2fc1dd195d9d8c90a3fad628958c GIT binary patch literal 751 zcmc(d%?`pa41<#b>wux6aT)LbqI^zaKWu^%;*d3+Q`@yV*xjyfW<%NY-BHfg8?#%< z+No%~qmGo&gIQk~sVIL_p>Hd?fk5q0_YCof2x~1B05=D$c4jqBMcB{vYMqi`*iE fO@~TKH~HnGGd8ATGgl5nLtQ^+R1HFDy=AG)mmy@*Ou&HD>4xe$_zFVWvcQ ME`YcnBc;OS0f{6CrT_o{ literal 445 zcmY#okYM0vWME)WB|tI*)kyF&Ft7q?4u0zJKxPR*&18m~Oo84rxmpzl2O=ISJA`-u;HG7Pl z{ruKnl~Djo_mXks#cU9gcdyQr6eO2MnU0|J0Cffh!5S4^rKuqneJEHXqbqt`qmY!l zi_k_{XiI2o=-5dk#L$;>L%64}LN^tdfO=UvRBc9CAk)Ee$)d+1+DqgetSignalStrength(); - signal->update(signalStrength); + const auto signalStrength = Store::GSM::get()->getSignalStrength(); + const auto networkStatus = Store::GSM::get()->getNetwork().status; + signal->update(signalStrength, networkStatus); enabled ? signal->show() : signal->hide(); } diff --git a/module-gui/gui/widgets/status-bar/SignalStrengthBar.cpp b/module-gui/gui/widgets/status-bar/SignalStrengthBar.cpp index f28594c84339c7f8aade256556d08ce2dbcf9b43..75302d0986a7d3321bc5185f3900eb042ddf2f60 100644 --- a/module-gui/gui/widgets/status-bar/SignalStrengthBar.cpp +++ b/module-gui/gui/widgets/status-bar/SignalStrengthBar.cpp @@ -10,32 +10,53 @@ namespace gui::status_bar { namespace { + constexpr auto signal_none = "signal_noconn"; + constexpr auto signal0 = "signal0"; constexpr auto signal1 = "signal1"; constexpr auto signal2 = "signal2"; constexpr auto signal3 = "signal3"; constexpr auto signal4 = "signal4"; - constexpr auto signal5 = "signal5"; + + constexpr auto signal0_roaming = "signal0_roaming"; + constexpr auto signal1_roaming = "signal1_roaming"; + constexpr auto signal2_roaming = "signal2_roaming"; + constexpr auto signal3_roaming = "signal3_roaming"; + constexpr auto signal4_roaming = "signal4_roaming"; using SignalMap = std::unordered_map; - const SignalMap signalMap = {{Store::RssiBar::zero, signal0}, - {Store::RssiBar::one, signal1}, - {Store::RssiBar::two, signal2}, - {Store::RssiBar::three, signal3}, - {Store::RssiBar::four, signal4}, - {Store::RssiBar::five, signal5}}; + + const SignalMap signalMapHomeCon = {{Store::RssiBar::zero, signal0}, + {Store::RssiBar::one, signal1}, + {Store::RssiBar::two, signal2}, + {Store::RssiBar::three, signal3}, + {Store::RssiBar::four, signal4}}; + + const SignalMap signalMapRoaming = {{Store::RssiBar::zero, signal0_roaming}, + {Store::RssiBar::one, signal1_roaming}, + {Store::RssiBar::two, signal2_roaming}, + {Store::RssiBar::three, signal3_roaming}, + {Store::RssiBar::four, signal4_roaming}}; } // namespace SignalStrengthBar::SignalStrengthBar(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h) : SignalStrengthBase(parent, x, y, w, h) { - img = new Image(this, signalMap.at(Store::RssiBar::zero)); + img = new Image(this, signal_none); setMinimumSize(img->getWidth(), style::header::status_bar::height); } - void SignalStrengthBar::update() + void SignalStrengthBar::update(const Store::SignalStrength &signal, const Store::Network::Status &status) { - img->set(signalMap.at(signalStrength.rssiBar)); + if (status == Store::Network::Status::RegisteredRoaming) { + img->set(signalMapRoaming.at(signal.rssiBar)); + } + else if (status == Store::Network::Status::RegisteredHomeNetwork) { + img->set(signalMapHomeCon.at(signal.rssiBar)); + } + else { + img->set(signal_none); + } } } // namespace gui::status_bar diff --git a/module-gui/gui/widgets/status-bar/SignalStrengthBar.hpp b/module-gui/gui/widgets/status-bar/SignalStrengthBar.hpp index b3c437784542f9c8b1e41898afbfd79ff29c4eeb..bac070a971f0fb65c967d7c34ed508149e769696 100644 --- a/module-gui/gui/widgets/status-bar/SignalStrengthBar.hpp +++ b/module-gui/gui/widgets/status-bar/SignalStrengthBar.hpp @@ -13,12 +13,11 @@ namespace gui::status_bar { class SignalStrengthBar : public SignalStrengthBase { - Image *img = nullptr; - - protected: - void update() override; - public: SignalStrengthBar(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h); + void update(const Store::SignalStrength &signal, const Store::Network::Status &status) override; + + private: + Image *img = nullptr; }; } // namespace gui::status_bar diff --git a/module-gui/gui/widgets/status-bar/SignalStrengthBase.cpp b/module-gui/gui/widgets/status-bar/SignalStrengthBase.cpp index 92e354a6fc191c3699d38df243adaff2a5345c70..5db83d0f3be706c2715988a8d257266cbe57ffe5 100644 --- a/module-gui/gui/widgets/status-bar/SignalStrengthBase.cpp +++ b/module-gui/gui/widgets/status-bar/SignalStrengthBase.cpp @@ -11,10 +11,4 @@ namespace gui::status_bar setEdges(RectangleEdge::None); setAlignment(Alignment(Alignment::Horizontal::Left, Alignment::Vertical::Bottom)); } - - void SignalStrengthBase::update(const Store::SignalStrength &data) - { - signalStrength = data; - update(); - } } // namespace gui::status_bar diff --git a/module-gui/gui/widgets/status-bar/SignalStrengthBase.hpp b/module-gui/gui/widgets/status-bar/SignalStrengthBase.hpp index 82a9d6cfb99e0fb6eff045817f37d70d320ff783..0d1a7c7105a1ba42b7d94208a26d3fb349b81ffe 100644 --- a/module-gui/gui/widgets/status-bar/SignalStrengthBase.hpp +++ b/module-gui/gui/widgets/status-bar/SignalStrengthBase.hpp @@ -11,12 +11,8 @@ namespace gui::status_bar { class SignalStrengthBase : public StatusBarWidgetBase { - protected: - Store::SignalStrength signalStrength; - virtual void update() = 0; - public: SignalStrengthBase(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h); - void update(const Store::SignalStrength &data); + virtual void update(const Store::SignalStrength &signal, const Store::Network::Status &status) = 0; }; } // namespace gui::status_bar diff --git a/module-gui/gui/widgets/status-bar/SignalStrengthText.cpp b/module-gui/gui/widgets/status-bar/SignalStrengthText.cpp index 70c31477e9d9b1e4f7ac6b0111dd7395af93d7cb..9c14ff50610f7809944d373570fd5fce018a87a5 100644 --- a/module-gui/gui/widgets/status-bar/SignalStrengthText.cpp +++ b/module-gui/gui/widgets/status-bar/SignalStrengthText.cpp @@ -22,9 +22,10 @@ namespace gui::status_bar label->setMaximumSize(style::header::status_bar::signal::maxX, style::header::status_bar::height); } - void SignalStrengthText::update() + void SignalStrengthText::update(const Store::SignalStrength &signal, + [[maybe_unused]] const Store::Network::Status &status) { - label->setText(utils::to_string(signalStrength.rssidBm) + " dBm"); + label->setText(utils::to_string(signal.rssidBm) + " dBm"); } } // namespace gui::status_bar diff --git a/module-gui/gui/widgets/status-bar/SignalStrengthText.hpp b/module-gui/gui/widgets/status-bar/SignalStrengthText.hpp index 7740340f93288ffb0d4776f92560a630b73a0ef6..08314316084a7ad76a58253d1e4f234adf05b4d9 100644 --- a/module-gui/gui/widgets/status-bar/SignalStrengthText.hpp +++ b/module-gui/gui/widgets/status-bar/SignalStrengthText.hpp @@ -9,17 +9,17 @@ namespace gui { class Label; } + namespace gui::status_bar { class SignalStrengthText : public SignalStrengthBase { - private: - Label *label = nullptr; - - protected: - void update() override; - public: SignalStrengthText(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h); + void update(const Store::SignalStrength &signal, + [[maybe_unused]] const Store::Network::Status &status) override; + + private: + Label *label = nullptr; }; } // namespace gui::status_bar