summaryrefslogtreecommitdiffstats
path: root/src/runtime/Qt3DSElementSystem.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/Qt3DSElementSystem.h')
-rw-r--r--src/runtime/Qt3DSElementSystem.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/runtime/Qt3DSElementSystem.h b/src/runtime/Qt3DSElementSystem.h
index 22cf66c..2632d9d 100644
--- a/src/runtime/Qt3DSElementSystem.h
+++ b/src/runtime/Qt3DSElementSystem.h
@@ -477,6 +477,26 @@ namespace runtime {
return !IsExplicitActive();
}
+ bool areAllParentsActive()
+ {
+ SElement *parent = GetParent();
+ if (parent) {
+ bool isActive = parent->GetActive();
+ if (!isActive)
+ isActive = parent->AboutToActivate();
+ if (Depth() > 2) {
+ if (isActive)
+ isActive = parent->areAllParentsActive();
+ } else {
+ return true;
+ }
+ return isActive;
+ } else {
+ return true;
+ }
+ return false;
+ }
+
bool IsAnyParentAboutToActivate()
{
SElement *parent = GetParent();