+++ /dev/null
-package net.sf.openrocket.android.rocket;\r
-\r
-import net.sf.openrocket.R;\r
-import net.sf.openrocket.android.Application;\r
-import net.sf.openrocket.android.util.AndroidLogWrapper;\r
-import net.sf.openrocket.document.OpenRocketDocument;\r
-import net.sf.openrocket.document.Simulation;\r
-import net.sf.openrocket.unit.Unit;\r
-import net.sf.openrocket.unit.UnitGroup;\r
-import android.app.Activity;\r
-import android.content.SharedPreferences;\r
-import android.os.Bundle;\r
-import android.preference.PreferenceManager;\r
-import android.support.v4.app.Fragment;\r
-import android.view.LayoutInflater;\r
-import android.view.View;\r
-import android.view.ViewGroup;\r
-import android.widget.AdapterView;\r
-import android.widget.AdapterView.OnItemClickListener;\r
-import android.widget.ArrayAdapter;\r
-import android.widget.ListView;\r
-import android.widget.TextView;\r
-\r
-public class Simulations extends Fragment\r
-implements SharedPreferences.OnSharedPreferenceChangeListener\r
-{\r
-\r
- public interface OnSimulationSelectedListener {\r
- public void onSimulationSelected( int simulationId );\r
- }\r
-\r
- private ListView simulationList;\r
- private OnSimulationSelectedListener listener;\r
-\r
- @Override\r
- public View onCreateView(LayoutInflater inflater, ViewGroup container,\r
- Bundle savedInstanceState) {\r
- View v = inflater.inflate(R.layout.rocket_simulations, container, false);\r
- simulationList = (ListView) v.findViewById(R.id.openrocketviewerSimulationList);\r
-\r
- return v;\r
- }\r
-\r
- @Override\r
- public void onAttach(Activity activity) {\r
- super.onAttach(activity);\r
- if ( activity instanceof OnSimulationSelectedListener ) {\r
- listener = (OnSimulationSelectedListener) activity;\r
- }\r
- }\r
-\r
-\r
- public void setListener(OnSimulationSelectedListener listener) {\r
- this.listener = listener;\r
- }\r
-\r
- @Override\r
- public void onActivityCreated(Bundle savedInstanceState) {\r
- super.onActivityCreated(savedInstanceState);\r
-\r
- SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());\r
- prefs.registerOnSharedPreferenceChangeListener(this);\r
-\r
- setup();\r
-\r
- }\r
-\r
- @Override\r
- public void onDestroy() {\r
- super.onDestroy();\r
-\r
- SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity());\r
- prefs.unregisterOnSharedPreferenceChangeListener(this);\r
- }\r
-\r
- @Override\r
- public void onSharedPreferenceChanged(SharedPreferences arg0, String arg1) {\r
- if ( this.isVisible() ) {\r
- setup();\r
- }\r
- }\r
-\r
-\r
- private void setup() {\r
- final OpenRocketDocument rocketDocument = ((Application)getActivity().getApplication()).getRocketDocument();\r
- AndroidLogWrapper.d(Simulations.class,"activity = {0}", this.getActivity());\r
-\r
- ArrayAdapter<Simulation> sims = new ArrayAdapter<Simulation>(this.getActivity(),android.R.layout.simple_list_item_2,rocketDocument.getSimulations()) {\r
-\r
- @Override\r
- public View getView(int position, View convertView, ViewGroup parent) {\r
- View v = convertView;\r
- if ( v == null ) {\r
- LayoutInflater li = getActivity().getLayoutInflater();\r
- v = li.inflate(android.R.layout.simple_list_item_2,null);\r
- }\r
- Simulation sim = this.getItem(position);\r
- ((TextView)v.findViewById(android.R.id.text1)).setText( sim.getName() );\r
- StringBuilder sb = new StringBuilder();\r
- sb.append("motors: ").append(sim.getConfiguration().getMotorConfigurationDescription());\r
- Unit distanceUnit = UnitGroup.UNITS_DISTANCE.getDefaultUnit();\r
- sb.append(" apogee: ").append( distanceUnit.toStringUnit(sim.getSimulatedData().getMaxAltitude()));\r
- sb.append(" time: ").append(sim.getSimulatedData().getFlightTime()).append("s");\r
- ((TextView)v.findViewById(android.R.id.text2)).setText( sb.toString() );\r
- return v;\r
- }\r
-\r
- };\r
- simulationList.setOnItemClickListener( new OnItemClickListener() {\r
- @Override\r
- public void onItemClick(AdapterView l, View v, int position, long id) {\r
- if (listener != null ) {\r
- listener.onSimulationSelected(position);\r
- }\r
- }\r
-\r
- });\r
- simulationList.setAdapter(sims);\r
-\r
- }\r
-\r
-}\r