diff --git a/Map/GeoCoordinates.cpp b/Map/GeoCoordinates.cpp index 79ec1eee..1956b4a6 100644 --- a/Map/GeoCoordinates.cpp +++ b/Map/GeoCoordinates.cpp @@ -1,70 +1,75 @@ /* Copyright (C) 2018 Tobias Leupold This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License or (at your option) version 3 or any later version accepted by the membership of KDE e.V. (or its successor approved by the membership of KDE e.V.), which shall act as a proxy defined in Section 14 of version 3 of the license. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "GeoCoordinates.h" bool Map::GeoCoordinates::hasCoordinates() const { return m_hasCoordinates; } double Map::GeoCoordinates::lon() const { return m_lon; } double Map::GeoCoordinates::lat() const { return m_lat; } double Map::GeoCoordinates::alt() const { return m_alt; } bool Map::GeoCoordinates::hasAltitude() const { return m_hasAlt; } void Map::GeoCoordinates::setLatLon(const double lat, const double lon) { m_lat = lat; m_lon = lon; m_hasCoordinates = true; } void Map::GeoCoordinates::setAlt(const double alt) { m_alt = alt; m_hasAlt = true; } Map::GeoCoordinates::Pair Map::GeoCoordinates::makePair(const double lat1, const double lon1, const double lat2, const double lon2) { Map::GeoCoordinates coordinates1; coordinates1.setLatLon(lat1, lon1); Map::GeoCoordinates coordinates2; coordinates2.setLatLon(lat2, lon2); return Pair(coordinates1, coordinates2); } +Map::GeoCoordinates::operator QString() const +{ + return QString::fromLatin1( "(%1, %2)" ).arg( m_lon ).arg( m_lat ); +} + // vi:expandtab:tabstop=4 shiftwidth=4: diff --git a/Map/GeoCoordinates.h b/Map/GeoCoordinates.h index feb18a49..f8d97c29 100644 --- a/Map/GeoCoordinates.h +++ b/Map/GeoCoordinates.h @@ -1,59 +1,61 @@ /* Copyright (C) 2018 Tobias Leupold This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License or (at your option) version 3 or any later version accepted by the membership of KDE e.V. (or its successor approved by the membership of KDE e.V.), which shall act as a proxy defined in Section 14 of version 3 of the license. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #ifndef GEOCOORDINATES_H #define GEOCOORDINATES_H #include #include +#include namespace Map { class GeoCoordinates { public: bool hasCoordinates() const; double lon() const; double lat() const; double alt() const; bool hasAltitude() const; void setLatLon(const double lat, const double lon); void setAlt(const double alt); typedef QPair Pair; static Pair makePair(const double lat1, const double lon1, const double lat2, const double lon2); + operator QString() const; private: // Variables double m_lat; double m_lon; double m_alt; bool m_hasCoordinates; bool m_hasAlt; }; } Q_DECLARE_METATYPE(Map::GeoCoordinates::Pair) #endif // GEOCOORDINATES_H // vi:expandtab:tabstop=4 shiftwidth=4: