From 74440e3d7ed903ff25f68c55e666bf5c0221764b Mon Sep 17 00:00:00 2001 From: Jannik Date: Mon, 30 Oct 2017 17:52:45 +0100 Subject: [PATCH] add new Game is now one dialog * add new game will now show only one dialog * code clean up --- bin/.gitignore | 3 +- bin/application/MainWindowController$1.class | Bin 2178 -> 2178 bytes bin/application/MainWindowController$10.class | Bin 1990 -> 1990 bytes bin/application/MainWindowController$11.class | Bin 1307 -> 1307 bytes bin/application/MainWindowController$12.class | Bin 4918 -> 1554 bytes bin/application/MainWindowController$2.class | Bin 3311 -> 3311 bytes bin/application/MainWindowController$3.class | Bin 4249 -> 4249 bytes bin/application/MainWindowController$4.class | Bin 4257 -> 4257 bytes bin/application/MainWindowController$5.class | Bin 1096 -> 1096 bytes bin/application/MainWindowController$6.class | Bin 1096 -> 1096 bytes bin/application/MainWindowController$7.class | Bin 3503 -> 3503 bytes bin/application/MainWindowController$8.class | Bin 1607 -> 1607 bytes bin/application/MainWindowController$9.class | Bin 1108 -> 1108 bytes bin/application/MainWindowController.class | Bin 48138 -> 48848 bytes src/application/MainWindowController.java | 233 ++++++++++++------ 15 files changed, 160 insertions(+), 76 deletions(-) diff --git a/bin/.gitignore b/bin/.gitignore index c525beb..925b114 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -1,3 +1,2 @@ /application/ -/cloudControllerInstances/ -/datatypes/ +/resources/ diff --git a/bin/application/MainWindowController$1.class b/bin/application/MainWindowController$1.class index 7b865db90342d353e7ee67520e184d6a7bc4bc67..b945f90a8c2c553a2fa5356ae6a0c604e0aba55c 100644 GIT binary patch delta 55 zcmZn?Y!ckS%g)#~nU8(5YA1snV;6%4V>g2lV-JHZV=sd#)%Bo Lj8i8+W1j;6bnFg0 delta 55 zcmZn?Y!ckS%g)#^nU8(5YBPfzV+(@@V=IFZV;h4lV>^R0V+VsLV<$rfV;4giV>d%J KWB=r5>~jEaZVmYW diff --git a/bin/application/MainWindowController$10.class b/bin/application/MainWindowController$10.class index 6fe2cbd54fa0af91762795c27e1f23b566b48dc5..7af7784ef91d923628fcd5d03f10e3234a98ef90 100644 GIT binary patch delta 51 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 diff --git a/bin/application/MainWindowController$2.class b/bin/application/MainWindowController$2.class index 726d5bae6569c2853ec8b46354f988e6a3c5e7bc..2e2e389e49aae71f6de494669f5f33209b0b7d70 100644 GIT binary patch delta 108 zcmV~$D-S_o0D$556~CE&iY)7rr06QeFHmf{B$&*UC&E|QMD2a~M zVEB z?GR-(c%Gai=O`pCREjB!(GaW3L`^T$<)R@sU-HnDkCpRUlBiojXjvnYL#H+%Xdc;zcp5pYC=1n;U$}?1fk;;r! zWug}EvY2YlhipD|V5WcOy77gB1#Z6au_S^`j1>viJh36gmJB;`>?v{J+0T(0C+eJe T;fFRCOn&L}$AGI5^d`9j^8P!P diff --git a/bin/application/MainWindowController$4.class b/bin/application/MainWindowController$4.class index 043b0c5256f940d0eb86c75b032eb761e7a040c5..340ef4e9bacf9c250910284f89fe5459c317bbe7 100644 GIT binary patch delta 178 zcmV~$F-t-L0EN+eKTBVaXC_HegZ9cK!NE=F2ejEF_y?S%DH?+Y7lojpMOwtgIdRja zhCrIy+FRX&K+AK6@i2aQi2O5oj6&{y6?mzVSE~9?=l<6PQXQ)Sx*?$s8|tyCdy?vt z(ttoyw)94*Pa=Jh);HT)kkOJIL)Ia?&XMyadv3Dt76-oK(AVUBOTk@^{6y^MJjWh! Y;xR?fIQ1(fzjNj}Wq(ka)G}?a0ZqdrK>z>% delta 178 zcmV~$D{Ddl00rQ4jdGYS3y(=drqFjyQ23Kp@*E#?iI77fB! zve~T`LD+m;AKz!E?etgI$K9moGu7O~;2$jhBgX>@JmQTfyz`6_9n^V2i&uQ|hK_)N zh>?V;Tv*7Bl^(FxBQ`Ryl?RSYN?w|JVpx6_6<}FGRup1YVb=7*h9Yb$%D!S8CiKd& Z;`~;EGbK4!ic4kqqbz@AP4dqlyaN?bC`AAO diff --git a/bin/application/MainWindowController$5.class b/bin/application/MainWindowController$5.class index 8b976eb78e9e1372c62174c535a5f44e6d24d21c..d591a991860b9a945769bef76bd76f2e848dfdf4 100644 GIT binary patch delta 27 icmX@Xae`w*E;FP4CX2}jm^%Pz=?3Zm diff --git a/bin/application/MainWindowController$7.class b/bin/application/MainWindowController$7.class index db94d8f0392204a777d1ab7edda7a5257428fe7d..e66cce62ba278299e7ebef5c13a315bd3264332a 100644 GIT binary patch delta 68 zcmZ24y`F)L%#WE0jL!B_@frg#P!rUV8BrbGr6rj*GWS*HO2pR)*P delta 35 rcmX@kbDU>`F)L%pWE0jL!Egp%rbq@ErYHslrf3Egrnt!)S*HO2or?%W diff --git a/bin/application/MainWindowController$9.class b/bin/application/MainWindowController$9.class index 5c267b923aa48a8bbc1c72f3e4008bab8ae45034..4fc774cf556ad2a8e23da853272007c8f85ad924 100644 GIT binary patch delta 23 fcmcb@afM^U1ZKv{$rG9FS!)>BnQA9rWv&MRV=V{G delta 23 fcmcb@afM^U1ZKwK$rG9FS<4vMnaU?$Wv&MRVt)s_ diff --git a/bin/application/MainWindowController.class b/bin/application/MainWindowController.class index 5ca76d7d0568e4258df3a4ed8e5f186f17bb290b..00cae429a57ef889152dba4e19af17c829d332ef 100644 GIT binary patch literal 48848 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 L*{4>j)k*Fj#RcK! literal 48138 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
    JVovg01h(EMW*fU`6>5DP_Asg%Yu9g zz#!MWFxTbjTvujtT^{6GWE#9WjnuUnq};24x1mAP#iNkZQsedM3UBIO;W4J!TT<@r z=}!DS$Th&d8{nYf6`&U;YK(q&`g)qgPYd)Pf;aO{mdT&!*!JQ)qE)W z4p(wV7Or%07903;*zzA?$6#wgEkp)ar`%t4xxcO&;QnU2`&))|x=+s=Gr;{r%KhV* zzA5*GF8AfEudmJ@JHUM{<-R_)Ps)9(%l&Irr~58E!0vncLHGSCH8xPJ0Qo!bxi&7_ z7_FSgDds!@qCj|?^CSoZp>597beQuD&2s)g^PK1CIOmU4<2;{XUI>Y|%xib5a6fcE zLMINSG499iC#ZQI4R-(OehNM$UEBr{bnx+@gDdlN3_bdz?Onc(p+~RV-tBV7N{uP= zW$N#|LW3Q|t~r0E3C`=F_BZHY=Ph*XZCVB;=x8W0P?3zupJ-*!ss8CsO-OfYR-{w7 z1jBYp_?R=EwX-0^*I?HEgXh}dS#O@u7hf@xg5&^u6?H6-2Ond$e>Wd14=^!6p-?I8QHNH4e;V#0R~=rKHU&B{19@pA#?@yeU{#= ztcQe(AvUhCaJ$$0;2}j`;VFfMn+`#u-zkN$O@|KYN8gk=*y*$nlWEAvP<7uwa3sQo!)MI#v$bmDM!pm zsZx6k6)A78<JypfO|Y~(*^GjXsSl5r2!&q? z4+;aLZEh7B8A3nhQQR4i^yUiV%>7xr-l!2V?_8@Me-o>Q7$6O@**-W zKO!IHB62hkv4_aIBf_W0frvLgA0p1GTttq`i%3~sM6Ailj;AHo8X!{J!_@Hcb*7Q` z#QWVxL{G>?WOY77`10eRaAwsEK}=rmh@1dK*7kr1pW|ml{*@Pz{c{m%&Wi}{OwNbM z{<(;>0+F^J5aEjicxoo(T{ZjVu9|iE5b^fUziRf&MPw5YIjILk_{IW8WKupv)XH2$ zPRWbN0eKNoD{~P!1Bjg210sAy0ubS=;e*kQF5lO45wTHfISkFk_0vJ&42_Jz8Tnj9 z&I2On_kalB?Z6{4+2MOOSR9Wa;?(3Ka#7w9nc^Lo2N9@_2|c?abpaupD{x(7t~b_tA#=*o-8)LcZa z&5H=Gu+E3b)LcYv1R_7{0TI65f~V$?ybSHr+~s>qK194j^E0$ha}l{6h}_WwB76@A zBXXEGE$CE)M#L|2Y2>c%h!n=W>E4W>@CZElKlqhy%_*C?asnl0db5HO``{T!9o-fw z;4Cvhu0WC5`HFaRa$7-&f4azAucCV^VoGk2L6IUyct>_G;?2vM5D||QS&$F0ZW0u1 znHj_udW*WZ(rrc3d66PVd5gOjp;vMcqt7BmD!nCnifqa0KD`ksveaXi!K`B6v_Lmx zo3}heQby(w1(7mU-qCrQc`CP=_ajACdih3qc}{1tS~|VQ z>e3v{M6}2%@A&SW@v3u*&~GBG)OvN@i-;?7ionO4ng4{hx_f6jy~ycDGtBzrNSOwY zSw`;E=*VVm%Fq{)GHde=T67n&Wvo(c*IA?2l&3o%=X8hQTu!gE=KNGMFL!RDt0tKj zH7~N|ThzXZw9}HeOmufPWwO}DiFwO-b8>Nu@{LxnEzc0t<_v)t9zm_$>*zK+(1dDp zn~9cLmzN8y&1r@%j5M=e{Hz;ho!*9=R^V06OwOjfjN^rzwMPGr6geqxD<|i+@pDZ9gM|@Tqcn~O!R6Pvw;SQ z6JXO>i>pQ&XY2^|bfg|1>{ozhOkxmXas$#pz+wrd?I1KOXk8l+ zFoBL%1JMCc8n}271el_sbRv{4gwi!o`Vf>p$+VaKs)HocR;Eqt*Bm6-ue0A|zYSdM bQw>}zeFw;IWKv dialog = new Dialog<>(); + dialog.setTitle("add Dialog"); + dialog.setHeaderText("Look, a Custom Login Dialog"); + + // Set the icon (must be included in the project). +// dialog.setGraphic(new ImageView(this.getClass().getResource("login.png").toString())); + + // Set the button types. + ButtonType okayBtn = new ButtonType("Okay", ButtonData.OK_DONE); + dialog.getDialogPane().getButtonTypes().addAll(okayBtn, ButtonType.CANCEL); + + // Create gameTitle, titleID, gamePath and gameCover TextFields and Labels and two Btn for filechooser + GridPane grid = new GridPane(); + grid.setHgap(10); + grid.setVgap(10); + grid.setPadding(new Insets(20, 150, 10, 10)); + + TextField gameTitleTF = new TextField(); + gameTitleTF.setPromptText("game tile"); + TextField titleIDTF = new TextField(); + titleIDTF.setPromptText("title ID"); + TextField romPathTF = new TextField(); + romPathTF.setPromptText("ROM path"); + TextField gameCoverTF = new TextField(); + gameCoverTF.setPromptText("cover path"); + + Button selectPathBtn = new Button("select .rpx file"); + Button selectCoverBtn = new Button("select .rpx file"); + + selectPathBtn.setOnAction(new EventHandler() { + @Override + public void handle(ActionEvent event) { + FileChooser romDirectoryChooser = new FileChooser(); + File romDirectory = romDirectoryChooser.showOpenDialog(main.primaryStage); + romPathTF.setText(romDirectory.getAbsolutePath()); + } + }); + + selectCoverBtn.setOnAction(new EventHandler() { + @Override + public void handle(ActionEvent event) { + FileChooser coverDirectoryChooser = new FileChooser(); + File coverDirectory = coverDirectoryChooser.showOpenDialog(main.primaryStage); + gameCoverTF.setText(coverDirectory.getAbsolutePath()); + } + }); + + grid.add(new Label("game title:"), 0, 0); + grid.add(gameTitleTF, 1, 0); + grid.add(new Label("title id:"), 0, 1); + grid.add(titleIDTF, 1, 1); + grid.add(new Label("ROM path:"), 0, 2); + grid.add(romPathTF, 1, 2); + grid.add(selectPathBtn, 2, 2); + grid.add(new Label("cover path:"), 0, 3); + grid.add(gameCoverTF, 1, 3); + grid.add(selectCoverBtn, 2, 3); + + dialog.getDialogPane().setContent(grid); + + Optional result2 = dialog.showAndWait(); + if (result2.isPresent()){ + romPath = romPathTF.getText(); + coverPath = gameCoverTF.getText(); + title = gameTitleTF.getText(); + titleID = titleIDTF.getText(); + + System.out.println("Game title: " + title); + System.out.println("Title ID: " + titleID); + System.out.println("ROM path: " + romPath); + System.out.println("Game cover: " + coverPath); + } + + + // END TESTING - TextInputDialog titleDialog = new TextInputDialog(); - titleDialog.setTitle("cemu_UI"); - titleDialog.setHeaderText("add new Game"); - titleDialog.setContentText("Please enter the name of the game you want to add:"); - titleDialog.initOwner(main.primaryStage); - - Optional titleResult = titleDialog.showAndWait(); - if (titleResult.isPresent()){ - title = titleResult.get(); - }else{ - exit = true; - } - - if(exit == false){ - TextInputDialog titleIDDialog = new TextInputDialog(); - titleIDDialog.setTitle("cemu_UI"); - titleIDDialog.setHeaderText("add new Game"); - titleIDDialog.setContentText("Please enter the title-ID (12345678-12345678) \nof the game you want to add:"); - titleIDDialog.initOwner(main.primaryStage); - - Optional titleIDResult = titleIDDialog.showAndWait(); - if (titleIDResult.isPresent()){ - titleID = titleIDResult.get(); - }else{ - exit = true; - } - } - - if(exit == false){ - Alert romAlert = new Alert(AlertType.CONFIRMATION); //new alert with file-chooser - romAlert.setTitle("cemu_UI"); - romAlert.setHeaderText("add new Game"); - romAlert.setContentText("Please select the .rpx file from the game you want to add."); - romAlert.initOwner(main.primaryStage); - - Optional result = romAlert.showAndWait(); - if (result.get() == ButtonType.OK){ - FileChooser directoryChooser = new FileChooser(); - File selectedDirectory = directoryChooser.showOpenDialog(main.primaryStage); - romPath = selectedDirectory.getAbsolutePath(); - } else { - exit = true; - } - } - - if(exit == false){ - Alert coverAlert = new Alert(AlertType.CONFIRMATION); //new alert with file-chooser - coverAlert.setTitle("cemu_UI"); - coverAlert.setHeaderText("add new Game"); - coverAlert.setContentText("Please select the cover for the game you want to add."); - coverAlert.initOwner(main.primaryStage); - - Optional coverResult = coverAlert.showAndWait(); - if (coverResult.get() == ButtonType.OK){ - FileChooser directoryChooser = new FileChooser(); - File selectedDirectory = directoryChooser.showOpenDialog(main.primaryStage); - coverPath = selectedDirectory.getAbsolutePath(); - } else { - exit = true; - } - } +// TextInputDialog titleDialog = new TextInputDialog(); +// titleDialog.setTitle("cemu_UI"); +// titleDialog.setHeaderText("add new Game"); +// titleDialog.setContentText("Please enter the name of the game you want to add:"); +// titleDialog.initOwner(main.primaryStage); +// +// Optional titleResult = titleDialog.showAndWait(); +// if (titleResult.isPresent()){ +// title = titleResult.get(); +// }else{ +// exit = true; +// } +// +// if(exit == false){ +// TextInputDialog titleIDDialog = new TextInputDialog(); +// titleIDDialog.setTitle("cemu_UI"); +// titleIDDialog.setHeaderText("add new Game"); +// titleIDDialog.setContentText("Please enter the title-ID (12345678-12345678) \nof the game you want to add:"); +// titleIDDialog.initOwner(main.primaryStage); +// +// Optional titleIDResult = titleIDDialog.showAndWait(); +// if (titleIDResult.isPresent()){ +// titleID = titleIDResult.get(); +// }else{ +// exit = true; +// } +// } +// +// if(exit == false){ +// Alert romAlert = new Alert(AlertType.CONFIRMATION); //new alert with file-chooser +// romAlert.setTitle("cemu_UI"); +// romAlert.setHeaderText("add new Game"); +// romAlert.setContentText("Please select the .rpx file from the game you want to add."); +// romAlert.initOwner(main.primaryStage); +// +// Optional result = romAlert.showAndWait(); +// if (result.get() == ButtonType.OK){ +// FileChooser directoryChooser = new FileChooser(); +// File selectedDirectory = directoryChooser.showOpenDialog(main.primaryStage); +// romPath = selectedDirectory.getAbsolutePath(); +// } else { +// exit = true; +// } +// } +// +// if(exit == false){ +// Alert coverAlert = new Alert(AlertType.CONFIRMATION); //new alert with file-chooser +// coverAlert.setTitle("cemu_UI"); +// coverAlert.setHeaderText("add new Game"); +// coverAlert.setContentText("Please select the cover for the game you want to add."); +// coverAlert.initOwner(main.primaryStage); +// +// Optional coverResult = coverAlert.showAndWait(); +// if (coverResult.get() == ButtonType.OK){ +// FileChooser directoryChooser = new FileChooser(); +// File selectedDirectory = directoryChooser.showOpenDialog(main.primaryStage); +// coverPath = selectedDirectory.getAbsolutePath(); +// } else { +// exit = true; +// } +// } /** - * if exit == true then don't add a rom + * FIXME if statement is useless at the moment * else convert the cover to .png add copy it into the picture cache * then add the rom to the local_roms database */ - if(exit){ + if (romPath == "" || coverPath == "" || title == "" || titleID == "") { LOGGER.info("No parameter set!"); - }else{ + } else { coverName = new File(coverPath).getName(); try { - if(System.getProperty("os.name").equals("Linux")){ + if (System.getProperty("os.name").equals("Linux")) { pictureCache = pictureCacheLinux; - }else{ + } else { pictureCache = pictureCacheWin; } - BufferedImage originalImage = ImageIO.read(new File(coverPath));//load cover + BufferedImage originalImage = ImageIO.read(new File(coverPath)); //load cover int type = originalImage.getType() == 0 ? BufferedImage.TYPE_INT_ARGB : originalImage.getType(); BufferedImage resizeImagePNG = resizeImage(originalImage, type, 400, 600); ImageIO.write(resizeImagePNG, "png", new File(pictureCache+"\\"+coverName)); //save image to pictureCache coverPath = pictureCache+"\\"+coverName; } catch (IOException e) { - LOGGER.error("Ops something went wrong!", e); + LOGGER.error("Ops something went wrong! Error while resizing cover.", e); } try { dbController.addRom(title, coverPath, romPath, titleID, "", "", "", "0"); dbController.loadSingleRom(titleID); } catch (SQLException e) { - LOGGER.error("Oops, something went wrong! Error during adding a game.", e); + LOGGER.error("Oops, something went wrong! Error while adding a game.", e); } } } @@ -1272,8 +1355,10 @@ public class MainWindowController { private void generatePosition() { int xPosHelperMax; - //FIXME somehow the window width is set to 8, if we can find a way to get always the real window with - //(at the beginning we have to use prefWidth after resizing Width) we can remove this + /**FIXME somehow the window width is set to 8, if we can find a way to get always the real window with + * PRIORITY_HIGH check if we can use main.pane.getWidth()!! + *(at the beginning we have to use prefWidth after resizing Width) we can remove this + */ if (mainAnchorPane.getWidth() < 10) { xPosHelperMax = (int) Math.floor((mainAnchorPane.getPrefWidth() - 36) / 217); } else { @@ -1290,7 +1375,7 @@ public class MainWindowController { xPosHelper++; } -// System.out.println("Breit: " + mainAnchorPane.getPrefWidth()); +// System.out.println("Breit: " + main.pane.getWidth()); // System.out.println("Breit2: " + mainAnchorPane.getWidth()); // System.out.println("xPosHelper: " + xPosHelper); // System.out.println("yPos: " + yPos);