Advertisement
Guest User

Untitled

a guest
Jun 6th, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.52 KB | None | 0 0
  1. package view;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import controller.databaseConnection;
  6. import javafx.beans.value.ChangeListener;
  7. import javafx.beans.value.ObservableValue;
  8. import javafx.event.ActionEvent;
  9. import javafx.event.EventHandler;
  10. import javafx.geometry.Orientation;
  11. import javafx.geometry.Pos;
  12. import javafx.scene.Scene;
  13. import javafx.scene.control.Button;
  14. import javafx.scene.control.Label;
  15. import javafx.scene.control.ScrollBar;
  16. import javafx.scene.layout.HBox;
  17. import javafx.scene.layout.Pane;
  18. import javafx.scene.layout.VBox;
  19. import javafx.scene.paint.Color;
  20. import javafx.scene.text.Text;
  21. import javafx.stage.Stage;
  22.  
  23. public class ViewChallengesScreen extends Gui {
  24. private Stage primaryStage;
  25. private databaseConnection dbcon = new databaseConnection("jdbc:mysql://databases.aii.avans.nl/sficken_db",
  26. "sficken", "Ab12345");
  27. private VBox challenges;
  28. Pane viewChallengesPane = new Pane();
  29. Scene viewChallengesScene = new Scene(viewChallengesPane, 400, 800);
  30. PlayScreen playScreen;
  31.  
  32. public ViewChallengesScreen(Stage primaryStage) {
  33. this.primaryStage = primaryStage;
  34. challenges = new VBox(15);
  35. challenges.setAlignment(Pos.CENTER);
  36. challenges.setTranslateY(150);
  37. challenges.setTranslateX(12.5);
  38. }
  39.  
  40. public void makeViewChallengesScreen() {
  41. setUpScene();
  42. makeBackButton();
  43.  
  44. addChallenges();
  45. }
  46.  
  47. private void setUpScene() {
  48. primaryStage.setTitle("Uitdagingen bekijken");
  49. primaryStage.centerOnScreen();
  50. viewChallengesScene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
  51. viewChallengesPane.getStyleClass().add("pane");
  52. primaryStage.setScene(viewChallengesScene);
  53. primaryStage.setResizable(false);
  54.  
  55. }
  56.  
  57. private void makeBackButton() {
  58. Button backButton = new Button("Terug");
  59. backButton.setPrefHeight(50);
  60. backButton.setPrefWidth(150);
  61. backButton.setTranslateX(0);
  62. backButton.setTranslateY(0);
  63. viewChallengesPane.getChildren().add(backButton);
  64. backButton.setOnAction(new EventHandler<ActionEvent>() {
  65.  
  66. @Override
  67. public void handle(ActionEvent event) {
  68. MainMenuScreen screen = new MainMenuScreen();
  69. screen.makeMainMenuScreen(primaryStage);
  70. }
  71. });
  72. }
  73.  
  74. private void addChallenges() {
  75.  
  76. ArrayList<String> gameIDs = dbcon.select("SELECT * FROM speler WHERE username = '" + player.getName() + "' AND speelstatus = 'uitgedaagde'", "idspel");
  77.  
  78. for (int i = 0; i < gameIDs.size(); i++) {
  79. addChallenge(i , gameIDs);
  80. System.out.println(i + " is gelukt");
  81. }
  82.  
  83. viewChallengesPane.getChildren().add(challenges);
  84. }
  85.  
  86. private void addChallenge(int gameIdIndex , ArrayList<String> gameIDs) {
  87.  
  88. HBox challenge = new HBox();
  89. challenge.setAlignment(Pos.CENTER);
  90.  
  91.  
  92. Text challengerUsername = new Text(
  93. dbcon.select("SELECT username FROM speler WHERE speelstatus = 'uitdager' AND idspel = "+ gameIDs.get(gameIdIndex), "username").get(0));
  94.  
  95. challengerUsername.getStyleClass().add("challengerText");
  96. challenge.getChildren().add(challengerUsername);
  97.  
  98. VBox buttons = new VBox(5);
  99. buttons.setTranslateX(150);
  100.  
  101. Button acceptChallenge = new Button("Accepteren");
  102. acceptChallenge.setPrefHeight(40);
  103. acceptChallenge.setPrefWidth(150);
  104.  
  105. buttons.getChildren().add(acceptChallenge);
  106. acceptChallenge.setOnAction(new EventHandler<ActionEvent>() {
  107.  
  108. @Override
  109. public void handle(ActionEvent event) {
  110. dbcon.insert("UPDATE speler SET speelstatus = 'geaccepteerd' WHERE username = '" + player.getName()
  111. + "' AND idspel = " + gameIDs.get(gameIdIndex));
  112.  
  113. playScreen = new PlayScreen();
  114. playScreen.makePlayScreen(primaryStage);
  115. }
  116. });
  117.  
  118. Button denyChallenge = new Button("Afwijzen");
  119. denyChallenge.setPrefHeight(40);
  120. denyChallenge.setPrefWidth(150);
  121. // denyChallenge.setTranslateX(250);
  122. // denyChallenge.setTranslateY(y+50);
  123. buttons.getChildren().add(denyChallenge);
  124. // viewChallengesPane.getChildren().add(denyChallenge);
  125. denyChallenge.setOnAction(new EventHandler<ActionEvent>() {
  126.  
  127. @Override
  128. public void handle(ActionEvent event) {
  129. dbcon.insert("UPDATE speler SET speelstatus = 'geweigerd' WHERE username = '" + player.getName() + "' AND idspel = " + gameIDs.get(gameIdIndex));
  130. viewChallengesPane.getChildren().remove(acceptChallenge);
  131. viewChallengesPane.getChildren().remove(denyChallenge);
  132. viewChallengesPane.getChildren().remove(challengerUsername);
  133. challenges.getChildren().remove(challenge);
  134. }
  135. });
  136.  
  137. challenge.getChildren().add(buttons);
  138. challenges.getChildren().add(challenge);
  139.  
  140. }
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement