import net.sf.openrocket.android.util.AndroidLogWrapper;\r
import net.sf.openrocket.motor.ThrustCurveMotorPlaceholder;\r
import net.sf.openrocket.rocketcomponent.Rocket;\r
+import android.app.AlertDialog;\r
+import android.content.DialogInterface;\r
import android.content.Intent;\r
import android.net.Uri;\r
import android.os.Bundle;\r
\r
private final static String MISSING_MOTOR_DIAG_FRAGMENT_TAG = "missingmotordialog";\r
private final static String MISSING_MOTOR_DOWNLOAD_FRAGMENT_TAG = "missingmotortask";\r
- \r
+\r
@Override\r
protected void onCreate(Bundle savedInstanceState) {\r
super.onCreate(savedInstanceState);\r
AndroidLogWrapper.d(OpenRocketLoaderActivity.class,"Use ork file: " + file);\r
String path = file.getPath();\r
File orkFile = new File(path);\r
- \r
+\r
getSupportFragmentManager().beginTransaction().add( OpenRocketLoaderFragment.newInstance(orkFile), "loader").commit();\r
- \r
+\r
}\r
\r
/**\r
* @param result\r
*/\r
public void onOpenRocketFileLoaded(OpenRocketLoaderResult result) {\r
- ((Application)OpenRocketLoaderActivity.this.getApplication()).setRocketDocument( result.rocket );\r
- ((Application)OpenRocketLoaderActivity.this.getApplication()).setWarnings( result.warnings );\r
- \r
- updateMissingMotors();\r
+ if ( result.loadingError != null ) {\r
+ \r
+ AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this);\r
+ dialogBuilder.setTitle("Error Loading File" );\r
+ dialogBuilder.setMessage( result.loadingError.getLocalizedMessage());\r
+ dialogBuilder.setOnCancelListener( new DialogInterface.OnCancelListener() {\r
+ @Override\r
+ public void onCancel(DialogInterface dialog) {\r
+ OpenRocketLoaderActivity.this.finish();\r
+ }\r
+ });\r
+ dialogBuilder.create().show();\r
\r
+ } else {\r
+ ((Application)OpenRocketLoaderActivity.this.getApplication()).setRocketDocument( result.rocket );\r
+ ((Application)OpenRocketLoaderActivity.this.getApplication()).setWarnings( result.warnings );\r
+\r
+ updateMissingMotors();\r
+ }\r
}\r
\r
private void updateMissingMotors() {\r
import net.sf.openrocket.android.util.ProgressDialogFragment;\r
import net.sf.openrocket.document.OpenRocketDocument;\r
import net.sf.openrocket.file.DatabaseMotorFinderWithMissingMotors;\r
+import net.sf.openrocket.file.GeneralRocketLoader;\r
import net.sf.openrocket.file.RocketLoadException;\r
-import net.sf.openrocket.file.openrocket.importt.OpenRocketLoader;\r
import android.app.Activity;\r
import android.os.AsyncTask;\r
import android.os.Bundle;\r
protected OpenRocketLoaderResult doInBackground(File... arg0) {\r
AndroidLogWrapper.d(OpenRocketLoaderTask.class, "doInBackgroud");\r
\r
- OpenRocketLoader rocketLoader = new OpenRocketLoader();\r
+ GeneralRocketLoader rocketLoader = new GeneralRocketLoader();\r
+ OpenRocketLoaderResult result = new OpenRocketLoaderResult();\r
try {\r
- OpenRocketLoaderResult result = new OpenRocketLoaderResult();\r
OpenRocketDocument rocket = rocketLoader.load(arg0[0], new DatabaseMotorFinderWithMissingMotors());\r
result.rocket = rocket;\r
result.warnings = rocketLoader.getWarnings();\r
- return result;\r
} catch (RocketLoadException ex) {\r
- AndroidLogWrapper.e(OpenRocketLoaderTask.class, "doInBackground rocketLaoder.load threw", ex);\r
+ AndroidLogWrapper.e(OpenRocketLoaderTask.class, "doInBackground rocketLaoder.load threw {}", ex);\r
+ result.loadingError = ex;\r
}\r
- return null;\r
+ return result;\r
\r
}\r
\r