From e5cb5ec8ee25a6ed1cef35f956bd1c7a14eccdff Mon Sep 17 00:00:00 2001 From: Bananeweizen Date: Thu, 17 Oct 2013 19:45:17 +0200 Subject: fix #3201: remember field notes export settings --- main/res/values/preference_keys.xml | 4 ++- .../cgeo/geocaching/export/FieldnoteExport.java | 12 ++++---- main/src/cgeo/geocaching/settings/Settings.java | 35 ++++++++++++++++++++-- 3 files changed, 43 insertions(+), 8 deletions(-) diff --git a/main/res/values/preference_keys.xml b/main/res/values/preference_keys.xml index 3493c82..975cff9 100644 --- a/main/res/values/preference_keys.xml +++ b/main/res/values/preference_keys.xml @@ -94,7 +94,9 @@ ocde_tokenpublic ocde-temp-token-secret ocde-temp-token-public - fieldnoteExportDate + fieldnoteExportDate + fieldnoteExportUpload + fieldnoteExportOnlyNew navigationCompass navigationRadar navigationInternalMap diff --git a/main/src/cgeo/geocaching/export/FieldnoteExport.java b/main/src/cgeo/geocaching/export/FieldnoteExport.java index 06f28a3..1ae97f3 100644 --- a/main/src/cgeo/geocaching/export/FieldnoteExport.java +++ b/main/src/cgeo/geocaching/export/FieldnoteExport.java @@ -78,7 +78,9 @@ class FieldnoteExport extends AbstractExport { builder.setView(layout); final CheckBox uploadOption = (CheckBox) layout.findViewById(R.id.upload); + uploadOption.setChecked(Settings.getFieldNoteExportUpload()); final CheckBox onlyNewOption = (CheckBox) layout.findViewById(R.id.onlynew); + onlyNewOption.setChecked(Settings.getFieldNoteExportOnlyNew()); if (Settings.getFieldnoteExportDate() > 0) { onlyNewOption.setText(getString(R.string.export_fieldnotes_onlynew) + " (" + Formatter.formatDateTime(Settings.getFieldnoteExportDate()) + ')'); @@ -88,12 +90,12 @@ class FieldnoteExport extends AbstractExport { @Override public void onClick(DialogInterface dialog, int which) { + final boolean upload = uploadOption.isChecked(); + final boolean onlyNew = onlyNewOption.isChecked(); + Settings.setFieldNoteExportUpload(upload); + Settings.setFieldNoteExportOnlyNew(onlyNew); dialog.dismiss(); - new ExportTask( - activity, - uploadOption.isChecked(), - onlyNewOption.isChecked()) - .execute(caches); + new ExportTask(activity, upload, onlyNew).execute(caches); } }); diff --git a/main/src/cgeo/geocaching/settings/Settings.java b/main/src/cgeo/geocaching/settings/Settings.java index 4059ece..146182a 100644 --- a/main/src/cgeo/geocaching/settings/Settings.java +++ b/main/src/cgeo/geocaching/settings/Settings.java @@ -940,15 +940,46 @@ public class Settings { } public static long getFieldnoteExportDate() { - return getLong(R.string.pref_fieldnoteExportDate, 0); + return getLong(R.string.pref_fieldNoteExportDate, 0); } + /** + * remember date of last field note export + * + * @param date + */ public static void setFieldnoteExportDate(final long date) { - putLong(R.string.pref_fieldnoteExportDate, date); + putLong(R.string.pref_fieldNoteExportDate, date); } public static boolean isUseNavigationApp(NavigationAppsEnum navApp) { return getBoolean(navApp.preferenceKey, true); } + /** + * remember the state of the "Upload" checkbox in the field notes export dialog + * + * @param upload + */ + public static void setFieldNoteExportUpload(boolean upload) { + putBoolean(R.string.pref_fieldNoteExportUpload, upload); + } + + public static boolean getFieldNoteExportUpload() { + return getBoolean(R.string.pref_fieldNoteExportUpload, true); + } + + /** + * remember the state of the "Only new" checkbox in the field notes export dialog + * + * @param onlyNew + */ + public static void setFieldNoteExportOnlyNew(boolean onlyNew) { + putBoolean(R.string.pref_fieldNoteExportOnlyNew, onlyNew); + } + + public static boolean getFieldNoteExportOnlyNew() { + return getBoolean(R.string.pref_fieldNoteExportOnlyNew, false); + } + } -- cgit v1.1