diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 (patch) | |
tree | 67208f7c145782a7e90b123b982ca78d88cc2c87 /kpilot/conduits/docconduit/doc-factory.cc | |
download | tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.tar.gz tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kpilot/conduits/docconduit/doc-factory.cc')
-rw-r--r-- | kpilot/conduits/docconduit/doc-factory.cc | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/kpilot/conduits/docconduit/doc-factory.cc b/kpilot/conduits/docconduit/doc-factory.cc new file mode 100644 index 000000000..3d2a16b11 --- /dev/null +++ b/kpilot/conduits/docconduit/doc-factory.cc @@ -0,0 +1,116 @@ +/* KPilot +** +** Copyright (C) 2002 by Reinhold Kainhofer +** +** This file defines the factory for the doc-conduit plugin. +*/ + +/* +** This program is free software; you can redistribute it and/or modify +** it under the terms of the GNU General Public License as published by +** the Free Software Foundation; either version 2 of the License, or +** (at your option) any later version. +** +** This program is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU General Public License for more details. +** +** You should have received a copy of the GNU General Public License +** along with this program in a file called COPYING; if not, write to +** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +** MA 02110-1301, USA. +*/ + +/* +** Bug reports and questions can be sent to kde-pim@kde.org +*/ + +#include "options.h" +#include "doc-factory.moc" +#include "doc-factory.h" + +#include <kinstance.h> +#include <kaboutdata.h> +#include <kpilotlink.h> + +#include "doc-conduit.h" +#include "doc-setup.h" + + +extern "C" { + void *init_conduit_doc() { + return new DOCConduitFactory; + } +} + + + +// A number of static variables +KAboutData * DOCConduitFactory::fAbout = 0L; + +const char *DOCConduitFactory::dbDOCtype = "TEXt"; +const char *DOCConduitFactory::dbDOCcreator = "REAd"; + + + +DOCConduitFactory::DOCConduitFactory(QObject * p, const char *n): +KLibFactory(p, n) +{ + FUNCTIONSETUP; + fInstance = new KInstance("docconduit"); + fAbout =new KAboutData("docconduit", + I18N_NOOP("Palm DOC Conduit for KPilot"), KPILOT_VERSION, + I18N_NOOP("Configures the DOC Conduit for KPilot"), + KAboutData::License_GPL, "(C) 2002, Reinhold Kainhofer"); + + fAbout->addAuthor("Reinhold Kainhofer", + I18N_NOOP("Maintainer"), "reinhold@kainhofer.com", + "http://reinhold.kainhofer.com"); +} + +DOCConduitFactory::~DOCConduitFactory() +{ + FUNCTIONSETUP; + KPILOT_DELETE(fInstance); + KPILOT_DELETE(fAbout); +} + + +/* virtual */ QObject * DOCConduitFactory::createObject(QObject * p, + const char *n, const char *c, const QStringList & a) +{ + FUNCTIONSETUP; + +#ifdef DEBUG + DEBUGKPILOT << fname <<": Creating object of class " <<c <<endl; +#endif + if (qstrcmp(c, "ConduitConfigBase") == 0) + { + QWidget *w = dynamic_cast<QWidget *>(p); + if (w) + { + return new DOCWidgetConfig(w,n); + } + else + { + WARNINGKPILOT << "Couldn't cast parent to widget." << endl; + return 0L; + } + } + if (qstrcmp(c, "SyncAction") == 0) + { + KPilotLink * d = dynamic_cast < KPilotLink * >(p); + if (d) + { + return new DOCConduit(d, n, a); + } + else + { + WARNINGKPILOT << "Couldn't cast parent to KPilotLink" <<endl; + return 0L; + } + } + return 0L; +} + |