13 #ifndef BERRYIEXTENSIONELEMENT_H_ 14 #define BERRYIEXTENSIONELEMENT_H_ 99 virtual QObject* CreateExecutableExtension(
const QString& propertyName)
const = 0;
104 C*
interface = qobject_cast<C*>(this->CreateExecutableExtension(propertyName));
105 if (interface ==
nullptr)
108 <<
" does not seem to implement the required interface \"" 109 << qobject_interface_iid<C*>() <<
"\", or you forgot the Q_INTERFACES macro.";
136 virtual QString
GetAttribute(
const QString& name)
const = 0;
156 virtual QList<QString> GetAttributeNames()
const = 0;
180 virtual QList<IConfigurationElement::Pointer> GetChildren()
const = 0;
192 virtual QList<IConfigurationElement::Pointer> GetChildren(
const QString& name)
const = 0;
215 virtual QString
GetName()
const = 0;
247 virtual QString GetValue()
const = 0;
267 virtual QString GetValue(
const QLocale& locale)
const = 0;
275 virtual QString GetNamespaceIdentifier()
const = 0;
291 virtual bool IsValid()
const = 0;
Light weight base class for most BlueBerry classes.
C * CreateExecutableExtension(const QString &propertyName) const
Implements transparent reference counting.
#define org_blueberry_core_runtime_EXPORT
#define berryObjectMacro(...)
#define GetAttribute(name, type)
static std::string GetName(std::string fileName, std::string suffix)