diff options
| author | Paul Buetow <paul@buetow.org> | 2009-01-17 14:29:28 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2009-01-17 14:29:28 +0000 |
| commit | ff0c70b54edbbe3436583d6491d4a56d96302de5 (patch) | |
| tree | 2b63fc15e30d953e043018fc0c0aa2be54af94f1 | |
| parent | b5e0d976418e3373b3d518a1ca01fc542a2fe602 (diff) | |
added initial multiple langua support.
27 files changed, 704 insertions, 346 deletions
diff --git a/scripts/checklinelengths.sh b/scripts/checklinelengths.sh index cf98cd8..950dddd 100755 --- a/scripts/checklinelengths.sh +++ b/scripts/checklinelengths.sh @@ -18,7 +18,7 @@ MAXLEN=80 -for i in `find ./sources -name \*.java | grep -v VSDefaultPrefs.java` +for i in `find ./sources -name \*.java | grep -v VSDefaultPrefs` do awk -v MAXLEN=$MAXLEN -v file=$i '{ if (length > MAXLEN) diff --git a/sources/core/VSAbstractProcess.java b/sources/core/VSAbstractProcess.java index c46194f..eeff528 100644 --- a/sources/core/VSAbstractProcess.java +++ b/sources/core/VSAbstractProcess.java @@ -243,7 +243,7 @@ public abstract class VSAbstractProcess extends VSSerializablePrefs /* Make additional process settings editable through GUI */ initLong("process.localtime", localTime, - prefs.getString("lang.process.time.local"), "ms"); + prefs.getString("lang.en.process.time.local"), "ms"); createRandomCrashTask_(); } @@ -603,19 +603,19 @@ public abstract class VSAbstractProcess extends VSSerializablePrefs */ public synchronized String toString() { StringBuffer buffer = new StringBuffer(); - buffer.append(prefs.getString("lang.process.id")); + buffer.append(prefs.getString("lang.en.process.id")); buffer.append(": "); buffer.append(getProcessID()); buffer.append("; "); - buffer.append(prefs.getString("lang.process.time.local")); + buffer.append(prefs.getString("lang.en.process.time.local")); buffer.append(": "); buffer.append(VSTools.getTimeString(getTime())); buffer.append("; "); - buffer.append(prefs.getString("lang.time.lamport")); + buffer.append(prefs.getString("lang.en.time.lamport")); buffer.append(": "); buffer.append(lamportTime); buffer.append("; "); - buffer.append(prefs.getString("lang.time.vector")); + buffer.append(prefs.getString("lang.en.time.vector")); buffer.append(": "); buffer.append(vectorTime); return buffer.toString(); @@ -695,6 +695,11 @@ public abstract class VSAbstractProcess extends VSSerializablePrefs ObjectInputStream objectInputStream) throws IOException, ClassNotFoundException { super.deserialize(serialize, objectInputStream); + + /* Bugfix, being compatible with old versions */ + super.deleteLong("process.localTime"); + + updateFromPrefs_(); if (VSSerialize.DEBUG) @@ -715,7 +720,7 @@ public abstract class VSAbstractProcess extends VSSerializablePrefs } localTime = 0; - setLong("process.localTime", localTime); + setLong("process.localtime", localTime); /** For later backwards compatibility, to add more stuff */ objectInputStream.readObject(); diff --git a/sources/core/VSInternalProcess.java b/sources/core/VSInternalProcess.java index 2ccc494..01e23d0 100644 --- a/sources/core/VSInternalProcess.java +++ b/sources/core/VSInternalProcess.java @@ -24,15 +24,12 @@ package core; import java.awt.*; -//import java.io.*; -//import java.util.*; import core.time.*; import events.*; import events.implementations.*; import prefs.*; import protocols.*; -//import serialize.*; import simulator.*; import utils.*; @@ -337,7 +334,7 @@ public class VSInternalProcess extends VSAbstractProcess { */ public synchronized void sendMessage(VSMessage message) { StringBuffer buffer = new StringBuffer(); - buffer.append(prefs.getString("lang.message.sent")); + buffer.append(prefs.getString("lang.en.message.sent")); buffer.append("; "); buffer.append(message.toStringFull()); log(buffer.toString()); diff --git a/sources/core/VSMessage.java b/sources/core/VSMessage.java index 8703b6f..eca2001 100644 --- a/sources/core/VSMessage.java +++ b/sources/core/VSMessage.java @@ -177,7 +177,7 @@ public class VSMessage extends VSPrefs { buffer.append("ID: "); buffer.append(messageID); buffer.append("; "); - buffer.append(prefs.getString("lang.protocol")); + buffer.append(prefs.getString("lang.en.protocol")); buffer.append(": "); buffer.append(VSRegisteredEvents.getShortnameByClassname( getProtocolClassname())); diff --git a/sources/core/VSTask.java b/sources/core/VSTask.java index ccb4d98..87e34bf 100644 --- a/sources/core/VSTask.java +++ b/sources/core/VSTask.java @@ -358,7 +358,7 @@ public class VSTask implements Comparable, VSSerializable { public String toString() { StringBuffer buffer = new StringBuffer(); - buffer.append(prefs.getString("lang.task")); + buffer.append(prefs.getString("lang.en.task")); buffer.append(" "); buffer.append(getTaskTime()); buffer.append(event.toString()); diff --git a/sources/core/VSTaskManager.java b/sources/core/VSTaskManager.java index 2dc724c..5d30c53 100644 --- a/sources/core/VSTaskManager.java +++ b/sources/core/VSTaskManager.java @@ -460,9 +460,9 @@ public class VSTaskManager implements VSSerializable { public synchronized String toString() { StringBuffer buffer = new StringBuffer(); - buffer.append(prefs.getString("lang.task.manager")); + buffer.append(prefs.getString("lang.en.task.manager")); buffer.append(" ("); - buffer.append(prefs.getString("lang.tasks.fullfilled")); + buffer.append(prefs.getString("lang.en.tasks.fullfilled")); buffer.append(": "); for (VSTask task : fullfilledProgrammedTasks) { @@ -470,7 +470,7 @@ public class VSTaskManager implements VSSerializable { buffer.append("; "); } - buffer.append(prefs.getString("lang.tasks.global")); + buffer.append(prefs.getString("lang.en.tasks.global")); buffer.append(": "); for (VSTask task : globalTasks) { @@ -478,7 +478,7 @@ public class VSTaskManager implements VSSerializable { buffer.append("; "); } - buffer.append(prefs.getString("lang.tasks.local")); + buffer.append(prefs.getString("lang.en.tasks.local")); buffer.append(": "); ArrayList<VSInternalProcess> processes = diff --git a/sources/events/VSRegisteredEvents.java b/sources/events/VSRegisteredEvents.java index 37f11f4..9d022d9 100644 --- a/sources/events/VSRegisteredEvents.java +++ b/sources/events/VSRegisteredEvents.java @@ -71,7 +71,7 @@ public final class VSRegisteredEvents { new HashMap<String,Boolean>(); /** The prefs. */ - //private static VSPrefs prefs; + private static VSPrefs prefs; /** * Registers available events. @@ -79,32 +79,50 @@ public final class VSRegisteredEvents { * @param prefs_ the prefs_ */ public static void init(VSPrefs prefs_) { - //prefs = prefs_; - - registerEvent("events.implementations.VSProcessCrashEvent", - "Prozessabsturz"); - registerEvent("events.implementations.VSProcessRecoverEvent", - "Prozesswiederbelebung"); - registerEvent("protocols.implementations.VSBasicMulticastProtocol", - "Basic Multicast", "Basic Multicast"); - registerEvent("protocols.implementations.VSBerkelyTimeProtocol", - "Berkeley Algorithmus zur internen Sync.", "Berkeley"); - registerEvent("protocols.implementations.VSBroadcastProtocol", - "Broadcast"); - registerEvent("protocols.implementations.VSDummyProtocol", - "Beispiel/Dummy"); - registerEvent("protocols.implementations.VSExternalTimeSyncProtocol", - "Christians Methode zur externen Sync.", "Christians"); - registerEvent("protocols.implementations.VSInternalTimeSyncProtocol", - "Interne Synchronisation", "Interne Sync."); - registerEvent("protocols.implementations.VSOnePhaseCommitProtocol", - "Ein-Phasen Commit", "1-Phasen Commit"); - registerEvent("protocols.implementations.VSPingPongProtocol", - "Ping Pong"); - registerEvent("protocols.implementations.VSReliableMulticastProtocol", - "Reliable Multicast", "Reliable Multicast"); - registerEvent("protocols.implementations.VSTwoPhaseCommitProtocol", - "Zwei-Phasen Commit", "2-Phasen Commit"); + prefs = prefs_; + + /* + registerEvent("events.implementations.VSProcessCrashEvent", + "Prozessabsturz"); + registerEvent("events.implementations.VSProcessRecoverEvent", + "Prozesswiederbelebung"); + registerEvent("protocols.implementations.VSBasicMulticastProtocol", + "Basic Multicast", "Basic Multicast"); + registerEvent("protocols.implementations.VSBerkelyTimeProtocol", + "Berkeley Algorithmus zur internen Sync.", "Berkeley"); + registerEvent("protocols.implementations.VSBroadcastProtocol", + "Broadcast"); + registerEvent("protocols.implementations.VSDummyProtocol", + "Beispiel/Dummy"); + registerEvent("protocols.implementations.VSExternalTimeSyncProtocol", + "Christians Methode zur externen Sync.", "Christians"); + registerEvent("protocols.implementations.VSInternalTimeSyncProtocol", + "Interne Synchronisation", "Interne Sync."); + registerEvent("protocols.implementations.VSOnePhaseCommitProtocol", + "Ein-Phasen Commit", "1-Phasen Commit"); + registerEvent("protocols.implementations.VSPingPongProtocol", + "Ping Pong"); + registerEvent("protocols.implementations.VSReliableMulticastProtocol", + "Reliable Multicast", "Reliable Multicast"); + registerEvent("protocols.implementations.VSTwoPhaseCommitProtocol", + "Zwei-Phasen Commit", "2-Phasen Commit"); + */ + + /* Using the NEW way. The old way above (specifying protocol names + in this file still works as well */ + + registerEvent("events.implementations.VSProcessCrashEvent"); + registerEvent("events.implementations.VSProcessRecoverEvent"); + registerEvent("protocols.implementations.VSBasicMulticastProtocol"); + registerEvent("protocols.implementations.VSBerkelyTimeProtocol"); + registerEvent("protocols.implementations.VSBroadcastProtocol"); + registerEvent("protocols.implementations.VSDummyProtocol"); + registerEvent("protocols.implementations.VSExternalTimeSyncProtocol"); + registerEvent("protocols.implementations.VSInternalTimeSyncProtocol"); + registerEvent("protocols.implementations.VSOnePhaseCommitProtocol"); + registerEvent("protocols.implementations.VSPingPongProtocol"); + registerEvent("protocols.implementations.VSReliableMulticastProtocol"); + registerEvent("protocols.implementations.VSTwoPhaseCommitProtocol"); /* Make dummy objects of each protocol, to see if they contain VSPrefs values to edit */ @@ -349,6 +367,19 @@ public final class VSRegisteredEvents { } /** + * Registers an event. Use the language settings of VSPrefs. + * + * @param eventClassname the event classname + */ + private static void registerEvent(String eventClassname) { + String eventName = + prefs.getString("lang.en." + eventClassname); + String eventShortname = + prefs.getString("lang.en." + eventClassname + ".short"); + registerEvent(eventClassname, eventName, eventShortname); + } + + /** * Registers an event. * * @param eventClassname the event classname diff --git a/sources/events/implementations/VSProcessCrashEvent.java b/sources/events/implementations/VSProcessCrashEvent.java index ed92827..1493b8c 100644 --- a/sources/events/implementations/VSProcessCrashEvent.java +++ b/sources/events/implementations/VSProcessCrashEvent.java @@ -54,7 +54,7 @@ public class VSProcessCrashEvent extends VSAbstractEvent public void onStart() { if (!process.isCrashed()) { process.isCrashed(true); - log(prefs.getString("lang.crashed")); + log(prefs.getString("lang.en.crashed")); } } } diff --git a/sources/events/implementations/VSProcessRecoverEvent.java b/sources/events/implementations/VSProcessRecoverEvent.java index d8408af..0143bbb 100644 --- a/sources/events/implementations/VSProcessRecoverEvent.java +++ b/sources/events/implementations/VSProcessRecoverEvent.java @@ -55,7 +55,7 @@ public class VSProcessRecoverEvent extends VSAbstractEvent public void onStart() { if (process.isCrashed()) { process.isCrashed(false); - log(prefs.getString("lang.recovered")); + log(prefs.getString("lang.en.recovered")); } } } diff --git a/sources/events/internal/VSMessageReceiveEvent.java b/sources/events/internal/VSMessageReceiveEvent.java index 9aed81f..ab8c929 100644 --- a/sources/events/internal/VSMessageReceiveEvent.java +++ b/sources/events/internal/VSMessageReceiveEvent.java @@ -81,7 +81,7 @@ public class VSMessageReceiveEvent extends VSAbstractInternalEvent process.updateVectorTime(message.getVectorTime()); StringBuffer buffer = new StringBuffer(); - buffer.append(prefs.getString("lang.message.recv")); + buffer.append(prefs.getString("lang.en.message.recv")); buffer.append("; "); buffer.append(message);; log(buffer.toString()); diff --git a/sources/events/internal/VSProtocolEvent.java b/sources/events/internal/VSProtocolEvent.java index 39f5fdd..b4a01ce 100644 --- a/sources/events/internal/VSProtocolEvent.java +++ b/sources/events/internal/VSProtocolEvent.java @@ -139,13 +139,13 @@ public class VSProtocolEvent extends VSAbstractInternalEvent buffer.append(" "); buffer.append(isClientProtocol - ? prefs.getString("lang.client") - : prefs.getString("lang.server")); + ? prefs.getString("lang.en.client") + : prefs.getString("lang.en.server")); buffer.append(" "); buffer.append(isProtocolActivation - ? prefs.getString("lang.activated") - : prefs.getString("lang.deactivated")); + ? prefs.getString("lang.en.activated") + : prefs.getString("lang.en.deactivated")); log(buffer.toString()); } @@ -195,6 +195,5 @@ public class VSProtocolEvent extends VSAbstractInternalEvent /** For later backwards compatibility, to add more stuff */ objectInputStream.readObject(); - } } diff --git a/sources/prefs/VSDefaultPrefs.java b/sources/prefs/VSDefaultPrefs.java index 2cc7e39..63a2127 100644 --- a/sources/prefs/VSDefaultPrefs.java +++ b/sources/prefs/VSDefaultPrefs.java @@ -28,8 +28,7 @@ import java.awt.event.KeyEvent; /** * The class VSDefaultPrefs, makes sure that the simulator has its default - * configuration values. (Btw: This is the only class which is allowed to have - * code lines which are longer than 80 chars!) + * configuration values. * * @author Paul C. Buetow */ @@ -72,113 +71,139 @@ public class VSDefaultPrefs extends VSSerializablePrefs { * Fill with default strings. */ public void fillDefaultStrings() { - initString("lang.about", "About"); - initString("lang.about.info", "Dieses Programm wurde von Paul Bütow im Rahmen der Diplomarbeit \"Objektorientierte Entwicklung eines GUI-basierten Tools für die ereignisbasierte Simulator verteilter Systeme\" bei Prof. Dr.-Ing. Oßmann als 1. Prüfer sowie Betreuer und Prof. Dr. rer. nat. Fassbender als 2. Prüfer erstellt. Bei Fehlern bitte eine kurze Mail mit Fehlerbeschreibung an vs@paul.buetow.org schicken!"); - initString("lang.activate", "aktivieren"); - initString("lang.activated", "aktiviert"); - initString("lang.actualize", "Aktualisieren"); - initString("lang.all", "Alle"); - initString("lang.antialiasing", "Anti-Aliasing"); - initString("lang.cancel", "Abbrechen"); - initString("lang.client", "Client"); - initString("lang.clientrequest.start", "Clientanfrage starten"); - initString("lang.close", "Schliessen"); - initString("lang.colorchooser", "Farbauswahl"); - initString("lang.colorchooser2", "Bitte Farbe auswählen"); - initString("lang.copy", "Kopieren"); - initString("lang.crashed", "Abgestürzt"); - initString("lang.dat", "Simulation (.dat)"); - initString("lang.deactivate", "deaktivieren"); - initString("lang.deactivated", "deaktiviert"); - initString("lang.default", "Defaults"); - initString("lang.edit", "Editieren"); - initString("lang.editor", "Editor"); - initString("lang.event", "Ereignis"); - initString("lang.event.add.global", "Globales Ereignis einfügen"); - initString("lang.event.add.local", "Lokales Ereignis einfügen"); - initString("lang.event.add.time", "bei"); - initString("lang.events", "Ereignisse"); - initString("lang.events.process", "Prozessereignisse"); - initString("lang.file", "Datei"); - initString("lang.filter", "Filter"); - initString("lang.loging.active", "Logging"); - initString("lang.loging.clear", "Loggs löschen"); - initString("lang.message", "Nachricht"); - initString("lang.message.recv", "Nachricht erhalten"); - initString("lang.message.sent", "Nachricht versendet"); - initString("lang.mode.expert", "Expertenmodus"); - initString("lang.name", "VS-Simulator 1.0"); - initString("lang.ok", "OK"); - initString("lang.open", "Öffnen"); - initString("lang.pause", "Pausieren"); - initString("lang.prefs", "Einstellungen"); - initString("lang.prefs.color", "Farbeinstellungen"); - initString("lang.prefs.diverse", "Diverse Einstellungen"); - initString("lang.prefs.ext", "Erweiterte Einstellungen"); - initString("lang.prefs.message", "Nachrichteneinstellungen"); - initString("lang.prefs.message.defaults", "Nachrichteneinstellungen für neue Prozesse"); - initString("lang.prefs.more", "Mehr Einstellungen"); - initString("lang.prefs.process", "Prozesseinstellungen"); - initString("lang.prefs.process", "Prozessstandardeinstellungen"); - initString("lang.prefs.process.defaults", "Einstellungen für neue Prozesse"); - initString("lang.prefs.process.ext", "Erweiterte Prozesseinstellungen"); - initString("lang.prefs.protocols", "Protokolleinstellungen"); - initString("lang.prefs.simulator", "Simulationseinstellungen"); - initString("lang.process", "Prozess"); - initString("lang.process.add.new", "Neuen Prozess hinzufügen"); - initString("lang.process.crash", "Prozess abstürzen"); - initString("lang.process.edit", "Prozess editieren"); - initString("lang.process.id", "PID"); - initString("lang.process.new", "Neuer Prozess"); - initString("lang.process.not.selected", "Kein Prozess ausgewählt"); - initString("lang.process.recover", "Prozess wiederbeleben"); - initString("lang.process.remove", "Prozess entfernen"); - initString("lang.process.selected", "Aktuell ausgewählter Prozess"); - initString("lang.process.time.local", "Lokale Zeit"); - initString("lang.processes.all", "Alle Prozesse"); - initString("lang.protocol", "Protokoll"); - initString("lang.protocol.client", "Clientseite"); - initString("lang.protocol.editor", "Protokolleditor"); - initString("lang.protocol.server", "Serverseite"); - initString("lang.protocol.tasks.activation", "Client-/Serverprotokoll Aktivierung"); - initString("lang.protocol.tasks.client", "Client Task-Manager (Clientanfragen)"); - initString("lang.protocols", "Protokolle"); - initString("lang.quit", "Beenden"); - initString("lang.recovered", "Wiederbelebt"); - initString("lang.remove", "Entfernen"); - initString("lang.replay", "Wiederholen"); - initString("lang.reset", "Reset"); - initString("lang.save", "Speichern"); - initString("lang.saveas", "Speichern unter"); - initString("lang.server", "Server"); - initString("lang.serverrequest.start", "Serveranfrage starten"); - initString("lang.simulator", "Simulator"); - initString("lang.simulator.close", "Simulation schliessen"); - initString("lang.simulator.finished", "Simulation beendet"); - initString("lang.simulator.new", "Neue Simulation"); - initString("lang.simulator.paused", "Simulation pausiert"); - initString("lang.simulator.resetted", "Simulation zurückgesetzt"); - initString("lang.simulator.started", "Simulation gestartet"); - initString("lang.start", "Starten"); - initString("lang.stop", "Stoppen"); - initString("lang.takeover", "Übernehmen"); - initString("lang.task", "Aufgabe"); - initString("lang.task.manager", "Ereigniseditor"); - initString("lang.tasks.fullfilled", "Abgelaufene Aufgaben"); - initString("lang.tasks.global", "Globale Aufgaben"); - initString("lang.tasks.local", "Lokale Aufgaben"); - initString("lang.time", "Zeit"); - initString("lang.time.lamport", "Lamportzeit"); - initString("lang.time.vector", "Vektorzeit"); - initString("lang.timed.global", "Globale Ereignisse"); - initString("lang.timed.local", "Lokale Ereignisse"); - initString("lang.type", "Typ"); - initString("lang.value", "Wert"); - initString("lang.variable", "Variable"); - initString("lang.variables", "Variablen"); - initString("lang.variables.global", "Globale Variablen"); - initString("lang.window.close", "Fenster schliessen"); - initString("lang.window.new", "Neues Fenster"); + initString("lang.en.about", "About"); + initString("lang.en.about.info", "This program used to be the diploma thesis of Paul C. Buetow. Please contact vs@dev.buetow.org, if you find any errors!"); + initString("lang.en.activate", "activate"); + initString("lang.en.activated", "activated"); + initString("lang.en.actualize", "Activation"); + initString("lang.en.all", "All"); + initString("lang.en.antialiasing", "Anti-Aliasing"); + initString("lang.en.cancel", "Abort"); + initString("lang.en.client", "Client"); + initString("lang.en.clientrequest.start", "Start client request"); + initString("lang.en.close", "Close"); + initString("lang.en.colorchooser", "Color chooser"); + initString("lang.en.colorchooser2", "Please select color"); + initString("lang.en.copy", "Copy"); + initString("lang.en.crashed", "Crashed"); + initString("lang.en.dat", "Simulation (.dat)"); + initString("lang.en.deactivate", "deactivate"); + initString("lang.en.deactivated", "deactivated"); + initString("lang.en.default", "Defaults"); + initString("lang.en.edit", "Edit"); + initString("lang.en.editor", "Editor"); + initString("lang.en.event", "Event"); + initString("lang.en.event.add.global", "Insert global event"); + initString("lang.en.event.add.local", "Insert local event"); + initString("lang.en.event.add.time", "at"); + initString("lang.en.events", "Events"); + initString("lang.en.events.process", "Process events"); + initString("lang.en.file", "File"); + initString("lang.en.filter", "Filter"); + initString("lang.en.loging.active", "Logging"); + initString("lang.en.loging.clear", "Delete logs"); + initString("lang.en.message", "Message"); + initString("lang.en.message.recv", "Message received"); + initString("lang.en.message.sent", "Message sent"); + initString("lang.en.mode.expert", "Expert mode"); + initString("lang.en.name", "VS-Simulator 1.1"); + initString("lang.en.ok", "OK"); + initString("lang.en.open", "Open"); + initString("lang.en.pause", "Paus"); + initString("lang.en.prefs", "Preferences"); + initString("lang.en.prefs.color", "Color preferences"); + initString("lang.en.prefs.diverse", "Diverse preferences"); + initString("lang.en.prefs.ext", "Extended preferences"); + initString("lang.en.prefs.message", "Message preferences"); + initString("lang.en.prefs.message.defaults", "Message prefs. for new processes"); + initString("lang.en.prefs.more", "More preferences"); + initString("lang.en.prefs.process", "Process preferences"); + initString("lang.en.prefs.process", "Standard process preferences"); + initString("lang.en.prefs.process.defaults", "Preferences for new processes"); + initString("lang.en.prefs.process.ext", "Extended process preferences"); + initString("lang.en.prefs.protocols", "Protocol preferences"); + initString("lang.en.prefs.simulator", "Simulator preferences"); + initString("lang.en.process", "Process"); + initString("lang.en.process.add.new", "Insert new process"); + initString("lang.en.process.crash", "Crash process"); + initString("lang.en.process.edit", "Edit process"); + initString("lang.en.process.id", "PID"); + initString("lang.en.process.new", "New process"); + initString("lang.en.process.not.selected", "No process selected"); + initString("lang.en.process.recover", "Recover process"); + initString("lang.en.process.remove", "Remove process"); + initString("lang.en.process.selected", "Selected process"); + initString("lang.en.process.time.local", "Local time"); + initString("lang.en.processes.all", "All processes"); + initString("lang.en.protocol", "Protocol"); + initString("lang.en.protocol.client", "Client side"); + initString("lang.en.protocol.editor", "Protocol editor"); + initString("lang.en.protocol.server", "Server side"); + initString("lang.en.protocol.tasks.activation", "Client-/Server protocol activation"); + initString("lang.en.protocol.tasks.client", "Client Task-Manager (Client request)"); + initString("lang.en.protocols", "Protocols"); + initString("lang.en.quit", "Quit"); + initString("lang.en.recovered", "Recovered"); + initString("lang.en.remove", "Remove"); + initString("lang.en.replay", "Repeat"); + initString("lang.en.reset", "Reset"); + initString("lang.en.save", "Save"); + initString("lang.en.saveas", "Save as"); + initString("lang.en.server", "Server"); + initString("lang.en.serverrequest.start", "Start server request"); + initString("lang.en.simulator", "Simulator"); + initString("lang.en.simulator.close", "Close simulation"); + initString("lang.en.simulator.finished", "Simulation closed"); + initString("lang.en.simulator.new", "New simulation"); + initString("lang.en.simulator.paused", "Simulation paused"); + initString("lang.en.simulator.resetted", "Simulation resetted"); + initString("lang.en.simulator.started", "Simulation started"); + initString("lang.en.start", "Start"); + initString("lang.en.stop", "Stop"); + initString("lang.en.takeover", "Take over"); + initString("lang.en.task", "Task"); + initString("lang.en.task.manager", "Event editor"); + initString("lang.en.tasks.fullfilled", "Fullfilled tasks"); + initString("lang.en.tasks.global", "GLobal tasks"); + initString("lang.en.tasks.local", "Local tasks"); + initString("lang.en.time", "Time"); + initString("lang.en.time.lamport", "Lamport time"); + initString("lang.en.time.vector", "Vector time"); + initString("lang.en.timed.global", "Global events"); + initString("lang.en.timed.local", "Local events"); + initString("lang.en.type", "Type"); + initString("lang.en.value", "Value"); + initString("lang.en.variable", "Variable"); + initString("lang.en.variables", "Variables"); + initString("lang.en.variables.global", "Global variables"); + initString("lang.en.window.close", "Close window"); + initString("lang.en.window.new", "New window"); + + /* Protocol names */ + initString("lang.en.events.implementations.VSProcessCrashEvent", "Process Crash Event"); + initString("lang.en.events.implementations.VSProcessCrashEvent.short", "Process Crash"); + initString("lang.en.events.implementations.VSProcessRecoverEvent", "Process Recover Event"); + initString("lang.en.events.implementations.VSProcessRecoverEvent.short", "Process Recover"); + initString("lang.en.protocols.implementations.VSBasicMulticastProtocol", "Basic Multicast Protocol"); + initString("lang.en.protocols.implementations.VSBasicMulticastProtocol.short", "Basic Multicast"); + initString("lang.en.protocols.implementations.VSBerkelyTimeProtocol", "Berkley algorithm for internal sync."); + initString("lang.en.protocols.implementations.VSBerkelyTimeProtocol.short", "Berkley Protocol"); + initString("lang.en.protocols.implementations.VSBroadcastProtocol", "Broadcast Protocol"); + initString("lang.en.protocols.implementations.VSBroadcastProtocol.short", "Broadcast"); + initString("lang.en.protocols.implementations.VSDummyProtocol", "Example/Dummy Protocol"); + initString("lang.en.protocols.implementations.VSDummyProtocol.short", "Example/Dummy"); + initString("lang.en.protocols.implementations.VSExternalTimeSyncProtocol", "Christians method for external sync."); + initString("lang.en.protocols.implementations.VSExternalTimeSyncProtocol.short", "Christians"); + initString("lang.en.protocols.implementations.VSInternalTimeSyncProtocol", "Internal Synchronization Protocol"); + initString("lang.en.protocols.implementations.VSInternalTimeSyncProtocol.short", "Internal sync."); + initString("lang.en.protocols.implementations.VSOnePhaseCommitProtocol", "One-Phase Commit Protocol"); + initString("lang.en.protocols.implementations.VSOnePhaseCommitProtocol.short", "1-Phase Commit"); + initString("lang.en.protocols.implementations.VSPingPongProtocol", "Ping-Pong Protocol"); + initString("lang.en.protocols.implementations.VSPingPongProtocol.short", "Ping-Pong"); + initString("lang.en.protocols.implementations.VSReliableMulticastProtocol", "Reliable Multicast Protocol"); + initString("lang.en.protocols.implementations.VSReliableMulticastProtocol.short", "Reliable Multicast"); + initString("lang.en.protocols.implementations.VSTwoPhaseCommitProtocol", "Two-Phase Commit"); + initString("lang.en.protocols.implementations.VSTwoPhaseCommitProtocol.short", "2-Phase Commit"); } /** @@ -186,10 +211,10 @@ public class VSDefaultPrefs extends VSSerializablePrefs { */ public void fillDefaultIntegers() { /* Simulator prefs */ - initInteger("sim.process.num", 3, "Anzahl der Prozesse", 1, 6); - initInteger("message.prob.outage", 0, "Nachrichtenverlustw'keit", 0, 100, "%"); - initInteger("process.prob.crash", 0, "Prozessausfallw'keit", 0, 100, "%"); - initInteger("sim.seconds", 15, "Dauer der Simulation", 5, 120, "s"); + initInteger("sim.process.num", 3, "Number of processes", 1, 6); + initInteger("message.prob.outage", 0, "Message lost prob.", 0, 100, "%"); + initInteger("process.prob.crash", 0, "Process crash prob.", 0, 100, "%"); + initInteger("sim.seconds", 15, "Simulation duration", 5, 120, "s"); /* Internal prefs */ initInteger("keyevent.about", KeyEvent.VK_A, null, 0, 100); @@ -215,12 +240,12 @@ public class VSDefaultPrefs extends VSSerializablePrefs { initInteger("keyevent.start", KeyEvent.VK_S, null, 0, 100); initInteger("keyevent.stop", KeyEvent.VK_P, null, 0, 100); - initInteger("div.window.prefs.xsize", 400, "Einstellungsfenster X-Achse", 550, 3200, "px"); - initInteger("div.window.prefs.ysize", 400, "Einstellungsfenster Y-Achse", 640, 2400, "px"); - initInteger("div.window.logsize", 300, "Loggfenster Y-Achse", 100, 1000, "px"); - initInteger("div.window.splitsize", 320, "Toolbar X-Achse", 100, 1000, "px"); - initInteger("div.window.xsize", 1024, "Hauptfenster X-Achse", 750, 3200, "px"); - initInteger("div.window.ysize", 768, "Hauptfenster Y-Achse", 600, 2400, "px"); + initInteger("div.window.prefs.xsize", 400, "Configuration window X-Axis", 550, 3200, "px"); + initInteger("div.window.prefs.ysize", 400, "Configuration window Y-Axis", 640, 2400, "px"); + initInteger("div.window.logsize", 300, "Log window Y-Axis", 100, 1000, "px"); + initInteger("div.window.splitsize", 320, "Toolbar X-Axis", 100, 1000, "px"); + initInteger("div.window.xsize", 1024, "Main window X-Axis", 750, 3200, "px"); + initInteger("div.window.ysize", 768, "Main window Y-Axis", 600, 2400, "px"); } /** @@ -228,8 +253,8 @@ public class VSDefaultPrefs extends VSSerializablePrefs { */ public void fillDefaultFloats() { /* Simulator prefs */ - initFloat("process.clock.variance", 0, "Uhrabweichung"); - initFloat("sim.clock.speed", 0.5f, "Abspielgeschwindigkeit der Simulation"); + initFloat("process.clock.variance", 0, "Clock variance"); + initFloat("sim.clock.speed", 0.5f, "Simulation play speed"); } /** @@ -237,8 +262,8 @@ public class VSDefaultPrefs extends VSSerializablePrefs { */ public void fillDefaultLongs() { /* Simulator prefs */ - initLong("message.sendingtime.min", 500, "Minimale Übertragungszeit", "ms"); - initLong("message.sendingtime.max", 2000, "Maximale Übertragungszeit", "ms"); + initLong("message.sendingtime.min", 500, "Max transmission time", "ms"); + initLong("message.sendingtime.max", 2000, "Min transmission time", "ms"); } /** @@ -264,13 +289,13 @@ public class VSDefaultPrefs extends VSSerializablePrefs { * Fill with default booleans. */ public void fillDefaultBooleans() { - initBoolean("sim.mode.expert", false, "Expertenmodus aktivieren"); - initBoolean("sim.message.own.recv", false, "Prozesse empfangen eigene Nachrichten"); - initBoolean("sim.message.prob.mean", true, "Mittelwerte der Nachrichtverlustw'k. bilden"); - initBoolean("sim.message.sendingtime.mean", true, "Mittelwerte der Übertragungszeiten bilden"); - initBoolean("sim.messages.relevant", true, "Nur relevante Nachrichten anzeigen"); - initBoolean("sim.periodic", false, "Simulation periodisch wiederholen"); - initBoolean("sim.update.lamporttime.all", false, "Lamportzeiten betreffen alle Ereignisse"); - initBoolean("sim.update.vectortime.all", false, "Vektorzeiten betreffen alle Ereignisse"); + initBoolean("sim.mode.expert", false, "Expert mode"); + initBoolean("sim.message.own.recv", false, "Processes receive own messages"); + initBoolean("sim.message.prob.mean", true, "Use mean value of message lost prob."); + initBoolean("sim.message.sendingtime.mean", true, "Use mean value of transmission times"); + initBoolean("sim.messages.relevant", true, "Only show relevant messages"); + initBoolean("sim.periodic", false, "Repeat simulation periodically"); + initBoolean("sim.update.lamporttime.all", false, "Lamport timestamps affect all events"); + initBoolean("sim.update.vectortime.all", false, "Vector timestamps affect all events"); } } diff --git a/sources/prefs/VSDefaultPrefsDE.java b/sources/prefs/VSDefaultPrefsDE.java new file mode 100644 index 0000000..9f65153 --- /dev/null +++ b/sources/prefs/VSDefaultPrefsDE.java @@ -0,0 +1,275 @@ +/* + * Copyright (c) 2008 Paul C. Buetow, vs@dev.buetow.org + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * All icons of the icons/ folder are under a Creative Commons + * Attribution-Noncommercial-Share Alike License a CC-by-nc-sa. + * + * The icon's homepage is http://code.google.com/p/ultimate-gnome/ + */ + +package prefs; + +import java.awt.Color; +import java.awt.event.KeyEvent; + +/** + * The class VSDefaultPrefsDE, makes sure that the simulator has its default + * configuration values. + * + * @author Paul C. Buetow + */ +public class VSDefaultPrefsDE extends VSSerializablePrefs { + /** The serial version uid */ + private static final long serialVersionUID = 1L; + + /** + * Inits a prefs object with default values. + * + * @return the lang.process.removeprefs + */ + public static VSPrefs init() { + VSDefaultPrefsDE prefs = new VSDefaultPrefsDE(); + prefs.fillWithDefaults(); + return prefs; + } + + /** + * Fill everything with ts defaults. + */ + public void fillWithDefaults() { + super.clear(); + addWithDefaults(); + } + + /** + * Adds default values if not existent. + */ + public void addWithDefaults() { + fillDefaultBooleans(); + fillDefaultColors(); + fillDefaultFloats(); + fillDefaultIntegers(); + fillDefaultLongs(); + fillDefaultStrings(); + } + + /** + * Fill with default strings. + */ + public void fillDefaultStrings() { + initString("lang.de.about", "About"); + initString("lang.de.about.info", "Dieses Programm wurde von Paul Bütow im Rahmen der Diplomarbeit \"Objektorientierte Entwicklung eines GUI-basierten Tools für die ereignisbasierte Simulator verteilter Systeme\" bei Prof. Dr.-Ing. Oßmann als 1. Prüfer sowie Betreuer und Prof. Dr. rer. nat. Fassbender als 2. Prüfer erstellt. Bei Fehlern bitte eine kurze Mail mit Fehlerbeschreibung an vs@paul.buetow.org schicken!"); + initString("lang.de.activate", "aktivieren"); + initString("lang.de.activated", "aktiviert"); + initString("lang.de.actualize", "Aktualisieren"); + initString("lang.de.all", "Alle"); + initString("lang.de.antialiasing", "Anti-Aliasing"); + initString("lang.de.cancel", "Abbrechen"); + initString("lang.de.client", "Client"); + initString("lang.de.clientrequest.start", "Clientanfrage starten"); + initString("lang.de.close", "Schliessen"); + initString("lang.de.colorchooser", "Farbauswahl"); + initString("lang.de.colorchooser2", "Bitte Farbe auswählen"); + initString("lang.de.copy", "Kopieren"); + initString("lang.de.crashed", "Abgestürzt"); + initString("lang.de.dat", "Simulation (.dat)"); + initString("lang.de.deactivate", "deaktivieren"); + initString("lang.de.deactivated", "deaktiviert"); + initString("lang.de.default", "Defaults"); + initString("lang.de.edit", "Editieren"); + initString("lang.de.editor", "Editor"); + initString("lang.de.event", "Ereignis"); + initString("lang.de.event.add.global", "Globales Ereignis einfügen"); + initString("lang.de.event.add.local", "Lokales Ereignis einfügen"); + initString("lang.de.event.add.time", "bei"); + initString("lang.de.events", "Ereignisse"); + initString("lang.de.events.process", "Prozessereignisse"); + initString("lang.de.file", "Datei"); + initString("lang.de.filter", "Filter"); + initString("lang.de.loging.active", "Logging"); + initString("lang.de.loging.clear", "Loggs löschen"); + initString("lang.de.message", "Nachricht"); + initString("lang.de.message.recv", "Nachricht erhalten"); + initString("lang.de.message.sent", "Nachricht versendet"); + initString("lang.de.mode.expert", "Expertenmodus"); + initString("lang.de.name", "VS-Simulator 1.0"); + initString("lang.de.ok", "OK"); + initString("lang.de.open", "Öffnen"); + initString("lang.de.pause", "Pausieren"); + initString("lang.de.prefs", "Einstellungen"); + initString("lang.de.prefs.color", "Farbeinstellungen"); + initString("lang.de.prefs.diverse", "Diverse Einstellungen"); + initString("lang.de.prefs.ext", "Erweiterte Einstellungen"); + initString("lang.de.prefs.message", "Nachrichteneinstellungen"); + initString("lang.de.prefs.message.defaults", "Nachrichteneinstellungen für neue Prozesse"); + initString("lang.de.prefs.more", "Mehr Einstellungen"); + initString("lang.de.prefs.process", "Prozesseinstellungen"); + initString("lang.de.prefs.process", "Prozessstandardeinstellungen"); + initString("lang.de.prefs.process.defaults", "Einstellungen für neue Prozesse"); + initString("lang.de.prefs.process.ext", "Erweiterte Prozesseinstellungen"); + initString("lang.de.prefs.protocols", "Protokolleinstellungen"); + initString("lang.de.prefs.simulator", "Simulationseinstellungen"); + initString("lang.de.process", "Prozess"); + initString("lang.de.process.add.new", "Neuen Prozess hinzufügen"); + initString("lang.de.process.crash", "Prozess abstürzen"); + initString("lang.de.process.edit", "Prozess editieren"); + initString("lang.de.process.id", "PID"); + initString("lang.de.process.new", "Neuer Prozess"); + initString("lang.de.process.not.selected", "Kein Prozess ausgewählt"); + initString("lang.de.process.recover", "Prozess wiederbeleben"); + initString("lang.de.process.remove", "Prozess entfernen"); + initString("lang.de.process.selected", "Aktuell ausgewählter Prozess"); + initString("lang.de.process.time.local", "Lokale Zeit"); + initString("lang.de.processes.all", "Alle Prozesse"); + initString("lang.de.protocol", "Protokoll"); + initString("lang.de.protocol.client", "Clientseite"); + initString("lang.de.protocol.editor", "Protokolleditor"); + initString("lang.de.protocol.server", "Serverseite"); + initString("lang.de.protocol.tasks.activation", "Client-/Serverprotokoll Aktivierung"); + initString("lang.de.protocol.tasks.client", "Client Task-Manager (Clientanfragen)"); + initString("lang.de.protocols", "Protokolle"); + initString("lang.de.quit", "Beenden"); + initString("lang.de.recovered", "Wiederbelebt"); + initString("lang.de.remove", "Entfernen"); + initString("lang.de.replay", "Wiederholen"); + initString("lang.de.reset", "Reset"); + initString("lang.de.save", "Speichern"); + initString("lang.de.saveas", "Speichern unter"); + initString("lang.de.server", "Server"); + initString("lang.de.serverrequest.start", "Serveranfrage starten"); + initString("lang.de.simulator", "Simulator"); + initString("lang.de.simulator.close", "Simulation schliessen"); + initString("lang.de.simulator.finished", "Simulation beendet"); + initString("lang.de.simulator.new", "Neue Simulation"); + initString("lang.de.simulator.paused", "Simulation pausiert"); + initString("lang.de.simulator.resetted", "Simulation zurückgesetzt"); + initString("lang.de.simulator.started", "Simulation gestartet"); + initString("lang.de.start", "Starten"); + initString("lang.de.stop", "Stoppen"); + initString("lang.de.takeover", "Übernehmen"); + initString("lang.de.task", "Aufgabe"); + initString("lang.de.task.manager", "Ereigniseditor"); + initString("lang.de.tasks.fullfilled", "Abgelaufene Aufgaben"); + initString("lang.de.tasks.global", "Globale Aufgaben"); + initString("lang.de.tasks.local", "Lokale Aufgaben"); + initString("lang.de.time", "Zeit"); + initString("lang.de.time.lamport", "Lamportzeit"); + initString("lang.de.time.vector", "Vektorzeit"); + initString("lang.de.timed.global", "Globale Ereignisse"); + initString("lang.de.timed.local", "Lokale Ereignisse"); + initString("lang.de.type", "Typ"); + initString("lang.de.value", "Wert"); + initString("lang.de.variable", "Variable"); + initString("lang.de.variables", "Variablen"); + initString("lang.de.variables.global", "Globale Variablen"); + initString("lang.de.window.close", "Fenster schliessen"); + initString("lang.de.window.new", "Neues Fenster"); + } + + /** + * Fill with default integers. + */ + public void fillDefaultIntegers() { + /* Simulator prefs */ + initInteger("sim.process.num", 3, "Anzahl der Prozesse", 1, 6); + initInteger("message.prob.outage", 0, "Nachrichtenverlustw'keit", 0, 100, "%"); + initInteger("process.prob.crash", 0, "Prozessausfallw'keit", 0, 100, "%"); + initInteger("sim.seconds", 15, "Dauer der Simulation", 5, 120, "s"); + + /* Internal prefs */ + initInteger("keyevent.about", KeyEvent.VK_A, null, 0, 100); + initInteger("keyevent.cancel", KeyEvent.VK_A, null, 0, 100); + initInteger("keyevent.close", KeyEvent.VK_C, null, 0, 100); + initInteger("keyevent.default", KeyEvent.VK_F, null, 0, 100); + initInteger("keyevent.edit", KeyEvent.VK_E, null, 0, 100); + initInteger("keyevent.file", KeyEvent.VK_D, null, 0, 100); + initInteger("keyevent.new", KeyEvent.VK_N, null, 0, 100); + initInteger("keyevent.actualize", KeyEvent.VK_A, null, 0, 100); + initInteger("keyevent.takeover", KeyEvent.VK_B, null, 0, 100); + initInteger("keyevent.ok", KeyEvent.VK_O, null, 0, 100); + initInteger("keyevent.open", KeyEvent.VK_O, null, 0, 100); + initInteger("keyevent.pause", KeyEvent.VK_P, null, 0, 100); + initInteger("keyevent.prefs", KeyEvent.VK_P, null, 0, 100); + initInteger("keyevent.prefs.ext", KeyEvent.VK_E, null, 0, 100); + initInteger("keyevent.quit", KeyEvent.VK_B, null, 0, 100); + initInteger("keyevent.replay", KeyEvent.VK_W, null, 0, 100); + initInteger("keyevent.reset", KeyEvent.VK_R, null, 0, 100); + initInteger("keyevent.save", KeyEvent.VK_S, null, 0, 100); + initInteger("keyevent.saveas", KeyEvent.VK_V, null, 0, 100); + initInteger("keyevent.simulator", KeyEvent.VK_S, null, 0, 100); + initInteger("keyevent.start", KeyEvent.VK_S, null, 0, 100); + initInteger("keyevent.stop", KeyEvent.VK_P, null, 0, 100); + + initInteger("div.window.prefs.xsize", 400, "Einstellungsfenster X-Achse", 550, 3200, "px"); + initInteger("div.window.prefs.ysize", 400, "Einstellungsfenster Y-Achse", 640, 2400, "px"); + initInteger("div.window.logsize", 300, "Loggfenster Y-Achse", 100, 1000, "px"); + initInteger("div.window.splitsize", 320, "Toolbar X-Achse", 100, 1000, "px"); + initInteger("div.window.xsize", 1024, "Hauptfenster X-Achse", 750, 3200, "px"); + initInteger("div.window.ysize", 768, "Hauptfenster Y-Achse", 600, 2400, "px"); + } + + /** + * Fill with default floats. + */ + public void fillDefaultFloats() { + /* Simulator prefs */ + initFloat("process.clock.variance", 0, "Uhrabweichung"); + initFloat("sim.clock.speed", 0.5f, "Abspielgeschwindigkeit der Simulation"); + } + + /** + * Fill default longs. + */ + public void fillDefaultLongs() { + /* Simulator prefs */ + initLong("message.sendingtime.min", 500, "Minimale Übertragungszeit", "ms"); + initLong("message.sendingtime.max", 2000, "Maximale Übertragungszeit", "ms"); + } + + /** + * Fill with default colors. + */ + public void fillDefaultColors() { + /* Internal prefs */ + initColor("col.background", new Color(0xFF, 0xFF, 0xFF)); + initColor("col.process.default", new Color(0x00, 0x00, 0x00)); + initColor("col.process.running", new Color(0x0D, 0xD8, 0x09)); + initColor("col.process.crashed", new Color(0xff, 0x00, 0x00)); + initColor("col.process.highlight", new Color(0xff, 0xA5, 0x00)); + initColor("col.process.line", new Color(0x00, 0x00, 0x00)); + initColor("col.process.secondline", new Color(0xAA, 0xAA, 0xAA)); + initColor("col.process.sepline", new Color(0xff, 0x00, 0x00)); + initColor("col.process.stopped", new Color(0x00, 0x00, 0x00)); + initColor("col.message.arrived", new Color(0x00, 0x85, 0xD2)); + initColor("col.message.sending", new Color(0x0D, 0xD8, 0x09)); + initColor("col.message.lost", new Color(0xFF, 0x00, 0x00)); + } + + /** + * Fill with default booleans. + */ + public void fillDefaultBooleans() { + initBoolean("sim.mode.expert", false, "Expertenmodus aktivieren"); + initBoolean("sim.message.own.recv", false, "Prozesse empfangen eigene Nachrichten"); + initBoolean("sim.message.prob.mean", true, "Mittelwerte der Nachrichtverlustw'k. bilden"); + initBoolean("sim.message.sendingtime.mean", true, "Mittelwerte der Übertragungszeiten bilden"); + initBoolean("sim.messages.relevant", true, "Nur relevante Nachrichten anzeigen"); + initBoolean("sim.periodic", false, "Simulation periodisch wiederholen"); + initBoolean("sim.update.lamporttime.all", false, "Lamportzeiten betreffen alle Ereignisse"); + initBoolean("sim.update.vectortime.all", false, "Vektorzeiten betreffen alle Ereignisse"); + } +} diff --git a/sources/prefs/VSPrefs.java b/sources/prefs/VSPrefs.java index f5e68f3..31e1f22 100644 --- a/sources/prefs/VSPrefs.java +++ b/sources/prefs/VSPrefs.java @@ -36,6 +36,9 @@ import serialize.*; * @author Paul C. Buetow */ public class VSPrefs { + /** Check if we want to overwrite description strings */ + //private boolean useDefaultStrings = false; + /** The Constant BOOLEAN_PREFIX. */ public static final String BOOLEAN_PREFIX = "Boolean: "; @@ -826,6 +829,14 @@ public class VSPrefs { initUnit(LONG_PREFIX + key, unit); } + /** + * Deletes the long. + * + * @param key the key + */ + public synchronized void deleteLong(String key) { + longPrefs.remove(key); + } /** * Sets the long. @@ -1187,4 +1198,13 @@ public class VSPrefs { return allKeys; } + + /** + * Not overwrite description string defaults + */ + /* + public void useDefaultStrings(boolean value) { + useDefaultStrings = value; + } + */ } diff --git a/sources/prefs/editors/VSAbstractBetterEditor.java b/sources/prefs/editors/VSAbstractBetterEditor.java index 9df7f78..556b14a 100644 --- a/sources/prefs/editors/VSAbstractBetterEditor.java +++ b/sources/prefs/editors/VSAbstractBetterEditor.java @@ -28,7 +28,6 @@ import java.awt.event.*; import javax.swing.*; import prefs.*; -//import utils.*; /** * The class VSAbstractBetterEditor, is an improved VSAbstractEditor. @@ -43,7 +42,6 @@ public abstract class VSAbstractBetterEditor extends VSAbstractEditor { private Container contentPane; /** The info area. */ - //private VSInfoArea infoArea; /** The title. */ private String title; @@ -90,13 +88,10 @@ public abstract class VSAbstractBetterEditor extends VSAbstractEditor { JPanel panel = new JPanel(); panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); - //infoArea = new VSInfoArea(); JPanel editPanel = getEditPanel(); JPanel buttonPanel = getButtonPanel(); - //JScrollPane scrollPane = new JScrollPane(editPanel); panel.add(editPanel); - //panel.add(infoArea); panel.add(buttonPanel); return panel; @@ -128,13 +123,4 @@ public abstract class VSAbstractBetterEditor extends VSAbstractEditor { /* More action in the super class!!! */ super.actionPerformed(e); } - - /** - * Gets the info area. - * - * @return the info area - */ - //protected VSInfoArea getInfoArea() { - // return infoArea; - //} } diff --git a/sources/prefs/editors/VSAbstractEditor.java b/sources/prefs/editors/VSAbstractEditor.java index 8f03ba4..6118c7e 100644 --- a/sources/prefs/editors/VSAbstractEditor.java +++ b/sources/prefs/editors/VSAbstractEditor.java @@ -249,7 +249,7 @@ public abstract class VSAbstractEditor implements ActionListener { boolean expertMode = prefs.getBoolean("sim.mode.expert"); for (String elem : set) { - if (!elem.startsWith("lang.") && !elem.startsWith("keyevent.")) { + if (!elem.startsWith("lang.en.") && !elem.startsWith("keyevent.")) { if (expertMode) filtered.add(elem); else if (!elem.startsWith("col.") && (!elem.startsWith("div."))) @@ -271,7 +271,7 @@ public abstract class VSAbstractEditor implements ActionListener { addToButtonPanelFront(buttonPanel); JButton resetButton = new JButton( - prefs.getString("lang.reset")); + prefs.getString("lang.en.reset")); resetButton.setMnemonic(prefs.getInteger("keyevent.reset")); resetButton.addActionListener(this); buttonPanel.add(resetButton); @@ -339,7 +339,9 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JComboBox> createIntegerComponent( String fullKey, String key, VSPrefs prefsToEdit) { - String descr = prefsToEdit.getDescription(fullKey); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; Integer integer = prefsToEdit.getInteger(key); Integer initialSelection[] = { integer }; @@ -381,7 +383,9 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JTextField> createVectorComponent( String fullKey, String key, VSPrefs prefsToEdit) { - String descr = prefsToEdit.getDescription(fullKey); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; Vector<Integer> vec = prefsToEdit.getVector(key); @@ -402,8 +406,10 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JCheckBox> createBooleanComponent( String fullKey, String key, VSPrefs prefsToEdit) { - final String activated = prefs.getString("lang.activated"); - String descr = prefsToEdit.getDescription(fullKey); + final String activated = prefs.getString("lang.en.activated"); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; JCheckBox valField = new JCheckBox(activated, prefsToEdit.getBoolean(key)); @@ -424,7 +430,9 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JTextField> createLongComponent( String fullKey, String key, VSPrefs prefsToEdit) { - String descr = prefsToEdit.getDescription(fullKey); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; JTextField valField = new JTextField(VALUE_FIELD_COLS); valField.addKeyListener(new java.awt.event.KeyAdapter() { @@ -451,7 +459,9 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JTextField> createFloatComponent( String fullKey, String key, VSPrefs prefsToEdit) { - String descr = prefsToEdit.getDescription(fullKey); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; JTextField valField = new JTextField(VALUE_FIELD_COLS); valField.addKeyListener(new java.awt.event.KeyAdapter() { @@ -478,7 +488,9 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JTextField> createColorComponent( String fullKey, String key, final VSPrefs prefsToEdit) { - String descr = prefsToEdit.getDescription(fullKey); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; final JTextField valField = new JTextField(VALUE_FIELD_COLS); Color color = prefsToEdit.getColor(key); @@ -492,9 +504,9 @@ public abstract class VSAbstractEditor implements ActionListener { public void mouseClicked(MouseEvent e) { JFrame parentFrame = getFrame(); JFrame frame = new VSFrame( - prefs.getString("lang.name") + " - " + + prefs.getString("lang.en.name") + " - " + prefs.getString( - "lang.colorchooser"),parentFrame); + "lang.en.colorchooser"),parentFrame); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); JComponent colorChooserPane = new VSColorChooser(prefs, @@ -522,7 +534,9 @@ public abstract class VSAbstractEditor implements ActionListener { */ protected VS3Tupel<String,Component,JTextField> createStringComponent( String fullKey, String key, VSPrefs prefsToEdit) { - String descr = prefsToEdit.getDescription(fullKey); + String descr = prefs.getDescription(fullKey); + if (descr == null) + descr = prefsToEdit.getDescription(fullKey); String label = descr == null ? fullKey : descr; JTextField valField = new JTextField(VALUE_FIELD_COLS); valField.addKeyListener(new java.awt.event.KeyAdapter() { @@ -630,7 +644,7 @@ public abstract class VSAbstractEditor implements ActionListener { if (key.startsWith("sim.")) { if (!flag) { flag = true; - addSeparator(prefs.getString("lang.prefs.simulator")); + addSeparator(prefs.getString("lang.en.prefs.simulator")); } addVariable(labels.get(fullKey), components.get(fullKey), prefsToEdit); @@ -644,10 +658,10 @@ public abstract class VSAbstractEditor implements ActionListener { if (!flag) { flag = true; if (this instanceof VSProcessEditor) - addSeparator(prefs.getString("lang.prefs.process")); + addSeparator(prefs.getString("lang.en.prefs.process")); else addSeparator(prefs.getString( - "lang.prefs.process.defaults")); + "lang.en.prefs.process.defaults")); } addVariable(labels.get(fullKey), components.get(fullKey), prefsToEdit); @@ -662,10 +676,10 @@ public abstract class VSAbstractEditor implements ActionListener { flag = true; if (this instanceof VSProcessEditor) addSeparator(prefs.getString( - "lang.prefs.message")); + "lang.en.prefs.message")); else addSeparator(prefs.getString( - "lang.prefs.message.defaults")); + "lang.en.prefs.message.defaults")); } addVariable(labels.get(fullKey), components.get(fullKey), prefsToEdit); @@ -678,7 +692,7 @@ public abstract class VSAbstractEditor implements ActionListener { if (key.startsWith("col.")) { if (!flag) { flag = true; - addSeparator(prefs.getString("lang.prefs.color")); + addSeparator(prefs.getString("lang.en.prefs.color")); } addVariable(labels.get(fullKey), components.get(fullKey), prefsToEdit); @@ -691,7 +705,7 @@ public abstract class VSAbstractEditor implements ActionListener { if (key.startsWith("div.")) { if (!flag) { flag = true; - addSeparator(prefs.getString("lang.prefs.diverse")); + addSeparator(prefs.getString("lang.en.prefs.diverse")); } addVariable(labels.get(fullKey), components.get(fullKey), prefsToEdit); @@ -1010,10 +1024,10 @@ public abstract class VSAbstractEditor implements ActionListener { public void actionPerformed(ActionEvent e) { String actionCommand = e.getActionCommand(); - if (actionCommand.equals(prefs.getString("lang.takeover"))) { + if (actionCommand.equals(prefs.getString("lang.en.takeover"))) { savePrefs(); - } else if (actionCommand.equals(prefs.getString("lang.reset"))) { + } else if (actionCommand.equals(prefs.getString("lang.en.reset"))) { resetPrefs(); } } diff --git a/sources/prefs/editors/VSColorChooser.java b/sources/prefs/editors/VSColorChooser.java index 96aaf53..619bc17 100644 --- a/sources/prefs/editors/VSColorChooser.java +++ b/sources/prefs/editors/VSColorChooser.java @@ -62,7 +62,7 @@ public class VSColorChooser extends JPanel implements ChangeListener { colorChooser.setColor(color); colorChooser.getSelectionModel().addChangeListener(this); colorChooser.setBorder(BorderFactory.createTitledBorder( - prefs.getString("lang.colorchooser2"))); + prefs.getString("lang.en.colorchooser2"))); add(colorChooser, BorderLayout.CENTER); } diff --git a/sources/prefs/editors/VSEditorFrame.java b/sources/prefs/editors/VSEditorFrame.java index 332c8a5..855bf0a 100644 --- a/sources/prefs/editors/VSEditorFrame.java +++ b/sources/prefs/editors/VSEditorFrame.java @@ -82,13 +82,13 @@ public class VSEditorFrame extends VSFrame implements ActionListener { */ private void fillButtonPanel(JPanel buttonPanel) { JButton okButton = new JButton( - prefs.getString("lang.ok")); + prefs.getString("lang.en.ok")); okButton.setMnemonic(prefs.getInteger("keyevent.ok")); okButton.addActionListener(this); buttonPanel.add(okButton, 0); JButton cancelButton = new JButton( - prefs.getString("lang.cancel")); + prefs.getString("lang.en.cancel")); cancelButton.setMnemonic(prefs.getInteger("keyevent.cancel")); cancelButton.addActionListener(this); buttonPanel.add(cancelButton, 1); @@ -102,11 +102,11 @@ public class VSEditorFrame extends VSFrame implements ActionListener { public void actionPerformed(ActionEvent e) { String actionCommand = e.getActionCommand(); - if (actionCommand.equals(prefs.getString("lang.ok"))) { + if (actionCommand.equals(prefs.getString("lang.en.ok"))) { editor.actionPerformed(e); dispose(); - } else if (actionCommand.equals(prefs.getString("lang.cancel"))) { + } else if (actionCommand.equals(prefs.getString("lang.en.cancel"))) { editor.actionPerformed(e); dispose(); diff --git a/sources/prefs/editors/VSProcessEditor.java b/sources/prefs/editors/VSProcessEditor.java index ae2a61f..eaacc7b 100644 --- a/sources/prefs/editors/VSProcessEditor.java +++ b/sources/prefs/editors/VSProcessEditor.java @@ -54,8 +54,8 @@ public class VSProcessEditor extends VSAbstractBetterEditor { * @param process the process */ public VSProcessEditor(VSPrefs prefs, VSInternalProcess process) { - super(prefs, process, prefs.getString("lang.name") + " - " + - prefs.getString("lang.prefs.process"));; + super(prefs, process, prefs.getString("lang.en.name") + " - " + + prefs.getString("lang.en.prefs.process"));; this.process = process; disposeFrameWithParentIfExists(); makeProtocolVariablesEditable(); @@ -67,7 +67,7 @@ public class VSProcessEditor extends VSAbstractBetterEditor { */ protected void addToButtonPanelFront(JPanel buttonPanel) { JButton takeoverButton = new JButton( - prefs.getString("lang.takeover")); + prefs.getString("lang.en.takeover")); takeoverButton.setMnemonic(prefs.getInteger("keyevent.takeover")); takeoverButton.addActionListener(this); buttonPanel.add(takeoverButton); @@ -80,9 +80,9 @@ public class VSProcessEditor extends VSAbstractBetterEditor { ArrayList<String> editableProtocolsClassnames = VSRegisteredEvents.getEditableProtocolsClassnames(); - //String protocolString = " " + prefs.getString("lang.protocol"); - String clientString = " " + prefs.getString("lang.client"); - String serverString = " " + prefs.getString("lang.server"); + //String protocolString = " " + prefs.getString("lang.en.protocol"); + String clientString = " " + prefs.getString("lang.en.client"); + String serverString = " " + prefs.getString("lang.en.server"); for (String protocolClassname : editableProtocolsClassnames) { String protocolShortname = @@ -116,11 +116,11 @@ public class VSProcessEditor extends VSAbstractBetterEditor { public void actionPerformed(ActionEvent e) { String actionCommand = e.getActionCommand(); - if (actionCommand.equals(prefs.getString("lang.ok"))) { + if (actionCommand.equals(prefs.getString("lang.en.ok"))) { savePrefs(); process.updateFromPrefs(); - } else if (actionCommand.equals(prefs.getString("lang.takeover"))) { + } else if (actionCommand.equals(prefs.getString("lang.en.takeover"))) { savePrefs(); process.updateFromPrefs(); diff --git a/sources/prefs/editors/VSSimulatorEditor.java b/sources/prefs/editors/VSSimulatorEditor.java index d900692..edd9cd5 100644 --- a/sources/prefs/editors/VSSimulatorEditor.java +++ b/sources/prefs/editors/VSSimulatorEditor.java @@ -68,8 +68,8 @@ public class VSSimulatorEditor extends VSAbstractBetterEditor { */ public VSSimulatorEditor(VSPrefs prefs, VSSimulatorFrame simulatorFrame, VSSimulator simulator) { - super(prefs, prefs, prefs.getString("lang.name") - + " - " + prefs.getString("lang.prefs")); + super(prefs, prefs, prefs.getString("lang.en.name") + + " - " + prefs.getString("lang.en.prefs")); this.dontStartNewSimulator = true;//simulator != null; this.simulatorFrame = simulatorFrame; this.simulator = simulator; @@ -83,8 +83,8 @@ public class VSSimulatorEditor extends VSAbstractBetterEditor { */ public VSSimulatorEditor(VSPrefs prefs, VSSimulatorFrame simulatorFrame, boolean openedNewWindow) { - super(prefs, prefs, prefs.getString("lang.name") - + " - " + prefs.getString("lang.prefs")); + super(prefs, prefs, prefs.getString("lang.en.name") + + " - " + prefs.getString("lang.en.prefs")); this.simulatorFrame = simulatorFrame; this.openedNewWindow = openedNewWindow; } @@ -97,7 +97,7 @@ public class VSSimulatorEditor extends VSAbstractBetterEditor { if (TAKEOVER_BUTTON) { TAKEOVER_BUTTON = false; JButton takeoverButton = new JButton( - prefs.getString("lang.takeover")); + prefs.getString("lang.en.takeover")); takeoverButton.setMnemonic(prefs.getInteger("keyevent.takeover")); takeoverButton.addActionListener(this); buttonPanel.add(takeoverButton); @@ -111,7 +111,7 @@ public class VSSimulatorEditor extends VSAbstractBetterEditor { public void actionPerformed(ActionEvent e) { String actionCommand = e.getActionCommand(); - if (actionCommand.equals(prefs.getString("lang.takeover"))) { + if (actionCommand.equals(prefs.getString("lang.en.takeover"))) { savePrefs(); if (simulator != null) { @@ -120,11 +120,11 @@ public class VSSimulatorEditor extends VSAbstractBetterEditor { simulator.updateFromPrefs(); } - } else if (actionCommand.equals(prefs.getString("lang.cancel"))) { + } else if (actionCommand.equals(prefs.getString("lang.en.cancel"))) { if (!dontStartNewSimulator && openedNewWindow) simulatorFrame.dispose(); - } else if (actionCommand.equals(prefs.getString("lang.ok"))) { + } else if (actionCommand.equals(prefs.getString("lang.en.ok"))) { savePrefs(); if (expertModeChanged()) { if (simulator != null) diff --git a/sources/protocols/VSAbstractProtocol.java b/sources/protocols/VSAbstractProtocol.java index ead58b7..7c84312 100644 --- a/sources/protocols/VSAbstractProtocol.java +++ b/sources/protocols/VSAbstractProtocol.java @@ -412,15 +412,15 @@ abstract public class VSAbstractProtocol extends VSAbstractEvent { StringBuffer buffer = new StringBuffer(); - buffer.append(prefs.getString("lang.protocol")); + buffer.append(prefs.getString("lang.en.protocol")); buffer.append(": "); buffer.append(getShortname()); buffer.append(" "); if (currentContextIsServer) - buffer.append(prefs.getString("lang.server")); + buffer.append(prefs.getString("lang.en.server")); else - buffer.append(prefs.getString("lang.client")); + buffer.append(prefs.getString("lang.en.client")); return buffer.toString(); } diff --git a/sources/serialize/VSSerialize.java b/sources/serialize/VSSerialize.java index 8dfd890..891c5b5 100644 --- a/sources/serialize/VSSerialize.java +++ b/sources/serialize/VSSerialize.java @@ -41,7 +41,7 @@ public final class VSSerialize { private static final long serialVersionUID = 1L; /** True if debug mode of serialization/deserialization */ - public static final boolean DEBUG = false; + public static final boolean DEBUG = true; /** The last filename used for saveing/opening*/ public static String LAST_FILENAME = null; @@ -195,7 +195,7 @@ public final class VSSerialize { VSPrefs prefs = simulator.getPrefs(); VSSimulatorFrame simulatorFrame = simulator.getSimulatorFrame(); - String saveText = prefs.getString("lang.save"); + String saveText = prefs.getString("lang.en.save"); JFileChooser fileChooser = new JFileChooser( new File(".").getPath()); fileChooser.setMultiSelectionEnabled(false); @@ -232,7 +232,9 @@ public final class VSSerialize { VSDefaultPrefs prefs = new VSDefaultPrefs(); prefs.deserialize(this, objectInputStream); + //prefs.useDefaultStrings(true); prefs.addWithDefaults(); + this.setObject("prefs", prefs); simulator = new VSSimulator(prefs, simulatorFrame); @@ -259,7 +261,7 @@ public final class VSSerialize { public VSSimulator openSimulator(VSSimulatorFrame simulatorFrame) { VSPrefs prefs = simulatorFrame.getPrefs(); - String openText = prefs.getString("lang.open"); + String openText = prefs.getString("lang.en.open"); JFileChooser fileChooser = new JFileChooser( new File(".").getPath()); fileChooser.setMultiSelectionEnabled(false); @@ -291,7 +293,7 @@ public final class VSSerialize { } public String getDescription() { - return prefs.getString("lang.dat"); + return prefs.getString("lang.en.dat"); } }; } diff --git a/sources/simulator/VSMain.java b/sources/simulator/VSMain.java index 661084c..70b112e 100644 --- a/sources/simulator/VSMain.java +++ b/sources/simulator/VSMain.java @@ -41,6 +41,9 @@ public class VSMain { /** The serial version uid */ private static final long serialVersionUID = 1L; + /** The global preferences */ + public static VSPrefs prefs; + /** * Instantiates a new VSMain object. * @@ -68,6 +71,7 @@ public class VSMain { */ private void init(VSPrefs prefs, Component relativeTo) { //VSSimulatorFrame simulatorFrame = + VSMain.prefs = prefs; new VSSimulatorFrame(prefs, relativeTo); } diff --git a/sources/simulator/VSSimulator.java b/sources/simulator/VSSimulator.java index 02a8741..779de07 100644 --- a/sources/simulator/VSSimulator.java +++ b/sources/simulator/VSSimulator.java @@ -217,9 +217,9 @@ public class VSSimulator extends JPanel implements VSSerializable { tasks = new ArrayList<VSTask>(); set(process, localTask, ONE_PROCESS); columnNames = new String[3]; - columnNames[0]= prefs.getString("lang.time") + " (ms)"; - columnNames[1] = prefs.getString("lang.process.id"); - columnNames[2] = prefs.getString("lang.event"); + columnNames[0]= prefs.getString("lang.en.time") + " (ms)"; + columnNames[1] = prefs.getString("lang.en.process.id"); + columnNames[2] = prefs.getString("lang.en.event"); numColumns = 3; } @@ -420,23 +420,23 @@ public class VSSimulator extends JPanel implements VSSerializable { String command = ae.getActionCommand(); int rows[] = source.getSelectedRows(); - if (command.equals(prefs.getString("lang.remove"))) { + if (command.equals(prefs.getString("lang.en.remove"))) { for (int i = rows.length - 1; i >= 0; --i) removeTaskAtRow(rows[i]); } else if (command.equals( - prefs.getString("lang.copy"))) { + prefs.getString("lang.en.copy"))) { copyTasksAtRows(rows); } } }; JPopupMenu popup = new JPopupMenu(); - JMenuItem item = new JMenuItem(prefs.getString("lang.remove")); + JMenuItem item = new JMenuItem(prefs.getString("lang.en.remove")); item.addActionListener(actionListener); popup.add(item); - item = new JMenuItem(prefs.getString("lang.copy")); + item = new JMenuItem(prefs.getString("lang.en.copy")); item.addActionListener(actionListener); popup.add(item); @@ -617,7 +617,7 @@ public class VSSimulator extends JPanel implements VSSerializable { if (this.loging == null) this.loging = new VSLogging(); - loging.log(prefs.getString("lang.simulator.new")); + loging.log(prefs.getString("lang.en.simulator.new")); fillContentPane(); updateFromPrefs(); @@ -698,7 +698,7 @@ public class VSSimulator extends JPanel implements VSSerializable { toolsPanel.setLayout(new BoxLayout(toolsPanel, BoxLayout.X_AXIS)); JCheckBox expertActiveCheckBox = - new JCheckBox(prefs.getString("lang.mode.expert")); + new JCheckBox(prefs.getString("lang.en.mode.expert")); expertActiveCheckBox.setSelected(expertMode); expertActiveCheckBox.addChangeListener(new ChangeListener() { @@ -718,7 +718,7 @@ public class VSSimulator extends JPanel implements VSSerializable { if (expertMode) { lamportActiveCheckBox = new JCheckBox( - prefs.getString("lang.time.lamport")); + prefs.getString("lang.en.time.lamport")); lamportActiveCheckBox.setSelected(false); lamportActiveCheckBox.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent ce) { @@ -734,7 +734,7 @@ public class VSSimulator extends JPanel implements VSSerializable { toolsPanel.add(lamportActiveCheckBox); vectorTimeActiveCheckBox = new JCheckBox( - prefs.getString("lang.time.vector")); + prefs.getString("lang.en.time.vector")); vectorTimeActiveCheckBox.setSelected(false); vectorTimeActiveCheckBox.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent ce) { @@ -750,7 +750,7 @@ public class VSSimulator extends JPanel implements VSSerializable { toolsPanel.add(vectorTimeActiveCheckBox); JCheckBox antiAliasing = new JCheckBox( - prefs.getString("lang.antialiasing")); + prefs.getString("lang.en.antialiasing")); antiAliasing.setSelected(false); antiAliasing.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent ce) { @@ -765,7 +765,7 @@ public class VSSimulator extends JPanel implements VSSerializable { } JCheckBox logingActiveCheckBox = new JCheckBox( - prefs.getString("lang.loging.active")); + prefs.getString("lang.en.loging.active")); logingActiveCheckBox.setSelected(true); logingActiveCheckBox.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent ce) { @@ -779,7 +779,7 @@ public class VSSimulator extends JPanel implements VSSerializable { if (expertMode) { filterActiveCheckBox = new JCheckBox( - prefs.getString("lang.filter")); + prefs.getString("lang.en.filter")); filterActiveCheckBox.setSelected(false); filterActiveCheckBox.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent ce) { @@ -809,12 +809,12 @@ public class VSSimulator extends JPanel implements VSSerializable { toolsPanel.add(filterTextField); JButton clearButton = new JButton( - prefs.getString("lang.loging.clear")); + prefs.getString("lang.en.loging.clear")); clearButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { String command = ae.getActionCommand(); if (command.equals( - prefs.getString("lang.loging.clear"))) { + prefs.getString("lang.en.loging.clear"))) { loging.clear(); } } @@ -841,7 +841,7 @@ public class VSSimulator extends JPanel implements VSSerializable { lastSelectedProcessNum = 0; int numProcesses = simulatorVisualization.getNumProcesses(); - String processString = prefs.getString("lang.process"); + String processString = prefs.getString("lang.en.process"); for (int i = 0; i < numProcesses; ++i) { int pid = simulatorVisualization.getProcess(i).getProcessID(); @@ -850,9 +850,9 @@ public class VSSimulator extends JPanel implements VSSerializable { globalPIDComboBox.addItem("PID: " + pid); } - processesComboBox.addItem(prefs.getString("lang.processes.all")); - localPIDComboBox.addItem(prefs.getString("lang.all")); - globalPIDComboBox.addItem(prefs.getString("lang.all")); + processesComboBox.addItem(prefs.getString("lang.en.processes.all")); + localPIDComboBox.addItem(prefs.getString("lang.en.all")); + globalPIDComboBox.addItem(prefs.getString("lang.en.all")); tabbedPane = new JTabbedPane(JTabbedPane.TOP, JTabbedPane.WRAP_TAB_LAYOUT); @@ -866,10 +866,10 @@ public class VSSimulator extends JPanel implements VSSerializable { splitPane1.setOneTouchExpandable(true); if (expertMode) - tabbedPane.addTab(prefs.getString("lang.events"), splitPane1); + tabbedPane.addTab(prefs.getString("lang.en.events"), splitPane1); else - tabbedPane.addTab(prefs.getString("lang.events"), localPanel); + tabbedPane.addTab(prefs.getString("lang.en.events"), localPanel); processesComboBox.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { @@ -908,7 +908,7 @@ public class VSSimulator extends JPanel implements VSSerializable { } }); - tabbedPane.add(prefs.getString("lang.variables"), null); + tabbedPane.add(prefs.getString("lang.en.variables"), null); editPanel.add(processesComboBox); editPanel.add(tabbedPane); @@ -944,9 +944,9 @@ public class VSSimulator extends JPanel implements VSSerializable { panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); if (localTasks) - panel.add(createLabelPanel(prefs.getString("lang.timed.local"))); + panel.add(createLabelPanel(prefs.getString("lang.en.timed.local"))); else - panel.add(createLabelPanel(prefs.getString("lang.timed.global"))); + panel.add(createLabelPanel(prefs.getString("lang.en.timed.global"))); JScrollPane scrollPane = new JScrollPane(createTaskTable(localTasks)); panel.add(scrollPane); @@ -1037,7 +1037,7 @@ public class VSSimulator extends JPanel implements VSSerializable { } final JComboBox comboBox = new JComboBox(); - JButton takeoverButton = new JButton(prefs.getString("lang.takeover")); + JButton takeoverButton = new JButton(prefs.getString("lang.en.takeover")); takeoverButton.setMnemonic(prefs.getInteger("keyevent.takeover")); takeoverButton.addActionListener(new ActionListener() { private boolean isRed; @@ -1121,7 +1121,7 @@ public class VSSimulator extends JPanel implements VSSerializable { VSRegisteredEvents.getNonProtocolClassnames(); comboBox.setMaximumRowCount(20); - String menuText = prefs.getString("lang.events.process"); + String menuText = prefs.getString("lang.en.events.process"); comboBox.addItem("----- " + menuText + " -----"); if (createTaskFlag) @@ -1136,13 +1136,13 @@ public class VSSimulator extends JPanel implements VSSerializable { createTasks.add(new VSCreateTask(menuText, eventClassname)); } - String activate = prefs.getString("lang.activate"); - String client = prefs.getString("lang.client"); - String clientRequest = prefs.getString("lang.clientrequest.start"); - String deactivate = prefs.getString("lang.deactivate"); - String server = prefs.getString("lang.server"); - String serverRequest = prefs.getString("lang.serverrequest.start"); - String protocol = prefs.getString("lang.protocol"); + String activate = prefs.getString("lang.en.activate"); + String client = prefs.getString("lang.en.client"); + String clientRequest = prefs.getString("lang.en.clientrequest.start"); + String deactivate = prefs.getString("lang.en.deactivate"); + String server = prefs.getString("lang.en.server"); + String serverRequest = prefs.getString("lang.en.serverrequest.start"); + String protocol = prefs.getString("lang.en.protocol"); String protocolEventClassname = "events.internal.VSProtocolEvent"; eventClassnames = VSRegisteredEvents.getProtocolClassnames(); @@ -1326,7 +1326,7 @@ public class VSSimulator extends JPanel implements VSSerializable { */ private void updateProcessesComboBox() { int numProcesses = simulatorVisualization.getNumProcesses(); - String processString = prefs.getString("lang.process"); + String processString = prefs.getString("lang.en.process"); for (int i = 0; i < numProcesses; ++i) { int processID = simulatorVisualization.getProcess(i).getProcessID(); @@ -1424,7 +1424,7 @@ public class VSSimulator extends JPanel implements VSSerializable { */ public synchronized void addProcessAtIndex(int index) { int processID = simulatorVisualization.getProcess(index).getProcessID(); - String processString = prefs.getString("lang.process"); + String processString = prefs.getString("lang.en.process"); localTextFields.add(index, "0000"); globalTextFields.add(index, "0000"); @@ -1447,7 +1447,7 @@ public class VSSimulator extends JPanel implements VSSerializable { if (expertMode) { tabbedPane.remove(localPanel); - tabbedPane.insertTab(prefs.getString("lang.events"), null, + tabbedPane.insertTab(prefs.getString("lang.en.events"), null, splitPane1, null, 0); splitPane1.setTopComponent(localPanel); //splitPane1.setDividerLocation((int) (getPaintSize()/2) - 20); @@ -1457,7 +1457,7 @@ public class VSSimulator extends JPanel implements VSSerializable { } else { tabbedPane.remove(splitPane1); - tabbedPane.insertTab(prefs.getString("lang.events"), null, + tabbedPane.insertTab(prefs.getString("lang.en.events"), null, localPanel, null, 0); /* addPanel */ diff --git a/sources/simulator/VSSimulatorFrame.java b/sources/simulator/VSSimulatorFrame.java index ed319d5..f8396eb 100644 --- a/sources/simulator/VSSimulatorFrame.java +++ b/sources/simulator/VSSimulatorFrame.java @@ -113,7 +113,7 @@ public class VSSimulatorFrame extends VSFrame { * @param relativeTo the component to open the window relative to */ public VSSimulatorFrame(VSPrefs prefs, Component relativeTo) { - super(prefs.getString("lang.name"), relativeTo); + super(prefs.getString("lang.en.name"), relativeTo); this.prefs = prefs; this.simulators = new Vector<VSSimulator>(); @@ -130,11 +130,11 @@ public class VSSimulatorFrame extends VSFrame { getDescription(); if (sourceText.equals( - finalPrefs.getString("lang.simulator.close"))) { + finalPrefs.getString("lang.en.simulator.close"))) { removeCurrentSimulator(); } else if (sourceText.equals( - finalPrefs.getString("lang.simulator.new"))) { + finalPrefs.getString("lang.en.simulator.new"))) { VSPrefs newPrefs = VSDefaultPrefs.init(); VSSimulatorEditor simulatorEditor = new VSSimulatorEditor(newPrefs, VSSimulatorFrame.this, @@ -143,21 +143,21 @@ public class VSSimulatorFrame extends VSFrame { simulatorEditor); } else if (sourceText.equals( - finalPrefs.getString("lang.window.new"))) { + finalPrefs.getString("lang.en.window.new"))) { new VSMain(VSDefaultPrefs.init(), VSSimulatorFrame.this); } else if (sourceText.equals( - finalPrefs.getString("lang.window.close"))) { + finalPrefs.getString("lang.en.window.close"))) { dispose(); } else if (sourceText.equals( - finalPrefs.getString("lang.open"))) { + finalPrefs.getString("lang.en.open"))) { VSSerialize serialize = new VSSerialize(); serialize.openSimulator(VSSimulatorFrame.this); } else if (sourceText.equals( - finalPrefs.getString("lang.save"))) { + finalPrefs.getString("lang.en.save"))) { VSSimulatorVisualization simulatorVisualization = currentSimulator.getSimulatorCanvas(); boolean flag = !simulatorVisualization.isPaused() @@ -174,7 +174,7 @@ public class VSSimulatorFrame extends VSFrame { startCurrentSimulator(); } else if (sourceText.equals( - finalPrefs.getString("lang.saveas"))) { + finalPrefs.getString("lang.en.saveas"))) { VSSimulatorVisualization simulatorVisualization = currentSimulator.getSimulatorCanvas(); boolean flag = !simulatorVisualization.isPaused() @@ -190,27 +190,27 @@ public class VSSimulatorFrame extends VSFrame { startCurrentSimulator(); } else if (sourceText.equals( - finalPrefs.getString("lang.about"))) { + finalPrefs.getString("lang.en.about"))) { new VSAboutFrame(finalPrefs, VSSimulatorFrame.this); } else if (sourceText.equals( - finalPrefs.getString("lang.quit"))) { + finalPrefs.getString("lang.en.quit"))) { System.exit(0); } else if (sourceText.equals( - finalPrefs.getString("lang.start"))) { + finalPrefs.getString("lang.en.start"))) { startCurrentSimulator(); } else if (sourceText.equals( - finalPrefs.getString("lang.pause"))) { + finalPrefs.getString("lang.en.pause"))) { pauseCurrentSimulator(); } else if (sourceText.equals( - finalPrefs.getString("lang.reset"))) { + finalPrefs.getString("lang.en.reset"))) { resetCurrentSimulator(); } else if (sourceText.equals( - finalPrefs.getString("lang.replay"))) { + finalPrefs.getString("lang.en.replay"))) { VSMenuItemStates menuItemState = currentSimulator.getMenuItemStates(); menuItemState.setStart(false); @@ -253,11 +253,11 @@ public class VSSimulatorFrame extends VSFrame { */ private JMenuBar createMenuBar() { /* File menu */ - menuFile = new JMenu(prefs.getString("lang.file")); + menuFile = new JMenu(prefs.getString("lang.en.file")); menuFile.setMnemonic(prefs.getInteger("keyevent.file")); JMenuItem menuItem; - menuItem = new JMenuItem(prefs.getString("lang.simulator.new")); + menuItem = new JMenuItem(prefs.getString("lang.en.simulator.new")); menuItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.new"), ActionEvent.ALT_MASK)); @@ -265,7 +265,7 @@ public class VSSimulatorFrame extends VSFrame { menuFile.add(menuItem); closeItem = new JMenuItem( - prefs.getString("lang.simulator.close")); + prefs.getString("lang.en.simulator.close")); closeItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.close"), ActionEvent.ALT_MASK)); @@ -274,31 +274,31 @@ public class VSSimulatorFrame extends VSFrame { menuFile.addSeparator(); - menuItem = new JMenuItem(prefs.getString("lang.window.new")); + menuItem = new JMenuItem(prefs.getString("lang.en.window.new")); menuItem.addActionListener(actionListener); menuFile.add(menuItem); - menuItem = new JMenuItem(prefs.getString("lang.window.close")); + menuItem = new JMenuItem(prefs.getString("lang.en.window.close")); menuItem.addActionListener(actionListener); menuFile.add(menuItem); menuFile.addSeparator(); - menuItem = new JMenuItem(prefs.getString("lang.open")); + menuItem = new JMenuItem(prefs.getString("lang.en.open")); menuItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.open"), ActionEvent.ALT_MASK)); menuItem.addActionListener(actionListener); menuFile.add(menuItem); - saveItem = new JMenuItem(prefs.getString("lang.save")); + saveItem = new JMenuItem(prefs.getString("lang.en.save")); saveItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.save"), ActionEvent.ALT_MASK)); saveItem.addActionListener(actionListener); menuFile.add(saveItem); - saveAsItem = new JMenuItem(prefs.getString("lang.saveas")); + saveAsItem = new JMenuItem(prefs.getString("lang.en.saveas")); saveAsItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.saveas"), ActionEvent.ALT_MASK)); @@ -307,27 +307,27 @@ public class VSSimulatorFrame extends VSFrame { menuFile.addSeparator(); - menuItem = new JMenuItem(prefs.getString("lang.about")); + menuItem = new JMenuItem(prefs.getString("lang.en.about")); menuItem.addActionListener(actionListener); menuFile.add(menuItem); - menuItem = new JMenuItem(prefs.getString("lang.quit")); + menuItem = new JMenuItem(prefs.getString("lang.en.quit")); menuItem.addActionListener(actionListener); menuFile.add(menuItem); /* Edit menu */ menuEdit = new JMenu( - prefs.getString("lang.edit")); + prefs.getString("lang.en.edit")); menuEdit.setMnemonic(prefs.getInteger("keyevent.edit")); updateEditMenu(); /* Simulator menu */ toolBar = new JToolBar(); menuSimulator = new JMenu( - prefs.getString("lang.simulator")); + prefs.getString("lang.en.simulator")); menuSimulator.setMnemonic(prefs.getInteger("keyevent.simulator")); - resetItem = new JMenuItem(prefs.getString("lang.reset")); + resetItem = new JMenuItem(prefs.getString("lang.en.reset")); resetItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.reset"), ActionEvent.ALT_MASK)); @@ -335,12 +335,12 @@ public class VSSimulatorFrame extends VSFrame { resetItem.setEnabled(false); menuSimulator.add(resetItem); resetButton = new JButton(getImageIcon("reset.png", - prefs.getString("lang.reset"))); + prefs.getString("lang.en.reset"))); resetButton.addActionListener(actionListener); toolBar.add(resetButton); replayItem = new JMenuItem( - prefs.getString("lang.replay")); + prefs.getString("lang.en.replay")); replayItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.replay"), ActionEvent.ALT_MASK)); @@ -348,11 +348,11 @@ public class VSSimulatorFrame extends VSFrame { replayItem.setEnabled(false); menuSimulator.add(replayItem); replayButton = new JButton( - getImageIcon("replay.png", prefs.getString("lang.replay"))); + getImageIcon("replay.png", prefs.getString("lang.en.replay"))); replayButton.addActionListener(actionListener); toolBar.add(replayButton); - pauseItem = new JMenuItem(prefs.getString("lang.pause")); + pauseItem = new JMenuItem(prefs.getString("lang.en.pause")); pauseItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.pause"), ActionEvent.ALT_MASK)); @@ -360,18 +360,18 @@ public class VSSimulatorFrame extends VSFrame { menuSimulator.add(pauseItem); pauseItem.setEnabled(false); pauseButton = new JButton(getImageIcon("pause.png", - prefs.getString("lang.pause"))); + prefs.getString("lang.en.pause"))); pauseButton.addActionListener(actionListener); toolBar.add(pauseButton); - startItem = new JMenuItem(prefs.getString("lang.start")); + startItem = new JMenuItem(prefs.getString("lang.en.start")); startItem.setAccelerator(KeyStroke.getKeyStroke( prefs.getInteger("keyevent.start"), ActionEvent.ALT_MASK)); startItem.addActionListener(actionListener); menuSimulator.add(startItem); startButton = new JButton(getImageIcon("start.png", - prefs.getString("lang.start"))); + prefs.getString("lang.en.start"))); startButton.addActionListener(actionListener); toolBar.add(startButton); @@ -420,7 +420,7 @@ public class VSSimulatorFrame extends VSFrame { menuEdit.removeAll(); JMenuItem globalPrefsItem = new JMenuItem( - prefs.getString("lang.prefs")); + prefs.getString("lang.en.prefs")); globalPrefsItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { @@ -439,7 +439,7 @@ public class VSSimulatorFrame extends VSFrame { if (currentSimulator == null) return; - String processString = prefs.getString("lang.process"); + String processString = prefs.getString("lang.en.process"); ArrayList<VSInternalProcess> arr = currentSimulator.getSimulatorCanvas().getProcessesArray(); @@ -505,7 +505,7 @@ public class VSSimulatorFrame extends VSFrame { simulator.setMaximumSize(new Dimension(0, 0)); simulators.add(simulator); - tabbedPane.addTab(prefs.getString("lang.simulator") + tabbedPane.addTab(prefs.getString("lang.en.simulator") + " " + simulator.getSimulatorNum(), simulator); tabbedPane.setSelectedComponent(simulator); diff --git a/sources/simulator/VSSimulatorVisualization.java b/sources/simulator/VSSimulatorVisualization.java index ab39e65..f15d478 100644 --- a/sources/simulator/VSSimulatorVisualization.java +++ b/sources/simulator/VSSimulatorVisualization.java @@ -522,11 +522,11 @@ public class VSSimulatorVisualization extends Canvas public void actionPerformed(ActionEvent ae) { String command = ae.getActionCommand(); if (command.equals( - finalPrefs.getString("lang.process.edit"))) { + finalPrefs.getString("lang.en.process.edit"))) { editProcess(process); } else if (command.equals( - finalPrefs.getString("lang.process.crash"))) { + finalPrefs.getString("lang.en.process.crash"))) { VSAbstractEvent event = new VSProcessCrashEvent(); @@ -536,7 +536,7 @@ public class VSSimulatorVisualization extends Canvas VSTask.GLOBAL)); } else if (command.equals( - finalPrefs.getString("lang.process.recover"))) { + finalPrefs.getString("lang.en.process.recover"))) { VSAbstractEvent event = new VSProcessRecoverEvent(); @@ -546,11 +546,11 @@ public class VSSimulatorVisualization extends Canvas VSTask.GLOBAL)); } else if (command.equals( - finalPrefs.getString("lang.process.remove"))) { + finalPrefs.getString("lang.en.process.remove"))) { removeProcess(process); } else if (command.equals( - finalPrefs.getString("lang.process.add.new"))) { + finalPrefs.getString("lang.en.process.add.new"))) { addProcess(); } } @@ -561,18 +561,18 @@ public class VSSimulatorVisualization extends Canvas if (process != null) item = new JMenuItem( - finalPrefs.getString("lang.process.selected") + + finalPrefs.getString("lang.en.process.selected") + ": " + process.getProcessID()); else item = new JMenuItem( - finalPrefs.getString("lang.process.not.selected")); + finalPrefs.getString("lang.en.process.not.selected")); item.setEnabled(false); popup.add(item); popup.addSeparator(); item = new JMenuItem( - finalPrefs.getString("lang.process.edit")); + finalPrefs.getString("lang.en.process.edit")); if (process == null) item.setEnabled(false); else @@ -580,7 +580,7 @@ public class VSSimulatorVisualization extends Canvas popup.add(item); item = new JMenuItem( - finalPrefs.getString("lang.process.crash")); + finalPrefs.getString("lang.en.process.crash")); if (process == null || process.isCrashed() || isPaused || time == 0 || hasFinished) @@ -590,7 +590,7 @@ public class VSSimulatorVisualization extends Canvas popup.add(item); item = new JMenuItem( - finalPrefs.getString("lang.process.recover")); + finalPrefs.getString("lang.en.process.recover")); if (process == null || !process.isCrashed() || isPaused || time == 0 || hasFinished) @@ -600,7 +600,7 @@ public class VSSimulatorVisualization extends Canvas popup.add(item); item = new JMenuItem( - finalPrefs.getString("lang.process.remove")); + finalPrefs.getString("lang.en.process.remove")); if (process == null) item.setEnabled(false); @@ -612,11 +612,11 @@ public class VSSimulatorVisualization extends Canvas final long xPosTime = getXPositionTime(me.getX()); String timeString = finalPrefs.getString( - "lang.event.add.time") + + "lang.en.event.add.time") + " " + xPosTime + "ms"; JMenu subMenu = new JMenu( - finalPrefs.getString("lang.event.add.local") + finalPrefs.getString("lang.en.event.add.local") + " " + timeString); ArrayList<VSCreateTask> createTasks = @@ -653,7 +653,7 @@ public class VSSimulatorVisualization extends Canvas popup.add(subMenu); subMenu = new JMenu( - finalPrefs.getString("lang.event.add.global") + finalPrefs.getString("lang.en.event.add.global") + " " + timeString); if (process == null) { subMenu.setEnabled(false); @@ -689,7 +689,7 @@ public class VSSimulatorVisualization extends Canvas popup.addSeparator(); item = new JMenuItem( - finalPrefs.getString("lang.process.add.new")); + finalPrefs.getString("lang.en.process.add.new")); item.addActionListener(actionListener); popup.add(item); @@ -1300,7 +1300,7 @@ public class VSSimulatorVisualization extends Canvas * Starts/plays the simulator. */ public void play() { - loging.log(prefs.getString("lang.simulator.started")); + loging.log(prefs.getString("lang.en.simulator.started")); final long currentTime = System.currentTimeMillis(); synchronized (processes) { @@ -1338,7 +1338,7 @@ public class VSSimulatorVisualization extends Canvas simulator.finish(); hasFinished = true; - loging.log(prefs.getString("lang.simulator.finished")); + loging.log(prefs.getString("lang.en.simulator.finished")); paint(); if (prefs.getBoolean("sim.periodic")) { @@ -1359,7 +1359,7 @@ public class VSSimulatorVisualization extends Canvas } pauseTime = System.currentTimeMillis(); - loging.log(prefs.getString("lang.simulator.paused")); + loging.log(prefs.getString("lang.en.simulator.paused")); paint(); } @@ -1368,7 +1368,7 @@ public class VSSimulatorVisualization extends Canvas */ public void reset() { if (!isResetted) { - loging.log(prefs.getString("lang.simulator.resetted")); + loging.log(prefs.getString("lang.en.simulator.resetted")); isResetted = true; isPaused = false; @@ -1678,7 +1678,7 @@ public class VSSimulatorVisualization extends Canvas private VSInternalProcess createProcess(int processNum) { VSInternalProcess process = new VSInternalProcess(prefs, processNum, this, loging); - loging.log(prefs.getString("lang.process.new") + "; " + process); + loging.log(prefs.getString("lang.en.process.new") + "; " + process); return process; } diff --git a/sources/utils/VSAboutFrame.java b/sources/utils/VSAboutFrame.java index 2902de1..03ed8c4 100644 --- a/sources/utils/VSAboutFrame.java +++ b/sources/utils/VSAboutFrame.java @@ -50,8 +50,8 @@ public class VSAboutFrame extends VSFrame { * @param relativeTo the component to open the about window relative to */ public VSAboutFrame(VSPrefs prefs, Component relativeTo) { - super(prefs.getString("lang.name") + " - " - + prefs.getString("lang.about"), relativeTo); + super(prefs.getString("lang.en.name") + " - " + + prefs.getString("lang.en.about"), relativeTo); this.prefs = prefs; disposeWithParent(); @@ -70,7 +70,7 @@ public class VSAboutFrame extends VSFrame { Container contentPane = getContentPane(); VSInfoArea infoArea = new VSInfoArea( - prefs.getString("lang.about.info")); + prefs.getString("lang.en.about.info")); JPanel buttonPane = createButtonPanel(); JScrollPane scrollPane = new JScrollPane(infoArea); @@ -90,12 +90,12 @@ public class VSAboutFrame extends VSFrame { buttonPane.setBackground(Color.WHITE); JButton closeButton = new JButton( - prefs.getString("lang.close")); + prefs.getString("lang.en.close")); closeButton.setMnemonic(prefs.getInteger("keyevent.close")); closeButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String actionCommand = e.getActionCommand(); - if (actionCommand.equals(prefs.getString("lang.close"))) + if (actionCommand.equals(prefs.getString("lang.en.close"))) dispose(); } }); |
