Ensure default directory is updated after file chooser update

This commit is contained in:
SiboVG 2023-04-01 20:48:39 +02:00
parent e11c2dbaa6
commit 7186aa6dd0
9 changed files with 18 additions and 0 deletions

View File

@ -303,6 +303,7 @@ public class FreeformFinSetConfig extends FinSetConfig {
} }
FreeformFinSetConfig.writeCSVFile(table, selectedFile); FreeformFinSetConfig.writeCSVFile(table, selectedFile);
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(chooser.getCurrentDirectory());
} }
} }
}); });
@ -400,6 +401,7 @@ public class FreeformFinSetConfig extends FinSetConfig {
trans.get("CustomFinImport.error.title"), JOptionPane.ERROR_MESSAGE); trans.get("CustomFinImport.error.title"), JOptionPane.ERROR_MESSAGE);
} finally { } finally {
document.stopUndo(); document.stopUndo();
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(chooser.getCurrentDirectory());
} }
} }
} }

View File

@ -18,6 +18,7 @@ import javax.swing.JScrollPane;
import javax.swing.SwingUtilities; import javax.swing.SwingUtilities;
import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.filechooser.FileNameExtensionFilter;
import net.sf.openrocket.gui.util.SwingPreferences;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -110,6 +111,7 @@ public class CustomExpressionPanel extends JPanel {
log.info(Markers.USER_MARKER, "Error opening document to import expressions from."); log.info(Markers.USER_MARKER, "Error opening document to import expressions from.");
} }
updateExpressions(); updateExpressions();
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(fc.getCurrentDirectory());
} }
} }
}); });

View File

@ -43,6 +43,7 @@ public abstract class DecalNotFoundDialog {
if (resultFileChooser == JFileChooser.APPROVE_OPTION) { if (resultFileChooser == JFileChooser.APPROVE_OPTION) {
File file = chooser.getSelectedFile(); File file = chooser.getSelectedFile();
decex.getDecal().setDecalFile(file); decex.getDecal().setDecalFile(file);
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(chooser.getCurrentDirectory());
} }
} }
return (resultYesNo == JOptionPane.YES_OPTION) && (resultFileChooser == JFileChooser.APPROVE_OPTION); return (resultYesNo == JOptionPane.YES_OPTION) && (resultFileChooser == JFileChooser.APPROVE_OPTION);

View File

@ -20,6 +20,7 @@ import javax.swing.event.ChangeListener;
import net.miginfocom.swing.MigLayout; import net.miginfocom.swing.MigLayout;
import net.sf.openrocket.gui.util.GUIUtil; import net.sf.openrocket.gui.util.GUIUtil;
import net.sf.openrocket.gui.util.SwingPreferences;
import net.sf.openrocket.l10n.Translator; import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.startup.Application; import net.sf.openrocket.startup.Application;
import net.sf.openrocket.gui.widgets.SelectColorButton; import net.sf.openrocket.gui.widgets.SelectColorButton;
@ -75,6 +76,7 @@ public class EditDecalDialog extends JDialog {
int action = fc.showOpenDialog(owner); int action = fc.showOpenDialog(owner);
if (action == JFileChooser.APPROVE_OPTION) { if (action == JFileChooser.APPROVE_OPTION) {
commandText.setText(fc.getSelectedFile().getAbsolutePath()); commandText.setText(fc.getSelectedFile().getAbsolutePath());
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(fc.getCurrentDirectory());
} }
} }
@ -109,6 +111,7 @@ public class EditDecalDialog extends JDialog {
int action = fc.showOpenDialog(owner); int action = fc.showOpenDialog(owner);
if (action == JFileChooser.APPROVE_OPTION) { if (action == JFileChooser.APPROVE_OPTION) {
commandText.setText(fc.getSelectedFile().getAbsolutePath()); commandText.setText(fc.getSelectedFile().getAbsolutePath());
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(fc.getCurrentDirectory());
} }
} }

View File

