Skip to content

Commit 2a52352

Browse files
committed
Refactor demo
1 parent 4880391 commit 2a52352

File tree

3 files changed

+15
-11
lines changed

3 files changed

+15
-11
lines changed

patternfx-demo/src/main/java/com/techsenger/patternfx/demo/Demo.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,8 @@ public void start(Stage stage) throws Exception {
3333
var view = new PersonRegistryView(stage, viewModel);
3434
var component = new PersonRegistryComponent(view);
3535
component.initialize();
36-
// just to show that every component must be deinitialized,
37-
// it has no effect on the demo application
38-
stage.setOnCloseRequest(e -> component.deinitialize());
36+
// the component will be deinitialized automatically when the stage
37+
// is closed, via the handler registered with stage#setOnCloseRequest.
3938
}
4039

4140
}

patternfx-demo/src/main/java/com/techsenger/patternfx/demo/PersonRegistryView.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -88,19 +88,20 @@ protected void build() {
8888
@Override
8989
protected void bind() {
9090
super.bind();
91-
var vm = getViewModel();
92-
stage.titleProperty().bind(vm.titleProperty());
93-
vm.selectedPersonProperty().bind(personTable.getSelectionModel().selectedItemProperty());
94-
removeButton.disableProperty().bind(vm.removeDisabledProperty());
91+
var viewModel = getViewModel();
92+
stage.titleProperty().bind(viewModel.titleProperty());
93+
viewModel.selectedPersonProperty().bind(personTable.getSelectionModel().selectedItemProperty());
94+
removeButton.disableProperty().bind(viewModel.removeDisabledProperty());
9595
}
9696

9797
@Override
9898
protected void addHandlers() {
9999
super.addHandlers();
100-
var vm = getViewModel();
101-
addButton.setOnAction(e -> vm.add());
102-
removeButton.setOnAction(e -> vm.remove());
103-
refreshButton.setOnAction(e -> vm.refresh());
100+
var viewModel = getViewModel();
101+
addButton.setOnAction(e -> viewModel.add());
102+
removeButton.setOnAction(e -> viewModel.remove());
103+
refreshButton.setOnAction(e -> viewModel.refresh());
104+
stage.setOnCloseRequest(e -> viewModel.close());
104105
}
105106

106107
Stage getStage() {

patternfx-demo/src/main/java/com/techsenger/patternfx/demo/PersonRegistryViewModel.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,10 @@ void remove() {
109109
}
110110
}
111111

112+
void close() {
113+
getMediator().deinitialize();
114+
}
115+
112116
private void add(Person person) {
113117
service.save(person);
114118
persons.add(person);

0 commit comments

Comments
 (0)