From 3a434ed4ace2a91b203ea9a351d6341eaadd822b Mon Sep 17 00:00:00 2001 From: SiboVG Date: Wed, 20 Apr 2022 08:03:04 +0200 Subject: [PATCH 1/2] Use modal type for thrust import error popup --- .../net/sf/openrocket/database/MotorDatabaseLoader.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java b/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java index 18b7e16ed..36de83ac7 100644 --- a/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java +++ b/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java @@ -1,5 +1,6 @@ package net.sf.openrocket.database; +import java.awt.Dialog; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; @@ -24,6 +25,7 @@ import net.sf.openrocket.startup.Application; import net.sf.openrocket.util.BugException; import net.sf.openrocket.util.Pair; +import javax.swing.JDialog; import javax.swing.JOptionPane; /** @@ -147,8 +149,10 @@ public class MotorDatabaseLoader extends AsynchronousDatabaseLoader { String message = "

" + e.getMessage() + ".

" + MessageFormat.format( trans.get("MotorDbLoaderDlg.message1"), f.getU()) + "
" + trans.get("MotorDbLoaderDlg.message2") + "

"; - JOptionPane.showMessageDialog(null, - message, trans.get("MotorDbLoaderDlg.title"), JOptionPane.WARNING_MESSAGE); + JOptionPane pane = new JOptionPane(message, JOptionPane.WARNING_MESSAGE); + JDialog dialog = pane.createDialog(null, trans.get("MotorDbLoaderDlg.title")); + dialog.setModalityType(Dialog.ModalityType.DOCUMENT_MODAL); + dialog.setVisible(true); } f.getV().close(); } catch (IOException e) { From b51fed39ed8462cb1cc7cc8f8f283f1739097187 Mon Sep 17 00:00:00 2001 From: SiboVG Date: Wed, 20 Apr 2022 09:42:57 +0200 Subject: [PATCH 2/2] Use full file path for thrust curve import error message --- swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java b/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java index 36de83ac7..3b8ad6c9a 100644 --- a/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java +++ b/swing/src/net/sf/openrocket/database/MotorDatabaseLoader.java @@ -146,8 +146,10 @@ public class MotorDatabaseLoader extends AsynchronousDatabaseLoader { } catch (IllegalArgumentException e) { Translator trans = Application.getTranslator(); + File thrustCurveDir = ((SwingPreferences) Application.getPreferences()).getDefaultUserThrustCurveFile(); + File fullPath = new File(thrustCurveDir, f.getU()); String message = "

" + e.getMessage() + - ".

" + MessageFormat.format( trans.get("MotorDbLoaderDlg.message1"), f.getU()) + + ".

" + MessageFormat.format( trans.get("MotorDbLoaderDlg.message1"), fullPath.getPath()) + "
" + trans.get("MotorDbLoaderDlg.message2") + "

"; JOptionPane pane = new JOptionPane(message, JOptionPane.WARNING_MESSAGE); JDialog dialog = pane.createDialog(null, trans.get("MotorDbLoaderDlg.title"));