]> git.gag.com Git - debian/openrocket/commitdiff
Added primitive about dialog to all main windows. Added 'donate' button to main.
authorkruland2607 <kruland2607@180e2498-e6e9-4542-8430-84ac67f01cd8>
Sat, 25 Feb 2012 03:49:56 +0000 (03:49 +0000)
committerkruland2607 <kruland2607@180e2498-e6e9-4542-8430-84ac67f01cd8>
Sat, 25 Feb 2012 03:49:56 +0000 (03:49 +0000)
git-svn-id: https://openrocket.svn.sourceforge.net/svnroot/openrocket/trunk@443 180e2498-e6e9-4542-8430-84ac67f01cd8

13 files changed:
android/res/drawable/sf_donate.png [new file with mode: 0644]
android/res/layout-land/main.xml
android/res/layout/main.xml
android/res/menu/main_menu.xml
android/res/menu/motor_browser_option_menu.xml
android/res/menu/rocket_viewer_option_menu.xml
android/res/values/strings.xml
android/src/net/sf/openrocket/android/AboutDialogFragment.java [new file with mode: 0644]
android/src/net/sf/openrocket/android/ActivityHelpers.java
android/src/net/sf/openrocket/android/Main.java
android/src/net/sf/openrocket/android/motor/MotorBrowserActivity.java
android/src/net/sf/openrocket/android/rocket/OpenRocketLoaderActivity.java
android/src/net/sf/openrocket/android/rocket/OpenRocketViewer.java

diff --git a/android/res/drawable/sf_donate.png b/android/res/drawable/sf_donate.png
new file mode 100644 (file)
index 0000000..7f5a52c
Binary files /dev/null and b/android/res/drawable/sf_donate.png differ
index 91e7eff3d72842ea34780c375ae20e2dc5da886c..45b12d3491c87e3615fd8810240ae306a9ca8a9b 100644 (file)
                 android:layout_height="wrap_content"\r
                 android:text="@string/viewmotorslabel" />\r
         </LinearLayout>\r
+\r
+        <Button\r
+            android:id="@+id/main_donate"\r
+            android:layout_width="wrap_content"\r
+            android:layout_height="wrap_content"\r
+            android:layout_gravity="center"\r
+            android:background="@drawable/sf_donate" />\r
     </LinearLayout>\r
 \r
 </LinearLayout>
\ No newline at end of file
index 85550209c567ee55ae9b707083bcfda999446d15..d0c989830daefd536977eaed4e5b205c66e9f5b8 100644 (file)
         android:layout_height="wrap_content"\r
         android:layout_weight="1"\r
         android:gravity="center_horizontal" >\r
-\r\r\r
+\r
         <Button\r
             android:id="@+id/main_open"\r
             android:layout_width="wrap_content"\r
             android:layout_height="wrap_content"\r
             android:text="@string/openfilelabel" />\r
-\r\r
+\r
         <Button\r
             android:id="@+id/main_browse"\r
             android:layout_width="wrap_content"\r
             android:layout_height="wrap_content"\r
             android:text="@string/viewmotorslabel" />\r
-\r
     </LinearLayout>\r
 \r
+    <Button\r
+        android:id="@+id/main_donate"\r
+        android:layout_width="wrap_content"\r
+        android:layout_height="wrap_content"\r
+        android:layout_gravity="center"\r
+        android:background="@drawable/sf_donate" />\r
+\r
 </LinearLayout>
\ No newline at end of file
index 1e40af72a4ae66a3525cbe15756ce6f2511398e3..07b8f1ad20c2da247e8c9684ae7e7cd07371f99a 100644 (file)
@@ -5,6 +5,11 @@
         android:id="@+id/main_menu_preferences"\r
         android:title="@string/Preferences"\r
         android:icon="@drawable/ic_menu_preferences"\r
-        android:showAsAction="always"/>\r
+        android:showAsAction="never"/>\r
+    \r
+    <item\r
+        android:id="@+id/menu_about"\r
+        android:title="@string/About"\r
+        android:showAsAction="never"/>\r
 \r
 </menu>
\ No newline at end of file
index 93b96922a4b67cc90c1ac2d14851430eff4ce6f7..23ad3760ce8615acaf9fa6923348764e1cfafb8b 100644 (file)
@@ -7,7 +7,10 @@
     <item
         android:id="@+id/preference_menu_option"
         android:icon="@drawable/ic_menu_preferences"
-        android:title="@string/Preferences"
-        />
+        android:title="@string/Preferences"/>
+    <item
+        android:id="@+id/menu_about"
+        android:showAsAction="never"
+        android:title="@string/About"/>
 
 </menu>
\ No newline at end of file
index eab9ade07ff09ba73f16c400c9586c9b4bc1a36d..cc80d992a199d6cba252ae2d2c1d3fbfb4f780f9 100644 (file)
@@ -3,12 +3,16 @@
 \r
     <item\r
         android:id="@+id/motor_list_menu_option"\r
