13 #ifndef BERRYIEXTENSIONELEMENT_H_
14 #define BERRYIEXTENSIONELEMENT_H_
98 virtual QObject* CreateExecutableExtension(
const QString& propertyName)
const = 0;
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.";
135 virtual QString GetAttribute(
const QString& name)
const = 0;
155 virtual QList<QString> GetAttributeNames()
const = 0;
178 virtual QList<IConfigurationElement::Pointer> GetChildren()
const = 0;
189 virtual QList<IConfigurationElement::Pointer> GetChildren(
const QString& name)
const = 0;
212 virtual QString GetName()
const = 0;
244 virtual QString GetValue()
const = 0;
263 virtual QString GetValue(
const QLocale& locale)
const = 0;
271 virtual QString GetNamespaceIdentifier()
const = 0;
287 virtual bool IsValid()
const = 0;