@ -40,6 +40,7 @@ import net.sf.openrocket.gui.util.PreferencesExporter;
import net.sf.openrocket.gui.util.PreferencesImporter; import net.sf.openrocket.gui.util.PreferencesImporter;
import net.sf.openrocket.l10n.L10N; import net.sf.openrocket.l10n.L10N;
import net.sf.openrocket.logging.Markers; import net.sf.openrocket.logging.Markers;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.startup.Preferences; import net.sf.openrocket.startup.Preferences;
import net.sf.openrocket.util.BuildProperties; import net.sf.openrocket.util.BuildProperties;
import net.sf.openrocket.util.Named; import net.sf.openrocket.util.Named;

View File

@ -29,6 +29,8 @@ import net.sf.openrocket.gui.adaptors.BooleanModel;
import net.sf.openrocket.gui.components.StyledLabel; import net.sf.openrocket.gui.components.StyledLabel;
import net.sf.openrocket.gui.components.StyledLabel.Style; import net.sf.openrocket.gui.components.StyledLabel.Style;
import net.sf.openrocket.gui.util.GUIUtil; import net.sf.openrocket.gui.util.GUIUtil;
import net.sf.openrocket.gui.util.SwingPreferences;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.startup.Preferences; import net.sf.openrocket.startup.Preferences;
import net.sf.openrocket.gui.widgets.SelectColorButton; import net.sf.openrocket.gui.widgets.SelectColorButton;
@ -119,6 +121,7 @@ public class GraphicsPreferencesPanel extends PreferencesPanel {
String commandLine = fc.getSelectedFile().getAbsolutePath(); String commandLine = fc.getSelectedFile().getAbsolutePath();
commandText.setText(commandLine); commandText.setText(commandLine);
preferences.setDecalEditorPreference(false, commandLine); preferences.setDecalEditorPreference(false, commandLine);
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(fc.getCurrentDirectory());
} }
} }

View File

@ -90,6 +90,7 @@ public class ExportDecalDialog extends JDialog {
export(selectedDecal, selectedFile); export(selectedDecal, selectedFile);
// If the user doesn't confirm over write, then leave this dialog open. // If the user doesn't confirm over write, then leave this dialog open.
ExportDecalDialog.this.dispose(); ExportDecalDialog.this.dispose();
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(chooser.getCurrentDirectory());
} }
} }
} }

View File

@ -44,6 +44,7 @@ import javax.swing.border.EmptyBorder;
import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.text.JTextComponent; import javax.swing.text.JTextComponent;
import net.sf.openrocket.gui.util.SwingPreferences;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -389,6 +390,7 @@ public class PresetEditorDialog extends JDialog implements ItemListener {
File file = imageChooser.getSelectedFile(); File file = imageChooser.getSelectedFile();
ncImage = scaleImage(new ImageIcon(file.getAbsolutePath()).getImage(), 155); ncImage = scaleImage(new ImageIcon(file.getAbsolutePath()).getImage(), 155);
ncImageBtn.setIcon(ncImage); ncImageBtn.setIcon(ncImage);
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(imageChooser.getCurrentDirectory());
} }
} }
}); });
@ -1318,6 +1320,7 @@ public class PresetEditorDialog extends JDialog implements ItemListener {
*/ */
private JFileChooser createImageChooser() { private JFileChooser createImageChooser() {
final JFileChooser chooser = new JFileChooser(); final JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(((SwingPreferences) Application.getPreferences()).getDefaultDirectory());
ImagePreviewPanel preview = new ImagePreviewPanel(); ImagePreviewPanel preview = new ImagePreviewPanel();
chooser.setAccessory(preview); chooser.setAccessory(preview);
chooser.addPropertyChangeListener(preview); chooser.addPropertyChangeListener(preview);

View File

@ -343,6 +343,8 @@ public class ComponentPresetEditor extends JPanel implements PresetResultListene
return false; return false;
} }
((SwingPreferences) Application.getPreferences()).setDefaultDirectory(chooser.getCurrentDirectory());
File file = chooser.getSelectedFile(); File file = chooser.getSelectedFile();
try { try {
if (file == null) { if (file == null) {