better behaviour for initial directory in file dialogs. fixes #4
This commit is contained in:
parent
5081c300cc
commit
e3b0e1be80
|
@ -132,10 +132,9 @@ final class Actions {
|
||||||
} else if ( source == MenuItem.SAVE ) {
|
} else if ( source == MenuItem.SAVE ) {
|
||||||
run.saveLiveTimes( !run.isPersonalBest() );
|
run.saveLiveTimes( !run.isPersonalBest() );
|
||||||
run.reset();
|
run.reset();
|
||||||
save();
|
save(this.file);
|
||||||
} else if ( source == MenuItem.SAVE_AS ) {
|
} else if ( source == MenuItem.SAVE_AS ) {
|
||||||
file = null;
|
save(null);
|
||||||
save();
|
|
||||||
} else if ( source == MenuItem.RESET ) {
|
} else if ( source == MenuItem.RESET ) {
|
||||||
reset();
|
reset();
|
||||||
} else if ( source == MenuItem.LOCK ) {
|
} else if ( source == MenuItem.LOCK ) {
|
||||||
|
@ -247,6 +246,8 @@ final class Actions {
|
||||||
private File selectFile(FILE_CHOOSER_TYPE dialogType) {
|
private File selectFile(FILE_CHOOSER_TYPE dialogType) {
|
||||||
int action = -1;
|
int action = -1;
|
||||||
|
|
||||||
|
fileChooser.setCurrentDirectory(this.file);
|
||||||
|
|
||||||
if (dialogType == FILE_CHOOSER_TYPE.OPEN)
|
if (dialogType == FILE_CHOOSER_TYPE.OPEN)
|
||||||
action = fileChooser.showOpenDialog(master);
|
action = fileChooser.showOpenDialog(master);
|
||||||
else if (dialogType == FILE_CHOOSER_TYPE.SAVE)
|
else if (dialogType == FILE_CHOOSER_TYPE.SAVE)
|
||||||
|
@ -295,7 +296,7 @@ final class Actions {
|
||||||
else if ( option == JOptionPane.YES_OPTION ) {
|
else if ( option == JOptionPane.YES_OPTION ) {
|
||||||
run.saveLiveTimes( !betterRun );
|
run.saveLiveTimes( !betterRun );
|
||||||
run.reset();
|
run.reset();
|
||||||
save();
|
save(this.file);
|
||||||
confirmed = true;
|
confirmed = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -391,13 +392,16 @@ final class Actions {
|
||||||
/**
|
/**
|
||||||
* Saves the currently opened run to the currently selected file. If no
|
* Saves the currently opened run to the currently selected file. If no
|
||||||
* file has been selected, the user is asked for one.
|
* file has been selected, the user is asked for one.
|
||||||
|
*
|
||||||
|
* @param file the file to save to, or if null, the user is prompted to select one
|
||||||
*/
|
*/
|
||||||
private void save() {
|
private void save(File file) {
|
||||||
if ( file == null ) {
|
if ( file == null ) {
|
||||||
if ( ( file = selectFile(FILE_CHOOSER_TYPE.SAVE) ) == null ) {
|
if ( ( file = selectFile(FILE_CHOOSER_TYPE.SAVE) ) == null ) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.file = file;
|
||||||
Settings.coordinates.set( master.getLocationOnScreen(), true );
|
Settings.coordinates.set( master.getLocationOnScreen(), true );
|
||||||
Settings.dimension.set( master.getSize(), true );
|
Settings.dimension.set( master.getSize(), true );
|
||||||
|
|
||||||
|
|
Reference in a new issue