00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef AKONADI_CONTACTEDITORDIALOG_H
00023 #define AKONADI_CONTACTEDITORDIALOG_H
00024
00025 #include "akonadi-contact_export.h"
00026
00027 #include <kdialog.h>
00028
00029 class QAbstractItemModel;
00030
00031 namespace Akonadi {
00032
00033 class AbstractContactEditorWidget;
00034 class ContactEditor;
00035 class Collection;
00036 class Item;
00037
00077 class AKONADI_CONTACT_EXPORT ContactEditorDialog : public KDialog
00078 {
00079 Q_OBJECT
00080
00081 public:
00085 enum Mode
00086 {
00087 CreateMode,
00088 EditMode
00089 };
00090
00097 explicit ContactEditorDialog( Mode mode, QWidget *parent = 0 );
00098
00106 ContactEditorDialog( Mode mode, AbstractContactEditorWidget *editorWidget, QWidget *parent = 0 );
00107
00111 ~ContactEditorDialog();
00112
00119 void setContact( const Akonadi::Item &contact );
00120
00124 void setDefaultAddressBook( const Akonadi::Collection &addressbook );
00125
00129 ContactEditor* editor() const;
00130
00131 Q_SIGNALS:
00137 void contactStored( const Akonadi::Item &contact );
00138
00139 private:
00140
00141 class Private;
00142 Private* const d;
00143
00144 Q_PRIVATE_SLOT( d, void slotOkClicked() )
00145 Q_PRIVATE_SLOT( d, void slotCancelClicked() )
00146
00147 };
00148
00149 }
00150
00151 #endif