1
0
mirror of https://github.com/DanilaFe/abacus synced 2026-01-15 11:25:20 +00:00

Plugin fixes

This commit is contained in:
Riley Jones
2017-08-03 15:16:26 -07:00
parent 0108c7bcc1
commit c680168d18
5 changed files with 45 additions and 14 deletions

View File

@@ -68,6 +68,10 @@ public class AbacusController {
*/
private boolean calculating;
/**
* Seconds delayed for timer;
*/
private double delay = 0;
private Abacus abacus;
@FXML
@@ -103,6 +107,20 @@ public class AbacusController {
private void performCalculation(){
Runnable calculator = new Runnable(){
public void run() {
if(delay>0) {
Runnable timer = new Runnable() {
public void run() {
long gap = (long) (delay * 1000);
long startTime = System.currentTimeMillis();
while (System.currentTimeMillis() - startTime <= gap) {
}
stopCalculation();
}
};
Thread maxTime = new Thread(timer);
maxTime.setName("maxTime");
maxTime.start();
}
calculating = true;
Platform.runLater(() -> inputButton.setDisable(true));
TreeNode constructedTree = abacus.parseString(inputField.getText());
@@ -135,6 +153,7 @@ public class AbacusController {
};
if(!calculating) {
calcThread = new Thread(calculator);
calcThread.setName("calcThread");
calcThread.start();
}
}
@@ -142,7 +161,7 @@ public class AbacusController {
private void stopCalculation(){
calcThread.interrupt();
calculating = false;
inputButton.setDisable(false);
Platform.runLater(() ->inputButton.setDisable(false));
}
}