summaryrefslogtreecommitdiff
path: root/include/mbgl/map
diff options
context:
space:
mode:
authorMinh Nguyễn <mxn@1ec5.org>2016-01-15 08:23:10 -0800
committerMinh Nguyễn <mxn@1ec5.org>2016-01-18 16:54:57 -0800
commit143f8a78170065fc46afba1eaf987258e9c9f99b (patch)
tree854e6e55b5d08b4c524afb30c7f4c6ff2d8d3821 /include/mbgl/map
parentcb126eafe0e9b482162414d0fbbc0ae4d4f3cea9 (diff)
downloadqtlocation-mapboxgl-143f8a78170065fc46afba1eaf987258e9c9f99b.tar.gz
[core] Added padding option to CameraOptions
Moved EdgeInsets to geo.hpp so CameraOptions and Transform can refer to it. Added a padding option to CameraOptions that alters the frame of reference for the center option. Added optional padding parameters to LatLng getters and setters. Working towards #2600.
Diffstat (limited to 'include/mbgl/map')
-rw-r--r--include/mbgl/map/camera.hpp4
-rw-r--r--include/mbgl/map/map.hpp10
2 files changed, 6 insertions, 8 deletions
diff --git a/include/mbgl/map/camera.hpp b/include/mbgl/map/camera.hpp
index 80734b76fd..32ad8f019f 100644
--- a/include/mbgl/map/camera.hpp
+++ b/include/mbgl/map/camera.hpp
@@ -17,6 +17,10 @@ struct CameraOptions {
/** Coordinate at the center of the map. */
mapbox::util::optional<LatLng> center;
+ /** Padding around the interior of the view that affects the frame of
+ reference for `center`. */
+ mapbox::util::optional<EdgeInsets> padding;
+
/** Point of reference for `zoom` and `angle`, assuming an origin at the
top-left corner of the view. */
mapbox::util::optional<PrecisionPoint> anchor;
diff --git a/include/mbgl/map/map.hpp b/include/mbgl/map/map.hpp
index 3e52d57d19..3852bb7b6f 100644
--- a/include/mbgl/map/map.hpp
+++ b/include/mbgl/map/map.hpp
@@ -34,13 +34,6 @@ namespace util {
template <class T> class Thread;
} // namespace util
-struct EdgeInsets {
- double top = 0;
- double left = 0;
- double bottom = 0;
- double right = 0;
-};
-
class Map : private util::noncopyable {
friend class View;
@@ -106,8 +99,9 @@ public:
// Position
void moveBy(const PrecisionPoint&, const Duration& = Duration::zero());
void setLatLng(const LatLng&, const PrecisionPoint&, const Duration& = Duration::zero());
+ void setLatLng(const LatLng&, const EdgeInsets&, const Duration& = Duration::zero());
void setLatLng(const LatLng&, const Duration& = Duration::zero());
- LatLng getLatLng() const;
+ LatLng getLatLng(const EdgeInsets& = {}) const;
void resetPosition();
// Scale