From 3b0561cde6a9aa817701b8e1959099acc48324b6 Mon Sep 17 00:00:00 2001 From: Michael-Jouanneau Date: Fri, 4 Nov 2016 20:44:58 +0100 Subject: [PATCH 1/7] Chnaged things --- TAL.iml | 9 +++++++++ src/Launcher/Main.java | 10 +++++++++- src/assets/layout/home.fxml | 11 ++++------- src/assets/layout/main.fxml | 2 +- src/assets/layout/modpacks.fxml | 8 +++----- src/assets/layout/settings.fxml | 6 ++++-- 6 files changed, 30 insertions(+), 16 deletions(-) diff --git a/TAL.iml b/TAL.iml index 7647c6b..f0db93c 100644 --- a/TAL.iml +++ b/TAL.iml @@ -8,5 +8,14 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/Launcher/Main.java b/src/Launcher/Main.java index 3648db2..22fbc11 100644 --- a/src/Launcher/Main.java +++ b/src/Launcher/Main.java @@ -23,7 +23,9 @@ import javafx.scene.shape.Rectangle; import javafx.stage.Stage; import javafx.stage.StageStyle; import java.net.URL; + import com.tofvesson.async.*; +import org.jetbrains.annotations.Contract; public class Main extends Application { @@ -81,7 +83,7 @@ public class Main extends Application { Modpack_btn.setOnMouseClicked(event ->{ if(activeTab!=Tabs.Modpacks){ (activeTab=Tabs.Modpacks).switchTab(tab); // Sets the active tab to the modpacks tab unless it's already active - //TODO: Create a dynamic updating string from the input ( Text Field ) + } }); @@ -92,6 +94,10 @@ public class Main extends Application { } }); + //TODO: Create a dynamic updating string from the input ( Text Field ) + + + Async a = new Async(null, SafeReflection.getMethod(getClass(), "run", (Class[]) null), null); System.out.println(a.await()); @@ -116,8 +122,10 @@ public class Main extends Application { launch(args); } + @Contract(pure = true) public static int run(){ return 1500; } + } diff --git a/src/assets/layout/home.fxml b/src/assets/layout/home.fxml index 229fbf3..b896070 100644 --- a/src/assets/layout/home.fxml +++ b/src/assets/layout/home.fxml @@ -5,18 +5,15 @@ + - - + diff --git a/src/assets/layout/main.fxml b/src/assets/layout/main.fxml index 3cf22f3..7e2d47d 100644 --- a/src/assets/layout/main.fxml +++ b/src/assets/layout/main.fxml @@ -35,7 +35,7 @@ - From 95e9dca367bd45a7ad778b508cd27c6f65a34112 Mon Sep 17 00:00:00 2001 From: Gabriel Tofvesson Date: Fri, 4 Nov 2016 21:02:18 +0100 Subject: [PATCH 3/7] Changed --- libs/libRefTools.jar | Bin 50770 -> 51597 bytes src/Launcher/Main.java | 11 ++++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/libs/libRefTools.jar b/libs/libRefTools.jar index 5782ea6ad0a16025fdc12ec69d3ff6ba7ed7b543..9fb98347cf7f3b1a9b44e33d9ce8fc09c8f7e512 100644 GIT binary patch delta 23227 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 W@F87?1MHo|==>N62ojCArvC%SF}V2v delta 22081 zcmaHyQ=4XMv!&CvZQHhO+qV6tZQFLGZQHhuN>-|Rt#9wEcXuE3Jb8Y=9D#91L|h8! zQYLtE3707wQOc<7UmWszHsOr+wl0$ zCAsR%d#ZiTT2LGC{@JuNJD zYc91$3J0QB$sHdejOF!37G9!4+D`3qL2J3EnKh$B<(GB1Ie<25ShuI}USqHH9nHLG zHO9hTH@s!tM)-Zs&f6MBX6`|gVuQsZ`ANSdBay=6-1Hay`EROC?2RT2tUurA$3$|T z90k-I9<%g5-cOz6;v*tw%+kV#vI=`1{?nV>b$X+*;S4i27eW=`8YAp_qB-FndKr+Q zH2GGU!>aJ}r2t<7?fB|&Jb2g%8?6x{OLu91kjKBc(`VnVz0^E&)=xfHO;Bd4nB%H| zE_aJf{dX|BfEK(izKtaf;XFlwx-L<2u;4{nRv>9Vc58Np%4y{sIMpQP! zVn4~c`G`PC?^T?1X)*0(iYQxMxuQfu0uuQt(OqFy<|xW##skTS71eJV{=8`QU&Q)i;wt1Y=%P{L*@hU;Ep9B!|PYD zEr6-(aiQVA9(8*vB<8H;dPLMSotQeoPw;y;lKA^K+Rx+}!XWe#j-#)#N3?O_30SuW zp4!_k6-?-C$@*TX*HS^-uBz zG`nR3hd&UA{N4i8fGZWIkWP|NT!v4+XgwZ;ygC|Q(T~ezW;dueqp&$Wu2Lhq_1N-FKAR%ihDA5En%tQNrbf&blUR{HCN`J_ z6>4i%p{!hute%PtI$_#40+E-cJLWw1DSnMUU<-M+#6}o+t2N&XNtj*9Uug?Mz!_Ap z)Zqkr5)ewffJxa~=D*SZ7=gn$V=RB|Lg}tJ(pfypr4D;6bHcqMOygi|u znU#KifL~X-B3a#Hc7s36?b6BUYil7+B^JhUtgvnm_Ta{s9L1#77B%j{Cr46+XP z#eNixvC+x^IuocSDzX}cNB4+jZN1>%) z|0*;opA?XmX0M8>i8lT>Bh;?R0mvKWM7R!79)n3)HfodxF}j!tgUa5CCvVz?x+Z6L z<_=;z;~T`k!LZQrqj*k@Rn=n4^HxqUo>0j5ZdO4qwD9*)ZucAC_g&|C_+Nv+e=q~* zACx2o>&q7+7)vwPoZ$^^I_eL@g_m8>5yM!*+-F*k!%W%wwp|j;_ zb&^9clc_B|Dx1hfMn*YsQTPtLCOHCBg$>*pZ=sId!6qo{cIyZYtTW~a<#rp7qw%7; zo#p`KJD=@kL_{7-PAI>6u$dT;S0^$g(uy- zC~dfkJyeBs<;1REdI1G)xw*Ipi)jqP-OemB`ut@JMkBcKq7zOm{c z_!D+NSF;my?B}|m6f71en2Jl8Jq?4pjv{@O_J9^K?iPN{4-9x8(G&=dBugy2tPa2> zSZe??TuYbTl^M~H_H;3yhkYtbPSf9g^Z3lNwPx3cdYze}s4?u~4P@`wgk0UFiZJ%AnsM!Ulqq*xn^F%XZZK zIM!WeOVD3($_0UkbpHI}FwRSwvowHAY~LUbYLnx~jL4i%E5@&T6@2njKX>7YYui9KyB>^_*@_!^Ry}YuD|TmGdhZWrCa!KsYRrBeUX7cwWoNT zJe+<=i##JQ4Lx$HZqr&<{=UwYq*UeiXt>%W&&TMG8EZXji_5%?1#a{XzI|gx};;dX9nu z0X;(grv}w}q9ip!q%=aJ0JIfRmC=42cyBj&?CR+1CUja_gmg#3M#1$6N{vXQiYdm5 z;8d(Er8q@~LZZH4{sPUD)lmpYkvRU45w6@LkYizIzcZcZ`rc{xJ>_NndAz>n1VYVx zDuGreWP_7MP9b3!jU+6=dLj-gEg&f~(Iaq>VJyPEjFikKB~`>=9|=NUdqIHPpM&S!)H+vh@mnlqcVyX+h2wlY;ZPhq^fS+MpJ7xFf%!v>+h zthJ^~f2xr%);65Q2Dr%4mYi!mi)iFuD~LCdFRUYJkd0#Rgf&THr}68Rr3!r-erIsP zti{((43w88=WpsPwBKS>EAE!4TnKs3TD?Hm+3D<;kfU$u&i;ME| zsO_vWMNy+K<5--`@+VFfin_uhJ}3>-eRO`0fkLia?YSd^)cxKZD+I5 zZDW{I7N5GEbP|@k7k8m5OLvJ_3aoFOm9sUzmfQ z#`2=p-7J9@0IbE6&CAbMX0%BP!nNAp#Hl#1c}S$0O1fsZN@gK)Q4 z^8N_?r7H8qRf>m?5+#x=YPw&t3ffNu1M;z>;DjLHJ=G|9TCF@NgOS#u?M023IYIOcOrDNWDd< z`gI}#R=*9~^$7W|+&e0yi01w&Xrcera!tWd0yIB0)z;B}?q&w?!)uO+CWxr|B7n&R zs-v*bACX~VAu2JRm@=lpB^X)F2ny|&N7}4&p0mmsFF&ofwls)@XxXJdMY}ZqCj5YY z7wLbOy>6fHVMB;5t){hRK5d-m_Vzm#^uBd|-3q?#0Xsnfpbw$tLK{I-h{2qDV`t-# z03OGvJObDv+!XG9G?Ah48E$?$Zy{=(xsUcFmDZ9mZC?;{v9QUt%p zKkuV=w1Z8kA?>G3rbhNNegKGO5y9UR0KxCSZvI4NX2Km+2!GK<7F@rFL6Guhx6Kv> zu=1N&vWs;!WTRTtm{LgUEWb9I>Ta$zLvLf-EH^Ue$x_S;j|&KTwF<5p^Tdb0cxxx* z;mgCLLo;MryV8jcdTr%PmAYgFm`jOvOoY;w+%1_#nUVPFiAp}ZEb`DJ3vbgD0`z?C z=lOa%AB)3A@DRHyVok(TM7r6wr{UPnmWNZ` z$Wf%(v9od}Yg}W~t}=km1D~hhSD8`d%xQ0m(Nqa{&luWp(;`A?$9Wr6`LluE;k@ao zcf#PpUw<@}yVs55X(6o*v98nm>J5>X0FEtzWObVj@0NI$O*O8l-my@V_)fM`fyG%gL4bRx_F<^b0TxvEK1{;J*yA zyDwNC@bWEP=<=>+$(y5?0o@luyyft@NWtZaeZiP;c;F!i^q{Pn=4d#2}#0CrCb~3j8An#cOo2oHzy$}Hw03Er^Ifk{2#OFUQ z#T0+4k+o-m_f|RhXF6E92T`c(cCrn{>N5o$w@>sd*}OY-coerUa2GV^F7G)|&KGggfZc2pF=4DNsYYg2@E$Hngi4ti1FRn*?}-yJ)ZS52r!Dr}<&nLmb$S}v`jjkR z9jp%Vo3yg+mZ1bQBmaY?O_9(?e0shzyEQbm~hB&#q!a!v= zo+B8Atzc(|G3@PP8=vhvL*X0S2aP8jGV$qhPh#j-@9-Khf(lP^>~$dYD~$;{gu@ay zl=+}sC4Cg;_KCxlOlfWP=%O^ehMInb(zki+KWZ^$?g5!0U#AjTz*1lREpCOTw7j~~DQ)-rmu zk1!=8@WBB#;j}{{1XED`4dDy#VqI$(H-o^l>5e6#OW`HIT;F_>LB2x>wIdR0a4?M^ zAIl&gN`}MZXrBs_8_m#bBrl;7;EadB@zYD5nApVd*w|p0qn|kYg!+XmWjC32v)J4~|@-R$N?2XUH5&9D__T{=kB_EcEponSL ziTOt7dcwWsLx3E-C$qs@B_IPTi-i-z1a`nGW`j;72g~q!Zt`TbadC5Hk=l*Tue*ON zX=VojFON5Gnc9Y4(u7tO?aB)LyCr;8uNr%ew*D9qs^;pzf7OMEL87ElQgl z%M>x0bF}9S;`hsm8ySQkxUR5(Hkcr^|0_J+_yGM6%kP8z3J>YDj*be7w#Z%3m<*5O z0E=m|^?KF;2dWk3H1tOijS+S1g%zo(K*hN9ree50K#^>j5EQiDDMXP=YOfuA9P)Wk zcXd6z_^K>8WRzGkybYNRdzS`xq=M(g9?@=2|32U;ROo)StHq&CGA6<^0&(tGNss18 za%g)fg8S0?l|qv1(&0Bng6k4`N|cKXV4ChK#}XU1d4nKlRKZy#@$^J&PVsV9X?c2VTch5}qWFtf_F|4_c|xvAbrWO<#~gBj zYS*)Pyx+=R6q{r{E2)aAqEyr*+D}h%^<&>iROerif4hL?BcAy~NFX3cBp{#^K`xwT zGW2e!f0<&+5k5N#XT6p*(EsuA0HqiYQUg@2tS#KE9W2Ei++4i>o6xAstNx1`8!jQ~ z4{OlS(7}b}KvBfSf^^)l@-CI!l*?J;Ym`Kw!$Yl?;&1f01L$`;lmVf0fpZ-XknbgU z_tUh$gz}Q;KJNVAc75->&nYe&_5}k#GDpABc%1m7z#JaT!x=eKE=KI40X@3VI|>I1 zAh2+YmSg!j10R^Oey5eHrEEd7ECh{ffIFgbZ5|%dkb|u=g0`9Hz6Z(zQbN~12ABj ztoF;(tXeXeIbl`QX47PEfTm_)oo6)pZ7;QbZB858k1p{fx5cUp4ef?3zkN7~UiuV< zU3aLbfma(}IM)jM`}HJ{5XqdITLO-$2$7RzYnyE-(vnPvi>Qy_v6}F9lSC?Pa^0OZ z+%Aht4|U(3K6xU)3z_sTCO0L6EI~06wKHN)D0wPM+wEa?G2yOV0I@BT6o?KnY1c@$ zsBf~aHkY=V1L|}ET$I!mO8 z0;6YA26Ol#So*~`0xKYV?^q7CV|-yhoPK!b@?6e^#&05d`unHiR;=J%P|GJKzHx}k zABtC~fJ!RTNqgcRP?TT^*86;IyIFB5xs^m%wgCiT4G8xrn2?x6sM;S?y97dZ{|%JP z;~rSaBe&h)Ms-M6caBu?f?n2N8r}f?1uxuJ*6fK@jH(W#yazt;21b16OoP0COhyKm zA}FG9VhH!!H^fgtOQ~P%7jjoMksi^sYuAdu)MsQ;)QlfAKx*uJ_)UOVn~Vb*o-pbm z9pr~)bZl!#@-O(`L$rruwC><2iZ9rq!}ht#eI!HsOJ?otkL|MU`9G0Zag=fM0h~n| z6iS>SHA+yt68=pm;yP@zVA;Rv*e6s#qCAuw|bic_lfME*GrCEYA8Rt`@@redgsi4BIjQ&j|Kz<1qJl~MhpM{9WBys<}Su=jxPU$G?$gI z0u;9E9MB*@BMP5TooQv2-PdWZLe!`Ns9yz&B!yPoscBDPbH>^jK37 zVUQA-yP`s(m}!=~j=kxgavC( zn21;ksA>En2Q#raLXB9rR0}8NL@}vdvRlYk<{P*ih7xHd3^j6pDCFE)UKC^lSL%ix z<%WK2gV&5IKWd684jVw!LejC>w=?R%uv+F4Mdw4>0s+=0Dl!o311G#yuFeI zPUjy)7Eo4-rV<4Sx%r7?5EZ@k(CnWC^bEt#47Hqa2^myFCdcNGrvpCTbmciBKs*+| z6?pZ86c7VOh3Af(GDvg-3jgy9lASj&`&PKj8Rb^GAq7>NlSvTsj$cEb`zr#(uA(k8HgBUCGlrmO=lqeQA>IYJyXlsM>& zHugw}F9C+{jyI0|_n{6hz3rO&?eldy!^}9a&G-I$j{j{3;0k#2oa=2D?EZa37bySU z2g#7j_V5T&J51T}PKH@^1G*d^m9RS_qjxW~22Biir~83uVMOGWLs#VZ`+s38Be7Iil6$n;O;Ze8<5|cr0Yq z%T;ghg}{0TbOkv=QC(U|7+nU{lOCEL!aq8hcn$9jk}gVF)C4l42<)NqVxuDw11s`j z6KtW!nm}vF?l` zdW*zJvbP8jE0+20%j>0F%tR@?FSOY56eu{vk{`M1h|}dtIZwviN0+j6B9L{AM!)_j z#Gak?9FlIpzTWL@Nl3)_upCY--aS;dh;uEYETM>()#p30nOx?PmSmy+{zL%wB+Hrz zHHFpzgf}=max_NMdeeubSjLDY!;P>ks%bgMitG1Qv8P9ka)#1zU!p&cgrgqLXhrW- z&eWv3?oW{Ms#ZNfzm^Ly(qCQuj(n<#W}^QQa%5!J1ozd&sA*YscI>Sx4volUiACcU zEfU+QD!~vftSBa(G?g30`i8ia92&xN%X{nq1oqGUs=a-UpFAWP>dtG=;YnCH=*b%t z!u|8u5kv`A{X54J{gQ~AaTn?NiCc|4TMom(*upGTh6I0e+Od9cE8@eCBG?;=43ZF8 z>kq+R*4f5juv+S`WC4s!tEo1OD9K^!Nr`BA`q@~DxCbRKHd6>^XBrvp;O*@cQ|K!? zKofZ0;~|+U4>KBn-`j#OQ>GLl+}%w3XN-8fI+w}RatfZTcyYH0Uao8|a!3A4uNBCl zPS-*v|qG}-oNtb6@4Dr z`m7Ih4g7Fb4N94=M)|SGdAyxTMMmft0evC%27Dp+DkyW!hX&845t!}Hi}47IT?@CP zZ%%tLWV*ORc_8wH0@{lNbD-Hv(?_X9O8E(@BQF>HriWbQweEy=79t&YC1zF>W{*4N z9uce&Q5B@WLiuDxI&gUMc18qgWV2kGD7Ge1{d>P4npM`sMLBp^ZpDdUR;}d0Ulv!9!S-WDoze+ppMwtRPSkAMeHPE+-lT$7|dey zJ&kEwd(+KW!r&1ffUX7dYXJ-fKL24Us7=UH92mfNWos}&lGCf+5A_BM++Ut4fJmW5U4 zCib9^TZfbQOu*x!M{8A>e$S{h#=;EjLxfMo_rlwfMT9f}KJIa6Yr zQo^JvTJvyBe=Xb;;90baTd@0bb~ldye)jlqQNFcsZ74J=8ts>gK`)PokHhti+M{4| z^%w5G$GBq6>rc~3HJjZW5x6=P%7kK@DSVFIS^Az|?1OjONrLr}29)B-CgTM@mo3d_ zhGyhk4WNw@vs1}U|4RLN90%p2NG@%1I4N%ONLg0tGJ``r#d44J)1B9Gcc!PD zH||M>f8H*5C(Tr=wbRzg=(0EXqQt?&$-1Y+V)Wa^5VWSf1uA8wL&ede3HQUz9MF8w z*JO)Uh>VSQvn`T;^u^*jh2hQ0uz{48s8sjnY0P)DY@E_Hn zPFd85K`_nf@CWiREOjbho%Rmh+4KSp3&me*FdOv_;CMRKrAgwx&cItQ0{q)Hm9lpQ z+7l*JZ`b|r%F{vm&lnS@*T(ftcI0ipj@4evuBu&QmeS3FlnzmFxJymRgL-s2tW9B@ zSXbL&5Pigp0D7LdVbZw0%-(U}TGA0S4zvk)Ey!Gv-A?Ud2MkdOF=yODDiSvFq>%RU zjX!~-Ng7z12k0llTruoaiQR%!{qh(KXQte!qONYhn1?Q&Ctk?JrlQ<@X)kCYJp)l0 zO09pr)jV@D?>fgsp3iLMgw&(T&(Z*q`LD?bttKpJ4#j z&svRwVRx2~&V!=gg-7ABpV%u@7A{0la^R|5rzuru)L9g<)K&t0=q*;YOSPZRl#OE* zs3=zp0J8LtvW*Hv_K#=m+B@v^X4TF8U$F|M6k#tlr*- z6`UXe_5lbo3%kI@Xb!)?YQ(UEO{hJhT-;y@9gsDP3d}%<5;C>oTPjC}i(wL?ZS;_6 zAG)-n_M_FkbXTAnv_t{6qdvbh?2xZV;#T%Z0reQ7#R@yJFaE^_xft-tqY+dC!EB7K z>+)H3>SrwKE6b}P*flZVZnDg}woY1SoN?5t$6T#)@!g~Tk;(j+1f#rI>39HqOe;Ci zI!9XuM;KnxsU&9K6XYz)KuBc|Y;uTrnWKilZL@ajOw%9ol?BQ4rKl@4rauK`pxz2} zfZFX87DbAuTk_|qWCiC3~`ocU%02kanI|r_Y2?bqBS6!KTT36ZI+Y}vPUE6`R zDSJcSSi~lO_S_DPd%Y}HXL7rRKTC6-odRX4ue<>_LB zWP4U>o%`6X<@Nsc63tw|HoxWBX@c#xyD&n47S$WCYw}pEYx3)Mp12WCIk4Lr6hgfx^8%$uUPKrucg>NoOsdB zsL4Qk3gy$Tu0`L6!ub3~F-~p*9Z@eEen&oKhI+w7FqVhwqiNGro;2*x}P+1*?Dc5!Doz<8mGx=E z=SzIeu1aLR0~U8~rc%=DO&cv>Y8O{bXA{R-`8|OxO4z-_q)oPhL2sD`f_gxzVqC96~3}J zY#E+S*|+qw0QrSwZ@iU5)S;t#_oW!;)0;?V=}<citt+JnTY5ZFK`YUlHGYUPtHAas( zT=MT8&hXNo=)@3V!G?gb0k?{0g~dB|arYg%*>l9fJ`}luQqORhKt!>RNN17uPqtEH zaTW>+=O{6@>>+a#Mbx$r=947^ak{^(# z^{I=tjvWxu3rCj{NQ4EV+*1Y{Oa);YiiKWQ99Tt#7DqA6GBMR8`zA8VA#bwGVXxvV zyIhVbzg$jMCEu#dWMl8+sN(Cm?ECbb@q_Gdviz2lmA4y444xm6=Q`)v_Z0AUKlAVb zU^E1Eg8aGcwWLKFz~Ms?!dIw%cLD$z@Tmw*mHd8>j81?^bW|3g@J*OJKK}h4%16L> za15R0uQFN%gmGv_eDzo*;)hc}U6fb>^9b&zyimXp6x=ZJyJpCx3&}E+98q!d*Z9d} zD^ULEx_YSDS9qa7#ZeA$?MSGdAY(NjsBY#iMyBF>qh ztArE{*IH@}Vmwxi1j8O`lmwYH6>hvZD*QPr-if4>2DV3ASlIL3N=>o+C_K0u18A`c zp!kGw^gjM9C6j81C6xf3>FWfheb9 zSyZRU%(SNYXZ(y3AD*In@nPgEj~KDG0ko^Rf*g;dUzHR<+Glv5kf^eR411YGz)z6g zD*sFoG4!nJ6hEb$&r?izk5F)+U8XPW&2aHs;hnO9L2yQza21s4@DUO7`7N1nW0 zoJ5T+6Zg^LF_NXW@EMR;bAt@+eg~}rt(Gpni;-}B?D6%RYSkXepZ-`>tJl3 zW&a~9zu?C8*_O)W!kN{MZEQX;Q@xc+D}{Xd3g~p%`ZBqX+_GeKF+{h0wkeI_#GRGt zucNXz76N#V9tqcY?n7ohJ)BOV#)iK!t!f(9c4O9@$DVup%_e{kwRAkJ&731_sm&}+ zwU9SGI^v&ML+Wwyja6M5DbC%XgZBs;+g!h_O%HMoo1F-1_qPa7PWY_V+CmfqysvXZ zxa&s6Azxq3p?N49-k1PIudIR%*6632-hvZyO3z^1xXGj#OMQX|&ScSsQ1L`UmB|h5 z@5AJ9O(*S9ba;T~BR~B5!?#J#RNN{~Kp>&bJ8}RW1)17c=t_ajJ9a?*5j%XtF(yv^ zaRyF6nBn~HKrRi^{*T14<7jQAS0@{4ciy<@SS3*7>O$$oa0$KJHVi>tA@E&^56Cz9BohPb2>`$8* zBSdpfkhER?sPPiiOQIR@GVR4yjXu0>*>@E(DFf%D5nZ1uB0P1ahx)!Tx^c`dPieJZTc-{wf$FTiB97lSVR z_R6T~XI9^t{M6N%$a;pG9>G)PB|2R2pb1Y|+DDjb(Mn>f#KnVw%Yno5ob&^n=PymT zB3jGp)8Rzctn%oovw<7~U!m2r-n={l(WtYu*6b34$lHj@WNGik zsSNONu6J&E-QtG%alrix{T>OqvZ^qs>I=TtH>IxnpdTveTjY}D$Nj3 zP?`1{)PXs@I5s^a=R-}mBVNG0O@L)P1i>a}v371Tw!Nlq6Cu8Qtrhd2KV% zbpWY1sLuJYr9I$l0e(N~J4t_l=$iVjwwb-}=c&GjjTTi2OI2-?8>q=W?(e8k&yHlR zuVGh%m!;k&3_cSgAi>Ssrr!1(f-$Gtp}tvtl$dw_mUP}&vMM|B;-Z&Rw#xcIeGa&B zcW$7%pxRs~Fa3zk*AU=PPKdL}Q*Z3M(lV?oZ$o;wyhmH(cM^ z()E3Fy)Qid+pbh=w)p_$Mr-Gde0R3IS*F=o=?Fuf_qx$~hMr2}*RNY!_{stsw)~rK z>Q7QJ3G(Y9*^!Fv@};Ywis_Z6N+)L3l1} zev~)hleKR7+Vk?7?+9X!P#}s1(DY(7{zImbDbVn+3A>#=yVG}uzfqZ9RiUhZ*dLtc z?;_xm*DC+wAhR+S9)4W4}E3R(VVF+KO>3d&L- zf8A~i%#(hr|JM*)2aT{y1*jz`6V{Ml8B)j!X~N@+Q6wv3nV?aLo;kEOm19#~MCUbU zia84p@>mKN=1%?Vi$fwZu$OM&-5{nQ2ah_)b`yPiojtJj;KkEZzECDgY0> zWA!WcZFH=vbMm%wMRZ*Ia9joOmgtJPYyk@$1J%pM5of?TWcJN9Z9#y`M$)H1`6Q0; zx9!IDTaVRJw=%}SieDoRikBE`8|=Wd1}mAZYLqG1`m_p4-mX$js%4EqCM^0jlb1U3 z9_z_j&)%IR9A@ryaDeV%z|LX+{-L606UgPn^k%}7J?!|T-%w}Bh=KLXRkp(Yroy~7 zs&s69t9!d1*WC_G@IJutYE(3SjYi;LNBWc^!3p29W9bca(WCO6h?_9C0fy2=jf;g6 zJw6k`S#!|#^H|ht0*~-)6_U*bKyT=blZkH-f6aa7YIo9+d<+p!?|0k1Z5Swc?D!7b zP&mKk;~(Eo`RM&)_Db%TB^dJxm;d#jEliVKfk#7VAfQ%E#Q$;(|NG{pS)7v={NK@Z zvnyW#(ti$K+WGKP1m)2I>awoO8vkr))@ntOhTQguLKU4JN(OtUFO>!%C1d<^M&Ug( zAfxOMJdnjd^LPJW z{~wS89vWz^j`V}=IIw`Bf39O{M(e-=2IWt6u?C8DzN%+rDI9V-0HjEUZv32DD3Ru_ z^Wd>*W8r9A+AjRsoAnLTYpTAz60+qhPB&Yw-KW*=W^BRh^^A$M+;Kk4R(5?Ueftm5 z^qtx%3J1SiZ5*d4Kc~Ti2I;X=%^$jc5kGM0`k3}N$FOg2)6}on?HgLLs)eLq+tc@4 zMNhVB7psjTCBGLl0GL);2au&ajhis$>#upbv6M>7cbl$j*_LM|jA~W01#^6V$KoLv z%rG(sw7`2~m9^oEGNG@jHUqz!&8D%pnO$CX; zrQiFe)Eh1a#LXLcz^3?8GXDGl?`*d%2EK@;~_|(-ap7YdRAY{u<5@DD_IPHN~^ut78JfhI{%$ zK#FCay7dLjjOADU6xON#tbP`!KXT?tVWh-~iwzg!`Fhp~wh|V6Pv$qsILPr%mkkp^zw%|*EMc(ay zS9`DWGsgTr{=)lH_Efzd;}OC<@H@e0{Q#8Ob1r6$QOw#;r@ z&MsP_6yA$2+Tsl2o*``XD%XNLLh&WM`puRdMAl5+H^lZ6j{GSVvd973Y~P$1E0cfO zc!R!`&`12E7~yVE{uv$6{UP|TgUaei8+QT)0|NR3nUd&LkpHw=LRW89{8l@&R72o{;xW`p#GWW$t<9|`Q zA4;D%bQ0Lh$gD9^9ScF*ne z;1Juty!g7|HR*TO>tX>^b$xHN){TP~q_vMRh&TgYvR0$N^VYQbe1tXgZb33MyC;t& z?KvCbDD-QPE)?L3eU(Mu{d9aZ$i>k$ntPf&TBFM?d<6dn`%b#%F21lMKr}b%sbD&h zYeUs#Wt*)|PIkJo)6y1M*~ZIps#WnkzFU4pgtSb#>loqw>gLEE`vRYR2(>xI zyh(xHppPn|=sy97N)fXkF&of-i^NsgqH6K#ii{9LDg2fNZ!-K9aU6+TT5H`Et|!h2 zD5j7@fY@!DqP>Be42{2eIe;eeq1m}N>%mvZoh-W-B7C>Cyc;@IvVu{;kgTu1X9j z$lRoO$A)cC$!$(gJoXP3>d8>!`J@BE$67oAP)tPXz17pzY#6^bR^ zKgziQ$NB*{I32-|5+U5*%xprL!M>e)u|E$G&7xy8f~5G|xT%11=NnVMcxHV%UZ_v|ozaRSl`Um_*`U=72pKGz2gQdWc(2NjmT?DJq^-H84zBB1aOSS@A?Q#5io5mJC*6*f zv;)C@)|%kC+#8XVBn2ECRJ@E${E`VMT@tpH=5=BPzg~0BG}O?UbN)iaOJ!CzpV7KN z85Jc?vV~zg10S7&PYP*R*eR?WjEoL=aB$C&MiHO>v7fKo$bv-rB2Fyn0UC~yf{aL?i70I^$o5UL zgS*YhMI|e#G+{ufASpi!CE&iBgPhhdZm0(Wz;yU_t#@afZZniM$33kayHKYCWOWK` zuoU*>)vz?oJfu=4zmSj5n6KtpWS-421iaw_u7j$jL>_MuTX3N;h_ypC1|HBpj{Nf% z;@@1WBc%E!`VXlxM)*&vb%L^ZAE#8F-tvJ>_wcyoDz6~Eu{|S^bnuJ!MaJNU;1$rR5h`z4a0I! zvHe!inqrq`3`k^@TQj-SsQCk@@vyv<5u(0_3fgpNYHb6lQsN3i5Vv*)H~?ye7*ly< zaB>m7Ni&9|K%`&Sw-vg?w`#43ve~dy3eBK^#P;z+q|$L$92CFhqZ%*xUg1(~G9nKd zAnk~DB4mSEj$9gG)_AA;s z6383kb2JpGUMMuklorYWc*0VBUhLyOojbL|h+^m(`* zN4tt~!V!!KFrIpNRU+`mN8_(!GqZ39yWd!DjGBh#`qUT};5KQPyUkVZ*^n18(}3!_ zHiZT~XNnrb*8oz5QM4sa)3*p35`4sCJ|86ClProln0;mDj1fTeWye_+h!&?olJ|rD zA~7Pp&%%4_(I^V!ZMvvsH=WX36x$Ou*~aXTt);$J{0urSZTBs=&b_)^CWsjEfMJGi zE_eXE1tJgZeY^aIAHM!`meE+mUq1&71e5{xpTC@~PXW-{b^NE00tg%b9-^St?eMT< zn<+{JT3AD#7|SnOT!<>8v59Zmku9N8^BN@n_4h2TyeA`A0QSv99Vqthx&Pc%wjFca zPyt%^wsY@79oTmh_}whr57oOJsp)0J$hjO~vqJ1S`zuU^bhL_)LwsGu zLjen3i#TMW8_~&}B+87kIMD>_qX&~4L{OuZsn{h&)r`K``VThM{+XP1SR>RLbYZ=R z>G0TbqUKP^7-KvahG+blW4t(4mr^{0QW|zRHKjT?Bjm35oYwBelUPgX{?tIz-Hf0qYtV&*=#&B* zCk22Buv)*FnXR8w-{xy{zY!B!G8$?;Gajl)(=vy_Gl2)&mbuoZ#!pW(($WgGiM2)Fv#li>$DN!y zh3S9b`muF0V)!cpT*W{{>WHp@x+5<{#0ltsu-t@~5m8)L8T@B%OqUWaCt}oy6QioS zP@dllnMluS6*`Dilvvk7OEscwy&+<;bhn^!QjFpT4+4~&o!n5KXl1+t3rpLEJc1=Z zq>A#GM14M8$^q}mEuPq8q-D@O#O( zXRK3`HQEr7Il9Cnz$eU;BN|p?5*u?r`U=*#sDsttu4)BoC2`cN3VQwHdx{D*?+Y3{ z-KhMcsK%>~zd{M&)|Yx%^4^@P6$J>Or#pKOM5{TMS?!IN0dmcj@xx*9jj)A` zQA&{RP`ZXo3P{7y-6LItgaS&pbPOO3BHak6G~y5<4|w-J<$mw4v(7ocz1IHLS$of( zRR`41X>_ra5fivd4HU8;v0fFk(LXMk#$WjBiB(ErEH0G-do{>Ee2V`=7_F_|1{yv1 z!4o^*TajwJ2&V!o#Z09$UReqQ zR0~Ry7s_+RNv90QLS65Y(SKo=k?et2kQ*Q!G$gGE+jjIjUn){=_FH4GW2lFQ&^Vq$ zV-~xL1@#b|xuTy>hXJVZ0SWy+Y=hi_wI( zvrVF5v_cY|YDfLLtvkb>1c(z6mYhUSX_@!fVOqq^lR4#$O;`kWxEMC|7rJPBgCO8D z2C~rz!wK1`WQDcKA1ii+f)w)x$H8a8U}c%!w4A_K_m^1@D7GAZ%siM6AW$szjtK5Q~N3#?t)yA3GQ` z5Ynb_UE1W^qcg=m5_4?9+eYsm_e4lWJBF09S%)|+<|Z5myvio-0Bv?mn}OlqO6k*u z@;u`lBpbUzYYNuO9YCWv`1ewv<%>}8gP=Dj_G1l8r2LOxG7*_?Ee(AeCf?|)_Ga^8 zB&vZgyzqz%LOW({e((GZYCKLT9Or*wnH+Ja--nah4CXeD{#D$C!GWgyV&p=Pfp8IY zw7M?0D1aTB+q`T}))0)q@w(r&^8MY$QIwKWLM89gsj?{Dy7vh7CXd_d)mtKNTH$XvE(+|CM$TccSWiJJzh-MRgF>2R%l$4*G_ics_RW<%h*-8W10oeL*BB zlg0;2)KX;%ZFa>fR7vx5i9`eX)b=r_&SAdAV323aQK zw1gfMv9sT+o)wI_t&B6wlU!mpPEc)BPCv)1jQ0WlGts^&t`3FxiBn3ZSTolt8)n*w z3@Ubt&~!0{_e?LrZ^7I0`*qteR)2F{5 zvzW{(ua9j7hTh_NAW@+HF%~0u9ft-bl_bKb3U{%$5C4i2h}L)3<-%IUU9K7p#>axu)Qdh66_*HpLN4IS;%Q7W z%R1-YJsKHtZ1Gr?TS+2#FTMsnBU;FLfg0XzlUXe_6XR!O;#U*k z+QsfO7I_M5Bo-SRV0k)rkoFPA2uWjgF0z|r{gNN3WpO7XeuLON*?nKaf>T@?=(*!k zW1$i-qhL8hQK<7kbG5P5(iu`3S+$zS)cuR(k>OJOnp{Tk-Q0ojRRVTdk2`{_cW}g_ z?wM3!5JFfP(=3nHjdcX`6oFtzWy49$p2$8fZhu-BMM4uIM7skjS~ST!<7(I?5A}%= zbW6GPNe=|d8MBJt{z}>FDQL57J4qABH5|~ii=1$Ln2|u%d7?JKf^~AV+DKf%R+ge= z5jE`g9qLDARl?^Mal*~v(QhPl_z;wmgvH_(zGemEVvI`uFdxw)A47zEshj#N76*F( zn?M9+r6sI@(>2hgaM-A995p~#a}N*d)VX*oS;kY*_bz@`%G;V+H&Dw3!Zg8(V%W1G z5WiA8xH#!7s@_?5+nJfxJ?rgv>9U7GqiC9F+;_7F<&Ver7@op}TZmlBc2G*gYn~)( zL}_Qc0gbZlw_0?I5bJKVGpxgu9N|q44sVKJ6%IL-lKD0TM*~_K5+Hy35?5_xo3EBE zi&M9T<}$TKa!=2iE>`@Kf}Yjw_**0;3(Wi!Qxk2`8u0=cRY&uVLijF#fie-hyBdj7 z07Kw32BRt7YyZ)gNOv1#R5vLl{+5R6EMTOcoI?&=v8ae34$nFS`Uod>@o!O%SsK8A zt6ylGsn{=?)z=`85t1AN_!END@q(spw;&G*Yh@}^e8V}7iY6e+NA}?8Ar-mTKhh?j zg2T&8PSB{sRs}{k#a?{vinUsENLW@A2L4s@72aw8ahlI%1t*Zt6Gh0{5_9Q9m-j@; zJheu?kb|y-(TFDL{k)swk6uzUqY8&^1a~1<;Y?i|l*lfT@2RC+3$$%tY+EU)#pLl4L_Fz}NrlU! zttRZ)Ivuuk$B7gpBIU7EJMp5|EkBUI_9H4jxUL3>@M*WK4ET&t=cH?5ZJlPq#@rx{ zue#0Z*CN8`22seo(TbnuxoW{@kJEDw&yGU6VrUtIGtMW}nV0qPhNYoYh5EsSR2{+V zJ5W*vi$KI|w9mpC=2JpUd^KB{ABJ9ezM~1k&pOm&I8_V4Luy?8j@o&TOcE>)Oia)l z2dR8hQw?RoquK#rGZ2=D7qzWU-}aBA2YxBRRS7W?u-(+j`3D}p)R0)C-Gx!ikareg z@eJj|3StgR4EBx-92N7}Xt1Olfe;;CP0G9bLd{BjQv(iX)P^e3;Yv8LeN0n!{RSCB zg{X-!=O5!GB)TZhfr;0pp;{KGLu-^P7uZbY4U%x15P~Bo$!w*y7yGfRqMjt=KBKUI z)p>bvrR5;PquooMdBrkzLCD;sgC=`qf@3}YN90Ny`fEjoEyTCF!B={vfCigizQ7ir z#Wrot1={vv5bX&sL{R4s$kOm zfwVVb4-x3v^Cq(OuNas}g0^s_Se51+x;PjdylGUt0}eN zD9^*Hq+QRpM4vL1Gn@uycDyBg`}L5V<$d6VH!m;FG0r368Pkg-m`kaA$g!-I%zUWp z8BnG0MH4GJ|BhZH)45K2Xb9s-w{%n1dP|gZMgnIwhlO+vsNLxx(CQU1>5G!R=^l=2 zfVBxoBqb?7>Nq`{9h|;Mfg$H~0_e5R4|D&y)?pDF`{0iMe z&7|+bD;)G*`hjKiuqlW5X>;T{m$^c(8!o(T@PpfS&Uw-PKDJEH5JV?NLMo49Qy$Q$ z`0H5O#q7TJS%v+hkrtJ%T>hj|t#0hx^Clmk)~-s$my!qQz%Rz?AQ38-FjRVQ=A2km>e=M@LLu>N z@@!-7>ByP*ru?pBEjT@E@S8NS+|m8WbQTO_&zLiCptYhf`2=4yp+lo->4Jr;814;T;XO(I_MYSD<%?TQE!h*C?XtLxNpO;L@FZM}Q_?gjIf z-$DQZ4~zm@u{|$VH<8}PJ*BPS?qlYk^Vbq5Cne>5Mpzs~oK@dof!j>q$>OI2gZFXS zw;yTWU;H?B+wG1?H_DtKsyu~0eX&N?NnoHbJI6hrGMc3polHl(8~MQB47dtmeKDNZ z)I;hQzDw>{AN=9fha_B%cj3i{(R}*LC$t|5#Jce#I^jNXybni$;g-RtUF`Qv^CmvW+YaBP3K~`>3bPzP zOO; z0N;*_7`+!!BNG287FOY4nT;%($7M|voW;DJ~5&a_D zk*0P&JM?HiXv622ez;j{uiuu>5hwdSUd;BUU+AY#^|>^2*wTYp&I$-zC(aSty!SFDkaLSn-`{jA^)94e5z|NIQIvVaYC?$Hb*78#gThQ|mv-(TRpK%zvKP zlyv)Etlv02{f<3ay;n#cMI$PcxSKY0#HbJ|+2UxCY^;P5JJ}$+`YRRbYlo?Q>Ffht zJNv4FqWbu+Yp+#X1g@_kEh5*~_7+JJ&9{0AzuV*i01R-FRt_LDA3UIgg64O3vdb5L z6l?8AcmwB1@LwDbe7=?Rn&-<83)t?Ltt;tB0RWa8SOn-2n}{UfyY5)2ricc_1N<-K zf1~&ud}Ev~9ekgbjsp!y4)|St`)6IQ=nZ%t-BsoKga1>xekJlx9)H$FO5EVF3pZ)! z!1;#-JhmMSxhnbnGsXG-jR9lKS3)KJ8S%fQ=6{R)GY|FVv}O3NI7t4V#OQzX_?w#OrE%*Qi>bEMhSSSI~82Cg9Es8MN(hd3@@<#!6nHEpXeaD zHpMR;)WA(C_)-rwoS~BgNH2X&ws;c3-8*@Jr;jgh8Q~u;$#3e{ZxD*q*VgjiNbyym z7y#hDAvRL;8Yrnu4v+4_hiv8RDEtm}T$;=cu(oajf(8!mCWg25V9@+_mIDAxH*jmu zu1wIRoBA5}+hy_Z<$-SekEu3vlU!lpL)~EDsO7a$(n2o%8VbMnMgV~GhLB|2Yt7an zd4SRG*9t@L;Q{h^T#_tsgPzOP>GijE$lzGL#PF^jFfhXR@{t-)IplBcP{4t`{ if(activeTab!=Tabs.Modpacks){ + if(stringUpdater!=null && stringUpdater.isAlive()) stringUpdater.cancel(); (activeTab=Tabs.Modpacks).switchTab(tab); // Sets the active tab to the modpacks tab unless it's already active //TODO: Create a dynamic updating string from the input ( Text Field ) + stringUpdater = new Async(SafeReflection.getFirstMethod(Main.class, "detectStringUpdate"), Tabs.Modpacks.loaded.lookup("#search-modpacks")); } }); @@ -93,9 +96,6 @@ public class Main extends Application { }); - Async a = new Async(null, SafeReflection.getMethod(getClass(), "run", (Class[]) null), null); - System.out.println(a.await()); - // Drag dragBar.setOnMousePressed(event -> { xOffset = event.getSceneX(); @@ -116,8 +116,9 @@ public class Main extends Application { launch(args); } - public static int run(){ - return 1500; + public static void detectStringUpdate(TextField toRead){ + String s = ""; + while(true) if(!s.equals(toRead.getText())) System.out.println(s = toRead.getText()); } } From bbcc410a79c868ba9755aa5436c964db8cd56305 Mon Sep 17 00:00:00 2001 From: Gabriel Tofvesson Date: Fri, 4 Nov 2016 21:57:32 +0100 Subject: [PATCH 4/7] Changed --- src/Launcher/Main.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Launcher/Main.java b/src/Launcher/Main.java index 8f91c8c..ad0f000 100644 --- a/src/Launcher/Main.java +++ b/src/Launcher/Main.java @@ -119,6 +119,7 @@ public class Main extends Application { public static void detectStringUpdate(TextField toRead){ String s = ""; while(true) if(!s.equals(toRead.getText())) System.out.println(s = toRead.getText()); + } } From 68eef0e6a6a1aac3329c312274d7e529f38f1f23 Mon Sep 17 00:00:00 2001 From: Michael-Jouanneau Date: Fri, 4 Nov 2016 22:11:51 +0100 Subject: [PATCH 5/7] Chnaged things --- src/Launcher/Main.java | 6 +++++- src/assets/layout/modpacks.fxml | 8 +++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Launcher/Main.java b/src/Launcher/Main.java index ad0f000..5881709 100644 --- a/src/Launcher/Main.java +++ b/src/Launcher/Main.java @@ -83,8 +83,12 @@ public class Main extends Application { if(activeTab!=Tabs.Modpacks){ if(stringUpdater!=null && stringUpdater.isAlive()) stringUpdater.cancel(); (activeTab=Tabs.Modpacks).switchTab(tab); // Sets the active tab to the modpacks tab unless it's already active - //TODO: Create a dynamic updating string from the input ( Text Field ) + + //TODO: Create a dynamic updating string from the input ( Text Field ) *-* Done *-* + + stringUpdater = new Async(SafeReflection.getFirstMethod(Main.class, "detectStringUpdate"), Tabs.Modpacks.loaded.lookup("#search-modpacks")); + } }); diff --git a/src/assets/layout/modpacks.fxml b/src/assets/layout/modpacks.fxml index 7975cee..5e3cef6 100644 --- a/src/assets/layout/modpacks.fxml +++ b/src/assets/layout/modpacks.fxml @@ -1,21 +1,19 @@ - - - - From 1a4449045465d00ccc8888268ce91b092dc51207 Mon Sep 17 00:00:00 2001 From: Michael-Jouanneau Date: Sun, 6 Nov 2016 12:46:47 +0100 Subject: [PATCH 6/7] Chnaged things --- src/Launcher/Main.java | 11 ++++++++++- src/Launcher/Tabs.java | 5 ++++- src/assets/layout/main.fxml | 7 ++++++- src/assets/layout/sample.fxml | 23 ----------------------- src/assets/style/nav.css | 4 ++-- 5 files changed, 22 insertions(+), 28 deletions(-) delete mode 100644 src/assets/layout/sample.fxml diff --git a/src/Launcher/Main.java b/src/Launcher/Main.java index 5881709..86ff329 100644 --- a/src/Launcher/Main.java +++ b/src/Launcher/Main.java @@ -15,6 +15,7 @@ import javafx.application.Application; import javafx.fxml.FXMLLoader; import javafx.scene.Scene; import javafx.scene.control.Button; +import javafx.scene.control.Tab; import javafx.scene.control.TextField; import javafx.scene.image.Image; import javafx.scene.image.ImageView; @@ -30,7 +31,7 @@ public class Main extends Application { public static final URL mainLauncher = Main.class.getResource("../assets/layout/main.fxml"); // Launcher body private double xOffset = 0, yOffset = 0; // Offsets for dragging - private Button exit, min, Home_btn, Modpack_btn, Settings_btn; // Define buttons + private Button exit, min, Home_btn, Modpack_btn, Settings_btn, Instance_btn; // Define buttons private ImageView icon; private TextField Search_modpacks; private Image appIcon; @@ -61,6 +62,7 @@ public class Main extends Application { Home_btn = (Button) root.lookup("#Home-btn"); Modpack_btn = (Button) root.lookup("#Modpacks-btn"); Settings_btn = (Button) root.lookup("#Settings-btn"); + Instance_btn = (Button) root.lookup("#Instance-btn"); tab = (Pane) root.lookup("#tab"); @@ -92,6 +94,13 @@ public class Main extends Application { } }); + Instance_btn.setOnMouseClicked(event -> { + if(activeTab!=Tabs.Instance){ + (activeTab = Tabs.Instance).switchTab(tab); + + } + }); + Settings_btn.setOnMouseClicked(event ->{ if(activeTab!=Tabs.Settings){ (activeTab=Tabs.Settings).switchTab(tab); // Sets the active tab to the settings tab unless it's already active diff --git a/src/Launcher/Tabs.java b/src/Launcher/Tabs.java index bf1c46b..d82baba 100644 --- a/src/Launcher/Tabs.java +++ b/src/Launcher/Tabs.java @@ -8,7 +8,10 @@ import java.net.URL; public enum Tabs { - Modpacks(Tabs.class.getResource("../assets/layout/modpacks.fxml")), Home(Tabs.class.getResource("../assets/layout/home.fxml")), Settings(Tabs.class.getResource("../assets/layout/settings.fxml")); + Modpacks(Tabs.class.getResource("../assets/layout/modpacks.fxml")), + Home(Tabs.class.getResource("../assets/layout/home.fxml")), + Settings(Tabs.class.getResource("../assets/layout/settings.fxml")), + Instance(Tabs.class.getResource("../assets/layout/instance.fxml")); /** * Url referencing xml. diff --git a/src/assets/layout/main.fxml b/src/assets/layout/main.fxml index 7e2d47d..a725d1e 100644 --- a/src/assets/layout/main.fxml +++ b/src/assets/layout/main.fxml @@ -29,7 +29,12 @@ - +