Skip to content

Commit 35c8649

Browse files
committed
Add history navigator shortcuts (Z: prev, X: next)
1 parent 124ac06 commit 35c8649

File tree

1 file changed

+25
-2
lines changed

1 file changed

+25
-2
lines changed

src/main/java/root/javafx/Controller/MonitoringAPController.java

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package root.javafx.Controller;
22

33
import java.io.IOException;
4+
import java.net.URL;
45
import java.time.LocalDate;
56
import java.time.format.DateTimeFormatter;
67
import java.util.ArrayList;
@@ -9,20 +10,25 @@
910
import java.util.List;
1011
import java.util.Locale;
1112
import java.util.Map;
13+
import java.util.ResourceBundle;
1214
import java.util.stream.Collectors;
1315

1416
import com.jfoenix.controls.JFXButton;
1517
import com.jfoenix.controls.JFXComboBox;
1618

1719
import javafx.event.ActionEvent;
20+
import javafx.event.EventHandler;
1821
import javafx.fxml.FXML;
1922
import javafx.fxml.FXMLLoader;
23+
import javafx.fxml.Initializable;
2024
import javafx.scene.Node;
2125
import javafx.scene.control.Alert.AlertType;
2226
import javafx.scene.control.Button;
2327
import javafx.scene.control.DatePicker;
2428
import javafx.scene.control.Label;
2529
import javafx.scene.control.Pagination;
30+
import javafx.scene.input.KeyCode;
31+
import javafx.scene.input.KeyEvent;
2632
import javafx.scene.layout.AnchorPane;
2733
import javafx.scene.layout.BorderPane;
2834
import javafx.scene.layout.HBox;
@@ -43,7 +49,7 @@
4349
import root.utils.DateUtils;
4450
import root.utils.UnitUtils.FileSize;
4551

46-
public class MonitoringAPController<T extends MonitoringResult> extends BorderPane {
52+
public class MonitoringAPController<T extends MonitoringResult> extends BorderPane implements Initializable {
4753

4854
private static final String MONITORING_HISTORY_DEFAULT_TEXT = "기록을 조회해주세요.";
4955

@@ -59,7 +65,7 @@ public class MonitoringAPController<T extends MonitoringResult> extends BorderPa
5965

6066
@FXML
6167
JFXComboBox<FileSize> unitComboBox;
62-
68+
6369
@FXML
6470
JFXComboBox<RoundingDigits> roundComboBox;
6571

@@ -101,6 +107,22 @@ public class MonitoringAPController<T extends MonitoringResult> extends BorderPa
101107
}
102108
}
103109

110+
111+
@Override
112+
public void initialize(URL location, ResourceBundle resources) {
113+
addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
114+
public void handle(KeyEvent ke) {
115+
if(ke.getCode().equals(KeyCode.Z)) {
116+
prevHistoryBtn.fire();
117+
ke.consume();
118+
} else if(ke.getCode().equals(KeyCode.X)) {
119+
nextHistoryBtn.fire();
120+
ke.consume();
121+
}
122+
}
123+
});
124+
}
125+
104126
public MonitoringAPController(Class<T> clazz) {
105127
this.reportUsecase = new ReportUsecaseImpl(ReportFileRepo.getInstance());
106128

@@ -468,4 +490,5 @@ public void setAliasComboBoxItems(List<String> items) {
468490
public String getSelectedAliasComboBoxItem() {
469491
return this.aliasComboBox.getSelectionModel().getSelectedItem();
470492
}
493+
471494
}

0 commit comments

Comments
 (0)