89 public void handle(MouseEvent mouseEvent) {
90 EventType<? extends MouseEvent> mouseEventType = mouseEvent.getEventType();
91 if (mouseEventType == MouseEvent.MOUSE_PRESSED) {
93 startX = mouseEvent.getX();
94 chart.setCursor(Cursor.H_RESIZE);
95 }
else if (mouseEventType == MouseEvent.MOUSE_DRAGGED) {
96 if (
chart.getIntervalSelector() ==
null) {
98 chart.setIntervalSelector(
chart.newIntervalSelector());
99 chart.getIntervalSelector().prefHeightProperty().bind(
chart.heightProperty());
100 startX = mouseEvent.getX();
102 }
else if (mouseEvent.getX() >
startX) {
105 chart.getIntervalSelector().setPrefWidth(mouseEvent.getX() -
startX);
107 chart.getIntervalSelector().relocate(mouseEvent.getX(), 0);
108 chart.getIntervalSelector().setPrefWidth(
startX - mouseEvent.getX());
110 chart.getIntervalSelector().autosize();
111 }
else if (mouseEventType == MouseEvent.MOUSE_RELEASED) {
112 chart.setCursor(Cursor.DEFAULT);
113 }
else if (mouseEventType == MouseEvent.MOUSE_CLICKED) {
114 chart.setCursor(Cursor.DEFAULT);