File indexing completed on 2023-10-03 03:30:44

0001 /*
0002     SPDX-FileCopyrightText: 2006 Mauricio Piacentini <mauricio@tabuleiro.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef KMAHJONGGCONFIGDIALOG_H
0008 #define KMAHJONGGCONFIGDIALOG_H
0009 
0010 // Std
0011 #include <memory>
0012 
0013 // KF
0014 #include <KConfigDialog>
0015 #include <KConfigSkeleton>
0016 
0017 // LibKMahjongg
0018 #include <libkmahjongg_export.h>
0019 
0020 class KMahjonggConfigDialogPrivate;
0021 
0022 /**
0023  * @class KMahjonggConfigDialog kmahjonggconfigdialog.h <KMahjonggConfigDialog>
0024  *
0025  * An extended config dialog with convenience methods to add pages for managing tilesets & backgrounds
0026  */
0027 class LIBKMAHJONGG_EXPORT KMahjonggConfigDialog : public KConfigDialog
0028 {
0029 Q_OBJECT
0030   public:
0031     KMahjonggConfigDialog( QWidget *parent, const QString& name,
0032                  KConfigSkeleton *config);
0033     ~KMahjonggConfigDialog() override;
0034     void addTilesetPage();
0035     void addBackgroundPage();
0036 
0037   protected Q_SLOTS:
0038     void updateWidgetsDefault() override;
0039 
0040   private:
0041     friend class KMahjonggConfigDialogPrivate;
0042     std::unique_ptr<KMahjonggConfigDialogPrivate> const d;
0043 
0044     Q_DISABLE_COPY(KMahjonggConfigDialog)
0045 };
0046 
0047 #endif // KMAHJONGGCONFIGDIALOG_H