Fix exception
This commit is contained in:
parent
0d9e9d74a5
commit
d8928258ce
4 changed files with 11 additions and 2 deletions
Binary file not shown.
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 3 KiB |
|
@ -563,7 +563,12 @@ public class OsmandSettings {
|
||||||
"default_application_mode", ApplicationMode.DEFAULT, ApplicationMode.values()).makeGlobal();
|
"default_application_mode", ApplicationMode.DEFAULT, ApplicationMode.values()).makeGlobal();
|
||||||
|
|
||||||
public final OsmandPreference<DrivingRegion> DRIVING_REGION = new EnumIntPreference<DrivingRegion>(
|
public final OsmandPreference<DrivingRegion> DRIVING_REGION = new EnumIntPreference<DrivingRegion>(
|
||||||
"default_driving_region", DrivingRegion.EUROPE_ASIA, DrivingRegion.values()).makeGlobal().cache();
|
"default_driving_region", DrivingRegion.EUROPE_ASIA, DrivingRegion.values()) {
|
||||||
|
protected boolean setValue(Object prefs, DrivingRegion val) {
|
||||||
|
((CommonPreference<MetricsConstants>)METRIC_SYSTEM).cachedValue = null;
|
||||||
|
return super.setValue(prefs, val);
|
||||||
|
};
|
||||||
|
}.makeGlobal().cache();
|
||||||
|
|
||||||
// this value string is synchronized with settings_pref.xml preference name
|
// this value string is synchronized with settings_pref.xml preference name
|
||||||
// cache of metrics constants as they are used very often
|
// cache of metrics constants as they are used very often
|
||||||
|
|
|
@ -622,6 +622,7 @@ public class RouteInfoWidgetsFactory {
|
||||||
ptext.setTextAlign(Align.CENTER);
|
ptext.setTextAlign(Align.CENTER);
|
||||||
|
|
||||||
final BaseMapWidget alarm = new BaseMapWidget(ma) {
|
final BaseMapWidget alarm = new BaseMapWidget(ma) {
|
||||||
|
private int textDy = 0;
|
||||||
private String text = "";
|
private String text = "";
|
||||||
private Bitmap img = null;
|
private Bitmap img = null;
|
||||||
private int imgId;
|
private int imgId;
|
||||||
|
@ -646,11 +647,13 @@ public class RouteInfoWidgetsFactory {
|
||||||
}
|
}
|
||||||
if(alarm != null) {
|
if(alarm != null) {
|
||||||
int locimgId = 0;
|
int locimgId = 0;
|
||||||
|
int textDy = 0;
|
||||||
String text = null;
|
String text = null;
|
||||||
if(alarm.getType() == AlarmInfo.SPEED_LIMIT) {
|
if(alarm.getType() == AlarmInfo.SPEED_LIMIT) {
|
||||||
text = alarm.getIntValue() +"";
|
text = alarm.getIntValue() +"";
|
||||||
if(settings.DRIVING_REGION.get() == DrivingRegion.US_CANADA){
|
if(settings.DRIVING_REGION.get() == DrivingRegion.US_CANADA){
|
||||||
locimgId = R.drawable.warnings_speed_limit_us;
|
locimgId = R.drawable.warnings_speed_limit_us;
|
||||||
|
textDy = (int) (-12 * scaleCoefficient);
|
||||||
}
|
}
|
||||||
} else if(alarm.getType() == AlarmInfo.SPEED_CAMERA) {
|
} else if(alarm.getType() == AlarmInfo.SPEED_CAMERA) {
|
||||||
locimgId = R.drawable.warnings_speed_camera;
|
locimgId = R.drawable.warnings_speed_camera;
|
||||||
|
@ -683,6 +686,7 @@ public class RouteInfoWidgetsFactory {
|
||||||
}
|
}
|
||||||
if(text != null && !text.equals(this.text)) {
|
if(text != null && !text.equals(this.text)) {
|
||||||
this.text = text;
|
this.text = text;
|
||||||
|
this.textDy = textDy;
|
||||||
invalidate();
|
invalidate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -702,7 +706,7 @@ public class RouteInfoWidgetsFactory {
|
||||||
canvas.drawBitmap(img, 0, 0, paintCircle);
|
canvas.drawBitmap(img, 0, 0, paintCircle);
|
||||||
}
|
}
|
||||||
if(text.length() > 0) {
|
if(text.length() > 0) {
|
||||||
canvas.drawText(text, getWidth() / 2, getHeight() / 2 + ptext.descent() + 3 * scaleCoefficient, ptext);
|
canvas.drawText(text, getWidth() / 2 , getHeight() / 2 + ptext.descent() + 3 * scaleCoefficient - textDy, ptext);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue