]> git.gag.com Git - debian/openrocket/blobdiff - src/net/sf/openrocket/startup/Application.java
language selector, bug fixed
[debian/openrocket] / src / net / sf / openrocket / startup / Application.java
index b8ef783490524740264849e1c99446d62a8c06d5..a7847d32b82692e6bbc04ca3fc1d73915e24a7e6 100644 (file)
@@ -1,6 +1,10 @@
 package net.sf.openrocket.startup;
 
 import net.sf.openrocket.database.ThrustCurveMotorSetDatabase;
+import net.sf.openrocket.l10n.ClassBasedTranslator;
+import net.sf.openrocket.l10n.DebugTranslator;
+import net.sf.openrocket.l10n.ExceptionSuppressingTranslator;
+import net.sf.openrocket.l10n.Translator;
 import net.sf.openrocket.logging.LogHelper;
 import net.sf.openrocket.logging.LogLevel;
 import net.sf.openrocket.logging.LogLevelBufferLogger;
@@ -16,6 +20,8 @@ public final class Application {
        private static LogHelper logger;
        private static LogLevelBufferLogger logBuffer;
        
+       private static Translator baseTranslator = new DebugTranslator(null);
+       
        private static ThrustCurveMotorSetDatabase motorSetDatabase;
        
 
@@ -78,6 +84,31 @@ public final class Application {
        }
        
        
+       /**
+        * Return the translator to use for obtaining translated strings.
+        * @return      a translator.
+        */
+       public static Translator getTranslator() {
+               if (baseTranslator instanceof DebugTranslator) {
+                       return baseTranslator;
+               }
+               
+               Translator t = baseTranslator;
+               t = new ClassBasedTranslator(t, 1);
+               t = new ExceptionSuppressingTranslator(t);
+               return t;
+       }
+       
+       /**
+        * Set the translator used in obtaining translated strings.
+        * @param translator    the translator to set.
+        */
+       public static void setBaseTranslator(Translator translator) {
+               Application.baseTranslator = translator;
+       }
+       
+       
+
        /**
         * Return the database of all thrust curves loaded into the system.
         */