aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/list
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/list')
-rw-r--r--main/src/cgeo/geocaching/list/AbstractList.java2
-rw-r--r--main/src/cgeo/geocaching/list/PseudoList.java31
-rw-r--r--main/src/cgeo/geocaching/list/StoredList.java2
3 files changed, 23 insertions, 12 deletions
diff --git a/main/src/cgeo/geocaching/list/AbstractList.java b/main/src/cgeo/geocaching/list/AbstractList.java
index ec70deb..06f44a2 100644
--- a/main/src/cgeo/geocaching/list/AbstractList.java
+++ b/main/src/cgeo/geocaching/list/AbstractList.java
@@ -22,7 +22,7 @@ public abstract class AbstractList {
public abstract String getTitle();
- public abstract int getCount();
+ public abstract int getNumberOfCaches();
@Nullable
public static AbstractList getListById(int listId) {
diff --git a/main/src/cgeo/geocaching/list/PseudoList.java b/main/src/cgeo/geocaching/list/PseudoList.java
index 71f9123..9ee920c 100644
--- a/main/src/cgeo/geocaching/list/PseudoList.java
+++ b/main/src/cgeo/geocaching/list/PseudoList.java
@@ -1,32 +1,48 @@
package cgeo.geocaching.list;
import cgeo.geocaching.CgeoApplication;
+import cgeo.geocaching.DataStore;
import cgeo.geocaching.R;
-public class PseudoList extends AbstractList {
+public abstract class PseudoList extends AbstractList {
private static final int ALL_LIST_ID = 2;
/**
* list entry to show all caches
*/
- public static final PseudoList ALL_LIST = new PseudoList(ALL_LIST_ID, R.string.list_all_lists);
+ public static final PseudoList ALL_LIST = new PseudoList(ALL_LIST_ID, R.string.list_all_lists) {
+ @Override
+ public int getNumberOfCaches() {
+ return DataStore.getAllCachesCount();
+ }
+ };
private static final int NEW_LIST_ID = 3;
/**
* list entry to create a new list
*/
- public static final AbstractList NEW_LIST = new PseudoList(NEW_LIST_ID, R.string.list_menu_create);
+ public static final AbstractList NEW_LIST = new PseudoList(NEW_LIST_ID, R.string.list_menu_create) {
+ @Override
+ public int getNumberOfCaches() {
+ return -1;
+ }
+ };
private static final int HISTORY_LIST_ID = 4;
/**
* list entry to create a new list
*/
- public static final AbstractList HISTORY_LIST = new PseudoList(HISTORY_LIST_ID, R.string.menu_history);
+ public static final AbstractList HISTORY_LIST = new PseudoList(HISTORY_LIST_ID, R.string.menu_history) {
+ @Override
+ public int getNumberOfCaches() {
+ return DataStore.getAllHistoryCachesCount();
+ }
+ };
/**
* private constructor to have all instances as constants in the class
*/
- private PseudoList(int id, final int titleResourceId) {
+ private PseudoList(final int id, final int titleResourceId) {
super(id, CgeoApplication.getInstance().getResources().getString(titleResourceId));
}
@@ -41,11 +57,6 @@ public class PseudoList extends AbstractList {
}
@Override
- public int getCount() {
- return -1;
- }
-
- @Override
public boolean isConcrete() {
return false;
}
diff --git a/main/src/cgeo/geocaching/list/StoredList.java b/main/src/cgeo/geocaching/list/StoredList.java
index e6cad56..6dac1a7 100644
--- a/main/src/cgeo/geocaching/list/StoredList.java
+++ b/main/src/cgeo/geocaching/list/StoredList.java
@@ -218,7 +218,7 @@ public final class StoredList extends AbstractList {
}
@Override
- public int getCount() {
+ public int getNumberOfCaches() {
return count;
}