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 #include "componentchooserdata.h"
0008 
0009 #include "componentchooserbrowser.h"
0010 #include "componentchooseremail.h"
0011 #include "componentchooserfilemanager.h"
0012 #include "componentchoosergeo.h"
0013 #include "componentchoosertel.h"
0014 #include "componentchooserterminal.h"
0015 
0016 ComponentChooserData::ComponentChooserData(QObject *parent, const QVariantList &args)
0017     : KCModuleData(parent, args)
0018     , m_browsers(new ComponentChooserBrowser(this))
0019     , m_fileManagers(new ComponentChooserFileManager(this))
0020     , m_terminalEmulators(new ComponentChooserTerminal(this))
0021     , m_emailClients(new ComponentChooserEmail(this))
0022     , m_geoUriHandlers(new ComponentChooserGeo(this))
0023     , m_telUriHandlers(new ComponentChooserTel(this))
0024 {
0025     load();
0026 }
0027 
0028 void ComponentChooserData::load()
0029 {
0030     m_browsers->load();
0031     m_fileManagers->load();
0032     m_terminalEmulators->load();
0033     m_emailClients->load();
0034     m_geoUriHandlers->load();
0035     m_telUriHandlers->load();
0036 }
0037 
0038 void ComponentChooserData::save()
0039 {
0040     m_browsers->save();
0041     m_fileManagers->save();
0042     m_terminalEmulators->save();
0043     m_emailClients->save();
0044     m_geoUriHandlers->save();
0045     m_telUriHandlers->save();
0046 }
0047 
0048 void ComponentChooserData::defaults()
0049 {
0050     m_browsers->defaults();
0051     m_fileManagers->defaults();
0052     m_terminalEmulators->defaults();
0053     m_emailClients->defaults();
0054     m_geoUriHandlers->defaults();
0055     m_telUriHandlers->defaults();
0056 }
0057 
0058 bool ComponentChooserData::isDefaults() const
0059 {
0060     return m_browsers->isDefaults() && m_fileManagers->isDefaults() && m_terminalEmulators->isDefaults() && m_emailClients->isDefaults()
0061         && m_geoUriHandlers->isDefaults() && m_telUriHandlers->isDefaults();
0062 }
0063 
0064 bool ComponentChooserData::isSaveNeeded() const
0065 {
0066     return m_browsers->isSaveNeeded() || m_fileManagers->isSaveNeeded() || m_terminalEmulators->isSaveNeeded() || m_emailClients->isSaveNeeded()
0067         || m_geoUriHandlers->isSaveNeeded() || m_telUriHandlers->isSaveNeeded();
0068 }
0069 
0070 ComponentChooser *ComponentChooserData::browsers() const
0071 {
0072     return m_browsers;
0073 }
0074 
0075 ComponentChooser *ComponentChooserData::fileManagers() const
0076 {
0077     return m_fileManagers;
0078 }
0079 
0080 ComponentChooser *ComponentChooserData::terminalEmulators() const
0081 {
0082     return m_terminalEmulators;
0083 }
0084 
0085 ComponentChooser *ComponentChooserData::emailClients() const
0086 {
0087     return m_emailClients;
0088 }
0089 
0090 ComponentChooser *ComponentChooserData::geoUriHandlers() const
0091 {
0092     return m_geoUriHandlers;
0093 }
0094 
0095 ComponentChooser *ComponentChooserData::telUriHandlers() const
0096 {
0097     return m_telUriHandlers;
0098 }