diff options
| author | rsudev <rasch@munin-soft.de> | 2011-12-02 21:10:14 +0100 |
|---|---|---|
| committer | rsudev <rasch@munin-soft.de> | 2011-12-02 21:10:14 +0100 |
| commit | c973e6a941931742aa679f55f326c88ba2a921e9 (patch) | |
| tree | 9f9bada55ee0db7f883d160e601fff6893653e91 /main/src | |
| parent | 64eb4d45f4f63f0dbed136d92b1aace2747b0b80 (diff) | |
| download | cgeo-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.java | 26 |
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()) { |
