File indexing completed on 2024-11-24 04:39:30
0001 /* 0002 This file is part of Contact Editor. 0003 0004 SPDX-FileCopyrightText: 2016 eyeOS S.L.U., a Telefonica company, sales@eyeos.com 0005 SPDX-FileCopyrightText: 2016-2020 Laurent Montel <montel.org> 0006 0007 SPDX-License-Identifier: LGPL-2.0-or-later 0008 */ 0009 0010 #pragma once 0011 0012 #include <QVariantList> 0013 #include <QWidget> 0014 0015 namespace KContacts 0016 { 0017 class Addressee; 0018 } 0019 0020 namespace Akonadi 0021 { 0022 class CustomFieldEditorWidget; 0023 class CustomFieldsListWidget; 0024 class CustomFieldsWidget : public QWidget 0025 { 0026 Q_OBJECT 0027 public: 0028 explicit CustomFieldsWidget(QWidget *parent = nullptr); 0029 ~CustomFieldsWidget() override; 0030 void storeContact(KContacts::Addressee &contact) const; 0031 void loadContact(const KContacts::Addressee &contact); 0032 0033 void setReadOnly(bool readOnly); 0034 void setLocalCustomFieldDescriptions(const QVariantList &descriptions); 0035 [[nodiscard]] QVariantList localCustomFieldDescriptions() const; 0036 0037 private: 0038 Akonadi::CustomFieldEditorWidget *mCustomFieldEditorWidget = nullptr; 0039 Akonadi::CustomFieldsListWidget *mCustomFieldsListWidget = nullptr; 0040 }; 0041 }