|
|
|
|
@ -17,10 +17,7 @@ import seng302.Model.*;
|
|
|
|
|
import seng302.VisualiserInput;
|
|
|
|
|
|
|
|
|
|
import java.net.URL;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.ResourceBundle;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Created by fwy13 on 15/03/2017.
|
|
|
|
|
@ -39,6 +36,7 @@ public class RaceController extends Controller {
|
|
|
|
|
private static String abbrevCheckAnno = "abbrev";
|
|
|
|
|
private static String speedCheckAnno = "speed";
|
|
|
|
|
private static String pathCheckAnno = "path";
|
|
|
|
|
private static String timeCheckAnno = "time";
|
|
|
|
|
|
|
|
|
|
private static int noBtn = 0;
|
|
|
|
|
private static int hideBtn = 1;
|
|
|
|
|
@ -63,13 +61,13 @@ public class RaceController extends Controller {
|
|
|
|
|
@FXML StackPane arrowPane;
|
|
|
|
|
@FXML CheckBox showFPS;
|
|
|
|
|
@FXML CheckBox showBoatPath;
|
|
|
|
|
@FXML Label timer;
|
|
|
|
|
@FXML Label FPS;
|
|
|
|
|
@FXML Label timeZone;
|
|
|
|
|
@FXML CheckBox showName;
|
|
|
|
|
@FXML CheckBox showAbbrev;
|
|
|
|
|
@FXML CheckBox showSpeed;
|
|
|
|
|
@FXML CheckBox showTime;
|
|
|
|
|
@FXML Label timer;
|
|
|
|
|
@FXML Label FPS;
|
|
|
|
|
@FXML Label timeZone;
|
|
|
|
|
@FXML Button saveAnno;
|
|
|
|
|
@FXML TableView<Boat> boatInfoTable;
|
|
|
|
|
@FXML TableColumn<Boat, String> boatPlacingColumn;
|
|
|
|
|
@ -357,6 +355,7 @@ public class RaceController extends Controller {
|
|
|
|
|
annoShownBeforeHide.put(abbrevCheckAnno, showAbbrev.isSelected());
|
|
|
|
|
annoShownBeforeHide.put(pathCheckAnno, showBoatPath.isSelected());
|
|
|
|
|
annoShownBeforeHide.put(speedCheckAnno, showSpeed.isSelected());
|
|
|
|
|
annoShownBeforeHide.put(timeCheckAnno, showTime.isSelected());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@ -370,12 +369,14 @@ public class RaceController extends Controller {
|
|
|
|
|
importantAnno.put(abbrevCheckAnno, false);
|
|
|
|
|
importantAnno.put(pathCheckAnno, false);
|
|
|
|
|
importantAnno.put(speedCheckAnno, false);
|
|
|
|
|
importantAnno.put(timeCheckAnno, true);
|
|
|
|
|
|
|
|
|
|
annoShownBeforeHide = new HashMap<>();
|
|
|
|
|
annoShownBeforeHide.put(nameCheckAnno, true);
|
|
|
|
|
annoShownBeforeHide.put(abbrevCheckAnno, true);
|
|
|
|
|
annoShownBeforeHide.put(pathCheckAnno, true);
|
|
|
|
|
annoShownBeforeHide.put(speedCheckAnno, true);
|
|
|
|
|
annoShownBeforeHide.put(timeCheckAnno, true);
|
|
|
|
|
//listener for show name in annotation
|
|
|
|
|
showName.selectedProperty().addListener((ov, old_val, new_val) -> {
|
|
|
|
|
if (old_val != new_val) {
|
|
|
|
|
@ -451,7 +452,20 @@ public class RaceController extends Controller {
|
|
|
|
|
prevBtnChecked = noBtn;
|
|
|
|
|
});
|
|
|
|
|
showTime.selectedProperty().addListener((ov, old_val, new_val) -> {
|
|
|
|
|
raceMap.toggleAnnoTime();
|
|
|
|
|
if (old_val != new_val) {
|
|
|
|
|
raceMap.toggleAnnoTime();
|
|
|
|
|
}
|
|
|
|
|
if (buttonChecked != hideBtn) {
|
|
|
|
|
if (prevBtnChecked == hideBtn && buttonChecked != showBtn){
|
|
|
|
|
storeCurrentAnnotationState();
|
|
|
|
|
} else {
|
|
|
|
|
annoShownBeforeHide.put(timeCheckAnno, showTime.isSelected());
|
|
|
|
|
}
|
|
|
|
|
if (buttonChecked == noBtn) {
|
|
|
|
|
annotationGroup.selectToggle(showAnnoRBTN);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
prevBtnChecked = noBtn;
|
|
|
|
|
raceMap.update();
|
|
|
|
|
});
|
|
|
|
|
//listener to save currently selected annotation
|
|
|
|
|
@ -471,6 +485,7 @@ public class RaceController extends Controller {
|
|
|
|
|
showAbbrev.setSelected(false);
|
|
|
|
|
showBoatPath.setSelected(false);
|
|
|
|
|
showSpeed.setSelected(false);
|
|
|
|
|
showTime.setSelected(false);
|
|
|
|
|
annotationGroup.selectToggle(hideAnnoRBTN);
|
|
|
|
|
raceMap.update();
|
|
|
|
|
buttonChecked = noBtn;
|
|
|
|
|
@ -483,6 +498,7 @@ public class RaceController extends Controller {
|
|
|
|
|
showAbbrev.setSelected(annoShownBeforeHide.get(abbrevCheckAnno));
|
|
|
|
|
showBoatPath.setSelected(annoShownBeforeHide.get(pathCheckAnno));
|
|
|
|
|
showSpeed.setSelected(annoShownBeforeHide.get(speedCheckAnno));
|
|
|
|
|
showTime.setSelected(annoShownBeforeHide.get(timeCheckAnno));
|
|
|
|
|
raceMap.update();
|
|
|
|
|
buttonChecked = noBtn;
|
|
|
|
|
prevBtnChecked = showBtn;
|
|
|
|
|
@ -494,7 +510,7 @@ public class RaceController extends Controller {
|
|
|
|
|
showAbbrev.setSelected(true);
|
|
|
|
|
showSpeed.setSelected(true);
|
|
|
|
|
showBoatPath.setSelected(false);
|
|
|
|
|
//partialAnnoRBTN.setSelected(true);//as the others will set the show button back to visible then we need to make it so that this is rechecked.
|
|
|
|
|
showTime.setSelected(false);
|
|
|
|
|
annotationGroup.selectToggle(partialAnnoRBTN);
|
|
|
|
|
raceMap.update();
|
|
|
|
|
buttonChecked = noBtn;
|
|
|
|
|
|