-        android:title="@string/viewmotorslabel"\r
         android:icon="@drawable/ic_motorbrowser"\r
-        android:showAsAction="always"/>\r
+        android:showAsAction="always"\r
+        android:title="@string/viewmotorslabel"/>\r
     <item\r
         android:id="@+id/preference_menu_option"\r
-        android:title="@string/Preferences"\r
-        android:icon="@drawable/ic_menu_preferences"/>\r
+        android:icon="@drawable/ic_menu_preferences"\r
+        android:title="@string/Preferences"/>\r
+    <item\r
+        android:id="@+id/menu_about"\r
+        android:showAsAction="never"\r
+        android:title="@string/About"/>\r
 \r
 </menu>
\ No newline at end of file
index 489c2d0c440ec70688374fd38d6335f9cf976f17..1acb443d176485536ee938995fa24275bf8d2967 100644 (file)
@@ -5,6 +5,7 @@
     <string name="save">Save</string>\r
     <string name="MotorListTitle">Motor List</string>\r
     <string name="Download">Download</string>\r
+    <string name="About">About</string>\r
     <string name="Preferences">Preferences</string>\r
     <string name="select_series">Select Series</string>\r
     <string name="view_events">View Events</string>\r
diff --git a/android/src/net/sf/openrocket/android/AboutDialogFragment.java b/android/src/net/sf/openrocket/android/AboutDialogFragment.java
new file mode 100644 (file)
index 0000000..2e1ed83
--- /dev/null
@@ -0,0 +1,36 @@
+package net.sf.openrocket.android;\r
+\r
+import net.sf.openrocket.android.rocket.OpenRocketLoaderActivity;\r
+import android.app.AlertDialog;\r
+import android.app.Dialog;\r
+import android.content.DialogInterface;\r
+import android.os.Bundle;\r
+import android.support.v4.app.DialogFragment;\r
+\r
+public class AboutDialogFragment extends DialogFragment {\r
+\r
+       public static AboutDialogFragment newInstance() {\r
+               AboutDialogFragment frag = new AboutDialogFragment();\r
+               return frag;\r
+       }\r
+       \r
+       @Override\r
+       public Dialog onCreateDialog(Bundle savedInstanceState) {\r
+\r
+               AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());\r
+               //                      .setIcon(android.R.drawable.alert_dialog_icon)\r
+               builder.setTitle("About");\r
+               StringBuilder sb = new StringBuilder();\r
+               sb.append("OpenRocket\n");\r
+               sb.append("Copyright 2007-2012 Sampo Niskanen\n");\r
+               sb.append("\n");\r
+               sb.append("The android port contains third party software:\n");\r
+               sb.append(" AChartEngine - Apache License 2.0\n");\r
+               sb.append(" Android Open Source Project - Apache License 2.0\n");\r
+               sb.append(" Android tree-view-list - 2-clause BSD licensed\n");\r
+               builder.setMessage(sb.toString());\r
+               builder.setCancelable(true);\r
+               return builder.create();\r
+       }\r
+\r
+}\r
index 785852b5debdd1eb46962e24d2358e764e125b41..760176415b3d62f8ef9a489e6d9cc4e78fd26549 100644 (file)
@@ -4,6 +4,8 @@ import net.sf.openrocket.android.motor.MotorBrowserActivity;
 import net.sf.openrocket.android.thrustcurve.TCQueryActivity;\r
 import android.app.Activity;\r
 import android.content.Intent;\r
+import android.net.Uri;\r
+import android.support.v4.app.FragmentActivity;\r
 \r
 public abstract class ActivityHelpers {\r
 \r
@@ -28,4 +30,16 @@ public abstract class ActivityHelpers {
                parent.startActivityForResult(i, requestCode);\r
        }\r
 \r
+       public static void donate( Activity parent ) {\r
+               String url = "http://sourceforge.net/donate/index.php?group_id=260357";\r
+               Intent intent = new Intent(Intent.ACTION_VIEW);\r
+               intent.setData( Uri.parse(url) );\r
+               parent.startActivity(intent);\r
+       }\r
+       \r
+       public static void showAbout( FragmentActivity parent ) {\r
+               AboutDialogFragment frag = AboutDialogFragment.newInstance();\r
+               frag.show(parent.getSupportFragmentManager(), "about");\r
+       }\r
+\r
 }\r
index ee76e9a8387c43a008f65a09f8046dd33dcd4248..06e581386f48503ac0957c6bf9a6c25ec2dca1c0 100644 (file)
@@ -1,6 +1,7 @@
 package net.sf.openrocket.android;\r
 \r
 import net.sf.openrocket.R;\r
+import net.sf.openrocket.android.actionbarcompat.ActionBarFragmentActivity;\r
 import net.sf.openrocket.android.filebrowser.SimpleFileBrowser;\r
 import android.content.ActivityNotFoundException;\r
 import android.content.Intent;\r
