diff options
author | r.kuznetsov <r.kuznetsov@corp.mail.ru> | 2015-11-09 17:24:33 +0300 |
---|---|---|
committer | r.kuznetsov <r.kuznetsov@corp.mail.ru> | 2015-11-30 16:28:00 +0300 |
commit | c8d99b9f25c443576f9c396e8c25c93257105b0b (patch) | |
tree | 16dd9a55f7dbd9d93df2cf636cd3903cf2f1cf6b /drape/overlay_tree.hpp | |
parent | 74fa677a14fa4bb5b2d633066f219587f2b66cc9 (diff) |
Fixed overlay tree
Diffstat (limited to 'drape/overlay_tree.hpp')
-rw-r--r-- | drape/overlay_tree.hpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/drape/overlay_tree.hpp b/drape/overlay_tree.hpp index 3c35908d0e..ada959607c 100644 --- a/drape/overlay_tree.hpp +++ b/drape/overlay_tree.hpp @@ -7,6 +7,8 @@ #include "base/buffer_vector.hpp" +#include "std/vector.hpp" + namespace dp { @@ -44,9 +46,11 @@ struct OverlayTraits class OverlayTree : public m4::Tree<detail::OverlayInfo, detail::OverlayTraits> { - typedef m4::Tree<detail::OverlayInfo, detail::OverlayTraits> BaseT; + using BaseT = m4::Tree<detail::OverlayInfo, detail::OverlayTraits>; public: + OverlayTree(); + void Frame(); bool IsNeedUpdate() const; void ForceUpdate(); @@ -58,11 +62,15 @@ public: using TSelectResult = buffer_vector<ref_ptr<OverlayHandle>, 8>; void Select(m2::RectD const & rect, TSelectResult & result) const; + using THandle = pair<ref_ptr<OverlayHandle>, bool>; + using THandles = vector<THandle>; + private: ScreenBase const & GetModelView() const { return m_traits.m_modelView; } + void InsertHandle(ref_ptr<OverlayHandle> handle, bool isTransparent); -private: - int m_frameCounter = -1; + int m_frameCounter; + THandles m_handles; }; } // namespace dp |