summaryrefslogtreecommitdiffstats
path: root/kbabel/kbabeldict/modules/dbsearchengine/dbse_factory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kbabel/kbabeldict/modules/dbsearchengine/dbse_factory.cpp')
-rw-r--r--kbabel/kbabeldict/modules/dbsearchengine/dbse_factory.cpp82
1 files changed, 82 insertions, 0 deletions
diff --git a/kbabel/kbabeldict/modules/dbsearchengine/dbse_factory.cpp b/kbabel/kbabeldict/modules/dbsearchengine/dbse_factory.cpp
new file mode 100644
index 00000000..37332167
--- /dev/null
+++ b/kbabel/kbabeldict/modules/dbsearchengine/dbse_factory.cpp
@@ -0,0 +1,82 @@
+
+#include <klocale.h>
+#include <kinstance.h>
+#include <kaboutdata.h>
+#include <kdebug.h>
+
+#include "dbse_factory.h"
+#include "KDBSearchEngine.h"
+
+
+extern "C"
+{
+ KDE_EXPORT void *init_kbabeldict_dbsearchengine()
+ {
+ return new DbSeFactory;
+ }
+}
+
+
+KInstance *DbSeFactory::s_instance = 0;
+KAboutData *DbSeFactory::s_about = 0;
+
+
+DbSeFactory::DbSeFactory( QObject *parent, const char *name)
+ : KLibFactory(parent,name)
+{
+}
+
+DbSeFactory::~DbSeFactory()
+{
+ if(s_instance)
+ {
+ delete s_instance;
+ s_instance=0;
+ }
+
+ if(s_about)
+ {
+ delete s_about;
+ s_about=0;
+ }
+}
+
+
+QObject *DbSeFactory::createObject( QObject *parent, const char *name,
+ const char *classname, const QStringList &)
+{
+ if(QCString(classname) != "SearchEngine")
+ {
+ kdError() << "not a SearchEngine requested" << endl;
+ return 0;
+ }
+
+ KDBSearchEngine *se = new KDBSearchEngine(parent,name);
+
+ emit objectCreated(se);
+ return se;
+}
+
+
+KInstance *DbSeFactory::instance()
+{
+ if(!s_instance)
+ {
+
+ s_about = new KAboutData( "kdbsearchengine",
+ I18N_NOOP("Translation Database")
+ , "0.3" ,
+I18N_NOOP("A fast translation search engine based on databases")
+ , KAboutData::License_GPL
+ , I18N_NOOP("Copyright 2000-2001 by Andrea Rizzi")
+ ,0,0, "rizzi@kde.org");
+
+ s_about->addAuthor("Andrea Rizzi",0,"rizzi@kde.org");
+
+ s_instance = new KInstance(s_about);
+ }
+
+ return s_instance;
+}
+
+#include "dbse_factory.moc"