From 86ccb76a2be90ce959c060d95cd82bae23216fb8 Mon Sep 17 00:00:00 2001 From: Rodrigo Damazio Date: Mon, 16 Jan 2012 03:34:45 -0200 Subject: [PATCH] ICS UI: Moving per-tab menu items to the MenuManager. This will make more sense once tabs are fragments instead of activities. --- MyTracks/res/menu/main.xml | 18 ++++++ .../android/apps/mytracks/ChartActivity.java | 25 +------- .../android/apps/mytracks/Constants.java | 18 +++--- .../android/apps/mytracks/MapActivity.java | 64 +++++++------------ .../android/apps/mytracks/MenuManager.java | 31 ++++++++- .../android/apps/mytracks/MyTracks.java | 49 ++++++++++++-- 6 files changed, 126 insertions(+), 79 deletions(-) diff --git a/MyTracks/res/menu/main.xml b/MyTracks/res/menu/main.xml index 18da0333c..54b6e8796 100644 --- a/MyTracks/res/menu/main.xml +++ b/MyTracks/res/menu/main.xml @@ -20,6 +20,24 @@ android:title="@string/menu_markers" android:showAsAction="ifRoom"/> + + + + + + = 0) { - MapActivity map = - (MapActivity) getLocalActivityManager().getActivity("tab1"); + MapActivity map = getMapTab(); if (map != null) { getTabHost().setCurrentTab(0); map.showWaypoint(waypointId); @@ -485,4 +493,33 @@ public class MyTracks extends TabActivity implements OnTouchListener { long getSelectedTrackId() { return dataHub.getSelectedTrackId(); } + + public void showChartSettings() { + ChartActivity chart = getChartTab(); + if (chart != null) { + chart.showDialog(ChartActivity.CHART_SETTINGS_DIALOG); + } + } + + public void toggleSatelliteView() { + MapActivity mapTab = getMapTab(); + if (mapTab != null) { + mapTab.setSatelliteView(!getMapTab().isSatelliteView()); + } + } + + public void showMyLocation() { + MapActivity mapTab = getMapTab(); + if (mapTab != null) { + mapTab.showMyLocation(); + } + } + + private MapActivity getMapTab() { + return (MapActivity) getLocalActivityManager().getActivity(MAP_TAB_TAG); + } + + private ChartActivity getChartTab() { + return (ChartActivity) getLocalActivityManager().getActivity(CHART_TAB_TAG); + } }