diff --git a/NotesEditor.iml b/NotesEditor.iml index d5c0743..c90834f 100644 --- a/NotesEditor.iml +++ b/NotesEditor.iml @@ -8,5 +8,4 @@ - - + \ No newline at end of file diff --git a/src/notes/MainApp.java b/src/notes/MainApp.java index e2c3abc..f6aa632 100644 --- a/src/notes/MainApp.java +++ b/src/notes/MainApp.java @@ -52,36 +52,41 @@ public Stage getPrimaryStage() { public void showAuthorizationOverview() { try { - FXMLLoader loader = new FXMLLoader(); - loader.setLocation(MainApp.class.getResource("view/AuthorizationOverview.fxml")); - AnchorPane authorizationOverview = loader.load(); + //Можно вынести в отдельный метод + FXMLLoader loader = new FXMLLoader(); + loader.setLocation(MainApp.class.getResource("view/AuthorizationOverview.fxml")); + AnchorPane authorizationOverview = loader.load(); - AuthorizationOverviewController controller = loader.getController(); - controller.setMainApp(this); + AuthorizationOverviewController controller = loader.getController(); + controller.setMainApp(this); - Scene scene = new Scene(authorizationOverview); - primaryStage.setScene(scene); - primaryStage.show(); + Scene scene = new Scene(authorizationOverview); + primaryStage.setScene(scene); + primaryStage.show(); } catch (IOException e) { e.printStackTrace(); } } + + // Можно вынести в класс где используется, т.к. этот метод больше подходит под логику AuthorizationOverviewController public void showNoteListOverview(User user) { try { - FXMLLoader loader = new FXMLLoader(); - loader.setLocation(MainApp.class.getResource("view/NoteListOverview.fxml")); + //Можно вынести в отдельный метод + FXMLLoader loader = new FXMLLoader(); + loader.setLocation(MainApp.class.getResource("view/NoteListOverview.fxml")); + + AnchorPane noteListOverview = loader.load(); - AnchorPane noteListOverview = loader.load(); + NoteListOverviewController controller = loader.getController(); + controller.setMainApp(this); - NoteListOverviewController controller = loader.getController(); controller.setUser(user); - controller.setMainApp(this); - Scene scene = new Scene(noteListOverview); - primaryStage.setScene(scene); - primaryStage.show(); + Scene scene = new Scene(noteListOverview); + primaryStage.setScene(scene); + primaryStage.show(); } catch (IOException e) { e.printStackTrace(); } diff --git a/src/notes/Utils/InputCheckUtil.java b/src/notes/Utils/InputCheckUtil.java index 3001ab4..04fde45 100644 --- a/src/notes/Utils/InputCheckUtil.java +++ b/src/notes/Utils/InputCheckUtil.java @@ -1,6 +1,8 @@ package notes.Utils; public class InputCheckUtil { + + //ApacheCommons - StringUtils.isEmpty() - когда подключишь Maven public static boolean isInputValid(String string) { return string != null && string.length() > 0; } diff --git a/src/notes/view/NoteListOverviewController.java b/src/notes/view/NoteListOverviewController.java index 2d7bcf0..ebcff53 100644 --- a/src/notes/view/NoteListOverviewController.java +++ b/src/notes/view/NoteListOverviewController.java @@ -27,8 +27,12 @@ public class NoteListOverviewController { private void initialize() { noteColumn.setCellValueFactory(cellData -> cellData.getValue().titleProperty()); + //А что было, если не вызывать этот метод? showUserNote(null); + //Если сделать Ctrl+LeftClick на методе "addListener" - можно глянуть его описание, + //Там сказано, что если не убирать регистрацию Listener-а при удалении элемента, на пример, то + //Со временем будет заметна утечка памяти. Надо применить .removeListener() после удаления элемента. noteTable.getSelectionModel().selectedItemProperty().addListener( (observable, oldValue, newValue) -> showUserNote(newValue) );