25 #include <QStringList>
31 : pFactoryManager(factoryManager)
33 pFactoryManager->registerFactory(
this);
37 pFactoryManager->unRegisterFactory(
this);
50 for (k = 0; k < pRegisteredFactories.
size(); ++k) {
57 <<
"KLFFactoryManager::findFactoryFor(object type="<<objType<<
"): No factory found!";
66 for (k = 0; k < pRegisteredFactories.
size(); ++k) {
67 objtypes << pRegisteredFactories[k]->supportedTypes();
74 if (pRegisteredFactories.
indexOf(factory) != -1) {
75 qWarning()<<
"KLFFactory<>::registerFactory(): Factory " << factory <<
" is already registered!";
78 pRegisteredFactories.
prepend(factory);
83 if (pRegisteredFactories.
indexOf(factory) == -1) {
84 qWarning()<<
"KLFFactory<>::unRegisterFactory(): Factory "<<factory<<
" is not registered!";
KLFFactoryBase(KLFFactoryManager *factoryManager)
contains(const QString &str, Qt::CaseSensitivity cs=Qt::CaseSensitive)
indexOf(const T &value, int from=0)
KLFFactoryBase * findFactoryFor(const QString &objType)
removeAll(const T &value)
virtual ~KLFFactoryBase()
virtual ~KLFFactoryManager()
QStringList allSupportedTypes()
Base class for factories.
virtual QStringList supportedTypes() const =0
A list of object types that this factory supports instantiating.
A base abstract factory manager class.