kpilot Library API Documentation

JPilotProxy-factory.h

00001 #ifndef _KPILOT_JPilotProxy_FACTORY_H
00002 #define _KPILOT_JPilotProxy_FACTORY_H
00003 /* JPilotProxy-factory.h                       KPilot
00004 **
00005 ** Copyright (C) 2002 by Reinhold Kainhofer
00006 **
00007 ** This file defines the factory for the JPilotProxy-conduit plugin.
00008 ** It also defines the class for the behavior of the setup dialog.
00009 */
00010 
00011 /*
00012 ** This program is free software; you can redistribute it and/or modify
00013 ** it under the terms of the GNU General Public License as published by
00014 ** the Free Software Foundation; either version 2 of the License, or
00015 ** (at your option) any later version.
00016 **
00017 ** This program is distributed in the hope that it will be useful,
00018 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
00019 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00020 ** GNU General Public License for more details.
00021 **
00022 ** You should have received a copy of the GNU General Public License
00023 ** along with this program in a file called COPYING; if not, write to
00024 ** the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
00025 ** MA 02111-1307, USA.
00026 */
00027 
00028 /*
00029 ** Bug reports and questions can be sent to kde-pim@kde.org
00030 */
00031 
00032 #include <klibloader.h>
00033 #include <kinstance.h>
00034 #include <kaboutdata.h>
00035 #include "kpilotlink.h"
00036 #include "plugin.h"
00037 #include "JPilotProxy-setup.h"
00038 #include "JPilotProxy-conduit.h"
00039 #include "jplugin.h"
00040 
00041 #ifdef KDE2
00042 #include <qlist.h>
00043 #define PluginList_t QList<JPlugin>
00044 #define PluginIterator_t QListIterator<JPlugin>
00045 #else
00046 #include <qptrlist.h>
00047 #define PluginList_t QList<JPlugin>
00048 #define PluginIterator_t QPtrListIterator<JPlugin>
00049 #endif
00050 
00051 
00052 class JPilotProxyConduitFactory : public KLibFactory {
00053 Q_OBJECT
00054 public:
00055     JPilotProxyConduitFactory(QObject * = 0L,const char * = 0L);
00056     virtual ~JPilotProxyConduitFactory();
00057 
00058     static KAboutData *about() { return fAbout; } ;
00059 
00060     virtual QObject*createSetupWidget(QWidget*w, const char*n, const QStringList &l) {return new JPilotProxyWidgetSetup(w,n,l);};
00061     virtual QObject*createConduit(KPilotDeviceLink*w, const char*n=0L, const QStringList &l=QStringList()) { return new JPilotProxyConduit(w,n,l);};
00062     static void readSettings();
00063     static JPlugin*addPlugin(QString path, bool on);
00064     static int removePlugin(QString path);
00065     static int addPluginPath(QString path, KConfig*fC=NULL);
00066     static int scanPluginPathes();
00067     static int loadPlugins(KConfig*fC);
00068 protected:
00069     virtual QObject* createObject( QObject* parent = 0,
00070         const char* name = 0,
00071         const char* classname = "QObject",
00072         const QStringList &args = QStringList() );
00073 private:
00074     KInstance *fInstance;
00075 public:
00076     KConfig *fConfig;
00077     static KAboutData *fAbout;
00078     static PluginList_t *plugins;
00079     static QString settingsGroup;
00080     static QString PluginPathes;
00081     static QString LoadedPlugins;
00082     static bool pluginsloaded;
00083     KLibrary*apilib;
00084 };
00085 
00086 extern "C"
00087 {
00088 
00089 void *init_libJPilotProxy();
00090 
00091 };
00092 
00093 
00094 #endif
KDE Logo
This file is part of the documentation for kpilot Library Version 3.2.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat May 1 11:36:47 2004 by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2003