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!";
87 pRegisteredFactories.removeAll(factory);
KLFFactoryBase(KLFFactoryManager *factoryManager)
contains(const QString &str, Qt::CaseSensitivity cs=Qt::CaseSensitive)
KLFFactoryBase * findFactoryFor(const QString &objType)
virtual QStringList supportedTypes() const =0
A list of object types that this factory supports instantiating.
virtual ~KLFFactoryBase()
virtual ~KLFFactoryManager()
QStringList allSupportedTypes()
Base class for factories.
A base abstract factory manager class.