import net.sf.openrocket.android.db.MotorDao;\r
import net.sf.openrocket.android.util.AndroidLogWrapper;\r
import net.sf.openrocket.android.util.PersistentExpandableListFragment;\r
-import net.sf.openrocket.motor.Motor;\r
import android.app.Activity;\r
import android.content.Context;\r
-import android.content.Intent;\r
import android.content.SharedPreferences;\r
import android.content.res.Resources;\r
import android.database.Cursor;\r
public interface OnMotorSelectedListener {\r
public void onMotorSelected( long motorId );\r
}\r
- \r
+\r
public static MotorListFragment newInstance( ) {\r
- \r
+\r
MotorListFragment frag = new MotorListFragment();\r
return frag;\r
}\r
- \r
+\r
private static final int CONTEXTMENU_DELETE = Menu.FIRST+1;\r
\r
private String groupColumnPreferenceKey;\r
private CursorTreeAdapter mAdapter;\r
\r
private DbAdapter mDbHelper;\r
- \r
+\r
private OnMotorSelectedListener motorSelectedListener;\r
- \r
+\r
public void setMotorSelectedListener(\r
OnMotorSelectedListener motorSelectedListener) {\r
this.motorSelectedListener = motorSelectedListener;\r
protected Cursor getChildrenCursor(Cursor arg0) {\r
AndroidLogWrapper.d(MotorListFragment.class,"getChildrenCursor");\r
String group = arg0.getString(arg0.getColumnIndex(groupColumn));\r
- AndroidLogWrapper.d(MotorListFragment.class," for: "+ groupColumn + " = " + group);\r
Cursor c = mDbHelper.getMotorDao().fetchAllInGroups(groupColumn,group);\r
- AndroidLogWrapper.d(MotorListFragment.class," got cursor");\r
- getActivity().startManagingCursor(c);\r
return c;\r
}\r
\r
@Override\r
protected void bindChildView(View arg0, Context arg1, Cursor arg2,\r
boolean arg3) {\r
- \r
+\r
TextView manu = (TextView) arg0.findViewById(R.id.motorChildManu);\r
manu.setText( arg2.getString(arg2.getColumnIndex(MotorDao.MANUFACTURER)));\r
- \r
+\r
TextView desig = (TextView) arg0.findViewById(R.id.motorChildName);\r
desig.setText( arg2.getString(arg2.getColumnIndex(MotorDao.DESIGNATION)));\r
- \r
+\r
TextView delays = (TextView) arg0.findViewById(R.id.motorChildDelays);\r
delays.setText( arg2.getString(arg2.getColumnIndex(MotorDao.DELAYS)));\r
- \r
+\r
TextView totImpulse = (TextView) arg0.findViewById(R.id.motorChildImpulse);\r
totImpulse.setText( arg2.getString(arg2.getColumnIndex(MotorDao.TOTAL_IMPULSE)));\r
}\r
v.setText( cursor.getString( cursor.getColumnIndex(groupColumn)));\r
}\r
}\r
- \r
+\r
}\r
\r
@Override\r
setGroupColumnFromPreferences(pref);\r
\r
pref.registerOnSharedPreferenceChangeListener(this);\r
- \r
+\r
if ( activity instanceof OnMotorSelectedListener ) {\r
motorSelectedListener = (OnMotorSelectedListener) activity;\r
}\r
\r
}\r
private void refreshData() {\r
+ Cursor motorCursor = mDbHelper.getMotorDao().fetchGroups(groupColumn);\r
if (mAdapter != null ) {\r
- mAdapter.changeCursor(null);\r
+ mAdapter.changeCursor(motorCursor);\r
+ }\r
+ else {\r
+ // Set up our adapter\r
+ mAdapter = new MotorHierarchicalListAdapter( \r
+ getActivity(),\r
+ motorCursor,\r
+ R.layout.motor_list_group,\r
+ R.layout.motor_list_child);\r
+ setListAdapter(mAdapter);\r
}\r
- Cursor motorCursor = mDbHelper.getMotorDao().fetchGroups(groupColumn);\r
- getActivity().startManagingCursor(motorCursor);\r
- // Set up our adapter\r
- mAdapter = new MotorHierarchicalListAdapter( \r
- getActivity(),\r
- motorCursor,\r
- R.layout.motor_list_group,\r
- R.layout.motor_list_child);\r
- setListAdapter(mAdapter);\r
}\r
+ \r
}\r