13 #ifndef BERRYIEXTENSIONELEMENT_H_
14 #define BERRYIEXTENSIONELEMENT_H_
103 C*
interface = qobject_cast<C*>(this->CreateExecutableExtension(propertyName));
104 if (interface ==
nullptr)
106 BERRY_WARN <<
"The QObject subclass " << this->GetAttribute(propertyName).toStdString()
107 <<
" does not seem to implement the required interface \""
108 << qobject_interface_iid<C*>() <<
"\", or you forgot the Q_INTERFACES macro.";
178 virtual QList<IConfigurationElement::Pointer>
GetChildren()
const = 0;
189 virtual QList<IConfigurationElement::Pointer>
GetChildren(
const QString& name)
const = 0;
263 virtual QString
GetValue(
const QLocale& locale)
const = 0;
Light weight base class for most BlueBerry classes.
Implements transparent reference counting.
#define org_blueberry_core_runtime_EXPORT
virtual SmartPointer< IContributor > GetContributor() const =0
berryObjectMacro(berry::IConfigurationElement)
virtual QString GetName() const =0
virtual QString GetValue() const =0
virtual QString GetNamespaceIdentifier() const =0
virtual QList< IConfigurationElement::Pointer > GetChildren() const =0
C * CreateExecutableExtension(const QString &propertyName) const
virtual QObject * CreateExecutableExtension(const QString &propertyName) const =0
virtual SmartPointer< IExtension > GetDeclaringExtension() const =0
virtual QString GetValue(const QLocale &locale) const =0
virtual QString GetAttribute(const QString &name) const =0
virtual QList< IConfigurationElement::Pointer > GetChildren(const QString &name) const =0
virtual SmartPointer< Object > GetParent() const =0
virtual QList< QString > GetAttributeNames() const =0
virtual bool IsValid() const =0
~IConfigurationElement() override