From a4d7462361099a5b72efa22758cd76f50dcf2cee Mon Sep 17 00:00:00 2001 From: 1004268 <isaac.pedrozaaguirre@student.unimelb.edu.au> Date: Thu, 24 Oct 2019 22:31:13 +1100 Subject: [PATCH] Pop-ups bug fixed and exitbutton updated --- .idea/workspace.xml | 35 +------ .../GUI/ApplicationMain$1.class | Bin 2568 -> 685 bytes .../infinitymonkeys/GUI/ApplicationMain.class | Bin 4533 -> 5480 bytes .../infinitymonkeys/GUI/ChatScreen$1.class | Bin 3027 -> 3123 bytes .../infinitymonkeys/GUI/StartScreen$2.class | Bin 771 -> 782 bytes .../infinitymonkeys/GUI/StartScreen.class | Bin 6289 -> 6295 bytes .../infinitymonkeys/client/Client.class | Bin 5948 -> 5948 bytes src/GUI/ApplicationMain.java | 98 +++++++++--------- src/GUI/ChatScreen.java | 14 +-- src/GUI/StartScreen.java | 5 +- src/client/Client.java | 1 - 11 files changed, 57 insertions(+), 96 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 78f9140..307e286 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -2,32 +2,17 @@ <project version="4"> <component name="ChangeListManager"> <list default="true" id="688d774d-cfc7-4b0d-b00c-5ca931aba600" name="Default Changelist" comment=""> - <change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ApplicationMain$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ApplicationMain$1.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ApplicationMain.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ApplicationMain.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ChatScreen$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ChatScreen$1.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ChatScreen.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/ChatScreen.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/DrawingArea$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/DrawingArea$1.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/DrawingArea$Mode.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/DrawingArea$Mode.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/DrawingArea.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/DrawingArea.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/PaintGUI$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/PaintGUI$1.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/PaintGUI.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/PaintGUI.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/StartScreen$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/StartScreen$1.class" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/StartScreen$2.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/StartScreen$2.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/StartScreen.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/GUI/StartScreen.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/client/Client.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/client/Client.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/client/ClientUpdate$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/client/ClientUpdate$1.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/client/ClientUpdate.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/client/ClientUpdate.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/client/DrawingUpdate.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/client/DrawingUpdate.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/remote/IDrawingController.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/remote/IDrawingController.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/remote/IDrawingUpdate.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/remote/IDrawingUpdate.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/server/ChatController.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/server/ChatController.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/server/ClientController$1.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/server/ClientController$1.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/server/ClientController.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/server/ClientController.class" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/out/production/infinitymonkeys/server/DrawingController.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/infinitymonkeys/server/DrawingController.class" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/GUI/ApplicationMain.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/GUI/ApplicationMain.java" afterDir="false" /> - <change beforePath="$PROJECT_DIR$/src/GUI/StartScreen.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/GUI/StartScreen.form" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/src/GUI/ChatScreen.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/GUI/ChatScreen.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/GUI/StartScreen.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/GUI/StartScreen.java" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/src/client/Client.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/client/Client.java" afterDir="false" /> </list> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> <option name="SHOW_DIALOG" value="false" /> @@ -39,20 +24,6 @@ <option name="testRunner" value="GRADLE" /> <option name="delegatedBuild" value="true" /> </component> - <component name="FindInProjectRecents"> - <findStrings> - <find>RMI</find> - <find>Black</find> - <find>colorOptions</find> - <find>Send</find> - <find>message</find> - <find>userSelectComboBox</find> - <find>updateUserList</find> - <find>send</find> - <find>broadcastMessage</find> - <find>sent</find> - </findStrings> - </component> <component name="Git.Settings"> <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" /> <option name="RECENT_BRANCH_BY_REPOSITORY"> diff --git a/out/production/infinitymonkeys/GUI/ApplicationMain$1.class b/out/production/infinitymonkeys/GUI/ApplicationMain$1.class index b1187184a7d1df0393b5425a90f5fec5ae5752c4..9da93fe0fd73725e577d5b9ba69a3176d358c79e 100644 GIT binary patch delta 290 zcmeAWS<9+@>ff$?3=9k=3`(2~EDVxd46F=NTnyq2((DW}><qGu3~VJCnZ+swj0~a^ z4~S0Oylt`|liFl2CNohv9tL>^1s(=A26i3>4iHO`L1A(~bA}doa!!76YItT|N`5(m z0s{*JD+2=qqksTNDFXuo69WSS2LmSqBLmlDDR$|4ZUzPhHU>rp28LV)9tH*mF|Z0Q z23`h!1`yx^>tkeKWDsBw1nFX6U~phy1gqlE+QPuNje&V1*j$iFTww7+26l!bB-1$H trg1O`F$gm-GB7iUfc1z<F^DlRFt9L)Ge|J-F)%Q2F)%W)fb3;p002NG96$g7 literal 2568 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 W80;AA8PpjV7`PZ1!6C%JzyJW`;FE3u diff --git a/out/production/infinitymonkeys/GUI/ApplicationMain.class b/out/production/infinitymonkeys/GUI/ApplicationMain.class index 8d3bcf45652a542e4c792856d549a3c58e7915e7..1bf2fdcad9c9b55e317a65ae344460242967937c 100644 GIT binary patch delta 2985 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 F7yyu9aN_^~ delta 1954 zcmaE%wN<(P)W2Q(7#J8#7(R0{*f11>h!PM{3L?rl7|J;qD%cq+xfs|PsyG;`xfp5~ zYPlFh80xqf>KPi?85%)!6Bk1>LkkB(D+faxNM$=0gDpb`J3}W(Wfwa`Hy48#Ll-+k z4+ldp7lQ;tABgA&5%m+;876Wu$TD<rF-&5Z3{p3RgJCL&GmVo$gkd@d!wis}GeIWJ z0<mUuGt6O_%g!*5i$RlNK1g^07sEn^MO+Mv8J4g!EahU*V^{_<dO3(#0U}m{h*cnB zHHcUPBGz&;tYcWuA<nRYi(w<fCXmo(knvmC8Md-BY}*{lD9XebGdY{NmVGNb!*+It zd6VBWD++KWCMTyB7poW;7%(!ZY4}XO$R;dit?84TlbM=VqVEi*tQi@YDhwu9v8V~z zGdS=tI5If#FgP=~@G!VCxJ_QmQpCK2VdrEeR%cOmhFv@i?hGD047(ZjuruuCVc5qI zJh`4#lzTtJ0d|IiJPd~zA|}sgb&@;GaD;~;ks*bVfzLhEQ{Oowu_QRTC^a<?B$_n& zKdWV8BEwN0hGPuJc^FPGoMdDW%}Ojw)K4rg(Ra!(N=Ys9NvzB-En#Qa&ckqu;WQ7! z8HTfr3@qWP#U(rp=NQiOFkE1`$jHFrng|lO#1O&5a2aIa6^5(q4A*!Vt}`5+Jd;gU z;s!$s55rA{TkH(Cc^K|6++}CD$HQ=+;lbo{Y*KNF3=er29x*)TVR*vul!xIN!*d>n z7a$kCWO&8H@EW8wm*F@&!y6ukw+!zX86-Rv5_1(Y^Au7mGD{Q^3kq^FlM_oa^Yhpl z-t#bg0NMW$r0EmL<HDf8-u#H&jkTUVC9}97zc`hVL9{rvBrLNyGbtxExFoR%8Ym2k z3^ok53=9k`3``963=Rwo3{0SC0MpJ4E@0Y~!Ht1|ft!I56ax&544w=O4EhX=42%p6 z46IsP7??JIm3c8RFtC9IMHsvp7#MgM80$eQ7<?Ff85kHC8T=UhvFK(-*DVIqjiNb# zArOmZ7Ie*$D4OeGRtGTzLv_1=y~@DA!zjcm#Ky9Nfx||64cz@)3``6R46+Pd3<_X_ z#K3$Ws24!8Aq=5luZLkXkrU0t1O^5MkR}EO6$UN_bpl3)Gekfgd6a>JfrWvA!9!~c z1LHOZu5Aq5+ZcFkr1vuL`ZC+eN-tuN)sY3sO}@yl%jh-vKfiK4D9BA1SQ$ha<QXCv zLK&Dr`k@ZzW3Xa~0y|uo!IUAIA%=m8!Ht25A(kPIftewmfq{XSf$1NEC?h*V0^=_R zIR-|CM1~}&W741@rlhr<L0C(BD+8m}ZU&J^?d=SrTN#+Nb~A{9*xce<8JIUh0&?;i z0cll`dmzE51a$=igAzE6fl^K~Lkh_F$!`QC>RDKJFi2}{VPM(DAmgLGn?W{mJA>Rd z26=6*Eey=t7!-sQw=pPzI80j@l!a8bF(`o&9mxCJ7*w}0s6klj5K46?g9a1Bat01x zoox(SAcfl)w0AJ*Kv~-ubU`-lX3&e&+RmWAjln?6YYPL5Aj<|prajvj3_+5N+Zc>M zH1jqFV<>F`qPH=af+(0Y%QgnHjSP$oJ`C{;Ner3{%nV+W&kEYsFJhR^u$W;!!xDz& z3`-f-Gc04+#;}}WAHxcUV+<?7NkD;tnIV~hg&~z84V=D?Ljy>XVI4y{Lk0sQI7);W znEo>)F)*<+WU@14F)*?-WV0|ZGUPx)j)8$8l7R`F-Q+hhm<w5KW3U9dj=6ptgBggi zjll{MBG%AYVPIeoV_;=qU|7Sz!LXJ=fMFejIKz4dIfe}kpt$0Jm<4qTBSS9S9#5z} z;vi!|z6OOQ#B5OTBaG(*CAwmU%?un2TNuO`wj!A;4l!4NgCUP09~ARwWe6jBM&?7( b%*s#zE<%_X3c(4ih`|n=u^1Wj7{CAk!%=1x diff --git a/out/production/infinitymonkeys/GUI/ChatScreen$1.class b/out/production/infinitymonkeys/GUI/ChatScreen$1.class index 0ccd94a6c9cf6ed21c140b999fcac6194e1b59c8..07f8ee41c99d3c6317448f4b363d6dad253fe0b1 100644 GIT binary patch delta 1354 zcmcaCzFDIF)W2Q(7#J8#7`AdUXfXJ4F=#UQaWVKa1aL9<Fa&~#ATEYrh7b;hP!Ju) z$>75f&czVH5Xs39#SqQG5W~d~%Mb@r7|+F!z>o+sA&G+_nTsKXAr+)Bjhi8zAp=BY zvNL3HF^Dl_gH-3RGvsnHxJxqlaWLd@F-S7xgNP)Mjsh-*LWUxcqGAxY1jH)kU?}5e zC}*euaVj|&sz97-c7_^uhFW%px{X^FGYZtRGc>R>WPt@6*%_K9r!yHlHS;iNGwARz z=rXjhGc@urv@*2uFtjst@Gx{Tbg?sZ^Dy)<^fEFq@G$f-^z$%GV3^3xFo}m@GQ$*h zhN(OZ(-@{tzQZJ8F@uL;CP;o3!)$hjIXnz=LB`Aj>11}y$zf-x=V6%7uz-hQAww@a zLjw=PB8J603`-c6PS#<TtzX8_!o#qfp@We@JS(v*Q9ma!FI_*lq$o2l-KjJ)CndFr zkwMnABC|xHC_g_}A*r;aBtK7~peVJtI5kBfsnSY;hhYW7N*;z)46E50*6=W_1sS*w z<cakR8+aHtGR$UV5ckeZ&Q{1TEkV=I&cNNo!>|eDp3Mv$lh-h-F>hg5y!k5gDrPRW z#Dap<yc9+T-N}WlBK1BvTxZS5Ae5e3;#g3SlbM`Yl9`|9o0yr$$RMtv>Ej;isgEXM z&B!2(MVOI+J2@x6I5j*oFD1X6k%22QIXShsSjEJ^fRRBsJ+)+VGrQsBo9rgC8Vs5Y zj0{=~i~<6n$YWq&U}9ik&}GnLU}Vsrti>U1Yrw$3z{bGHz`&5mV93D0AO=>!#bCr> z!T<tXV10}Xj0~m>W*}V*3`{Q=SQuCt7#I^LH*vJp-_hR2z^t`}fpG_e#4-lcO$^+- z86+dOGe`+ZZ)1=FNo--@+{PfhjX`D`gX}g2Ubv9lHU|0S4090r6_znL!(|nHLChTt zO4}Itw=oF#ZDQaSQr^bEs{;~-7^%CHL1l6mr&PV_G6n~@FgA^97#h`?8N!z{a9OcP zvTS1z-^jqsV8BqtP|G03@Q#s#k()t`(S|XMF_J+HEW^Oi#h}E%z>vbg$B@P#$&k*V z%8<cez>v*g!H~-^S({6xemg@0!*PZthN}!M3=bGu8Qw8;FnnX^WaMDzW8`M&X5?k) zWfWqVz$nTvkx`jp3ZovwR7M+y8H_FrGa17e<}yYy%w~*cn8TRBumBtrRSY}~?hM8Z z<_s1LEDZGwtPGY6Rtzi*k__1l)(jR5ObiALAq+MQwhYXSybP@MQ0WH@Mhtcg_6$r6 z?-*3Tnwc4+VVW8BV6u!hFj-JU!lIiok->q%k%5uHiGhK^mx22qLmE4SGdqI|JA?Bt z24N?52G^eqY)tn58Jrnd*csf|8Qj?!JlGkW85mula#*AwG7QWNp5O%N#o*1rz`(-b V!@$5`%)r3F#lXm*0ZMBO3;@@$7%2b% delta 1257 zcmdliaap|n)W2Q(7#J8#7*=sIs4#ePF{m<laWQx^_;4|JF!+K9KQ0D;h5!zRKoA|o z$>6~d%*7DG5X#9A#t_cI5W&R|$q)rn7|q2H!w?HHA&!F~o{J%YArYi7iJKvrAq7OF zvNNP{F^DmwgH&gL<T6b;7_zt-vKewfLb)I!4@Bg1Fcg4<3qhPB4u)b7r-YrMl%1iB zouPc=vBiu673>U^><npO!76r!>dBQ%#!fXn4C)LTJPeu)wd@R4JPdUV^*js>42?Vt zO$^QK3@tnitqg693=BLB?F=0}44n*J><ryJ3_T3J><oQ84E+ofCck5nu$aihFbO0- znPCb$!&DxIX&_^!gLE=G=H#$5RPZp&V3^6nFpHs$ouQJ4VK&1Y9)`IL^CsId%L>eA zsO4c;0J3u-!y-loiOCJj65{L()jSM~L1r!iNiPLSFJqW8c^|VB7Z1a7kp2}6jgy}; zt1+)+n6sIWWfk+}Kn_!7mcr7^5=I8T)QZd!=ZwUX;N+sz)I3H8uEgZz)Z$_l69a?E zEgWX`Dh#R&j0|cFi~<6n5MW?nU}9ik&}7hJU}Vr{U|_IgU;>M9X=!g|VAR^qz_byp zMu&lcfsKKYfq@~BL6?DnK@6gbL65<J0R*_frZF-wG8i%#LCj({Wnf`oWnf@T(cZ?u zthI%KaR<X>OU|15`v|_oG6oBf%oYaDZ48pWn;5u-q_#2e>cGW>cQQybF@U(+7-W_+ zaQNwNV-R1?Fb83T>@o&tkUZ1~5OW8E+%^XOZ43f_AOq!54b-jQ$)Lc@5Wbv&%Zf#k z1#Fxj!Z^ic3=SYOa2ltCX53B&WfapkGO#chFjO(rGKeuOVA#)ah(V0uBO^B>AA=a9 zJ!2$e3=e}C12Y3CKo>D+Oy0s}TfcyziD3mpGs6ys7KZ%{oeYN<+87QqbTAxe=wdj< z(9Ljzp^xD)LqEeuhDi)R874DwGt6M*W0=Y)z%ZRrlwlU51jB4bHHLYNh79u=?HLv^ zx-%?hjAU5O7{joXF^*vwV=}`kaHRDy@G-bE7&90%m@u#~)HAR$m@=3#u+%e1GGsHD zGng<iF&Hp}Fjz2HGB7h7W?%tJGczn;P-n1Wux4Ol6o6@Ac+6k~5o7qspaM3KnK2F~ z%LqyX5FPd~Sx`EFr545%1{(%j21W)u1_p*?hI-zAp!{ji&fvh#VE>Cj*omFN@h1Zt z(|-ml24;2!Cw2yBb_N#)Ms^0rUkofv{~4SaSm46!4EA6dhz1-o49pC!;B@T9;LgCn Zz{23cz`&r-z`(%8z{tR^0!qOQ3;>7==n4P; diff --git a/out/production/infinitymonkeys/GUI/StartScreen$2.class b/out/production/infinitymonkeys/GUI/StartScreen$2.class index d63c24176f2741b53b0d72388fafc5890ae9cdba..74f7a1f37aaa51d21871b6e1451170f89f8a8321 100644 GIT binary patch delta 144 zcmZo>>tma6D1<LLKer%1FEy_uI3vG2kC8!1!zU}TEKxtPyhJ~>EH$r0-x;RD6~wjH v3}a+qOl4${$Ej{IA7j0wJT6l<FJ|Oo<Sk*~Vkl)0WGG{hWT=?Di^&rJ|I{xv delta 133 zcmeBUYi65p$cLvqGcP5-+`k|-FExdcL0-crE3qt5Ke4<-Kea41uS7o_Ebj_pTWf|f tGBBnxGRR<8G+B(XUQ7n7{>|$cxfpp%8MqkA7z7#086+7hCm&_<1OTf=Dxm-X diff --git a/out/production/infinitymonkeys/GUI/StartScreen.class b/out/production/infinitymonkeys/GUI/StartScreen.class index 8d5fb0f0d4f8e88d6b689cd43333c99d91cde9aa..a4214e9bb0dfb7117a8ca674a28ce3af7da6bfe8 100644 GIT binary patch delta 122 zcmbPeINfkVE4z_MVoHj0er`d2UTR*6PiApRYF=s)BZI1jPgY`CqJCm|iGFHXYF>#x zT+!x@>`I)BRg<p>IIz|-a4^(OmK3yQZDe3&Xqp@?=+4^8z{=1zdAXn)W9Q^|f;No3 UleL8$Stl}ZGECWAD5Ss!0O&m?VgLXD delta 101 zcmbPkIMHxJD?689VoFMQW?o8u`Q$)088!%W^LBP6PR8oVw*(wm>lio~>L<$!+Ojq= zurf4HP84)!ZDU|%XrG)YC_ed!pgv>QWJ4j*$(%y!jD3?0g&bKYF>o?W-CQoDzy<&& CuN;#A diff --git a/out/production/infinitymonkeys/client/Client.class b/out/production/infinitymonkeys/client/Client.class index 01942ac35f8d2e1bc20af17f188c1e8561b4718c..880fad11de6ed664c25e794417fd4a85cf09d5d8 100644 GIT binary patch delta 191 zcmdm^w?}V7p)hAH13N<<gCIlw<SJo%)+PpahUUqR0-~EQ3x8*<?`Pm*n83i#Fo{8u zVKRdZ!!!nchUpAe3^N#<8D=rWGt6eFW|+e;g<&4ULWTtl2N@PIoMc$caGGH`!#RdE z3>O$SGF)ZY#BhsYGs9<wtqi{zwlVTDY-f~b*uiMXu#3@`VK-wM!(PT>hW(6_84fbe yW;nz+m*E)We1_AE3mGmjE@oo5G}&9MjrBSMKf{g5*Th^|Z!_>R+?lK(E&~8&3^?on delta 191 zcmdm^w?}V7p)hA113N=KgCIl0<SJo%)@BBFhL*{W0-~EQ3x8*<pTNMyFp+_uVKRdx z!xRP?hUpCY3^N$47-lj!Gt6d)XPCoK%`lf?3d4Mcg$xTB4l*oeILWYt;WWbvhI0&S z87?qvVz|n%nc)`07KYCZ+ZcW`Y-i+U*uf~zu#?e{VK<{M!yd*ohJB313<nq|GaO=^ y&2X4;F2ixg`3z?m7cyLAT+GC9d9t@y8|w`QeukTquZg*`-eKTnxI0-vTm}GjJUJEs diff --git a/src/GUI/ApplicationMain.java b/src/GUI/ApplicationMain.java index 2e6823a..0c3cc61 100644 --- a/src/GUI/ApplicationMain.java +++ b/src/GUI/ApplicationMain.java @@ -15,7 +15,7 @@ public class ApplicationMain extends JPanel { private Client client; private ChatScreen chatScreen; private PaintGUI paintGUI; - private JFrame frame; + JFrame frame; public ChatScreen getChatScreen() { return chatScreen; } @@ -110,52 +110,7 @@ public class ApplicationMain extends JPanel { @Override public void windowClosing(WindowEvent arg0) { - - try { - if (client.getUserName().equals(client.getClientController().getAdmin())) { - - int terminateAppAnswer = showManagerQuitMessage(); - // If the manager terminates the application - if (terminateAppAnswer == 0) { - client.getClientController().kickAll(client.getUserName()); - exitApplication(); - } - else if (terminateAppAnswer == 1) { - int answer = showNextManagerMessage(); - // If the manager wants to assign the next manager manually - if (answer == 0) { - String newManager = showAssignManagerMessage(); - client.getClientController().assignAdmin(client.getUserName(), newManager); - client.getClientController().quit(client.getUserName()); - exitApplication(); - } - // If the manager wants to assign the next manager by random choice - if (answer == 1) { - int numUsers = client.getChatScreen().getKickUserComboBox().getItemCount(); - Random random = new Random(); - int randomUserIndex = random.nextInt(numUsers); - String newManager = client.getChatScreen().getKickUserComboBox().getItemAt(randomUserIndex).toString(); - client.getClientController().assignAdmin(client.getUserName(), newManager); - client.getClientController().quit(client.getUserName()); - exitApplication(); - } - } - - } - else { - int reply = JOptionPane.showConfirmDialog(null, - "Are you sure you want to quit the session?", - "Shut down session", JOptionPane.YES_NO_OPTION); - if( reply == 0 ) - { - client.getClientController().quit(client.getUserName()); - exitApplication(); - } - } - } catch (RemoteException e) { - e.printStackTrace(); - } - + closeWindow(); } }); @@ -171,7 +126,6 @@ public class ApplicationMain extends JPanel { public void exitApplication(){ System.out.println("I am in exit application"); frame.setVisible(false); - frame.dispose(); client.setVisibleStartScreen(); } @@ -179,4 +133,52 @@ public class ApplicationMain extends JPanel { frame.setVisible(true); chatScreen.setUserName(client.getUserName()); } + + public void closeWindow() { + try { + if (client.getUserName().equals(client.getClientController().getAdmin())) { + + int terminateAppAnswer = showManagerQuitMessage(); + // If the manager terminates the application + if (terminateAppAnswer == 0) { + client.getClientController().kickAll(client.getUserName()); + exitApplication(); + } + else if (terminateAppAnswer == 1) { + int answer = showNextManagerMessage(); + // If the manager wants to assign the next manager manually + if (answer == 0) { + String newManager = showAssignManagerMessage(); + client.getClientController().assignAdmin(client.getUserName(), newManager); + client.getClientController().quit(client.getUserName()); + exitApplication(); + } + // If the manager wants to assign the next manager by random choice + if (answer == 1) { + int numUsers = client.getChatScreen().getKickUserComboBox().getItemCount(); + Random random = new Random(); + int randomUserIndex = random.nextInt(numUsers); + String newManager = client.getChatScreen().getKickUserComboBox().getItemAt(randomUserIndex).toString(); + client.getClientController().assignAdmin(client.getUserName(), newManager); + client.getClientController().quit(client.getUserName()); + exitApplication(); + } + } + + } + else { + int reply = JOptionPane.showConfirmDialog(null, + "Are you sure you want to quit the session?", + "Shut down session", JOptionPane.YES_NO_OPTION); + if( reply == 0 ) + { + client.getClientController().quit(client.getUserName()); + exitApplication(); + } + } + } catch (RemoteException e) { + e.printStackTrace(); + } + } + } diff --git a/src/GUI/ChatScreen.java b/src/GUI/ChatScreen.java index 6e86ccf..0e228cc 100644 --- a/src/GUI/ChatScreen.java +++ b/src/GUI/ChatScreen.java @@ -124,21 +124,11 @@ public class ChatScreen { } else if (e.getSource() == exitThisRoomButton) { - IClientController clientController = client.getClientController(); - try - { - System.out.println("Exit room button pressed"); - clientController.quit(client.getUserName()); - exitChatScreen(); - } - catch (RemoteException ex) - { - ex.printStackTrace(); - } + System.out.println("Exit room button pressed by: " + client.getUserName()); + client.getApplicationMain().closeWindow(); } else if (e.getSource() == kickOutButton) { - IClientController clientController = client.getClientController(); String toUser = kickUserComboBox.getSelectedItem().toString(); diff --git a/src/GUI/StartScreen.java b/src/GUI/StartScreen.java index 6b6a4b5..39a230f 100644 --- a/src/GUI/StartScreen.java +++ b/src/GUI/StartScreen.java @@ -111,9 +111,8 @@ public class StartScreen { //frame.getContentPane().add(new JPanelWithBackground("sample.jpeg")); frame.setVisible(true); - frame.addWindowListener(new WindowAdapter() { - @Override - public void windowOpened(WindowEvent e) { + frame.addComponentListener(new ComponentAdapter() { + public void componentShown(ComponentEvent e) { if (isAppTerminated()){ showKickAllMessage(); setAppTerminated(false); diff --git a/src/client/Client.java b/src/client/Client.java index a241d33..a4b16f5 100644 --- a/src/client/Client.java +++ b/src/client/Client.java @@ -120,7 +120,6 @@ public class Client startScreen.setVisible(); } - public void startApplication() { applicationMain.createAndShowGUI(); -- GitLab