From 1fd76439937e22c443e101b244e9e000b7566d3a Mon Sep 17 00:00:00 2001 From: Bane Stojkovic Date: Sun, 9 Feb 2025 18:36:16 +0100 Subject: [PATCH] 'Save As' displays the current file name by default --- diylc/diylc-core/src/org/diylc/presenter/update.xml | 4 ++++ diylc/diylc-swing/DIYLCStarter.launch | 1 - diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java | 7 ++++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/diylc/diylc-core/src/org/diylc/presenter/update.xml b/diylc/diylc-core/src/org/diylc/presenter/update.xml index 4b9f0309..ae4904fe 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/update.xml +++ b/diylc/diylc-core/src/org/diylc/presenter/update.xml @@ -4466,6 +4466,10 @@ IMPROVEMENT Allow guitar wiring analyzer when some of the switching configuration do not produce output + + IMPROVEMENT + 'Save As' displays the current file name by default + https://github.com/bancika/diy-layout-creator/releases diff --git a/diylc/diylc-swing/DIYLCStarter.launch b/diylc/diylc-swing/DIYLCStarter.launch index fa569a22..fc93bd7c 100644 --- a/diylc/diylc-swing/DIYLCStarter.launch +++ b/diylc/diylc-swing/DIYLCStarter.launch @@ -13,7 +13,6 @@ - diff --git a/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java b/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java index 83f82ecc..18ae8171 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java +++ b/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java @@ -37,6 +37,7 @@ import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.Set; import java.util.TreeMap; import java.util.stream.Collectors; @@ -678,8 +679,12 @@ public class ActionFactory { @Override public void actionPerformed(ActionEvent e) { LOG.info("SaveAsAction triggered"); + String currentFileName = plugInPort.getCurrentFileName(); + final File file = DialogFactory.getInstance().showSaveDialog(swingUI.getOwnerFrame(), - FileFilterEnum.DIY.getFilter(), null, FileFilterEnum.DIY.getExtensions()[0], null); + FileFilterEnum.DIY.getFilter(), + Optional.ofNullable(currentFileName).map(File::new).orElse(null), + FileFilterEnum.DIY.getExtensions()[0], null); if (file != null) { swingUI.executeBackgroundTask(new ITask() {