From 93e974cc190935595d0e595a1ba3a171708af6a0 Mon Sep 17 00:00:00 2001 From: hneemann Date: Fri, 10 Mar 2017 13:22:09 +0100 Subject: [PATCH] translated some more error messages --- .../digital/builder/ATF1502/CreateCHN.java | 1 - .../digital/builder/tt2/OSExecute.java | 6 +++-- .../digital/builder/tt2/StartFitter.java | 24 +++++++++++-------- .../java/de/neemann/digital/gui/Main.java | 9 +++++-- src/main/resources/lang/lang_de.xml | 5 +++- src/main/resources/lang/lang_en.xml | 5 +++- 6 files changed, 33 insertions(+), 17 deletions(-) diff --git a/src/main/java/de/neemann/digital/builder/ATF1502/CreateCHN.java b/src/main/java/de/neemann/digital/builder/ATF1502/CreateCHN.java index 922e2b879..082d5940c 100644 --- a/src/main/java/de/neemann/digital/builder/ATF1502/CreateCHN.java +++ b/src/main/java/de/neemann/digital/builder/ATF1502/CreateCHN.java @@ -14,7 +14,6 @@ public class CreateCHN implements ExpressionToFileExporter.PostProcess { @Override public File execute(File file) throws IOException { File chnFile = Main.checkSuffix(file, "chn"); - System.out.println("create chn from " + file); try (Writer chn = new OutputStreamWriter(new FileOutputStream(chnFile), "UTF-8")) { chn.write("1 4 1 0 \r\n" diff --git a/src/main/java/de/neemann/digital/builder/tt2/OSExecute.java b/src/main/java/de/neemann/digital/builder/tt2/OSExecute.java index a255ab888..eb93d28e6 100644 --- a/src/main/java/de/neemann/digital/builder/tt2/OSExecute.java +++ b/src/main/java/de/neemann/digital/builder/tt2/OSExecute.java @@ -1,5 +1,7 @@ package de.neemann.digital.builder.tt2; +import de.neemann.digital.lang.Lang; + import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; @@ -73,11 +75,11 @@ public class OSExecute { if (p.isAlive()) { p.destroy(); sr.interrupt(); - throw new IOException("Process does not terminate!"); + throw new IOException(Lang.get("err_processDoesNotTerminate_N", procesBuilder.command())); } if (p.exitValue() != 0) - throw new IOException("got non zero exit value " + p.exitValue()); + throw new IOException(Lang.get("err_processExitedWithError_N1_N2", p.exitValue(), "\n"+sr.toString())); try { sr.join(); diff --git a/src/main/java/de/neemann/digital/builder/tt2/StartFitter.java b/src/main/java/de/neemann/digital/builder/tt2/StartFitter.java index e824abada..8f5910c79 100644 --- a/src/main/java/de/neemann/digital/builder/tt2/StartFitter.java +++ b/src/main/java/de/neemann/digital/builder/tt2/StartFitter.java @@ -31,21 +31,25 @@ public class StartFitter implements ExpressionToFileExporter.PostProcess { @Override public File execute(File file) throws IOException { - ArrayList args = new ArrayList<>(); + try { + ArrayList args = new ArrayList<>(); - if (isLinux()) - args.add("wine"); - args.add(fitterExe.toString()); - args.add(file.getName()); + if (isLinux()) + args.add("wine"); + args.add(fitterExe.toString()); + args.add(file.getName()); - OSExecute execute = new OSExecute(args); - execute.setWorkingDir(file.getParentFile()); + OSExecute execute = new OSExecute(args); + execute.setWorkingDir(file.getParentFile()); - String message = execute.start(); + String message = execute.start(); - SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(parent, message, Lang.get("msg_fitterResult"), JOptionPane.INFORMATION_MESSAGE)); + SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(parent, message, Lang.get("msg_fitterResult"), JOptionPane.INFORMATION_MESSAGE)); - return Main.checkSuffix(file, "jed"); + return Main.checkSuffix(file, "jed"); + } catch (IOException e) { + throw new IOException(Lang.get("err_errorRunningFitter"), e); + } } private boolean isLinux() { diff --git a/src/main/java/de/neemann/digital/gui/Main.java b/src/main/java/de/neemann/digital/gui/Main.java index 6c7e3732d..42a624354 100644 --- a/src/main/java/de/neemann/digital/gui/Main.java +++ b/src/main/java/de/neemann/digital/gui/Main.java @@ -42,6 +42,7 @@ import de.neemann.digital.lang.Lang; import de.neemann.digital.testing.TestCaseElement; import de.neemann.digital.testing.TestingDataException; import de.neemann.gui.*; +import de.neemann.gui.language.Language; import javax.swing.*; import javax.swing.filechooser.FileNameExtensionFilter; @@ -445,10 +446,14 @@ public class Main extends JFrame implements ClosingWindowListener.ConfirmSave, E ToolTipAction editSettings = new ToolTipAction(Lang.get("menu_editSettings")) { @Override public void actionPerformed(ActionEvent e) { + Language oldLang = Settings.getInstance().get(Keys.SETTINGS_LANGUAGE); if (new AttributeDialog(Main.this, Settings.SETTINGS_KEYS, Settings.getInstance().getAttributes()).showDialog()) { - Lang.setLanguage(Settings.getInstance().getAttributes().get(Keys.SETTINGS_LANGUAGE)); FormatToExpression.setDefaultFormat(Settings.getInstance().get(Keys.SETTINGS_EXPRESSION_FORMAT)); - JOptionPane.showMessageDialog(Main.this, Lang.get("msg_restartNeeded")); + final Language newLang = Settings.getInstance().getAttributes().get(Keys.SETTINGS_LANGUAGE); + if (!newLang.equals(oldLang)) { + Lang.setLanguage(newLang); + JOptionPane.showMessageDialog(Main.this, Lang.get("msg_restartNeeded")); + } } } }.setToolTip(Lang.get("menu_editSettings_tt")); diff --git a/src/main/resources/lang/lang_de.xml b/src/main/resources/lang/lang_de.xml index 02d2ffed9..c0e55869d 100644 --- a/src/main/resources/lang/lang_de.xml +++ b/src/main/resources/lang/lang_de.xml @@ -433,6 +433,9 @@ Zur Analyse können Sie die Schaltung im Gatterschrittmodus ausführen. Die Datei {0} existiert mehrfach unter {1} Die Datei {0} konnte nicht gefunden werden. Fehler im Bearbeitungsschritt "{0}". + Der Prozess "{0}" wird nicht beendet! + Der Prozess meldet den Rückgabewert {0}: {1} + Fehler beim Starten des externen Fitters! Adress-Bits Anzahl der Adress-Bits die verwendet werden. @@ -689,7 +692,7 @@ Die Icons stammen aus dem Tango Desktop Project. Es fehlt ein Diagramm für {0} Pinbelegung Pin {0}: {1} - Die Änderung erfordert einen Neustart! + Die Änderung der Sprache erfordert einen Neustart! Kein ROM im Model gefunden! Ein ROM muss als Programmspeicher gewählt werden! Mehr als einen Programmspeicher gefunden. Es darf nur einen Programmspeicher geben. Geben Sie einen Ausdruck ein: diff --git a/src/main/resources/lang/lang_en.xml b/src/main/resources/lang/lang_en.xml index 5a8e5d251..6e62a893a 100644 --- a/src/main/resources/lang/lang_en.xml +++ b/src/main/resources/lang/lang_en.xml @@ -419,6 +419,9 @@ To analyse you can run the circuit in single gate step mode. The file {0} exists multiple times below {1}. Could not find the file {0}. Error during execution of "{0}". + The process "{0}" does not return! + The process returns the non zero value {0}: {1} + Error starting the external fitter! Address Bits Number of address bits used. @@ -674,7 +677,7 @@ The icons are taken from the Tango Desktop Project. Shape {0} is missing Pin assignment Pin {0}: {1} - Change needs a restart to take effect! + To change the GUI language a restart is required! No ROM found! ROM needs to be set to be program memory. More then one ROM found! Only one ROM must be set to be program memory. Command {0} unknown!