akonadi/contact
contactgrouplineedit_p.h
00001 /* 00002 This file is part of Akonadi Contact. 00003 00004 Copyright (c) 2009 Tobias Koenig <tokoe@kde.org> 00005 00006 This library is free software; you can redistribute it and/or modify it 00007 under the terms of the GNU Library General Public License as published by 00008 the Free Software Foundation; either version 2 of the License, or (at your 00009 option) any later version. 00010 00011 This library is distributed in the hope that it will be useful, but WITHOUT 00012 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00013 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public 00014 License for more details. 00015 00016 You should have received a copy of the GNU Library General Public License 00017 along with this library; see the file COPYING.LIB. If not, write to the 00018 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00019 02110-1301, USA. 00020 */ 00021 00022 #ifndef AKONADI_CONTACTGROUPLINEEDIT_P_H 00023 #define AKONADI_CONTACTGROUPLINEEDIT_P_H 00024 00025 #include <akonadi/item.h> 00026 #include <kabc/addressee.h> 00027 #include <kabc/contactgroup.h> 00028 #include <klineedit.h> 00029 00030 class QAbstractItemModel; 00031 class QCompleter; 00032 class QModelIndex; 00033 00034 class KJob; 00035 00036 class ContactGroupLineEdit : public KLineEdit 00037 { 00038 Q_OBJECT 00039 00040 public: 00041 ContactGroupLineEdit( QWidget *parent = 0 ); 00042 00043 void setCompletionModel( QAbstractItemModel *model ); 00044 00045 bool containsReference() const; 00046 00047 void setContactData( const KABC::ContactGroup::Data &data ); 00048 00049 KABC::ContactGroup::Data contactData() const; 00050 00051 void setContactReference( const KABC::ContactGroup::ContactReference &reference ); 00052 00053 KABC::ContactGroup::ContactReference contactReference() const; 00054 00055 private Q_SLOTS: 00056 void autoCompleted( const QModelIndex& ); 00057 void fetchDone( KJob* ); 00058 void invalidateReference(); 00059 00060 private: 00061 void updateView( const QString &uid, const QString &preferredEmail = QString() ); 00062 void updateView( const Akonadi::Item &item, const QString &preferredEmail = QString() ); 00063 QString requestPreferredEmail( const KABC::Addressee &contact ) const; 00064 00065 QCompleter *mCompleter; 00066 bool mContainsReference; 00067 KABC::ContactGroup::Data mContactData; 00068 KABC::ContactGroup::ContactReference mContactReference; 00069 }; 00070 00071 #endif
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Mon Aug 27 2012 22:09:52 by doxygen 1.7.5 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2012 The KDE developers.
Generated on Mon Aug 27 2012 22:09:52 by doxygen 1.7.5 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.