1 package net.sf.openrocket.android;
\r
3 import java.util.Locale;
\r
5 import net.sf.openrocket.android.util.AndroidLogWrapper;
\r
6 import net.sf.openrocket.database.ComponentPresetDatabase;
\r
7 import net.sf.openrocket.l10n.DebugTranslator;
\r
8 import net.sf.openrocket.l10n.ResourceBundleTranslator;
\r
9 import net.sf.openrocket.l10n.Translator;
\r
10 import android.content.pm.ApplicationInfo;
\r
11 import android.preference.PreferenceManager;
\r
13 public class Application extends android.app.Application {
\r
15 // Big B boolean so I can synchronize on it.
\r
16 private static Boolean initialized = false;
\r
18 public void initialize() {
\r
19 synchronized (initialized) {
\r
20 if ( initialized == true ) {
\r
24 // Android does not have a default sax parser set. This needs to be defined first.
\r
25 System.setProperty("org.xml.sax.driver","org.xmlpull.v1.sax2.Driver");
\r
27 net.sf.openrocket.startup.Application.setLogger( new AndroidLogWrapper.LogHelper() );
\r
29 net.sf.openrocket.startup.Application.setPreferences( new PreferencesAdapter() );
\r
31 net.sf.openrocket.startup.Application.setComponentPresetDao( new ComponentPresetDatabase(){
\r
33 protected void load() {
\r
34 // We don't need components
\r
38 MotorDatabaseAdapter db = new MotorDatabaseAdapter(this);
\r
40 net.sf.openrocket.startup.Application.setMotorSetDatabase(db);
\r
43 t = new ResourceBundleTranslator("l10n.messages");
\r
44 if (Locale.getDefault().getLanguage().equals("xx")) {
\r
45 t = new DebugTranslator(t);
\r
48 net.sf.openrocket.startup.Application.setBaseTranslator(t);
\r
54 public Application() {
\r
58 * @see android.app.Application#onCreate()
\r
61 public void onCreate() {
\r
64 boolean isDebuggable = (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE));
\r
65 AndroidLogWrapper.setLogEnabled(isDebuggable);
\r
66 PreferencesActivity.initializePreferences(this, PreferenceManager.getDefaultSharedPreferences(this));
\r