kaddressbook Library API Documentation

contacteditorwidget.h

00001 /* 00002 This file is part of KAddressbook. 00003 Copyright (c) 2004 Tobias Koenig <tokoe@kde.org> 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 Free Software 00017 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 00019 As a special exception, permission is given to link this program 00020 with any edition of Qt, and distribute the resulting executable, 00021 without including the source code for Qt in the source distribution. 00022 */ 00023 00024 #ifndef KAB_CONTACTEDITORWIDGET_H 00025 #define KAB_CONTACTEDITORWIDGET_H 00026 00027 #include <qwidget.h> 00028 00029 #include <kabc/addressbook.h> 00030 #include <klibloader.h> 00031 00032 namespace KAB { 00033 00034 class ContactEditorWidget : public QWidget 00035 { 00036 Q_OBJECT 00037 00038 public: 00039 typedef QValueList<ContactEditorWidget*> List; 00040 00041 ContactEditorWidget( KABC::AddressBook *ab, QWidget *parent, const char *name = 0 ); 00042 ~ContactEditorWidget(); 00043 00049 virtual int logicalHeight() const { return 1; } 00050 00056 virtual int logicalWidth() const { return 1; } 00057 00061 virtual void loadContact( KABC::Addressee *addr ) = 0; 00062 00067 virtual void storeContact( KABC::Addressee *addr ) = 0; 00068 00074 virtual void setReadOnly( bool readOnly ) = 0; 00075 00079 bool modified() const; 00080 00081 signals: 00086 void changed(); 00087 00088 public slots: 00095 void setModified( bool modified ); 00096 00097 void setModified(); 00098 00099 protected: 00103 KABC::AddressBook *addressBook() const; 00104 00105 private: 00106 KABC::AddressBook *mAddressBook; 00107 bool mModified; 00108 00109 class ContactEditorWidgetPrivate; 00110 ContactEditorWidgetPrivate *d; 00111 }; 00112 00113 class ContactEditorWidgetFactory : public KLibFactory 00114 { 00115 public: 00116 virtual ContactEditorWidget *createWidget( KABC::AddressBook *ab, QWidget *parent, 00117 const char *name = 0 ) = 0; 00118 00122 virtual QString pageTitle() const { return ""; } 00123 00128 virtual QString pageIdentifier() const = 0; 00129 00130 protected: 00131 virtual QObject* createObject( QObject*, const char*, const char*, 00132 const QStringList & ) 00133 { 00134 return 0; 00135 } 00136 }; 00137 00138 } 00139 00140 #endif
KDE Logo
This file is part of the documentation for kaddressbook Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Fri Oct 1 15:19:04 2004 by doxygen 1.3.7 written by Dimitri van Heesch, © 1997-2003