File indexing completed on 2024-05-12 17:07:08

0001 /*
0002     SPDX-FileCopyrightText: 2020 Cyril Rossi <cyril.rossi@enioka.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <QObject>
0010 
0011 #include <KCModuleData>
0012 
0013 class ComponentChooser;
0014 
0015 class ComponentChooserData : public KCModuleData
0016 {
0017     Q_OBJECT
0018 public:
0019     ComponentChooserData(QObject *parent = nullptr, const QVariantList &args = QVariantList());
0020 
0021     void load();
0022     void save();
0023     void defaults();
0024 
0025     bool isDefaults() const override;
0026     bool isSaveNeeded() const;
0027 
0028     ComponentChooser *browsers() const;
0029     ComponentChooser *fileManagers() const;
0030     ComponentChooser *terminalEmulators() const;
0031     ComponentChooser *emailClients() const;
0032     ComponentChooser *geoUriHandlers() const;
0033     ComponentChooser *telUriHandlers() const;
0034 
0035 private:
0036     ComponentChooser *m_browsers;
0037     ComponentChooser *m_fileManagers;
0038     ComponentChooser *m_terminalEmulators;
0039     ComponentChooser *m_emailClients;
0040     ComponentChooser *m_geoUriHandlers;
0041     ComponentChooser *m_telUriHandlers;
0042 };