Added clear data as one of the manage old tasks items

pull/14/head
Tim Su 14 years ago
parent 86a3268da3
commit 1e254dcf96

@ -6,6 +6,7 @@ package com.todoroo.astrid.core;
import android.app.ProgressDialog; import android.app.ProgressDialog;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener; import android.content.DialogInterface.OnClickListener;
import android.content.SharedPreferences.Editor;
import android.os.Bundle; import android.os.Bundle;
import android.preference.Preference; import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener; import android.preference.Preference.OnPreferenceClickListener;
@ -19,7 +20,9 @@ import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Query; import com.todoroo.andlib.sql.Query;
import com.todoroo.andlib.utility.DateUtilities; import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.andlib.utility.DialogUtilities; import com.todoroo.andlib.utility.DialogUtilities;
import com.todoroo.andlib.utility.Preferences;
import com.todoroo.andlib.utility.TodorooPreferenceActivity; import com.todoroo.andlib.utility.TodorooPreferenceActivity;
import com.todoroo.astrid.dao.Database;
import com.todoroo.astrid.data.Task; import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gcal.GCalHelper; import com.todoroo.astrid.gcal.GCalHelper;
import com.todoroo.astrid.service.MetadataService; import com.todoroo.astrid.service.MetadataService;
@ -33,8 +36,9 @@ import com.todoroo.astrid.service.TaskService;
*/ */
public class OldTaskPreferences extends TodorooPreferenceActivity { public class OldTaskPreferences extends TodorooPreferenceActivity {
@Autowired private TaskService taskService; @Autowired TaskService taskService;
@Autowired private MetadataService metadataService; @Autowired MetadataService metadataService;
@Autowired Database database;
ProgressDialog pd; ProgressDialog pd;
@ -50,37 +54,65 @@ public class OldTaskPreferences extends TodorooPreferenceActivity {
DependencyInjectionService.getInstance().inject(this); DependencyInjectionService.getInstance().inject(this);
// Extended prefs // Extended prefs
Preference preference_delete_completed = screen.findPreference(getString(R.string.EPr_manage_delete_completed)); Preference preference = screen.findPreference(getString(R.string.EPr_manage_delete_completed));
preference_delete_completed.setOnPreferenceClickListener(new OnPreferenceClickListener() { preference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference p) { public boolean onPreferenceClick(Preference p) {
showDeleteCompletedDialog(); showDeleteCompletedDialog();
return true; return true;
} }
}); });
Preference preference_purge_deleted = screen.findPreference(getString(R.string.EPr_manage_purge_deleted)); preference = screen.findPreference(getString(R.string.EPr_manage_purge_deleted));
preference_purge_deleted.setOnPreferenceClickListener(new OnPreferenceClickListener() { preference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference p) { public boolean onPreferenceClick(Preference p) {
showPurgeDeletedDialog(); showPurgeDeletedDialog();
return true; return true;
} }
}); });
Preference preference_delete_completed_events = screen.findPreference(getString(R.string.EPr_manage_delete_completed_gcal)); preference = screen.findPreference(getString(R.string.EPr_manage_delete_completed_gcal));
preference_delete_completed_events.setOnPreferenceClickListener(new OnPreferenceClickListener() { preference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference p) { public boolean onPreferenceClick(Preference p) {
showDeleteCompletedEventsDialog(); showDeleteCompletedEventsDialog();
return true; return true;
} }
}); });
Preference preference_delete_all_events = screen.findPreference(getString(R.string.EPr_manage_delete_all_gcal)); preference = screen.findPreference(getString(R.string.EPr_manage_delete_all_gcal));
preference_delete_all_events.setOnPreferenceClickListener(new OnPreferenceClickListener() { preference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference p) { public boolean onPreferenceClick(Preference p) {
showDeleteAllEventsDialog(); showDeleteAllEventsDialog();
return true; return true;
} }
}); });
preference= screen.findPreference(getString(R.string.EPr_manage_clear_all));
preference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference p) {
showClearDataDialog();
return true;
}
});
}
private void showClearDataDialog() {
DialogUtilities.okCancelDialog(
this,
getResources().getString(
R.string.EPr_manage_clear_all_message),
new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Editor editor = Preferences.getPrefs(OldTaskPreferences.this).edit();
editor.clear();
editor.commit();
deleteDatabase(database.getName());
System.exit(0);
}
},
null);
} }
/* (non-Javadoc) /* (non-Javadoc)

@ -473,6 +473,8 @@
<string name="EPr_manage_purge_deleted_message">Do you really want to purge all your deleted tasks?\n\nThese tasks will be gone forever!</string> <string name="EPr_manage_purge_deleted_message">Do you really want to purge all your deleted tasks?\n\nThese tasks will be gone forever!</string>
<string name="EPr_manage_purge_deleted_status">Purged %d tasks!</string> <string name="EPr_manage_purge_deleted_status">Purged %d tasks!</string>
<string name="EPr_manage_purge_deleted_summary">Caution! Purged tasks can\'t be recovered without backup file!</string> <string name="EPr_manage_purge_deleted_summary">Caution! Purged tasks can\'t be recovered without backup file!</string>
<string name="EPr_manage_clear_all">Clear All Data</string>
<string name="EPr_manage_clear_all_message">Delete all tasks and settings in Astrid?\n\nWarning: can\'t be undone!</string>
<string name="EPr_manage_delete_completed_gcal">Delete Calendar Events for Completed Tasks</string> <string name="EPr_manage_delete_completed_gcal">Delete Calendar Events for Completed Tasks</string>
<string name="EPr_manage_delete_completed_gcal_message">Do you really want to delete all your events for completed tasks?</string> <string name="EPr_manage_delete_completed_gcal_message">Do you really want to delete all your events for completed tasks?</string>

@ -23,4 +23,8 @@
android:key="@string/EPr_manage_delete_all_gcal" android:key="@string/EPr_manage_delete_all_gcal"
android:summary="@string/EPr_manage_delete_all_gcal_summary"/> android:summary="@string/EPr_manage_delete_all_gcal_summary"/>
<Preference
android:title="@string/EPr_manage_clear_all"
android:key="@string/EPr_manage_clear_all" />
</PreferenceScreen> </PreferenceScreen>

Loading…
Cancel
Save