Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'drape/render_bucket.cpp')
-rw-r--r--drape/render_bucket.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/drape/render_bucket.cpp b/drape/render_bucket.cpp
index dcc91aa1e3..ea80a47562 100644
--- a/drape/render_bucket.cpp
+++ b/drape/render_bucket.cpp
@@ -1,5 +1,9 @@
#include "render_bucket.hpp"
+#include "overlay_handle.hpp"
+#include "vertex_array_buffer.hpp"
+#include "overlay_tree.hpp"
+
#include "../base/stl_add.hpp"
#include "../std/bind.hpp"
@@ -24,17 +28,18 @@ void RenderBucket::AddOverlayHandle(TransferPointer<OverlayHandle> handle)
m_overlay.push_back(MasterPointer<OverlayHandle>(handle));
}
-void RenderBucket::CollectOverlayHandles()
+void RenderBucket::CollectOverlayHandles(RefPointer<OverlayTree> tree)
{
-
+ for_each(m_overlay.begin(), m_overlay.end(), bind(&OverlayTree::Add, tree.GetRaw(),
+ bind(&MasterPointer<OverlayHandle>::GetRefPointer, _1)));
}
namespace
{
void AccumulateIndexes(MasterPointer<OverlayHandle> handle, RefPointer<IndexBufferMutator> mutator)
{
- handle->SetIsVisible(true);
- handle->GetElementIndexes(mutator);
+ if (handle->IsVisible())
+ handle->GetElementIndexes(mutator);
}
}