aboutsummaryrefslogtreecommitdiffstats
path: root/main/src
diff options
context:
space:
mode:
authorrsudev <rasch@munin-soft.de>2011-12-02 21:10:14 +0100
committerrsudev <rasch@munin-soft.de>2011-12-02 21:10:14 +0100
commitc973e6a941931742aa679f55f326c88ba2a921e9 (patch)
tree9f9bada55ee0db7f883d160e601fff6893653e91 /main/src
parent64eb4d45f4f63f0dbed136d92b1aace2747b0b80 (diff)
downloadcgeo-c973e6a941931742aa679f55f326c88ba2a921e9.zip
cgeo-c973e6a941931742aa679f55f326c88ba2a921e9.tar.gz
cgeo-c973e6a941931742aa679f55f326c88ba2a921e9.tar.bz2
Implementing #845, 2nd part
- added context menu for edit and caches around
Diffstat (limited to 'main/src')
-rw-r--r--main/src/cgeo/geocaching/CacheDetailActivity.java26
1 files changed, 22 insertions, 4 deletions
diff --git a/main/src/cgeo/geocaching/CacheDetailActivity.java b/main/src/cgeo/geocaching/CacheDetailActivity.java
index b1b8249..2a1e6f9 100644
--- a/main/src/cgeo/geocaching/CacheDetailActivity.java
+++ b/main/src/cgeo/geocaching/CacheDetailActivity.java
@@ -89,10 +89,12 @@ public class CacheDetailActivity extends AbstractActivity {
private static final int MENU_BROWSER = 7;
private static final int MENU_NAVIGATE = 2;
- private static final int CONTEXT_MENU_WAYPOINT_DUPLICATE = 1234;
- private static final int CONTEXT_MENU_WAYPOINT_DELETE = 1235;
- private static final int CONTEXT_MENU_WAYPOINT_COMPASS = 1236;
- private static final int CONTEXT_MENU_WAYPOINT_NAVIGATE = 1237;
+ private static final int CONTEXT_MENU_WAYPOINT_EDIT = 1234;
+ private static final int CONTEXT_MENU_WAYPOINT_DUPLICATE = 1235;
+ private static final int CONTEXT_MENU_WAYPOINT_DELETE = 1236;
+ private static final int CONTEXT_MENU_WAYPOINT_COMPASS = 1237;
+ private static final int CONTEXT_MENU_WAYPOINT_NAVIGATE = 1238;
+ private static final int CONTEXT_MENU_WAYPOINT_CACHES_AROUND = 1239;
private cgGeo geolocation;
private cgCache cache;
@@ -335,6 +337,7 @@ public class CacheDetailActivity extends AbstractActivity {
final cgWaypoint waypoint = sortedWaypoints.get(i);
final int index = cache.getWaypoints().indexOf(waypoint);
menu.setHeaderTitle(res.getString(R.string.waypoint));
+ menu.add(CONTEXT_MENU_WAYPOINT_EDIT, index, 0, R.string.waypoint_edit);
menu.add(CONTEXT_MENU_WAYPOINT_DUPLICATE, index, 0, R.string.waypoint_duplicate);
contextMenuWPIndex = index;
if (waypoint.isUserDefined()) {
@@ -344,6 +347,7 @@ public class CacheDetailActivity extends AbstractActivity {
menu.add(CONTEXT_MENU_WAYPOINT_COMPASS, index, 0, R.string.cache_menu_compass);
SubMenu subMenu = menu.addSubMenu(CONTEXT_MENU_WAYPOINT_NAVIGATE, index, 0, R.string.cache_menu_navigate).setIcon(android.R.drawable.ic_menu_mapmode);
NavigationAppFactory.addMenuItems(subMenu, this, res);
+ menu.add(CONTEXT_MENU_WAYPOINT_CACHES_AROUND, index, 0, R.string.cache_menu_around);
}
break;
}
@@ -379,6 +383,14 @@ public class CacheDetailActivity extends AbstractActivity {
break;
}
break;
+ case CONTEXT_MENU_WAYPOINT_EDIT:
+ if (null != cache.getWaypoints() && index < cache.getWaypoints().size()) {
+ final cgWaypoint waypoint = cache.getWaypoints().get(index);
+ Intent editIntent = new Intent(this, cgeowaypointadd.class);
+ editIntent.putExtra("waypoint", waypoint.getId());
+ startActivity(editIntent);
+ }
+ break;
case CONTEXT_MENU_WAYPOINT_DUPLICATE:
if (null != cache.getWaypoints() && index < cache.getWaypoints().size()) {
final cgWaypoint copy = new cgWaypoint(cache.getWaypoints().get(index));
@@ -412,6 +424,12 @@ public class CacheDetailActivity extends AbstractActivity {
case CONTEXT_MENU_WAYPOINT_NAVIGATE:
// No processing necessary, sub-menu gets displayed;
break;
+ case CONTEXT_MENU_WAYPOINT_CACHES_AROUND:
+ if (null != cache.getWaypoints() && index < cache.getWaypoints().size()) {
+ final cgWaypoint waypoint = cache.getWaypoints().get(index);
+ cgeocaches.startActivityCachesAround(this, waypoint.getCoords());
+ }
+ break;
default:
// First check the navigation menu, then the option items
if (null != cache.getWaypoints() && 0 <= contextMenuWPIndex && contextMenuWPIndex < cache.getWaypoints().size()) {