diff options
Diffstat (limited to 'abstractmetalang.cpp')
-rw-r--r-- | abstractmetalang.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/abstractmetalang.cpp b/abstractmetalang.cpp index 8d25a2319..068256528 100644 --- a/abstractmetalang.cpp +++ b/abstractmetalang.cpp @@ -1373,11 +1373,6 @@ const AbstractMetaFunction* AbstractMetaClass::findFunction(const QString& funct return 0; } -/* Returns true if this class has one or more functions that are - protected. If a class has protected members we need to generate a - shell class with public accessors to the protected functions, so - they can be called from the native functions. -*/ bool AbstractMetaClass::hasProtectedFunctions() const { foreach (AbstractMetaFunction *func, m_functions) { @@ -1387,6 +1382,20 @@ bool AbstractMetaClass::hasProtectedFunctions() const return false; } +bool AbstractMetaClass::hasProtectedFields() const +{ + foreach (const AbstractMetaField *field, fields()) { + if (field->isProtected()) + return true; + } + return false; +} + +bool AbstractMetaClass::hasProtectedMembers() const +{ + return hasProtectedFields() || hasProtectedFunctions(); +} + bool AbstractMetaClass::generateShellClass() const { return m_forceShellClass || |