external editor

This commit is contained in:
Radek Davidek 2026-01-15 11:39:30 +01:00
parent c132811c0b
commit 25ce987859

View File

@ -26,6 +26,7 @@ public class SettingsDialog extends JDialog {
private final Color originalFolder; private final Color originalFolder;
private final Font originalGlobalFont; private final Font originalGlobalFont;
private final Font originalEditorFont; private final Font originalEditorFont;
private final String originalExternalEditorPath;
// Appearance controls // Appearance controls
private JButton appearanceFontBtn; private JButton appearanceFontBtn;
@ -52,6 +53,7 @@ public class SettingsDialog extends JDialog {
this.originalFolder = config.getFolderColor(); this.originalFolder = config.getFolderColor();
this.originalGlobalFont = config.getGlobalFont(); this.originalGlobalFont = config.getGlobalFont();
this.originalEditorFont = config.getEditorFont(); this.originalEditorFont = config.getEditorFont();
this.originalExternalEditorPath = config.getExternalEditorPath();
setDefaultCloseOperation(DISPOSE_ON_CLOSE); setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setSize(700, 420); setSize(700, 420);
@ -151,6 +153,11 @@ public class SettingsDialog extends JDialog {
} catch (Exception ignore) {} } catch (Exception ignore) {}
} }
// Save external editor path
if (externalEditorField != null) {
config.setExternalEditorPath(externalEditorField.getText());
}
// Persist config and notify caller // Persist config and notify caller
config.saveConfig(); config.saveConfig();
if (onChange != null) onChange.run(); if (onChange != null) onChange.run();
@ -165,6 +172,7 @@ public class SettingsDialog extends JDialog {
config.setFolderColor(originalFolder); config.setFolderColor(originalFolder);
config.setGlobalFont(originalGlobalFont); config.setGlobalFont(originalGlobalFont);
config.setEditorFont(originalEditorFont); config.setEditorFont(originalEditorFont);
config.setExternalEditorPath(originalExternalEditorPath);
// Notify UI to revert changes // Notify UI to revert changes
if (onChange != null) onChange.run(); if (onChange != null) onChange.run();