Blokkal
an Extendable KDE Blogging Client
SourceForge.net Logo

blokkalwalletmanager.h

00001 /***************************************************************************
00002  *   Copyright (C) 2006 by Martin Müller                                   *
00003  *   orvio@orvio.de                                                        *
00004  *                                                                         *
00005  *   This program is free software; you can redistribute it and/or modify  *
00006  *   it under the terms of the GNU General Public License as published by  *
00007  *   the Free Software Foundation; either version 2 of the License, or     *
00008  *   (at your option) any later version.                                   *
00009  *                                                                         *
00010  *   This program is distributed in the hope that it will be useful,       *
00011  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00012  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00013  *   GNU General Public License for more details.                          *
00014  *                                                                         *
00015  *   You should have received a copy of the GNU General Public License     *
00016  *   along with this program; if not, write to the                         *
00017  *   Free Software Foundation, Inc.,                                       *
00018  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00019  ***************************************************************************/
00020 #ifndef BLOKKALWALLETMANAGER_H
00021 #define BLOKKALWALLETMANAGER_H
00022 
00023 #include <kwindowsystem.h>
00024 
00025 #include <QObject>
00026 
00027 #include "blokkal_export.h"
00028 
00029 namespace KWallet {
00030 class Wallet;
00031 }
00032 
00033 namespace Blokkal {
00034 class WalletManagerPrivate;
00044 class BLOKKAL_EXPORT WalletManager : public QObject
00045 {
00046 friend class WalletManagerPrivate;
00047 Q_OBJECT
00048 public:
00055         static Blokkal::WalletManager * self( void );
00056 
00062          void openWallet( QObject * receiver, const char * slot );
00063 
00064 private Q_SLOTS:
00065         void slotWalletOpened( void );
00066         void retryOpen( void );
00067         
00068 private:
00069         WalletManager( void );
00070         ~WalletManager( void );
00071 };
00072 
00080 class BLOKKAL_EXPORT WalletManagerSignal : public QObject {
00081 Q_OBJECT
00082 public:
00083         friend class WalletManager;
00084 Q_SIGNALS:
00089         void walletOpened( KWallet::Wallet * wallet );
00090 };
00091 
00099 class BLOKKAL_EXPORT PasswordDeleter : public QObject {
00100 Q_OBJECT
00101 public:
00109         PasswordDeleter( const QString & accountId );
00110         virtual ~PasswordDeleter( void );
00111 
00112 private Q_SLOTS:
00113         void slotWalletOpened( KWallet::Wallet * wallet );
00114 
00115 private:
00116         class Private;
00117         Private * const d;
00118 };
00119 
00120 }
00121 
00122 #endif