kwallet.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _KWALLET_H
00023 #define _KWALLET_H
00024
00025 #include <qstring.h>
00026 #include <qstringlist.h>
00027 #include <qobject.h>
00028 #include <dcopobject.h>
00029
00030 class DCOPRef;
00031
00032 namespace KWallet {
00033
00044 class Wallet : public QObject, public DCOPObject {
00045 K_DCOP
00046 Q_OBJECT
00047 protected:
00054 Wallet(int handle, const QString& name);
00059 Wallet(const Wallet&);
00060
00061 public:
00062 enum EntryType { Unknown=0, Password, Stream, Map, Unused=0xffff };
00063
00067 virtual ~Wallet();
00068
00074 static QStringList walletList();
00075
00081 static bool isEnabled();
00082
00088 static bool isOpen(const QString& name);
00089
00099 static int closeWallet(const QString& name, bool force);
00100
00107 static int deleteWallet(const QString& name);
00108
00115 static bool disconnectApplication(const QString& wallet, const QCString& app);
00116
00117 enum OpenType { Synchronous=0, Asynchronous, Path, OpenTypeUnused=0xff };
00118
00135 static Wallet* openWallet(const QString& name, WId w = 0, OpenType ot = Synchronous);
00136
00143 static QStringList users(const QString& wallet);
00144
00148 static const QString LocalWallet();
00149
00153 static const QString NetworkWallet();
00154
00161 static const QString PasswordFolder();
00162
00169 static const QString FormDataFolder();
00170
00177 static void changePassword(const QString& name, WId w = 0);
00178
00185 virtual int sync();
00186
00192 virtual int lockWallet();
00193
00197 virtual const QString& walletName() const;
00198
00204 virtual bool isOpen() const;
00205
00211 virtual void requestChangePassword(WId w = 0);
00212
00217 virtual QStringList folderList();
00218
00224 virtual bool hasFolder(const QString& f);
00225
00233 virtual bool setFolder(const QString& f);
00234
00240 virtual bool removeFolder(const QString& f);
00241
00247 virtual bool createFolder(const QString& f);
00248
00255 virtual const QString& currentFolder() const;
00256
00262 virtual QStringList entryList();
00263
00270 virtual int renameEntry(const QString& oldName, const QString& newName);
00271
00281 virtual int readEntry(const QString& key, QByteArray& value);
00282
00291 virtual int readMap(const QString& key, QMap<QString,QString>& value);
00292
00301 virtual int readPassword(const QString& key, QString& value);
00302
00313 virtual int writeEntry(const QString& key, const QByteArray& value, EntryType entryType);
00314
00322 virtual int writeEntry(const QString& key, const QByteArray& value);
00323
00330 virtual int writeMap(const QString& key, const QMap<QString,QString>& value);
00331
00338 virtual int writePassword(const QString& key, const QString& value);
00339
00345 virtual bool hasEntry(const QString& key);
00346
00352 virtual int removeEntry(const QString& key);
00353
00360 virtual EntryType entryType(const QString& key);
00361
00372 static bool folderDoesNotExist(const QString& wallet, const QString& folder);
00373
00385 static bool keyDoesNotExist(const QString& wallet, const QString& folder,
00386 const QString& key);
00387
00388 signals:
00392 void walletClosed();
00393
00398 void folderUpdated(const QString& folder);
00399
00403 void folderListUpdated();
00404
00409 void folderRemoved(const QString& folder);
00410
00415 void walletOpened(bool success);
00416
00417 private:
00418 k_dcop:
00423 ASYNC slotWalletClosed(int handle);
00424
00429 ASYNC slotFolderUpdated(const QString& wallet, const QString& folder);
00430
00435 ASYNC slotFolderListUpdated(const QString& wallet);
00436
00441 ASYNC slotApplicationDisconnected(const QString& wallet, const QCString& application);
00442
00447 ASYNC walletOpenResult(int rc);
00448
00449 private slots:
00454 void slotAppUnregistered(const QCString&);
00455
00456 private:
00457 class WalletPrivate;
00458 WalletPrivate *d;
00459 QString _name;
00460 QString _folder;
00461 int _handle;
00462 DCOPRef *_dcopRef;
00463
00464 protected:
00468 virtual void virtual_hook(int id, void *data);
00469 };
00470
00471 }
00472
00473 #endif
00474
This file is part of the documentation for kwallet Library Version 3.3.0.