@ -31,6 +31,8 @@ public class RaceController extends Controller {
private Map < String , Boolean > annoShownBeforeHide ;
private int buttonChecked ; //button currently checked allows the checkboxes to know whether or not to put it's state in history (if not hidden then store)
private int prevBtnChecked ; //button to keep track of previous pressed button incase we want to check a checkbox straight from hidden we do not wish for all previous to come on.
private boolean radioBtnChecked ;
private boolean selectShow = false ; //button to make it so that show doesn't run the listener
private static String nameCheckAnno = "name" ;
private static String abbrevCheckAnno = "abbrev" ;
@ -350,7 +352,22 @@ public class RaceController extends Controller {
}
private void storeCurrentAnnotationState ( ) {
private void storeCurrentAnnotationState ( String dictionaryAnnotationKey , boolean selected ) {
if ( buttonChecked ! = hideBtn ) {
//if we are checking the box straight out of hide instead of using the radio buttons
annoShownBeforeHide . put ( dictionaryAnnotationKey , selected ) ;
System . out . println ( ) ;
if ( prevBtnChecked = = hideBtn & & buttonChecked = = noBtn ) {
storeCurrentAnnotationDictionary ( ) ;
}
if ( buttonChecked = = noBtn ) {
selectShow = false ;
annotationGroup . selectToggle ( showAnnoRBTN ) ;
}
}
}
private void storeCurrentAnnotationDictionary ( ) {
annoShownBeforeHide . put ( nameCheckAnno , showName . isSelected ( ) ) ;
annoShownBeforeHide . put ( abbrevCheckAnno , showAbbrev . isSelected ( ) ) ;
annoShownBeforeHide . put ( pathCheckAnno , showBoatPath . isSelected ( ) ) ;
@ -381,92 +398,46 @@ public class RaceController extends Controller {
showName . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
if ( old_val ! = new_val ) {
raceMap . toggleAnnoName ( ) ;
radioBtnChecked = false ;
storeCurrentAnnotationState ( nameCheckAnno , new_val ) ;
raceMap . update ( ) ;
}
if ( buttonChecked ! = hideBtn ) {
//if we are checking the box straight out of hide instead of using the radio buttons
if ( prevBtnChecked = = hideBtn & & buttonChecked ! = showBtn ) {
storeCurrentAnnotationState ( ) ;
} else {
annoShownBeforeHide . put ( nameCheckAnno , showName . isSelected ( ) ) ;
}
if ( buttonChecked = = noBtn ) {
annotationGroup . selectToggle ( showAnnoRBTN ) ;
}
}
raceMap . update ( ) ;
prevBtnChecked = noBtn ;
} ) ;
//listener for show abbreviation for annotation
showAbbrev . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
if ( old_val ! = new_val ) {
raceMap . toggleAnnoAbbrev ( ) ;
radioBtnChecked = false ;
storeCurrentAnnotationState ( abbrevCheckAnno , new_val ) ;
raceMap . update ( ) ;
}
if ( buttonChecked ! = hideBtn ) {
if ( prevBtnChecked = = hideBtn & & buttonChecked ! = showBtn ) {
storeCurrentAnnotationState ( ) ;
} else {
annoShownBeforeHide . put ( abbrevCheckAnno , showAbbrev . isSelected ( ) ) ;
}
if ( buttonChecked = = noBtn ) {
annotationGroup . selectToggle ( showAnnoRBTN ) ;
}
}
raceMap . update ( ) ;
prevBtnChecked = noBtn ;
} ) ;
//listener for show boat path for annotation
showBoatPath . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
if ( old_val ! = new_val ) {
raceMap . toggleBoatPath ( ) ;
radioBtnChecked = false ;
storeCurrentAnnotationState ( pathCheckAnno , new_val ) ;
raceMap . update ( ) ;
}
if ( buttonChecked ! = hideBtn ) {
if ( prevBtnChecked = = hideBtn & & buttonChecked ! = showBtn ) {
storeCurrentAnnotationState ( ) ;
} else {
annoShownBeforeHide . put ( pathCheckAnno , showBoatPath . isSelected ( ) ) ;
}
if ( buttonChecked = = noBtn ) {
annotationGroup . selectToggle ( showAnnoRBTN ) ;
}
}
raceMap . update ( ) ;
prevBtnChecked = noBtn ;
} ) ;
//listener to show speed for annotation
showSpeed . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
if ( old_val ! = new_val ) {
raceMap . toggleAnnoSpeed ( ) ;
radioBtnChecked = false ;
storeCurrentAnnotationState ( speedCheckAnno , new_val ) ;
raceMap . update ( ) ;
}
if ( buttonChecked ! = hideBtn ) {
if ( prevBtnChecked = = hideBtn & & buttonChecked ! = showBtn ) {
storeCurrentAnnotationState ( ) ;
} else {
annoShownBeforeHide . put ( speedCheckAnno , showSpeed . isSelected ( ) ) ;
}
if ( buttonChecked = = noBtn ) {
annotationGroup . selectToggle ( showAnnoRBTN ) ;
}
}
raceMap . update ( ) ;
prevBtnChecked = noBtn ;
} ) ;
showTime . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
if ( old_val ! = new_val ) {
raceMap . toggleAnnoTime ( ) ;
radioBtnChecked = false ;
storeCurrentAnnotationState ( timeCheckAnno , new_val ) ;
raceMap . update ( ) ;
}
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
saveAnno . setOnAction ( event - > {
@ -477,47 +448,81 @@ public class RaceController extends Controller {
presetAnno . add ( showBoatPath . isSelected ( ) ) ;
presetAnno . add ( showTime . isSelected ( ) ) ;
} ) ;
//listener for hiding
hideAnnoRBTN . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
hideAnnoRBTN . setOnAction ( ( e ) - > {
System . out . println ( "called hide" ) ;
buttonChecked = hideBtn ;
//raceMap.hideAnnotations();
selectShow = false ;
showName . setSelected ( false ) ;
showAbbrev . setSelected ( false ) ;
showBoatPath . setSelected ( false ) ;
showSpeed . setSelected ( false ) ;
showTime . setSelected ( false ) ;
annotationGroup . selectToggle ( hideAnnoRBTN ) ;
raceMap . update ( ) ;
buttonChecked = noBtn ;
prevBtnChecked = hideBtn ;
selectShow = true ;
} ) ;
//listener for showing all annotations
show AnnoRBTN. selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
buttonChecked = show Btn;
showName . setSelected ( annoShownBeforeHide . get ( nameCheckAnno ) ) ;
showAbbrev . setSelected ( annoShownBeforeHide . get ( abbrevCheckAnno ) ) ;
showBoatPath . setSelected ( annoShownBeforeHide . get ( pathCheckAnno ) ) ;
showSpeed . setSelected ( annoShownBeforeHide . get ( speedCheckAnno ) ) ;
showTime . setSelected ( annoShownBeforeHide . get ( timeCheckAnno ) ) ;
//listener for hiding
/ * hide AnnoRBTN. selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
buttonChecked = hide Btn;
showName . setSelected ( false ) ;
showAbbrev . setSelected ( false ) ;
showBoatPath . setSelected ( false ) ;
showSpeed . setSelected ( false ) ;
showTime . setSelected ( false ) ;
raceMap . update ( ) ;
buttonChecked = noBtn ;
prevBtnChecked = showBtn ;
} ) ;
prevBtnChecked = hideBtn ;
} ) ; * /
//listener for showing all annotations
showAnnoRBTN . setOnAction ( ( e ) - > {
if ( selectShow ) {
System . out . println ( "called show" ) ;
buttonChecked = showBtn ;
showName . setSelected ( annoShownBeforeHide . get ( nameCheckAnno ) ) ;
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 ;
}
selectShow = true ;
} ) ; / * . addListener ( ( ov , old_val , new_val ) - > {
if ( selectShow ) {
buttonChecked = showBtn ;
showName . setSelected ( annoShownBeforeHide . get ( nameCheckAnno ) ) ;
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 ;
}
selectShow = true ;
} ) ; * /
//listener for showing all important
partialAnnoRBTN . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
partialAnnoRBTN . setOnAction ( ( e ) - > {
System . out . println ( "called Partial" ) ;
selectShow = false ;
buttonChecked = partialBtn ;
showName . setSelected ( false ) ;
showAbbrev . setSelected ( true ) ;
showSpeed . setSelected ( true ) ;
showBoatPath . setSelected ( false ) ;
showTime . setSelected ( false ) ;
annotationGroup . selectToggle ( partialAnnoRBTN ) ;
raceMap . update ( ) ;
buttonChecked = noBtn ;
prevBtnChecked = partialBtn ;
selectShow = true ;
} ) ;
//listener for showing all important
importantAnnoRBTN . selectedProperty ( ) . addListener ( ( ov , old_val , new_val ) - > {
importantAnnoRBTN . setOnAction ( ( e ) - > {
System . out . println ( "called Important" ) ;
selectShow = false ;
buttonChecked = importantBtn ;
if ( presetAnno . size ( ) > 0 ) {
showName . setSelected ( presetAnno . get ( 0 ) ) ;
@ -525,11 +530,12 @@ public class RaceController extends Controller {
showSpeed . setSelected ( presetAnno . get ( 2 ) ) ;
showBoatPath . setSelected ( presetAnno . get ( 3 ) ) ;
showTime . setSelected ( presetAnno . get ( 4 ) ) ;
annotationGroup. selectToggle ( importantAnnoRBTN ) ;
storeCurrentAnnotationDictionary( ) ;
raceMap . update ( ) ;
}
buttonChecked = noBtn ;
prevBtnChecked = importantBtn ;
selectShow = true ;
} ) ;
annotationGroup . selectToggle ( showAnnoRBTN ) ;
}