File indexing completed on 2024-05-05 05:21:14

0001 /*
0002    SPDX-FileCopyrightText: 2021-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <KCModule>
0010 class QLineEdit;
0011 class KNotePrintSelectThemeComboBox;
0012 class KNoteCollectionConfigWidget;
0013 
0014 class KNoteDisplayConfig : public KCModule
0015 {
0016     Q_OBJECT
0017 public:
0018     explicit KNoteDisplayConfig(QObject *parent, const KPluginMetaData &data);
0019     /** Reimplemented from KCModule. */
0020     void load() override;
0021     void save() override;
0022 };
0023 
0024 class KNoteEditorConfig : public KCModule
0025 {
0026     Q_OBJECT
0027 public:
0028     explicit KNoteEditorConfig(QObject *parent, const KPluginMetaData &data);
0029     /** Reimplemented from KCModule. */
0030     void load() override;
0031     void save() override;
0032 };
0033 
0034 class KNoteMiscConfig : public KCModule
0035 {
0036     Q_OBJECT
0037 public:
0038     explicit KNoteMiscConfig(QObject *parent, const KPluginMetaData &data);
0039     /** Reimplemented from KCModule. */
0040     void load() override;
0041     void save() override;
0042     void defaults() override;
0043 private Q_SLOTS:
0044     void slotHelpLinkClicked(const QString &);
0045 
0046 private:
0047     QLineEdit *mDefaultTitle = nullptr;
0048 };
0049 
0050 class KNotePrintConfig : public KCModule
0051 {
0052     Q_OBJECT
0053 public:
0054     explicit KNotePrintConfig(QObject *parent, const KPluginMetaData &data);
0055     /** Reimplemented from KCModule. */
0056     void load() override;
0057     void save() override;
0058     void defaults() override;
0059 
0060 private Q_SLOTS:
0061     void slotThemeChanged();
0062     void slotDownloadNewThemes();
0063 
0064 private:
0065     KNotePrintSelectThemeComboBox *mSelectTheme = nullptr;
0066 };
0067 
0068 class KNoteCollectionConfig : public KCModule
0069 {
0070     Q_OBJECT
0071 public:
0072     explicit KNoteCollectionConfig(QObject *parent, const KPluginMetaData &data);
0073     /** Reimplemented from KCModule. */
0074     void load() override;
0075     void save() override;
0076 
0077 private:
0078     KNoteCollectionConfigWidget *mCollectionConfigWidget = nullptr;
0079 };