package co.mwater.clientapp.ui;
import android.os.Bundle;
import co.mwater.clientapp.R;
import co.mwater.clientapp.db.SourcesTable;
import co.mwater.clientapp.ui.PreferenceWidget.OnChangeListener;
public class SourceEditActivity extends DetailActivity {
private static final String TAG = SourceEditActivity.class.getSimpleName();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.source_edit_activity);
((PreferenceWidget) findViewById(R.id.name)).setOnChangeListener(new OnChangeListener() {
public void onChange(Object value) {
SourceEditActivity.this.updateRow(SourcesTable.COLUMN_NAME, value.toString());
}
});
((PreferenceWidget) findViewById(R.id.desc)).setOnChangeListener(new OnChangeListener() {
public void onChange(Object value) {
SourceEditActivity.this.updateRow(SourcesTable.COLUMN_DESC, value.toString());
}
});
((PreferenceWidget) findViewById(R.id.source_type)).setOnChangeListener(new OnChangeListener() {
public void onChange(Object value) {
SourceEditActivity.this.updateRow(SourcesTable.COLUMN_SOURCE_TYPE, (Integer)value);
}
});
((PreferenceWidget) findViewById(R.id.source_type)).setList(
getResources().getStringArray(R.array.source_types));
}
@Override
protected void displayData() {
if (rowValues == null)
return;
setPreferenceWidget(R.id.name, "Name",
rowValues.getAsString(SourcesTable.COLUMN_NAME), true);
setPreferenceWidget(R.id.desc, "Description",
rowValues.getAsString(SourcesTable.COLUMN_DESC), true);
setPreferenceWidget(R.id.source_type, "Type", getSourceTypeString(),
rowValues.getAsInteger(SourcesTable.COLUMN_SOURCE_TYPE), true);
}
String getSourceTypeString() {
// Look up type
String[] sourceTypes = getResources().getStringArray(R.array.source_types);
Integer sourceType = rowValues.getAsInteger(SourcesTable.COLUMN_SOURCE_TYPE);
if (sourceType == null)
return "Unspecified";
else if (sourceType >= sourceTypes.length)
return "?";
else
return sourceTypes[sourceType];
}
}