From 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kaddressbook/ldapsearchdialog.h | 117 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 kaddressbook/ldapsearchdialog.h (limited to 'kaddressbook/ldapsearchdialog.h') diff --git a/kaddressbook/ldapsearchdialog.h b/kaddressbook/ldapsearchdialog.h new file mode 100644 index 00000000..dba41fc5 --- /dev/null +++ b/kaddressbook/ldapsearchdialog.h @@ -0,0 +1,117 @@ +/* ldapsearchdialogimpl.h - LDAP access + * Copyright (C) 2002 Klar�lvdalens Datakonsult AB + * + * Author: Steffen Hansen + * + * This file is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifndef LDAPSEARCHDIALOG_H +#define LDAPSEARCHDIALOG_H + +#include "config.h" + +#include + +#include +#include +#include + +#ifdef KDEPIM_NEW_DISTRLISTS +#include +#endif + +class KAddressBookTableView; +class KComboBox; +class KLineEdit; + +class QCheckBox; +class QListView; +class QPushButton; +class KABCore; +class ContactListItem; + +namespace KABC { + class Resource; +} + +class LDAPSearchDialog : public KDialogBase +{ + Q_OBJECT + + public: + LDAPSearchDialog( KABC::AddressBook *ab, KABCore *core, QWidget* parent, const char* name = 0 ); + ~LDAPSearchDialog(); + + bool isOK() const { return mIsOK; } + + void restoreSettings(); + + signals: + void addresseesAdded(); + + protected slots: + void slotAddResult( const KPIM::LdapObject& obj ); + void slotSetScope( bool rec ); + void slotStartSearch(); + void slotStopSearch(); + void slotSearchDone(); + void slotError( const QString& ); + virtual void slotHelp(); + virtual void slotUser1(); + virtual void slotUser2(); + void slotSelectAll(); + void slotUnselectAll(); + /** + * Traverses the given items and adds them to the given resource, + * unless they already exist. Returns the list of both the added + * and the existing contacts. + */ + KABC::Addressee::List importContactsUnlessTheyExist( const QValueList& items, KABC::Resource * const resource ); + + protected: + QString selectedEMails() const; + + virtual void closeEvent( QCloseEvent* ); + + private: + void saveSettings(); + static KABC::Addressee convertLdapAttributesToAddressee( const KPIM::LdapAttrMap& attrs ); +#ifdef KDEPIM_NEW_DISTRLISTS + KPIM::DistributionList selectDistributionList(); +#endif + + QString makeFilter( const QString& query, const QString& attr, bool startsWith ); + + void cancelQuery(); + + int mNumHosts; + QPtrList mLdapClientList; + bool mIsOK; + KABC::AddressBook *mAddressBook; + KABCore *mCore; + + KComboBox* mFilterCombo; + KComboBox* mSearchType; + KLineEdit* mSearchEdit; + + QCheckBox* mRecursiveCheckbox; + QListView* mResultListView; + QPushButton* mSearchButton; + class Private; + Private* const d; +}; + +#endif -- cgit v1.2.3