aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/res/layout/main.xml5
-rw-r--r--main/res/values-de/strings.xml2
-rwxr-xr-xmain/res/values-sv/strings.xml21
-rw-r--r--main/res/values/strings.xml2
-rw-r--r--main/src/cgeo/geocaching/StaticMapsActivity.java42
-rw-r--r--main/src/cgeo/geocaching/StaticMapsProvider.java5
-rw-r--r--main/src/cgeo/geocaching/cgCache.java13
7 files changed, 76 insertions, 14 deletions
diff --git a/main/res/layout/main.xml b/main/res/layout/main.xml
index ef6856b..6fd54f1 100644
--- a/main/res/layout/main.xml
+++ b/main/res/layout/main.xml
@@ -48,12 +48,11 @@
android:layout_width="74dip"
android:layout_height="wrap_content"
android:layout_margin="4dip"
- android:orientation="vertical"
- android:onClick="cgeoFindNearest" >
+ android:orientation="vertical">
<View
android:id="@+id/nearest"
style="@style/icon_mainscreen"
- android:background="@drawable/main_nearby" />
+ android:background="@drawable/main_nearby_disabled" />
<TextView
style="@style/icon_mainscreen_text"
android:text="@string/caches_nearby_button" />
diff --git a/main/res/values-de/strings.xml b/main/res/values-de/strings.xml
index 79a94bc..aaa37a3 100644
--- a/main/res/values-de/strings.xml
+++ b/main/res/values-de/strings.xml
@@ -144,6 +144,7 @@
<string name="err_detail_no_spoiler">c:geo hat kein Hinweisbild für diesen Cache gefunden.</string>
<string name="err_detail_no_map_static">c:geo hat keine statische Karte für diesen Cache gefunden.</string>
<string name="err_detail_not_load_map_static">c:geo konnte die statische Karte nicht laden.</string>
+ <string name="err_detail_ask_store_map_static">c:geo konnte die statische Karte nicht laden. Jetzt speichern?</string>
<string name="err_detail_still_working">Arbeite noch an anderer Aufgabe.</string>
<string name="err_watchlist_still_managing">c:geo versucht noch immer deine Watchlist zu aktualisieren.</string>
<string name="err_watchlist_failed">Ändern der Watchlist nicht erfolgreich.</string>
@@ -222,6 +223,7 @@
<string name="info_log_type_changed">Logtyp wurde verändert!</string>
<string name="info_fieldnotes_exported_to">Field-Notes exportiert nach</string>
+ <string name="info_storing_static_maps">Versuche, statische Karten zu speichern</string>
<!-- location service -->
<string name="loc_last">Letzte Position</string>
diff --git a/main/res/values-sv/strings.xml b/main/res/values-sv/strings.xml
index 68754e3..3d7426f 100755
--- a/main/res/values-sv/strings.xml
+++ b/main/res/values-sv/strings.xml
@@ -8,7 +8,7 @@
<string name="detail">Detaljer</string>
<string name="search">Sök</string>
<string name="settings">Inställningar</string>
- <string name="helpers">Program att installera</string>
+ <string name="helpers">Bra program att installera</string>
<string name="about">Om c:geo</string>
<string name="helper">Vill du lära dig mer om <b>c:geo</b>?\nLäs manualen (på engelska).</string>
<string name="latitude">Latitud</string>
@@ -119,18 +119,18 @@
<string name="err_none">Ok</string>
<string name="err_start">Kommunikationen har inte påbörjats</string>
<string name="err_parse">Misslyckades att analysera inloggningssidan</string>
- <string name="err_server">Misslyckades att ansluta till Geocaching.com (servern eller anslutningen nere?)</string>
+ <string name="err_server">Misslyckades att ansluta till Geocaching.com. Hemsidan kan vara ur funktion eller så är det problem med din anslutningen till Internet.</string>
<string name="err_login">Inloggningsinformationen ej sparad</string>
<string name="err_login_failed">Tyvärr kan c:geo inte logga in.</string>
- <string name="err_login_failed_toast">Tyvärr kan c:geo inte logga in. c:geo kommer att köra i offline läge. Kontrollera dina inloggningsuppgifter i inställningarna och aktivera din internetanslutning.</string>
+ <string name="err_login_failed_toast">Tyvärr kan c:geo inte logga in. c:geo kommer att köra i offline läge med sparade cacher. Kontrollera dina inloggningsuppgifter och aktivera din internetanslutning.</string>
<string name="err_unknown">Okänt fel</string>
<string name="err_comm">Okänt kommunikationsfel</string>
<string name="err_missing_auth">Användarnamn och/eller lösenord saknas.</string>
<string name="err_wrong">Felaktiga inloggningsuppgifter</string>
- <string name="err_maintenance">Arbete pågår med servern Geocaching.com, försök igen senare. c:geo fungerar under tiden i offline läge.</string>
- <string name="err_license">användaren inte har bekräftat licensavtalet med Geocaching.com</string>
+ <string name="err_maintenance">Arbete pågår med servern Geocaching.com. c:geo fungerar under tiden i offline läge med sparade cacher.</string>
+ <string name="err_license">Du har inte bekräftat licensavtalet med Geocaching.com, så c:geo kan inte läsa in koordinater för cacherna.</string>
<string name="err_unpublished">Den sökta cachen är opubliserad.</string>
- <string name="err_premium_only">Cachen är enbart för premium medlemmar på Geocaching.com</string>
+ <string name="err_premium_only">Cachen är enbart för premium medlemmar på Geocaching.com.</string>
<string name="err_store">Tyvärr kan c:geo inte spara cachen.</string>
<string name="err_drop">Tyvärr kan c:geo inte ta bort cachen.</string>
<string name="err_detail_open">Tyvärr kan c:geo inte visa detaljer om geocachen.</string>
@@ -158,7 +158,6 @@
<string name="err_store_failed">Tyvärr kan c:geo inte spara geocachen.</string>
<string name="err_refresh_failed">Tyvärr kan c:geo inte uppdatera geocachen.</string>
<string name="err_dwld_details_failed">Tyvärr misslyckades c:geo att ladda detaljer.</string>
- <string name="err_dwld_details_failed_reason">Tyvärr misslyckades c:geo att ladda detaljer pga</string>
<string name="err_load_descr_failed">Tyvärr kan c:geo inte ladda beskrivningen.</string>
<string name="err_location_unknown">c:geo har inte koordinaterna för cachen.</string>
<string name="err_missing_device_name">Vänligen ange ett namn för din enhet innan registering.</string>
@@ -176,6 +175,7 @@
<string name="err_waypoint_add_failed">Tyvärr misslyckades c:geo att lägga till din punkt.</string>
<string name="err_waypoint_load_failed">Tyvärr misslyckades c:geo att ladda punkten.</string>
<string name="err_waypoint_delete_failed">Tyvärr kan c:geo inte ta bort punkten.</string>
+ <string name="err_waypoint_open_cache_failed">c:geo kan inte öppna beskrivningen av cachen.</string>
<string name="err_point_unknown_position">Tyvärr kan c:geo inte bestämma din position.</string>
<string name="err_point_no_position_given_title">Mer info krävs</string>
<string name="err_point_no_position_given">Ange minst latitud och longitud eller avstånd och riktning. Du kan också ange alla fyra.</string>
@@ -380,7 +380,8 @@
<string name="init_showwaypoints">Extra punkter på Live kartan</string>
<string name="init_showwaypoint_description">Gräns för antal cacher där extra punkter (parkering eller tillagd lösning) börjar visas i Live kartan. Bör vara mellan 5 och 50.</string>
<string name="init_disabled">Dölj inaktiva cacher</string>
- <string name="init_offline">Spara kartor för användning offline</string>
+ <string name="init_offline">Spara kartor för cacher för användning offline</string>
+ <string name="init_offline_wp">Spara kartor för extra punkter för användning offline</string>
<string name="init_save_log_img">Spara bilder från loggar</string>
<string name="init_units">Använd amerikanska enheter för avstånd</string>
<string name="init_nav">Använd Google Navigering</string>
@@ -476,6 +477,7 @@
<string name="cache_personal_note">Personlig anteckning</string>
<string name="cache_description">Beskrivning</string>
<string name="cache_description_long">Lång beskrivning</string>
+ <string name="cache_description_table_note">Varning från c:geo! Beskrivningen innehåller HTML-tabeller som eventuellt kan behöva öppnas i en webbläsare för att visas på önskat sätt.</string>
<string name="cache_watchlist">Watchlist</string>
<string name="cache_watchlist_on">Den här cachen finns i din watchlist.</string>
<string name="cache_watchlist_not_on">Den här cachen finns inte i din watchlist.</string>
@@ -624,6 +626,7 @@
<string name="waypoint_done">Klar</string>
<string name="waypoint_duplicate">Duplicera</string>
<string name="waypoint_copy_of">Kopia av</string>
+ <string name="waypoint_menu_open_cache">Visa cache</string>
<string name="search_history">Historik</string>
<string name="search_history_empty">Inga tidigare målpunkter</string>
<string name="search_remove_destination">Punkten borttagen</string>
@@ -725,6 +728,8 @@
<!-- helpers -->
<string name="helper_manual_title">Manual</string>
<string name="helper_manual_description">En utförlig manual för c:geo som beskriver alla möjligheter och ger en hel del tips. Manualen finns enbart på engelska.</string>
+ <string name="helper_calendar_title">c:geo kalendertillägg</string>
+ <string name="helper_calendar_description">Gör det möjligt att exportera event till din kalender.</string>
<string name="helper_locus_title">Locus</string>
<string name="helper_locus_description">Ett enkelt program för att visa Online kartor men som också medger nedladdning av raster kartor för användning i Offline läge. Stödjer även inspelning av väg (track recording), POI hantering och många andra användbara funktioner.</string>
<string name="helper_gpsstatus_title">GPS Status</string>
diff --git a/main/res/values/strings.xml b/main/res/values/strings.xml
index 888374e..e319880 100644
--- a/main/res/values/strings.xml
+++ b/main/res/values/strings.xml
@@ -144,6 +144,7 @@
<string name="err_detail_no_spoiler">c:geo found no spoiler images for this cache.</string>
<string name="err_detail_no_map_static">c:geo found no static maps for this cache.</string>
<string name="err_detail_not_load_map_static">c:geo failed to load static maps.</string>
+ <string name="err_detail_ask_store_map_static">c:geo failed to load static maps. Store now?</string>
<string name="err_detail_still_working">Still working on another task.</string>
<string name="err_watchlist_still_managing">Still managing your watchlist.</string>
<string name="err_watchlist_failed">Changing your watchlist failed.</string>
@@ -221,6 +222,7 @@
<string name="info_log_type_changed">Type of log has been changed!</string>
<string name="info_fieldnotes_exported_to">Field Notes exported to</string>
+ <string name="info_storing_static_maps">Trying to store static maps</string>
<!-- location service -->
<string name="loc_last">Last known</string>
diff --git a/main/src/cgeo/geocaching/StaticMapsActivity.java b/main/src/cgeo/geocaching/StaticMapsActivity.java
index 8155154..cae01b2 100644
--- a/main/src/cgeo/geocaching/StaticMapsActivity.java
+++ b/main/src/cgeo/geocaching/StaticMapsActivity.java
@@ -4,7 +4,9 @@ import cgeo.geocaching.activity.AbstractActivity;
import org.apache.commons.collections.CollectionUtils;
+import android.app.AlertDialog;
import android.app.ProgressDialog;
+import android.content.DialogInterface;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
@@ -37,9 +39,14 @@ public class StaticMapsActivity extends AbstractActivity {
waitDialog.dismiss();
}
- showToast(res.getString(R.string.err_detail_not_load_map_static));
-
- finish();
+ if ((waypoint_id != null && Settings.isStoreOfflineWpMaps()) || (waypoint_id == null && Settings.isStoreOfflineMaps())) {
+ AlertDialog.Builder builder = new AlertDialog.Builder(StaticMapsActivity.this);
+ builder.setMessage(R.string.err_detail_ask_store_map_static).setPositiveButton(android.R.string.yes, dialogClickListener)
+ .setNegativeButton(android.R.string.no, dialogClickListener).show();
+ } else {
+ showToast(res.getString(R.string.err_detail_not_load_map_static));
+ finish();
+ }
return;
} else {
if (waitDialog != null) {
@@ -72,6 +79,35 @@ public class StaticMapsActivity extends AbstractActivity {
}
};
+ DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ dialog.dismiss();
+ switch (which) {
+ case DialogInterface.BUTTON_POSITIVE:
+ cgCache cache = app.getCacheByGeocode(geocode);
+ if (waypoint_id == null) {
+ StaticMapsProvider.storeCacheStaticMap(cache, StaticMapsActivity.this);
+ } else {
+ cgWaypoint waypoint = cache.getWaypointById(waypoint_id);
+ if (waypoint != null) {
+ StaticMapsProvider.storeWaypointStaticMap(cache, StaticMapsActivity.this, waypoint);
+ } else {
+ showToast(res.getString(R.string.err_detail_not_load_map_static));
+ break;
+ }
+ }
+ showToast(res.getString(R.string.info_storing_static_maps));
+ break;
+
+ case DialogInterface.BUTTON_NEGATIVE:
+ showToast(res.getString(R.string.err_detail_not_load_map_static));
+ break;
+ }
+ finish();
+ }
+ };
+
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
diff --git a/main/src/cgeo/geocaching/StaticMapsProvider.java b/main/src/cgeo/geocaching/StaticMapsProvider.java
index 123dbce..3c4aa60 100644
--- a/main/src/cgeo/geocaching/StaticMapsProvider.java
+++ b/main/src/cgeo/geocaching/StaticMapsProvider.java
@@ -85,6 +85,11 @@ public class StaticMapsProvider {
downloadMaps(cache, wpMarkerUrl, "wp" + waypoint.getId() + "_", wpLatlonMap, edge, "");
}
+ public static void storeCacheStaticMap(cgCache cache, Activity activity) {
+ int edge = StaticMapsProvider.guessMinDisplaySide(activity);
+ storeCacheStaticMap(cache, edge);
+ }
+
private static void storeCacheStaticMap(cgCache cache, int edge) {
final String latlonMap = cache.getCoords().format(Format.LAT_LON_DECDEGREE_COMMA);
final StringBuilder waypoints = new StringBuilder();
diff --git a/main/src/cgeo/geocaching/cgCache.java b/main/src/cgeo/geocaching/cgCache.java
index 6032791..edabc0c 100644
--- a/main/src/cgeo/geocaching/cgCache.java
+++ b/main/src/cgeo/geocaching/cgCache.java
@@ -1154,6 +1154,19 @@ public class cgCache implements ICache {
return waypoints.get(index);
}
+ /**
+ * @param index
+ * @return waypoint or <code>null</code>
+ */
+ public cgWaypoint getWaypointById(int id) {
+ for (cgWaypoint waypoint : waypoints) {
+ if (waypoint.getId() == id) {
+ return waypoint;
+ }
+ }
+ return null;
+ }
+
public void parseWaypointsFromNote() {
try {
if (StringUtils.isBlank(getPersonalNote())) {