Update order
This commit is contained in:
parent
16a4f6d775
commit
11e27ec80a
4 changed files with 52 additions and 56 deletions
|
@ -9,6 +9,8 @@
|
|||
3. All your modified/created strings are in the top of the file (to make easier find what\'s translated).
|
||||
PLEASE: Have a look at http://code.google.com/p/osmand/wiki/UIConsistency, it may really improve your and our work :-) Thx - Hardy
|
||||
-->
|
||||
<string name="save_current_track_widget">Save
|
||||
\n current GPX track</string>
|
||||
<string name="tip_recent_changes_1_2_t">Changes in 1.2:
|
||||
\n\t* Bug fixes (tuned routing, search, AV recording, voice prompts, some display improvements)
|
||||
\n\t* Easier hillshade overlay configuration (requires Contour Lines plugin)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package net.osmand.plus.background;
|
||||
|
||||
import net.londatiga.android.ActionItem;
|
||||
import net.londatiga.android.QuickAction;
|
||||
import net.osmand.plus.ContextMenuAdapter;
|
||||
import net.osmand.plus.ContextMenuAdapter.OnContextMenuClick;
|
||||
import net.osmand.plus.NavigationService;
|
||||
import net.osmand.plus.OsmandApplication;
|
||||
import net.osmand.plus.OsmandPlugin;
|
||||
|
@ -26,7 +26,6 @@ import android.preference.Preference;
|
|||
import android.preference.Preference.OnPreferenceChangeListener;
|
||||
import android.preference.PreferenceCategory;
|
||||
import android.preference.PreferenceScreen;
|
||||
import android.view.View;
|
||||
|
||||
public class OsmandBackgroundServicePlugin extends OsmandPlugin implements MonitoringInfoControlServices {
|
||||
public static final int[] SECONDS = new int[]{0, 30, 60, 90};
|
||||
|
@ -147,15 +146,13 @@ public class OsmandBackgroundServicePlugin extends OsmandPlugin implements Monit
|
|||
}
|
||||
|
||||
@Override
|
||||
public void addMonitorActions(final QuickAction qa, final MonitoringInfoControl li, final OsmandMapTileView view) {
|
||||
|
||||
final ActionItem bgServiceAction = new ActionItem();
|
||||
public void addMonitorActions(final ContextMenuAdapter qa, final MonitoringInfoControl li, final OsmandMapTileView view) {
|
||||
final boolean off = view.getApplication().getNavigationService() == null;
|
||||
bgServiceAction.setTitle(view.getResources().getString(!off? R.string.bg_service_sleep_mode_on : R.string.bg_service_sleep_mode_off));
|
||||
bgServiceAction.setIcon(view.getResources().getDrawable(!off? R.drawable.monitoring_rec_big : R.drawable.monitoring_rec_inactive));
|
||||
bgServiceAction.setOnClickListener(new View.OnClickListener() {
|
||||
int msgId = !off? R.string.bg_service_sleep_mode_on : R.string.bg_service_sleep_mode_off;
|
||||
int draw = !off? R.drawable.monitoring_rec_big : R.drawable.monitoring_rec_inactive;
|
||||
qa.registerItem(msgId, draw, new OnContextMenuClick() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
public void onContextMenuClick(int itemId, int pos, boolean isChecked, DialogInterface dialog) {
|
||||
final Intent serviceIntent = new Intent(view.getContext(), NavigationService.class);
|
||||
if (view.getApplication().getNavigationService() == null) {
|
||||
final ValueHolder<Integer> vs = new ValueHolder<Integer>();
|
||||
|
@ -172,10 +169,7 @@ public class OsmandBackgroundServicePlugin extends OsmandPlugin implements Monit
|
|||
} else {
|
||||
view.getContext().stopService(serviceIntent);
|
||||
}
|
||||
qa.dismiss();
|
||||
}
|
||||
});
|
||||
qa.addActionItem(bgServiceAction);
|
||||
|
||||
}, 0);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,9 +2,6 @@ package net.osmand.plus.monitoring;
|
|||
|
||||
import java.util.EnumSet;
|
||||
|
||||
|
||||
import net.londatiga.android.ActionItem;
|
||||
import net.londatiga.android.QuickAction;
|
||||
import net.osmand.PlatformUtil;
|
||||
import net.osmand.plus.ApplicationMode;
|
||||
import net.osmand.plus.ContextMenuAdapter;
|
||||
|
@ -23,10 +20,10 @@ import net.osmand.plus.views.MapInfoLayer;
|
|||
import net.osmand.plus.views.MonitoringInfoControl;
|
||||
import net.osmand.plus.views.MonitoringInfoControl.MonitoringInfoControlServices;
|
||||
import net.osmand.plus.views.MonitoringInfoControl.ValueHolder;
|
||||
import net.osmand.plus.views.mapwidgets.BaseMapWidget;
|
||||
import net.osmand.plus.views.mapwidgets.TextInfoWidget;
|
||||
import net.osmand.plus.views.OsmandMapLayer.DrawSettings;
|
||||
import net.osmand.plus.views.OsmandMapTileView;
|
||||
import net.osmand.plus.views.mapwidgets.BaseMapWidget;
|
||||
import net.osmand.plus.views.mapwidgets.TextInfoWidget;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
|
||||
|
@ -256,14 +253,13 @@ public class OsmandMonitoringPlugin extends OsmandPlugin implements MonitoringIn
|
|||
}
|
||||
|
||||
@Override
|
||||
public void addMonitorActions(final QuickAction qa, final MonitoringInfoControl li, final OsmandMapTileView view) {
|
||||
final ActionItem bgServiceAction = new ActionItem();
|
||||
public void addMonitorActions(final ContextMenuAdapter qa, final MonitoringInfoControl li, final OsmandMapTileView view) {
|
||||
final boolean off = !view.getSettings().SAVE_TRACK_TO_GPX.get();
|
||||
bgServiceAction.setTitle(view.getResources().getString(off? R.string.monitoring_mode_off : R.string.monitoring_mode_on));
|
||||
bgServiceAction.setIcon(view.getResources().getDrawable(off ? R.drawable.monitoring_rec_inactive : R.drawable.monitoring_rec_big));
|
||||
bgServiceAction.setOnClickListener(new View.OnClickListener() {
|
||||
qa.registerItem(off ? R.string.monitoring_mode_off : R.string.monitoring_mode_on, off ? R.drawable.monitoring_rec_inactive
|
||||
: R.drawable.monitoring_rec_big, new OnContextMenuClick() {
|
||||
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
public void onContextMenuClick(int itemId, int pos, boolean isChecked, DialogInterface dialog) {
|
||||
if (off) {
|
||||
final ValueHolder<Integer> vs = new ValueHolder<Integer>();
|
||||
vs.value = view.getSettings().SAVE_TRACK_INTERVAL.get();
|
||||
|
@ -279,18 +275,15 @@ public class OsmandMonitoringPlugin extends OsmandPlugin implements MonitoringIn
|
|||
} else {
|
||||
view.getSettings().SAVE_TRACK_TO_GPX.set(false);
|
||||
}
|
||||
qa.dismiss();
|
||||
}
|
||||
});
|
||||
qa.addActionItem(bgServiceAction);
|
||||
}, -1);
|
||||
|
||||
final ActionItem liveAction = new ActionItem();
|
||||
final boolean liveoff = !view.getSettings().LIVE_MONITORING.get();
|
||||
liveAction.setTitle(view.getResources().getString(liveoff? R.string.live_monitoring_mode_off : R.string.live_monitoring_mode_on));
|
||||
liveAction.setIcon(view.getResources().getDrawable(liveoff? R.drawable.monitoring_rec_inactive : R.drawable.monitoring_rec_big));
|
||||
liveAction.setOnClickListener(new View.OnClickListener() {
|
||||
qa.registerItem(liveoff ? R.string.monitoring_mode_off : R.string.monitoring_mode_on,
|
||||
liveoff ? R.drawable.monitoring_rec_inactive: R.drawable.monitoring_rec_big,
|
||||
new OnContextMenuClick() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
public void onContextMenuClick(int itemId, int pos, boolean isChecked, DialogInterface dialog) {
|
||||
if (liveoff) {
|
||||
final ValueHolder<Integer> vs = new ValueHolder<Integer>();
|
||||
vs.value = view.getSettings().LIVE_MONITORING_INTERVAL.get();
|
||||
|
@ -306,18 +299,14 @@ public class OsmandMonitoringPlugin extends OsmandPlugin implements MonitoringIn
|
|||
} else {
|
||||
view.getSettings().LIVE_MONITORING.set(false);
|
||||
}
|
||||
qa.dismiss();
|
||||
}
|
||||
});
|
||||
qa.addActionItem(liveAction);
|
||||
}, -1);
|
||||
|
||||
final ActionItem saveGPXAction = new ActionItem();
|
||||
String s = view.getResources().getString(R.string.save_current_track);
|
||||
saveGPXAction.setTitle(s.replaceFirst(" ", "\n"));
|
||||
saveGPXAction.setIcon(view.getResources().getDrawable(R.drawable.monitoring_rec_inactive));
|
||||
saveGPXAction.setOnClickListener(new View.OnClickListener() {
|
||||
qa.registerItem(R.string.save_current_track_widget,
|
||||
R.drawable.monitoring_rec_inactive,
|
||||
new OnContextMenuClick() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
public void onContextMenuClick(int itemId, int pos, boolean isChecked, DialogInterface dialog) {
|
||||
app.getTaskManager().runInBackground(new OsmAndTaskRunnable<Void, Void, Void>() {
|
||||
|
||||
@Override
|
||||
|
@ -327,19 +316,10 @@ public class OsmandMonitoringPlugin extends OsmandPlugin implements MonitoringIn
|
|||
helper.close();
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPostExecute(Void result) {
|
||||
qa.dismiss();
|
||||
}
|
||||
|
||||
}, null);
|
||||
|
||||
}
|
||||
});
|
||||
qa.addActionItem(saveGPXAction);
|
||||
|
||||
|
||||
|
||||
}, -1);
|
||||
}
|
||||
|
||||
}
|
|
@ -3,7 +3,9 @@ package net.osmand.plus.views;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import net.londatiga.android.ActionItem;
|
||||
import net.londatiga.android.QuickAction;
|
||||
import net.osmand.plus.ContextMenuAdapter;
|
||||
import net.osmand.plus.R;
|
||||
import net.osmand.plus.activities.MapActivity;
|
||||
import net.osmand.plus.views.OsmandMapLayer.DrawSettings;
|
||||
|
@ -28,7 +30,7 @@ public class MonitoringInfoControl {
|
|||
|
||||
public interface MonitoringInfoControlServices {
|
||||
|
||||
public void addMonitorActions(QuickAction qa, MonitoringInfoControl li, OsmandMapTileView view);
|
||||
public void addMonitorActions(ContextMenuAdapter ca, MonitoringInfoControl li, OsmandMapTileView view);
|
||||
}
|
||||
|
||||
public void addMonitorActions(MonitoringInfoControlServices la){
|
||||
|
@ -71,9 +73,27 @@ public class MonitoringInfoControl {
|
|||
}
|
||||
|
||||
private void showBgServiceQAction(final ImageView lockView, final OsmandMapTileView view, final MapActivity map) {
|
||||
final QuickAction qa = new QuickAction(lockView);
|
||||
final ContextMenuAdapter ca = new ContextMenuAdapter(map);
|
||||
for(MonitoringInfoControlServices la : monitoringServices){
|
||||
la.addMonitorActions(qa, this, view);
|
||||
la.addMonitorActions(ca, this, view);
|
||||
}
|
||||
final QuickAction qa = new QuickAction(lockView);
|
||||
String[] itemNames = ca.getItemNames();
|
||||
for(int i = 0; i < ca.length(); i++) {
|
||||
final int ij = i;
|
||||
ActionItem ai = new ActionItem();
|
||||
ai.setTitle(itemNames[ij]);
|
||||
if(ca.getImageId(ij) != 0) {
|
||||
ai.setIcon(view.getResources().getDrawable(ca.getImageId(ij)));
|
||||
}
|
||||
ai.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
ca.getClickAdapter(ij).onContextMenuClick(ca.getItemId(ij), ij, false, null);
|
||||
qa.dismiss();
|
||||
}
|
||||
});
|
||||
qa.addActionItem(ai);
|
||||
}
|
||||
qa.show();
|
||||
|
||||
|
|
Loading…
Reference in a new issue