kpilot/lib
plugin.h00001 #ifndef _KPILOT_PLUGIN_H
00002 #define _KPILOT_PLUGIN_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037 #include <qstringlist.h>
00038
00039 #include "syncAction.h"
00040
00041 class PilotDatabase;
00042 class KLibrary;
00043
00044 namespace Pilot
00045 {
00046 static const unsigned int PLUGIN_API = 20061118;
00047 }
00048
00066 class KDE_EXPORT ConduitConfigBase : public QObject
00067 {
00068 Q_OBJECT
00069 public:
00070 ConduitConfigBase(QWidget *parent=0L, const char *n=0L);
00071 virtual ~ConduitConfigBase();
00072
00079 virtual bool isModified() const { return fModified; } ;
00080 QWidget *widget() const { return fWidget; } ;
00081
00082 public:
00089 virtual void commit() = 0;
00090 virtual void load() = 0;
00100 virtual bool maybeSave();
00101 protected:
00106 virtual QString maybeSaveText() const;
00107
00108 public:
00109 QString conduitName() const { return fConduitName; } ;
00110
00111 protected slots:
00112 void modified();
00113 signals:
00114 void changed(bool);
00115
00116 protected:
00117 bool fModified;
00118 QWidget *fWidget;
00119 QString fConduitName;
00120
00121 void unmodified() { fModified=false; } ;
00122 } ;
00123
00124
00125
00126
00137 class KDE_EXPORT ConduitAction : public SyncAction
00138 {
00139 Q_OBJECT
00140 public:
00141 ConduitAction(KPilotLink *,
00142 const char *name=0L,
00143 const QStringList &args = QStringList());
00144 virtual ~ConduitAction();
00145
00146 QString conduitName() const { return fConduitName; } ;
00147
00148 protected:
00150 const SyncMode &syncMode() const { return fSyncDirection; };
00152 ConflictResolution getConflictResolution() const
00153 { return fConflictResolution; };
00154
00159 bool changeSync(SyncMode::Mode m);
00160
00161
00162
00163
00164
00165
00166 void setConflictResolution(ConflictResolution res)
00167 {
00168 if (SyncAction::eUseGlobalSetting != res)
00169 fConflictResolution=res;
00170 }
00171
00177 bool isFullSync() const
00178 {
00179 return fFirstSync || fSyncDirection.isFullSync() ;
00180 }
00181
00189 bool isFirstSync() const {
00190 return fFirstSync || fSyncDirection.isFirstSync() ;
00191 } ;
00192 void setFirstSync(bool first) { fFirstSync=first; } ;
00193
00194 PilotDatabase *fDatabase;
00195 PilotDatabase *fLocalDatabase;
00196
00209 bool openDatabases(const QString &dbName, bool*retrieved=0L);
00210
00211 private:
00212 SyncMode fSyncDirection;
00213 ConflictResolution fConflictResolution;
00214
00215
00216 protected:
00217 QString fConduitName;
00218 private:
00219 bool fFirstSync;
00220 } ;
00221
00223 namespace PluginUtility
00224 {
00227 QString findArgument(const QStringList &a, const QString argname);
00228
00237 bool isRunning(const QCString &appName);
00238
00243 unsigned long pluginVersion(const KLibrary *);
00244 QString pluginVersionString(const KLibrary *);
00245 } ;
00246
00311 #endif
|