summaryrefslogtreecommitdiff
path: root/src/mbgl/tile/tile.hpp
diff options
context:
space:
mode:
authorChris Loer <chris.loer@gmail.com>2017-11-14 15:30:27 -0800
committerChris Loer <chris.loer@mapbox.com>2017-11-17 10:05:15 -0800
commit25cfb5863c9ac3705d2bcf4086c237608264e3ae (patch)
treee142caa7789b0f23e2633ef5f920a869f6e14d91 /src/mbgl/tile/tile.hpp
parentd69c1c4806038fec756672d80cef7691c5280c6a (diff)
downloadqtlocation-mapboxgl-25cfb5863c9ac3705d2bcf4086c237608264e3ae.tar.gz
[core] Symbol cross-fading.
Hold onto tiles after they've been removed from the render tree long enough to run a fade animation on their symbols.
Diffstat (limited to 'src/mbgl/tile/tile.hpp')
-rw-r--r--src/mbgl/tile/tile.hpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/mbgl/tile/tile.hpp b/src/mbgl/tile/tile.hpp
index b4b50b93ee..1186b74111 100644
--- a/src/mbgl/tile/tile.hpp
+++ b/src/mbgl/tile/tile.hpp
@@ -95,6 +95,20 @@ public:
return loaded && !pending;
}
+ // "holdForFade" is used to keep tiles in the render tree after they're no longer
+ // ideal tiles in order to allow symbols to fade out
+ virtual bool holdForFade() const {
+ return false;
+ }
+ // Set whenever this tile is used as an ideal tile
+ virtual void markRenderedIdeal() {}
+ // Set when the tile is removed from the ideal render set but may still be held for fading
+ virtual void markRenderedPreviously() {}
+ // Placement operation performed while this tile is fading
+ // We hold onto a tile for two placements: fading starts with the first placement
+ // and will have time to finish by the second placement.
+ virtual void performedFadePlacement() {}
+
virtual void resetCrossTileIDs() {};
void dumpDebugLogs() const;