Fix selecting favourites points from layer
This commit is contained in:
parent
3556205c00
commit
92ce2d89dc
1 changed files with 39 additions and 11 deletions
|
@ -126,21 +126,49 @@ public class FavouritePoint implements Serializable, LocationPoint {
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) return true;
|
if (this == o) return true;
|
||||||
|
|
||||||
if (!(o instanceof FavouritePoint)) return false;
|
if (o == null) return false;
|
||||||
|
|
||||||
FavouritePoint fp = (FavouritePoint)o;
|
if (getClass() != o.getClass()) return false;
|
||||||
|
|
||||||
return (this.latitude == fp.latitude)
|
FavouritePoint fp = (FavouritePoint) o;
|
||||||
&& (this.longitude == fp.longitude)
|
|
||||||
&& (this.name.equals(fp.name));
|
if (name == null) {
|
||||||
|
if (fp.name != null)
|
||||||
|
return false;
|
||||||
|
} else if (!name.equals(fp.name))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (category == null) {
|
||||||
|
if (fp.category != null)
|
||||||
|
return false;
|
||||||
|
} else if (!category.equals(fp.category))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (description == null) {
|
||||||
|
if (fp.description != null)
|
||||||
|
return false;
|
||||||
|
} else if (!description.equals(fp.description))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (originObjectName == null) {
|
||||||
|
if (fp.originObjectName != null)
|
||||||
|
return false;
|
||||||
|
} else if (!originObjectName.equals(fp.originObjectName))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return (this.latitude == fp.latitude) && (this.longitude == fp.longitude);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
int hash = (int)latitude*1000 + (int)longitude*1000;
|
final int prime = 31;
|
||||||
hash += (name != null) ? name.hashCode() : 0;
|
int result = 1;
|
||||||
return hash;
|
result = prime * result + (int) Math.floor(latitude * 10000);
|
||||||
|
result = prime * result + (int) Math.floor(longitude * 10000);
|
||||||
|
result = prime * result + ((name == null) ? 0 : name.hashCode());
|
||||||
|
result = prime * result + ((category == null) ? 0 : category.hashCode());
|
||||||
|
result = prime * result + ((description == null) ? 0 : description.hashCode());
|
||||||
|
result = prime * result + ((originObjectName == null) ? 0 : originObjectName.hashCode());
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in a new issue