summaryrefslogtreecommitdiff
path: root/src/gui/guiScrollContainer.cpp
diff options
context:
space:
mode:
authorEvidenceB <49488517+EvidenceBKidscode@users.noreply.github.com>2020-08-23 22:50:14 +0200
committerGitHub <noreply@github.com>2020-08-23 22:50:14 +0200
commit287f3fb2e3317bb6bd6d8608f1aa051c601aeca4 (patch)
treeab8379bb9007e151a6b5ab1bb481e310e20a7ed0 /src/gui/guiScrollContainer.cpp
parent3c2890692bb4c292023a8260cf9ce70f82b2e780 (diff)
downloadminetest-287f3fb2e3317bb6bd6d8608f1aa051c601aeca4.tar.gz
minetest-287f3fb2e3317bb6bd6d8608f1aa051c601aeca4.tar.bz2
minetest-287f3fb2e3317bb6bd6d8608f1aa051c601aeca4.zip
Avoid drawing clipped out formspec elements (#10095)
Diffstat (limited to 'src/gui/guiScrollContainer.cpp')
-rw-r--r--src/gui/guiScrollContainer.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gui/guiScrollContainer.cpp b/src/gui/guiScrollContainer.cpp
index 88cdc7057..0fe4c41bd 100644
--- a/src/gui/guiScrollContainer.cpp
+++ b/src/gui/guiScrollContainer.cpp
@@ -56,6 +56,18 @@ bool GUIScrollContainer::OnEvent(const SEvent &event)
return IGUIElement::OnEvent(event);
}
+void GUIScrollContainer::draw()
+{
+ if (isVisible()) {
+ core::list<IGUIElement *>::Iterator it = Children.begin();
+ for (; it != Children.end(); ++it)
+ if ((*it)->isNotClipped() ||
+ AbsoluteClippingRect.isRectCollided(
+ (*it)->getAbsolutePosition()))
+ (*it)->draw();
+ }
+}
+
void GUIScrollContainer::updateScrolling()
{
s32 pos = m_scrollbar->getPos();