blokkalprotocol.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef BLOKPROTOCOL_H
00021 #define BLOKPROTOCOL_H
00022
00023 #include "blokkalplugin.h"
00024
00025 namespace Blokkal {
00026 class Account;
00027
00028 namespace Ui {
00029 class EditAccountWidget;
00030 class FormattingBackend;
00031 class EditEntryWidget;
00032 }
00033
00045 class BLOKKAL_EXPORT Protocol : public Plugin
00046 {
00047 Q_OBJECT
00048 public:
00055 Protocol( const KComponentData & instance, QObject * parent = 0 );
00056
00060 virtual ~Protocol( void );
00061
00069 virtual Blokkal::Ui::EditAccountWidget * createEditAccountWidget( Blokkal::Account * account = 0, QWidget * parent = 0 ) = 0;
00070
00076 virtual Blokkal::Account * createAccount( const QString & accountName = 0 ) = 0;
00077
00084 virtual Blokkal::Ui::FormattingBackend * createFormattingBackend( Blokkal::Ui::EditEntryWidget * widget );
00085
00086 public Q_SLOTS:
00090 virtual void prepareToUnload( void );
00091
00092 protected Q_SLOTS:
00099 virtual void checkAccountStates( void );
00100 };
00101
00102 }
00103
00104 #endif