Akonadi Contacts

messagingwidget.h
1/*
2 This file is part of Contact Editor.
3
4 SPDX-FileCopyrightText: 2016 eyeOS S.L.U., a Telefonica company, sales@eyeos.com
5 SPDX-FileCopyrightText: 2016-2020 Laurent Montel <montel.org>
6
7 SPDX-License-Identifier: LGPL-2.0-or-later
8*/
9
10#pragma once
11
12#include <QWidget>
13
14#include "akonadi_contact_widgets_private_export.h"
15
16class QToolButton;
17
18namespace KContacts
19{
20class Impp;
21}
22
23namespace Akonadi
24{
25class PreferredLineEditWidget;
26class ContactEditorComboBox;
27class AKONADI_CONTACT_WIDGETS_TESTS_EXPORT MessagingWidget : public QWidget
28{
29 Q_OBJECT
30public:
31 explicit MessagingWidget(QWidget *parent = nullptr);
32 ~MessagingWidget() override;
33
34 void updateAddRemoveButton(bool addButtonEnabled);
35 [[nodiscard]] KContacts::Impp imAddress() const;
36 void setIMAddress(const KContacts::Impp &address);
37 void setPreferred(bool b);
38 void clearWidget();
39 void setReadOnly(bool readOnly);
40Q_SIGNALS:
41 void addWidget(Akonadi::MessagingWidget *);
42 void removeWidget(Akonadi::MessagingWidget *);
43 void preferredChanged(Akonadi::MessagingWidget *);
44
45private:
46 void slotAddMessaging();
47 void slotRemoveMessaging();
48 void slotPreferredChanged();
49 PreferredLineEditWidget *mMessagingEdit = nullptr;
50 QToolButton *mAddButton = nullptr;
51 QToolButton *mRemoveButton = nullptr;
52 Akonadi::ContactEditorComboBox *mProtocolCombo = nullptr;
53};
54}
A widget for editing the display name of a contact.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Fri Nov 22 2024 12:08:53 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.