|
|
@ -78,12 +78,7 @@ public class QRDisplayDialog extends Dialog<UR> { |
|
|
|
if(encoder.isSinglePart()) { |
|
|
|
qrImageView.setImage(getQrCode(currentPart)); |
|
|
|
} else { |
|
|
|
animateQRService = new AnimateQRService(); |
|
|
|
animateQRService.setPeriod(Duration.millis(ANIMATION_PERIOD_MILLIS)); |
|
|
|
animateQRService.start(); |
|
|
|
setOnCloseRequest(event -> { |
|
|
|
animateQRService.cancel(); |
|
|
|
}); |
|
|
|
createAnimateQRService(); |
|
|
|
} |
|
|
|
|
|
|
|
final ButtonType cancelButtonType = new javafx.scene.control.ButtonType("Cancel", ButtonBar.ButtonData.CANCEL_CLOSE); |
|
|
@ -124,6 +119,15 @@ public class QRDisplayDialog extends Dialog<UR> { |
|
|
|
setResultConverter(dialogButton -> dialogButton != cancelButtonType ? ur : null); |
|
|
|
} |
|
|
|
|
|
|
|
private void createAnimateQRService() { |
|
|
|
animateQRService = new AnimateQRService(); |
|
|
|
animateQRService.setPeriod(Duration.millis(ANIMATION_PERIOD_MILLIS)); |
|
|
|
animateQRService.start(); |
|
|
|
setOnCloseRequest(event -> { |
|
|
|
animateQRService.cancel(); |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
private void nextPart() { |
|
|
|
if(!useLegacyEncoding) { |
|
|
|
String fragment = encoder.nextPart(); |
|
|
@ -169,6 +173,8 @@ public class QRDisplayDialog extends Dialog<UR> { |
|
|
|
|
|
|
|
nextPart(); |
|
|
|
qrImageView.setImage(getQrCode(currentPart)); |
|
|
|
} else if(animateQRService == null) { |
|
|
|
createAnimateQRService(); |
|
|
|
} else if(!animateQRService.isRunning()) { |
|
|
|
animateQRService.reset(); |
|
|
|
animateQRService.start(); |
|
|
@ -185,6 +191,8 @@ public class QRDisplayDialog extends Dialog<UR> { |
|
|
|
} |
|
|
|
|
|
|
|
qrImageView.setImage(getQrCode(currentPart)); |
|
|
|
} else if(animateQRService == null) { |
|
|
|
createAnimateQRService(); |
|
|
|
} else if(!animateQRService.isRunning()) { |
|
|
|
animateQRService.reset(); |
|
|
|
animateQRService.start(); |
|
|
|