Messagelib

recipientspicker.h
1/*
2 SPDX-FileCopyrightText: 2010 Volker Krause <vkrause@kde.org>
3 This file was part of KMail.
4 SPDX-FileCopyrightText: 2005 Cornelius Schumacher <schumacher@kde.org>
5
6 SPDX-License-Identifier: LGPL-2.0-or-later
7*/
8#pragma once
9
10#include <MessageComposer/Recipient>
11
12#include <KContacts/Addressee>
13#include <QDialog>
14
15class QPushButton;
16class QLabel;
17namespace PimCommon
18{
19class LdapSearchDialog;
20}
21
22namespace Akonadi
23{
24class RecipientsPickerWidget;
25}
26
27namespace MessageComposer
28{
29class RecipientsPicker : public QDialog
30{
32
33public:
34 explicit RecipientsPicker(QWidget *parent);
35 ~RecipientsPicker() override;
36
37 void setRecipients(const Recipient::List &);
38
39 void setDefaultType(Recipient::Type);
40
42 void pickedRecipient(const Recipient &, bool &);
43
44protected:
45 void readConfig();
46 void writeConfig();
47
48 void pick(Recipient::Type);
49
50 void keyPressEvent(QKeyEvent *) override;
51
52protected Q_SLOTS:
53 void slotToClicked();
54 void slotCcClicked();
55 void slotBccClicked();
56 void slotReplyToClicked();
57 void slotPicked();
58 void slotSearchLDAP();
59 void ldapSearchResult();
60 void slotSelectionChanged();
61
62private:
63 void updateLabel(int nbSelected);
64 Akonadi::RecipientsPickerWidget *const mView;
65
66 PimCommon::LdapSearchDialog *mLdapSearchDialog = nullptr;
67
68 Recipient::Type mDefaultType;
69 QPushButton *const mUser1Button;
70 QPushButton *const mUser2Button;
71 QPushButton *const mUser3Button;
72 QPushButton *const mUser4Button;
73 QLabel *const mSelectedLabel;
74};
75}
Simple interface that both EncryptJob and SignEncryptJob implement so the composer can extract some e...
Q_OBJECTQ_OBJECT
Q_SIGNALSQ_SIGNALS
Q_SLOTSQ_SLOTS
QObject * parent() const const
T qobject_cast(QObject *object)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Jun 14 2024 11:49:06 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.