git-svn-id: https://openrocket.svn.sourceforge.net/svnroot/openrocket/trunk@807 180e2...
authorkruland2607 <kruland2607@180e2498-e6e9-4542-8430-84ac67f01cd8>
Mon, 25 Jun 2012 02:28:05 +0000 (02:28 +0000)
committerkruland2607 <kruland2607@180e2498-e6e9-4542-8430-84ac67f01cd8>
Mon, 25 Jun 2012 02:28:05 +0000 (02:28 +0000)
android/src/net/sf/openrocket/android/rocket/OpenRocketViewer.java

index 7673f311641a8378edf116f08cd9a001dfc6ed1a..58bb82759458577b5f3ea3069234c930d85358ba 100644 (file)
@@ -37,6 +37,8 @@ implements Simulations.OnSimulationSelectedListener
        private final static int TABSIZE = 4;\r
 \r
        private OpenRocketViewerPagerAdapter viewPagerAdapter;\r
+       \r
+       private MenuItem saveAction;\r
 \r
        @Override\r
        protected void onCreate(Bundle savedInstanceState) {\r
@@ -78,6 +80,7 @@ implements Simulations.OnSimulationSelectedListener
        public boolean onCreateOptionsMenu(Menu menu) {\r
                MenuInflater inflater = getSupportMenuInflater();\r
                inflater.inflate(R.menu.rocket_viewer_option_menu, menu);\r
+               saveAction = menu.findItem(R.id.menu_save);\r
                return true;\r
        }\r
 \r
@@ -93,6 +96,8 @@ implements Simulations.OnSimulationSelectedListener
                        // FIXME - Probably want to open a dialog here.\r
                        try {\r
                                CurrentRocketHolder.getCurrentRocket().saveOpenRocketDocument();\r
+                               saveAction.setVisible(false);\r
+                               invalidateOptionsMenu();\r
                        } catch ( IOException iex ) {\r
                                AndroidLogWrapper.d(OpenRocketViewer.class, iex.getMessage());\r
                        }\r
@@ -149,10 +154,13 @@ implements Simulations.OnSimulationSelectedListener
        }\r
 \r
        private class RocketChangedEventHandler extends net.sf.openrocket.android.RocketChangedEventHandler {\r
-\r
                \r
                @Override\r
                protected void doSimsChanged() {\r
+                       if (saveAction != null ) {\r
+                               saveAction.setVisible(true);\r
+                               invalidateOptionsMenu();\r
+                       }\r
                        Simulations sims = (Simulations) viewPagerAdapter.getFragmentAtPos(SIMS_POS);\r
                        if ( sims != null ) {\r
                                sims.refreshSimulationList();\r
@@ -161,6 +169,10 @@ implements Simulations.OnSimulationSelectedListener
 \r
                @Override\r
                protected void doMotorConfigsChanged() {\r
+                       if (saveAction != null ) {\r
+                               saveAction.setVisible(true);\r
+                               invalidateOptionsMenu();\r
+                       }\r
                        Configurations configs = (Configurations) viewPagerAdapter.getFragmentAtPos(CONFIGS_POS);\r
                        if ( configs != null ) {\r
                                configs.refreshConfigsList();\r