Change to using ActionBarSherlock for the action bar compatibility.
[debian/openrocket] / android / src / net / sf / openrocket / android / Application.java
index 668d7598c881016f7f939b77afcb4011c05740a0..a06fde4618ca246cf0aed29336f2177b890d3075 100644 (file)
@@ -1,24 +1,30 @@
 package net.sf.openrocket.android;\r
 \r
+import java.io.File;\r
+import java.io.IOException;\r
 import java.util.Locale;\r
 \r
 import net.sf.openrocket.aerodynamics.WarningSet;\r
 import net.sf.openrocket.android.util.AndroidLogWrapper;\r
 import net.sf.openrocket.database.ComponentPresetDatabase;\r
 import net.sf.openrocket.document.OpenRocketDocument;\r
+import net.sf.openrocket.file.openrocket.OpenRocketSaver;\r
 import net.sf.openrocket.l10n.DebugTranslator;\r
 import net.sf.openrocket.l10n.ResourceBundleTranslator;\r
 import net.sf.openrocket.l10n.Translator;\r
+import android.net.Uri;\r
 import android.preference.PreferenceManager;\r
 \r
 public class Application extends android.app.Application {\r
 \r
        private OpenRocketDocument rocketDocument;\r
+       private Uri fileUri;\r
+\r
        private WarningSet warnings;\r
-       \r
+\r
        // Big B boolean so I can synchronize on it.\r
        private static Boolean initialized = false;\r
-       \r
+\r
        public void initialize() {\r
                synchronized (initialized) {\r
                        if ( initialized == true ) {\r
@@ -29,21 +35,21 @@ public class Application extends android.app.Application {
                        System.setProperty("org.xml.sax.driver","org.xmlpull.v1.sax2.Driver");\r
 \r
                        net.sf.openrocket.startup.Application.setLogger( new AndroidLogWrapper.LogHelper() );\r
-                       \r
+\r
                        net.sf.openrocket.startup.Application.setPreferences( new PreferencesAdapter() );\r
-                       \r
+\r
                        net.sf.openrocket.startup.Application.setComponentPresetDao( new ComponentPresetDatabase() );\r
-                       \r
+\r
                        MotorDatabaseAdapter db = new MotorDatabaseAdapter(this);\r
 \r
                        net.sf.openrocket.startup.Application.setMotorSetDatabase(db);\r
-                       \r
+\r
                        Translator t;\r
                        t = new ResourceBundleTranslator("l10n.messages");\r
                        if (Locale.getDefault().getLanguage().equals("xx")) {\r
                                t = new DebugTranslator(t);\r
                        }\r
-                       \r
+\r
                        net.sf.openrocket.startup.Application.setBaseTranslator(t);\r
 \r
                        initialized = true;\r
@@ -84,7 +90,18 @@ public class Application extends android.app.Application {
        public void setWarnings(WarningSet warnings) {\r
                this.warnings = warnings;\r
        }\r
-       \r
-       \r
-       \r
+\r
+       public Uri getFileUri() {\r
+               return fileUri;\r
+       }\r
+\r
+       public void setFileUri(Uri fileUri) {\r
+               this.fileUri = fileUri;\r
+       }\r
+\r
+       public void saveOpenRocketDocument() throws IOException {\r
+               OpenRocketSaver saver = new OpenRocketSaver();\r
+               saver.save(new File(fileUri.getPath()),rocketDocument);\r
+\r
+       }\r
 }\r