File indexing completed on 2025-01-19 04:46:46
0001 /* 0002 SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #pragma once 0007 0008 #include <Akonadi/AbstractEmailAddressSelectionDialog> 0009 namespace Akonadi 0010 { 0011 class RecipientsPickerWidget; 0012 } 0013 0014 namespace PimCommon 0015 { 0016 class LdapSearchDialog; 0017 } 0018 0019 class EmailAddressSelectionLdapDialog : public Akonadi::AbstractEmailAddressSelectionDialog 0020 { 0021 Q_OBJECT 0022 public: 0023 explicit EmailAddressSelectionLdapDialog(QWidget *parent = nullptr, const QList<QVariant> & = {}); 0024 ~EmailAddressSelectionLdapDialog() override; 0025 0026 [[nodiscard]] Akonadi::EmailAddressSelection::List selectedAddresses() const override; 0027 [[nodiscard]] Akonadi::EmailAddressSelectionWidget *view() const override; 0028 0029 private: 0030 void writeConfig(); 0031 void readConfig(); 0032 void slotSearchLDAP(); 0033 void ldapSearchResult(); 0034 Akonadi::RecipientsPickerWidget *const mView; 0035 PimCommon::LdapSearchDialog *mLdapSearchDialog = nullptr; 0036 };