use of net.osmand.plus.helpers.SearchHistoryHelper.HistoryEntry in project Osmand by osmandapp.
the class DashRecentsFragment method setupRecents.
public void setupRecents() {
View mainView = getView();
SearchHistoryHelper helper = SearchHistoryHelper.getInstance((OsmandApplication) getActivity().getApplicationContext());
points = helper.getHistoryEntries();
arrows.clear();
if (points.size() == 0) {
(mainView.findViewById(R.id.main_fav)).setVisibility(View.GONE);
return;
} else {
(mainView.findViewById(R.id.main_fav)).setVisibility(View.VISIBLE);
}
LinearLayout recents = (LinearLayout) mainView.findViewById(R.id.items);
recents.removeAllViews();
DashboardOnMap.handleNumberOfRows(points, getMyApplication().getSettings(), ROW_NUMBER_TAG);
LatLon loc = getDefaultLocation();
List<DashLocationView> distances = new ArrayList<DashLocationFragment.DashLocationView>();
for (final HistoryEntry historyEntry : points) {
LayoutInflater inflater = getActivity().getLayoutInflater();
View view = inflater.inflate(R.layout.search_history_list_item, null, false);
SearchHistoryFragment.udpateHistoryItem(historyEntry, view, loc, getActivity(), getMyApplication());
view.findViewById(R.id.divider).setVisibility(View.VISIBLE);
view.findViewById(R.id.navigate_to).setVisibility(View.VISIBLE);
((ImageView) view.findViewById(R.id.navigate_to)).setImageDrawable(getMyApplication().getIconsCache().getThemedIcon(R.drawable.ic_action_gdirections_dark));
view.findViewById(R.id.navigate_to).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
DirectionsDialogs.directionsToDialogAndLaunchMap(getActivity(), historyEntry.getLat(), historyEntry.getLon(), historyEntry.getName());
}
});
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
getMyApplication().getSettings().setMapLocationToShow(historyEntry.getLat(), historyEntry.getLon(), 15, historyEntry.getName(), true, // $NON-NLS-1$
historyEntry);
MapActivity.launchMapActivityMoveToTop(getActivity());
}
});
DashLocationView dv = new DashLocationView((ImageView) view.findViewById(R.id.direction), (TextView) view.findViewById(R.id.distance), new LatLon(historyEntry.getLat(), historyEntry.getLon()));
distances.add(dv);
recents.addView(view);
}
this.distances = distances;
}
use of net.osmand.plus.helpers.SearchHistoryHelper.HistoryEntry in project Osmand by osmandapp.
the class QuickSearchDialogFragment method shareHistory.
private void shareHistory(final List<HistoryEntry> historyEntries) {
if (!historyEntries.isEmpty()) {
final AsyncTask<Void, Void, GPXFile> exportTask = new AsyncTask<Void, Void, GPXFile>() {
@Override
protected GPXFile doInBackground(Void... params) {
GPXFile gpx = new GPXFile();
for (HistoryEntry h : historyEntries) {
WptPt pt = new WptPt();
pt.lat = h.getLat();
pt.lon = h.getLon();
pt.name = h.getName().getName();
boolean hasTypeInDescription = !Algorithms.isEmpty(h.getName().getTypeName());
if (hasTypeInDescription) {
pt.desc = h.getName().getTypeName();
}
gpx.addPoint(pt);
}
return gpx;
}
@Override
protected void onPreExecute() {
showProgressBar();
}
@Override
protected void onPostExecute(GPXFile gpxFile) {
hideProgressBar();
File dir = new File(getActivity().getCacheDir(), "share");
if (!dir.exists()) {
dir.mkdir();
}
File dst = new File(dir, "History.gpx");
GPXUtilities.writeGpxFile(dst, gpxFile, app);
final Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "History.gpx:\n\n\n" + GPXUtilities.asString(gpxFile, app));
sendIntent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.share_history_subject));
sendIntent.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(getActivity(), getActivity().getPackageName() + ".fileprovider", dst));
sendIntent.setType("text/plain");
startActivity(sendIntent);
}
};
exportTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}
}
use of net.osmand.plus.helpers.SearchHistoryHelper.HistoryEntry in project Osmand by osmandapp.
the class QuickSearchDialogFragment method onCreateView.
@Override
@SuppressLint("PrivateResource, ValidFragment")
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final MapActivity mapActivity = getMapActivity();
final View view = inflater.inflate(R.layout.search_dialog_fragment, container, false);
toolbarController = new QuickSearchToolbarController();
toolbarController.setOnBackButtonClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mapActivity.showQuickSearch(ShowQuickSearchMode.CURRENT, false);
}
});
toolbarController.setOnTitleClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mapActivity.showQuickSearch(ShowQuickSearchMode.CURRENT, false);
}
});
toolbarController.setOnCloseButtonClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mapActivity.closeQuickSearch();
}
});
Bundle arguments = getArguments();
if (savedInstanceState != null) {
searchType = QuickSearchType.valueOf(savedInstanceState.getString(QUICK_SEARCH_TYPE_KEY, QuickSearchType.REGULAR.name()));
searchQuery = savedInstanceState.getString(QUICK_SEARCH_QUERY_KEY);
double lat = savedInstanceState.getDouble(QUICK_SEARCH_LAT_KEY, Double.NaN);
double lon = savedInstanceState.getDouble(QUICK_SEARCH_LON_KEY, Double.NaN);
if (!Double.isNaN(lat) && !Double.isNaN(lon)) {
centerLatLon = new LatLon(lat, lon);
}
interruptedSearch = savedInstanceState.getBoolean(QUICK_SEARCH_INTERRUPTED_SEARCH_KEY, false);
hidden = savedInstanceState.getBoolean(QUICK_SEARCH_HIDDEN_KEY, false);
toolbarTitle = savedInstanceState.getString(QUICK_SEARCH_TOOLBAR_TITLE_KEY);
toolbarVisible = savedInstanceState.getBoolean(QUICK_SEARCH_TOOLBAR_VISIBLE_KEY, false);
fabVisible = savedInstanceState.getBoolean(QUICK_SEARCH_FAB_VISIBLE_KEY, false);
}
if (searchQuery == null && arguments != null) {
searchType = QuickSearchType.valueOf(arguments.getString(QUICK_SEARCH_TYPE_KEY, QuickSearchType.REGULAR.name()));
searchQuery = arguments.getString(QUICK_SEARCH_QUERY_KEY);
runSearchFirstTime = arguments.getBoolean(QUICK_SEARCH_RUN_SEARCH_FIRST_TIME_KEY, false);
phraseDefined = arguments.getBoolean(QUICK_SEARCH_PHRASE_DEFINED_KEY, false);
double lat = arguments.getDouble(QUICK_SEARCH_LAT_KEY, Double.NaN);
double lon = arguments.getDouble(QUICK_SEARCH_LON_KEY, Double.NaN);
if (!Double.isNaN(lat) && !Double.isNaN(lon)) {
centerLatLon = new LatLon(lat, lon);
}
newSearch = true;
}
if (searchQuery == null)
searchQuery = "";
QuickSearchTab showSearchTab = QuickSearchTab.HISTORY;
if (arguments != null) {
showSearchTab = QuickSearchTab.valueOf(arguments.getString(QUICK_SEARCH_SHOW_TAB_KEY, QuickSearchTab.HISTORY.name()));
}
if (showSearchTab == QuickSearchTab.ADDRESS) {
addressSearch = true;
}
tabToolbarView = view.findViewById(R.id.tab_toolbar_layout);
tabsView = view.findViewById(R.id.tabs_view);
searchView = view.findViewById(R.id.search_view);
buttonToolbarView = view.findViewById(R.id.button_toolbar_layout);
buttonToolbarImage = (ImageView) view.findViewById(R.id.buttonToolbarImage);
buttonToolbarImage.setImageDrawable(app.getIconsCache().getThemedIcon(R.drawable.ic_action_marker_dark));
buttonToolbarFilter = (ImageButton) view.findViewById(R.id.filterButton);
buttonToolbarFilter.setImageDrawable(app.getIconsCache().getThemedIcon(R.drawable.ic_action_filter));
buttonToolbarFilter.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SearchPhrase searchPhrase = searchUICore.getPhrase();
if (searchPhrase.isLastWord(POI_TYPE)) {
String filterId = null;
String filterByName = searchPhrase.getUnknownSearchPhrase().trim();
Object object = searchPhrase.getLastSelectedWord().getResult().object;
if (object instanceof PoiUIFilter) {
PoiUIFilter model = (PoiUIFilter) object;
if (!Algorithms.isEmpty(model.getSavedFilterByName())) {
model.setFilterByName(model.getSavedFilterByName());
}
filterId = model.getFilterId();
} else if (object instanceof AbstractPoiType) {
AbstractPoiType abstractPoiType = (AbstractPoiType) object;
PoiUIFilter custom = app.getPoiFilters().getFilterById(PoiUIFilter.STD_PREFIX + abstractPoiType.getKeyName());
if (custom != null) {
custom.setFilterByName(null);
custom.clearFilter();
custom.updateTypesToAccept(abstractPoiType);
filterId = custom.getFilterId();
}
}
if (filterId != null) {
QuickSearchPoiFilterFragment.showDialog(QuickSearchDialogFragment.this, filterByName, filterId);
}
}
}
});
buttonToolbarText = (TextView) view.findViewById(R.id.buttonToolbarTitle);
view.findViewById(R.id.buttonToolbar).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SearchPhrase searchPhrase = searchUICore.getPhrase();
if (foundPartialLocation) {
QuickSearchCoordinatesFragment.showDialog(QuickSearchDialogFragment.this, searchPhrase.getUnknownSearchWord());
} else if (searchPhrase.isNoSelectedType() || searchPhrase.isLastWord(POI_TYPE)) {
PoiUIFilter filter;
if (searchPhrase.isNoSelectedType()) {
if (isOnlineSearch() && !Algorithms.isEmpty(searchPhrase.getUnknownSearchWord())) {
app.getPoiFilters().resetNominatimFilters();
filter = app.getPoiFilters().getNominatimPOIFilter();
filter.setFilterByName(searchPhrase.getUnknownSearchWord());
filter.clearCurrentResults();
} else {
filter = app.getPoiFilters().getSearchByNamePOIFilter();
if (!Algorithms.isEmpty(searchPhrase.getUnknownSearchWord())) {
filter.setFilterByName(searchPhrase.getUnknownSearchWord());
filter.clearCurrentResults();
}
}
} else if (searchPhrase.getLastSelectedWord().getResult().object instanceof AbstractPoiType) {
if (searchPhrase.isNoSelectedType()) {
filter = new PoiUIFilter(null, app, "");
} else {
AbstractPoiType abstractPoiType = (AbstractPoiType) searchPhrase.getLastSelectedWord().getResult().object;
filter = new PoiUIFilter(abstractPoiType, app, "");
}
if (!Algorithms.isEmpty(searchPhrase.getUnknownSearchWord())) {
filter.setFilterByName(searchPhrase.getUnknownSearchWord());
}
} else {
filter = (PoiUIFilter) searchPhrase.getLastSelectedWord().getResult().object;
}
app.getPoiFilters().clearSelectedPoiFilters();
app.getPoiFilters().addSelectedPoiFilter(filter);
mapActivity.getContextMenu().closeActiveToolbar();
showToolbar();
getMapActivity().updateStatusBarColor();
getMapActivity().refreshMap();
hide();
} else {
SearchWord word = searchPhrase.getLastSelectedWord();
if (word != null) {
if ((searchType == QuickSearchType.START_POINT || searchType == QuickSearchType.DESTINATION || searchType == QuickSearchType.INTERMEDIATE) && word.getLocation() != null) {
if (mainSearchFragment != null) {
mainSearchFragment.showResult(word.getResult());
}
} else if (word.getLocation() != null) {
SearchResult searchResult = word.getResult();
String name = QuickSearchListItem.getName(app, searchResult);
String typeName = QuickSearchListItem.getTypeName(app, searchResult);
PointDescription pointDescription = new PointDescription(PointDescription.POINT_TYPE_ADDRESS, typeName, name);
app.getSettings().setMapLocationToShow(searchResult.location.getLatitude(), searchResult.location.getLongitude(), searchResult.preferredZoom, pointDescription, true, searchResult.object);
hideToolbar();
MapActivity.launchMapActivityMoveToTop(getActivity());
reloadHistory();
hide();
} else if (word.getType() == ObjectType.FAVORITE_GROUP) {
FavouritesDbHelper.FavoriteGroup group = (FavouritesDbHelper.FavoriteGroup) word.getResult().object;
if (group.points.size() > 1) {
double left = 0, right = 0;
double top = 0, bottom = 0;
for (FavouritePoint p : group.points) {
if (left == 0) {
left = p.getLongitude();
right = p.getLongitude();
top = p.getLatitude();
bottom = p.getLatitude();
} else {
left = Math.min(left, p.getLongitude());
right = Math.max(right, p.getLongitude());
top = Math.max(top, p.getLatitude());
bottom = Math.min(bottom, p.getLatitude());
}
}
getMapActivity().getMapView().fitRectToMap(left, right, top, bottom, 0, 0, 0);
hideToolbar();
MapActivity.launchMapActivityMoveToTop(getActivity());
hide();
} else if (group.points.size() == 1) {
FavouritePoint p = group.points.get(0);
app.getSettings().setMapLocationToShow(p.getLatitude(), p.getLongitude(), word.getResult().preferredZoom);
hideToolbar();
MapActivity.launchMapActivityMoveToTop(getActivity());
hide();
}
}
}
}
}
});
toolbar = (Toolbar) view.findViewById(R.id.toolbar);
if (!app.getSettings().isLightContent()) {
toolbar.setBackgroundColor(ContextCompat.getColor(mapActivity, R.color.actionbar_dark_color));
}
toolbar.setNavigationIcon(app.getIconsCache().getThemedIcon(R.drawable.ic_arrow_back));
toolbar.setNavigationContentDescription(R.string.access_shared_string_navigate_up);
toolbar.setNavigationOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (!processBackAction()) {
dismiss();
}
}
});
toolbarEdit = (Toolbar) view.findViewById(R.id.toolbar_edit);
toolbarEdit.setNavigationIcon(app.getIconsCache().getIcon(R.drawable.ic_action_remove_dark));
toolbarEdit.setNavigationContentDescription(R.string.shared_string_cancel);
toolbarEdit.setNavigationOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
enableSelectionMode(false, -1);
}
});
titleEdit = (TextView) view.findViewById(R.id.titleEdit);
view.findViewById(R.id.shareButton).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
List<HistoryEntry> historyEntries = new ArrayList<HistoryEntry>();
List<QuickSearchListItem> selectedItems = historySearchFragment.getListAdapter().getSelectedItems();
for (QuickSearchListItem searchListItem : selectedItems) {
HistoryEntry historyEntry = (HistoryEntry) searchListItem.getSearchResult().object;
historyEntries.add(historyEntry);
}
if (historyEntries.size() > 0) {
shareHistory(historyEntries);
enableSelectionMode(false, -1);
}
}
});
view.findViewById(R.id.deleteButton).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
DeleteDialogFragment deleteDialog = new DeleteDialogFragment();
deleteDialog.setSelectedItems(historySearchFragment.getListAdapter().getSelectedItems());
deleteDialog.show(getChildFragmentManager(), "DeleteHistoryConfirmationFragment");
}
});
viewPager = (LockableViewPager) view.findViewById(R.id.pager);
viewPager.setOffscreenPageLimit(2);
pagerAdapter = new SearchFragmentPagerAdapter(getChildFragmentManager(), getResources());
viewPager.setAdapter(pagerAdapter);
switch(showSearchTab) {
case HISTORY:
viewPager.setCurrentItem(0);
break;
case CATEGORIES:
viewPager.setCurrentItem(1);
break;
case ADDRESS:
viewPager.setCurrentItem(2);
break;
}
tabLayout = (TabLayout) view.findViewById(R.id.tab_layout);
tabLayout.setupWithViewPager(viewPager);
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
hideKeyboard();
addressSearch = position == 2;
updateClearButtonAndHint();
if (addressSearch && !citiesLoaded) {
reloadCities();
} else {
restoreSearch();
}
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
searchEditText = (EditText) view.findViewById(R.id.searchEditText);
searchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
searchQuery += " ";
AndroidUtils.hideSoftKeyboard(getActivity(), searchEditText);
runSearch();
return true;
}
return false;
}
});
searchEditText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
String newQueryText = s.toString();
updateClearButtonAndHint();
updateClearButtonVisibility(true);
boolean textEmpty = newQueryText.length() == 0;
updateTabbarVisibility(textEmpty && !isOnlineSearch());
if (textEmpty) {
if (addressSearch) {
startAddressSearch();
}
if (poiFilterApplied) {
poiFilterApplied = false;
reloadCategories();
if (fabVisible) {
fabVisible = false;
updateFab();
}
}
}
if (!searchQuery.equalsIgnoreCase(newQueryText)) {
searchQuery = newQueryText;
if (Algorithms.isEmpty(searchQuery)) {
cancelSearch();
setResultCollection(null);
searchUICore.resetPhrase();
mainSearchFragment.getAdapter().clear();
} else {
runSearch();
}
} else if (runSearchFirstTime) {
runSearchFirstTime = false;
runSearch();
}
}
});
progressBar = (ProgressBar) view.findViewById(R.id.searchProgressBar);
clearButton = (ImageButton) view.findViewById(R.id.clearButton);
clearButton.setImageDrawable(app.getIconsCache().getThemedIcon(R.drawable.ic_action_remove_dark));
clearButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (searchEditText.getText().length() > 0) {
String newText = searchUICore.getPhrase().getTextWithoutLastWord();
searchEditText.setText(newText);
searchEditText.setSelection(newText.length());
} else if (useMapCenter && location != null) {
useMapCenter = false;
centerLatLon = null;
updateUseMapCenterUI();
LatLon centerLatLon = new LatLon(location.getLatitude(), location.getLongitude());
SearchSettings ss = searchUICore.getSearchSettings().setOriginalLocation(new LatLon(centerLatLon.getLatitude(), centerLatLon.getLongitude()));
searchUICore.updateSettings(ss);
updateClearButtonAndHint();
updateClearButtonVisibility(true);
startLocationUpdate();
}
updateToolbarButton();
}
});
fab = view.findViewById(R.id.fab);
fab.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
saveCustomFilter();
}
});
updateFab();
setupSearch(mapActivity);
return view;
}
use of net.osmand.plus.helpers.SearchHistoryHelper.HistoryEntry in project Osmand by osmandapp.
the class QuickSearchListItem method getTypeName.
public static String getTypeName(OsmandApplication app, SearchResult searchResult) {
switch(searchResult.objectType) {
case CITY:
City city = (City) searchResult.object;
return getCityTypeStr(app, city.getType());
case POSTCODE:
return app.getString(R.string.postcode);
case VILLAGE:
city = (City) searchResult.object;
if (!Algorithms.isEmpty(searchResult.localeRelatedObjectName)) {
if (searchResult.distRelatedObjectName > 0) {
return getCityTypeStr(app, city.getType()) + " • " + OsmAndFormatter.getFormattedDistance((float) searchResult.distRelatedObjectName, app) + " " + app.getString(R.string.shared_string_from) + " " + searchResult.localeRelatedObjectName;
} else {
return getCityTypeStr(app, city.getType()) + ", " + searchResult.localeRelatedObjectName;
}
} else {
return getCityTypeStr(app, city.getType());
}
case STREET:
StringBuilder streetBuilder = new StringBuilder();
if (searchResult.localeName.endsWith(")")) {
int i = searchResult.localeName.indexOf('(');
if (i > 0) {
streetBuilder.append(searchResult.localeName.substring(i + 1, searchResult.localeName.length() - 1));
}
}
if (!Algorithms.isEmpty(searchResult.localeRelatedObjectName)) {
if (streetBuilder.length() > 0) {
streetBuilder.append(", ");
}
streetBuilder.append(searchResult.localeRelatedObjectName);
}
return streetBuilder.toString();
case HOUSE:
if (searchResult.relatedObject != null) {
Street relatedStreet = (Street) searchResult.relatedObject;
if (relatedStreet.getCity() != null) {
return searchResult.localeRelatedObjectName + ", " + relatedStreet.getCity().getName(searchResult.requiredSearchPhrase.getSettings().getLang(), true);
} else {
return searchResult.localeRelatedObjectName;
}
}
return "";
case STREET_INTERSECTION:
Street street = (Street) searchResult.object;
if (street.getCity() != null) {
return street.getCity().getName(searchResult.requiredSearchPhrase.getSettings().getLang(), true);
}
return "";
case POI_TYPE:
String res = "";
if (searchResult.object instanceof AbstractPoiType) {
AbstractPoiType abstractPoiType = (AbstractPoiType) searchResult.object;
if (abstractPoiType instanceof PoiCategory) {
res = "";
} else if (abstractPoiType instanceof PoiFilter) {
PoiFilter poiFilter = (PoiFilter) abstractPoiType;
res = poiFilter.getPoiCategory() != null ? poiFilter.getPoiCategory().getTranslation() : "";
} else if (abstractPoiType instanceof PoiType) {
PoiType poiType = (PoiType) abstractPoiType;
res = poiType.getParentType() != null ? poiType.getParentType().getTranslation() : null;
if (res == null) {
res = poiType.getCategory() != null ? poiType.getCategory().getTranslation() : null;
}
if (res == null) {
res = "";
}
} else {
res = "";
}
} else if (searchResult.object instanceof CustomSearchPoiFilter) {
res = ((CustomSearchPoiFilter) searchResult.object).getName();
}
return res;
case POI:
Amenity amenity = (Amenity) searchResult.object;
PoiCategory pc = amenity.getType();
PoiType pt = pc.getPoiTypeByKeyName(amenity.getSubType());
String typeStr = amenity.getSubType();
if (pt != null) {
typeStr = pt.getTranslation();
} else if (typeStr != null) {
typeStr = Algorithms.capitalizeFirstLetterAndLowercase(typeStr.replace('_', ' '));
}
return typeStr;
case LOCATION:
LatLon latLon = searchResult.location;
if (latLon != null && searchResult.localeRelatedObjectName == null) {
String locationCountry = app.getRegions().getCountryName(latLon);
searchResult.localeRelatedObjectName = locationCountry == null ? "" : locationCountry;
}
return searchResult.localeRelatedObjectName;
case FAVORITE:
FavouritePoint fav = (FavouritePoint) searchResult.object;
return fav.getCategory().length() == 0 ? app.getString(R.string.shared_string_favorites) : fav.getCategory();
case FAVORITE_GROUP:
return app.getString(R.string.shared_string_my_favorites);
case REGION:
BinaryMapIndexReader binaryMapIndexReader = (BinaryMapIndexReader) searchResult.object;
System.out.println(binaryMapIndexReader.getFile().getAbsolutePath() + " " + binaryMapIndexReader.getCountryName());
break;
case RECENT_OBJ:
HistoryEntry entry = (HistoryEntry) searchResult.object;
boolean hasTypeInDescription = !Algorithms.isEmpty(entry.getName().getTypeName());
if (hasTypeInDescription) {
return entry.getName().getTypeName();
} else {
return "";
}
case WPT:
StringBuilder sb = new StringBuilder();
GPXFile gpx = (GPXFile) searchResult.relatedObject;
if (!Algorithms.isEmpty(searchResult.localeRelatedObjectName)) {
sb.append(searchResult.localeRelatedObjectName);
}
if (gpx != null && !Algorithms.isEmpty(gpx.path)) {
if (sb.length() > 0) {
sb.append(", ");
}
sb.append(new File(gpx.path).getName());
}
return sb.toString();
case UNKNOWN_NAME_FILTER:
break;
}
return searchResult.objectType.name();
}
use of net.osmand.plus.helpers.SearchHistoryHelper.HistoryEntry in project Osmand by osmandapp.
the class SearchHistoryFragment method onListItemClick.
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
HistoryEntry model = ((HistoryAdapter) getListAdapter()).getItem(position);
selectModel(model);
}
Aggregations