@@ -9,14 +10,13 @@ import android.content.res.Resources;
 import android.net.Uri;\r
 import android.os.Bundle;\r
 import android.preference.PreferenceManager;\r
-import android.support.v4.app.FragmentActivity;\r
 import android.view.Menu;\r
 import android.view.MenuInflater;\r
 import android.view.MenuItem;\r
 import android.view.View;\r
 import android.widget.Button;\r
 \r
-public class Main extends FragmentActivity {\r
+public class Main extends ActionBarFragmentActivity {\r
 \r
        private static final int PICK_ORK_FILE_RESULT = 1;\r
 \r
@@ -24,6 +24,7 @@ public class Main extends FragmentActivity {
        @Override\r
        public void onCreate(Bundle icicle) {\r
                super.onCreate(icicle);\r
+               setTitle("");\r
                setContentView(R.layout.main);\r
                ((Button) findViewById(R.id.main_open)).setOnClickListener(\r
                                new View.OnClickListener() {\r
@@ -39,6 +40,13 @@ public class Main extends FragmentActivity {
                                                ActivityHelpers.browseMotors(Main.this);\r
                                        }\r
                                });\r
+               ((Button) findViewById(R.id.main_donate)).setOnClickListener(\r
+                               new View.OnClickListener() {\r
+                                       @Override\r
+                                       public void onClick(View v) {\r
+                                               ActivityHelpers.donate(Main.this);\r
+                                       }\r
+                               });\r
        }\r
 \r
        @Override\r
@@ -54,6 +62,9 @@ public class Main extends FragmentActivity {
                case R.id.main_menu_preferences:\r
                        ActivityHelpers.startPreferences(this);\r
                        return true;\r
+               case R.id.menu_about:\r
+                       ActivityHelpers.showAbout(this);\r
+                       return true;\r
                }\r
                return super.onOptionsItemSelected(item);\r
        }\r
index 658bef6ef19c6defd6fcc5115a3293a32d3a38c6..2d3f77489aa89723509171fc8cae6f7f1a52b59d 100644 (file)
@@ -60,6 +60,9 @@ implements MotorListFragment.OnMotorSelectedListener
                        Intent intent = new Intent().setClass(this, PreferencesActivity.class);\r
                        this.startActivity(intent);\r
                        return true;\r
+               case R.id.menu_about:\r
+                       ActivityHelpers.showAbout(this);\r
+                       return true;\r
                }\r
                return super.onMenuItemSelected(featureId, item);\r
        }\r
index ac272b876c3e6ff807c9750cf468ff4845f112e4..151a6e0f63753339b2a3111aa1c911f055e3a4a5 100644 (file)
@@ -6,6 +6,7 @@ import java.util.Set;
 import net.sf.openrocket.R;\r
 import net.sf.openrocket.aerodynamics.WarningSet;\r
 import net.sf.openrocket.android.Application;\r
+import net.sf.openrocket.android.actionbarcompat.ActionBarFragmentActivity;\r
 import net.sf.openrocket.android.thrustcurve.TCMissingMotorDownloadAction;\r
 import net.sf.openrocket.android.thrustcurve.TCQueryAction;\r
 import net.sf.openrocket.android.util.AndroidLogWrapper;\r
@@ -17,9 +18,8 @@ import android.content.Intent;
 import android.net.Uri;\r
 import android.os.Bundle;\r
 import android.support.v4.app.DialogFragment;\r
-import android.support.v4.app.FragmentActivity;\r
 \r
-public class OpenRocketLoaderActivity extends FragmentActivity\r
+public class OpenRocketLoaderActivity extends ActionBarFragmentActivity\r
 implements TCQueryAction.OnTCQueryCompleteListener, OpenRocketLoaderFragment.OnOpenRocketFileLoaded\r
 {\r
 \r
@@ -29,6 +29,7 @@ implements TCQueryAction.OnTCQueryCompleteListener, OpenRocketLoaderFragment.OnO
        @Override\r
        protected void onCreate(Bundle savedInstanceState) {\r
                super.onCreate(savedInstanceState);\r
+               setTitle("");\r
                setContentView(R.layout.main);\r
                if ( savedInstanceState == null || savedInstanceState.getBoolean("isLoading", false) == false ) {\r
                        Intent i = getIntent();\r
index 9e25ff1ba73ce74be6e5d5b17985c0053fe985aa..57799332eabde206383570e59c829ce39afe0211 100644 (file)
@@ -64,6 +64,9 @@ implements Simulations.OnSimulationSelectedListener
                case R.id.preference_menu_option:\r
                        ActivityHelpers.startPreferences(this);\r
                        return true;\r
+               case R.id.menu_about:\r
+                       ActivityHelpers.showAbout(this);\r
+                       return true;\r
                }\r
                return super.onMenuItemSelected(featureId, item);\r
        }\r