File indexing completed on 2024-05-19 05:00:54
0001 /* 0002 kcookiesmain.cpp - Cookies configuration 0003 0004 First version of cookies configuration: 0005 SPDX-FileCopyrightText: Waldo Bastian <bastian@kde.org> 0006 This dialog box: 0007 SPDX-FileCopyrightText: David Faure <faure@kde.org> 0008 */ 0009 0010 // Own 0011 #include "kcookiesmain.h" 0012 0013 // Local 0014 #include "kcookiesmanagement.h" 0015 #include "kcookiespolicies.h" 0016 0017 // Qt 0018 #include <QTabWidget> 0019 #include <QtGlobal> 0020 0021 // KDE 0022 #include <KLocalizedString> 0023 #include <KPluginFactory> 0024 0025 KCookiesMain::KCookiesMain(QObject *parent, const KPluginMetaData &md, const QVariantList &) 0026 : KCModule(parent, md) 0027 { 0028 management = nullptr; 0029 0030 QVBoxLayout *layout = new QVBoxLayout(widget()); 0031 tab = new QTabWidget(widget()); 0032 layout->addWidget(tab); 0033 0034 policies = new KCookiesPolicies(widget(), md); 0035 tab->addTab(policies->widget(), i18n("&Policy")); 0036 management = new KCookiesManagement(widget(), md); 0037 tab->addTab(management->widget(), i18n("&Management")); 0038 0039 #if QT_VERSION_MAJOR < 6 0040 connect(policies, QOverload<bool>::of(&KCModule::changed), this, QOverload<bool>::of(&KCModule::changed)); 0041 connect(management, QOverload<bool>::of(&KCModule::changed), this, QOverload<bool>::of(&KCModule::changed)); 0042 #else 0043 connect(policies, &KCModule::needsSaveChanged, this, &KCookiesMain::updateNeedsSave); 0044 connect(management, &KCModule::needsSaveChanged, this, &KCookiesMain::updateNeedsSave); 0045 #endif 0046 } 0047 0048 KCookiesMain::~KCookiesMain() 0049 { 0050 } 0051 0052 void KCookiesMain::updateNeedsSave() 0053 { 0054 setNeedsSave(policies->needsSave() || management->needsSave()); 0055 } 0056 0057 void KCookiesMain::save() 0058 { 0059 policies->save(); 0060 if (management) { 0061 management->save(); 0062 } 0063 KCModule::save(); 0064 } 0065 0066 void KCookiesMain::load() 0067 { 0068 policies->load(); 0069 if (management) { 0070 management->load(); 0071 } 0072 KCModule::load(); 0073 } 0074 0075 void KCookiesMain::defaults() 0076 { 0077 if (tab->currentWidget() == policies->widget()) { 0078 policies->defaults(); 0079 } else if (management) { 0080 management->defaults(); 0081 } 0082 0083 #if QT_VERSION_MAJOR > 5 0084 setRepresentsDefaults(true); 0085 #endif 0086 }