public static void showEditInstance(final Amenity amenity, final AppCompatActivity activity) { final OsmandSettings settings = ((OsmandApplication) activity.getApplication()).getSettings(); final OpenstreetmapUtil openstreetmapUtilToLoad; if (settings.OFFLINE_EDITION.get() || !settings.isInternetConnectionAvailable(true)) { OsmEditingPlugin plugin = OsmandPlugin.getPlugin(OsmEditingPlugin.class); openstreetmapUtilToLoad = new OpenstreetmapLocalUtil(plugin, activity); } else if (!settings.isInternetConnectionAvailable(true)) { openstreetmapUtilToLoad = new OpenstreetmapRemoteUtil(activity); } else { openstreetmapUtilToLoad = new OpenstreetmapRemoteUtil(activity); } new AsyncTask<Void, Void, Node>() { @Override protected Node doInBackground(Void... params) { return openstreetmapUtilToLoad.loadNode(amenity); } protected void onPostExecute(Node n) { if (n != null) { EditPoiDialogFragment fragment = EditPoiDialogFragment.createInstance(n, amenity); fragment.show(activity.getSupportFragmentManager(), TAG); } else { AccessibleToast.makeText( activity, activity.getString(R.string.poi_error_poi_not_found), Toast.LENGTH_SHORT) .show(); } } }.execute(); }
public ShowDeleteDialogAsyncTask(AppCompatActivity activity) { this.activity = activity; OsmandSettings settings = ((OsmandApplication) activity.getApplication()).getSettings(); OsmEditingPlugin plugin = OsmandPlugin.getPlugin(OsmEditingPlugin.class); if (settings.OFFLINE_EDITION.get() || !settings.isInternetConnectionAvailable(true)) { openstreetmapUtil = new OpenstreetmapLocalUtil(plugin, activity); } else if (!settings.isInternetConnectionAvailable(true)) { openstreetmapUtil = new OpenstreetmapLocalUtil(plugin, activity); } else { openstreetmapUtil = new OpenstreetmapRemoteUtil(activity); } }
public static void installMapLayers( final Activity activity, final DialogInterface.OnClickListener onClickListener) { final OsmandSettings settings = ((OsmandApplication) activity.getApplication()).getSettings(); final Map<String, String> entriesMap = settings.getTileSourceEntries(); if (!settings.isInternetConnectionAvailable(true)) { Toast.makeText(activity, R.string.internet_not_available, Toast.LENGTH_LONG).show(); return; } final List<TileSourceTemplate> downloaded = TileSourceManager.downloadTileSourceTemplates(); if (downloaded == null || downloaded.isEmpty()) { Toast.makeText(activity, R.string.error_io_error, Toast.LENGTH_SHORT).show(); return; } Builder builder = new AlertDialog.Builder(activity); String[] names = new String[downloaded.size()]; for (int i = 0; i < names.length; i++) { names[i] = downloaded.get(i).getName(); } final boolean[] selected = new boolean[downloaded.size()]; builder.setMultiChoiceItems( names, selected, new DialogInterface.OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { selected[which] = isChecked; if (entriesMap.containsKey(downloaded.get(which).getName()) && isChecked) { Toast.makeText(activity, R.string.tile_source_already_installed, Toast.LENGTH_SHORT) .show(); } } }); builder.setNegativeButton(R.string.default_buttons_cancel, null); builder.setTitle(R.string.select_tile_source_to_install); builder.setPositiveButton( R.string.default_buttons_apply, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { List<TileSourceTemplate> toInstall = new ArrayList<TileSourceTemplate>(); for (int i = 0; i < selected.length; i++) { if (selected[i]) { toInstall.add(downloaded.get(i)); } } for (TileSourceTemplate ts : toInstall) { settings.installTileSource(ts); } if (onClickListener != null) { onClickListener.onClick(dialog, which); } } }); builder.show(); }
@Override public void onAttach(Activity activity) { super.onAttach(activity); OsmandSettings settings = getMyApplication().getSettings(); OsmEditingPlugin plugin = OsmandPlugin.getPlugin(OsmEditingPlugin.class); if (settings.OFFLINE_EDITION.get() || !settings.isInternetConnectionAvailable(true)) { mOpenstreetmapUtil = new OpenstreetmapLocalUtil(plugin, activity); } else if (!settings.isInternetConnectionAvailable(true)) { mOpenstreetmapUtil = new OpenstreetmapLocalUtil(plugin, activity); } else { mOpenstreetmapUtil = new OpenstreetmapRemoteUtil(activity); } node = (Node) getArguments().getSerializable(KEY_AMENITY_NODE); allTranslatedSubTypes = getMyApplication().getPoiTypes().getAllTranslatedNames(); Amenity amenity = (Amenity) getArguments().getSerializable(KEY_AMENITY); editPoiData = new EditPoiData(amenity, node, allTranslatedSubTypes); }
public OsmBugsUtil getOsmbugsUtil(OpenStreetNote bug) { OsmandSettings settings = ((OsmandApplication) activity.getApplication()).getSettings(); if ((bug != null && bug.isLocal()) || settings.OFFLINE_EDITION.get() || !settings.isInternetConnectionAvailable(true)) { return local; } else { return remote; } }