1 package net.sf.openrocket.android;
\r
4 import java.io.IOException;
\r
5 import java.util.Locale;
\r
7 import net.sf.openrocket.aerodynamics.WarningSet;
\r
8 import net.sf.openrocket.android.util.AndroidLogWrapper;
\r
9 import net.sf.openrocket.database.ComponentPresetDatabase;
\r
10 import net.sf.openrocket.document.OpenRocketDocument;
\r
11 import net.sf.openrocket.file.openrocket.OpenRocketSaver;
\r
12 import net.sf.openrocket.l10n.DebugTranslator;
\r
13 import net.sf.openrocket.l10n.ResourceBundleTranslator;
\r
14 import net.sf.openrocket.l10n.Translator;
\r
15 import android.net.Uri;
\r
16 import android.preference.PreferenceManager;
\r
18 public class Application extends android.app.Application {
\r
20 private OpenRocketDocument rocketDocument;
\r
21 private Uri fileUri;
\r
23 private WarningSet warnings;
\r
25 // Big B boolean so I can synchronize on it.
\r
26 private static Boolean initialized = false;
\r
28 public void initialize() {
\r
29 synchronized (initialized) {
\r
30 if ( initialized == true ) {
\r
34 // Android does not have a default sax parser set. This needs to be defined first.
\r
35 System.setProperty("org.xml.sax.driver","org.xmlpull.v1.sax2.Driver");
\r
37 net.sf.openrocket.startup.Application.setLogger( new AndroidLogWrapper.LogHelper() );
\r
39 net.sf.openrocket.startup.Application.setPreferences( new PreferencesAdapter() );
\r
41 net.sf.openrocket.startup.Application.setComponentPresetDao( new ComponentPresetDatabase() );
\r
43 MotorDatabaseAdapter db = new MotorDatabaseAdapter(this);
\r
45 net.sf.openrocket.startup.Application.setMotorSetDatabase(db);
\r
48 t = new ResourceBundleTranslator("l10n.messages");
\r
49 if (Locale.getDefault().getLanguage().equals("xx")) {
\r
50 t = new DebugTranslator(t);
\r
53 net.sf.openrocket.startup.Application.setBaseTranslator(t);
\r
59 public Application() {
\r
63 * @see android.app.Application#onCreate()
\r
66 public void onCreate() {
\r
69 PreferencesActivity.initializePreferences(this, PreferenceManager.getDefaultSharedPreferences(this));
\r
73 * @return the rocketDocument
\r
75 public OpenRocketDocument getRocketDocument() {
\r
76 return rocketDocument;
\r
80 * @param rocketDocument the rocketDocument to set
\r
82 public void setRocketDocument(OpenRocketDocument rocketDocument) {
\r
83 this.rocketDocument = rocketDocument;
\r
86 public WarningSet getWarnings() {
\r
90 public void setWarnings(WarningSet warnings) {
\r
91 this.warnings = warnings;
\r
94 public Uri getFileUri() {
\r
98 public void setFileUri(Uri fileUri) {
\r
99 this.fileUri = fileUri;
\r
102 public void saveOpenRocketDocument() throws IOException {
\r
103 OpenRocketSaver saver = new OpenRocketSaver();
\r
104 saver.save(new File(fileUri.getPath()),rocketDocument);
\r