File indexing completed on 2025-01-05 04:54:24

0001 /*
0002     This file is part of the KDE project
0003     SPDX-FileCopyrightText: 2003 Matthias Kretz <kretz@kde.org>
0004     SPDX-FileCopyrightText: 2021 Alexander Lohnau <alexander.lohnau@gmx.de>
0005 
0006     SPDX-License-Identifier: LGPL-2.0-only
0007 */
0008 
0009 #pragma once
0010 
0011 #include "kontactkcmultidialog.h"
0012 
0013 class KontactSettingsDialogPrivate;
0014 
0015 class KontactSettingsDialog : public KontactKCMultiDialog
0016 {
0017     Q_DECLARE_PRIVATE(KontactSettingsDialog)
0018     Q_OBJECT
0019 public:
0020     explicit KontactSettingsDialog(QWidget *parent = nullptr);
0021 
0022     ~KontactSettingsDialog() override;
0023 
0024     /**
0025      * Adds a page with parentPluginMetaData used for title & icon of the component page and pluginMetaData for it's subpages
0026      */
0027     void addPluginComponent(const KPluginMetaData &parentPluginMetaData, const QList<KPluginMetaData> &pluginMetaData);
0028 
0029 protected:
0030     /**
0031      * Reimplemented to lazy create the dialog on first show.
0032      */
0033     void showEvent(QShowEvent *) override;
0034 };