File indexing completed on 2024-04-28 04:54:34

0001 /*
0002     SPDX-FileCopyrightText: 2002 Rik Hemsley (rikkus) <rik@kde.org>
0003     SPDX-FileCopyrightText: 2002 Benjamin Meyer <ben-devel@meyerhome.net>
0004     SPDX-FileCopyrightText: 2003 Richard Lärkäng <nouseforaname@home.se>
0005 
0006     SPDX-License-Identifier: GPL-2.0-or-later
0007 */
0008 
0009 #include "kcmcddb.h"
0010 #include "kcmcddbi18n.h"
0011 #include "cddbconfigwidget.h"
0012 
0013 #include "libkcddb/lookup.h"
0014 #include "libkcddb/cache.h"
0015 #include "libkcddb/submit.h"
0016 
0017 #include <KPluginFactory>
0018 #include <KMessageBox>
0019 
0020 #include <QCheckBox>
0021 #include <QVBoxLayout>
0022 
0023 K_PLUGIN_CLASS_WITH_JSON(CDDBModule, "kcm_cddb.json")
0024 
0025 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
0026 CDDBModule::CDDBModule(QWidget *parent, const QVariantList &args)
0027   : KCModule(parent, args)
0028 #else
0029 CDDBModule::CDDBModule(QObject *parent, const KPluginMetaData &metaData)
0030   : KCModule(parent, metaData)
0031 #endif
0032 {
0033   setButtons(Default | Apply | Help);
0034 
0035 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
0036   widget_ = new CDDBConfigWidget(this);
0037 #else
0038   widget_ = new CDDBConfigWidget(widget());
0039 #endif
0040 
0041   KCDDB::Config* cfg = new KCDDB::Config();
0042   cfg->load();
0043 
0044   addConfig(cfg, widget_);
0045 
0046 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
0047   QVBoxLayout * layout = new QVBoxLayout(this);
0048 #else
0049   QVBoxLayout * layout = new QVBoxLayout(widget());
0050 #endif
0051 
0052   layout->addWidget(widget_);
0053 
0054 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
0055   setQuickHelp(i18n("CDDB is used to get information like artist, title and song-names in CD's"));
0056 #endif
0057 
0058   load();
0059 }
0060 
0061   void
0062 CDDBModule::defaults()
0063 {
0064   KCModule::defaults();
0065 
0066   KCDDB::Config config;
0067 }
0068 
0069   void
0070 CDDBModule::checkSettings() const
0071 {
0072   KCDDB::Config config;
0073 
0074   config.load();
0075 }
0076 
0077   void
0078 CDDBModule::save()
0079 {
0080   KCModule::save();
0081 
0082   checkSettings();
0083 }
0084 
0085   void
0086 CDDBModule::load()
0087 {
0088   KCModule::load();
0089 
0090   KCDDB::Config config;
0091   config.load();
0092 }
0093 
0094 #include "kcmcddb.moc"
0095 #include "moc_kcmcddb.cpp"
0096 
0097 // vim:tabstop=2:shiftwidth=2:expandtab:cinoptions=(s,U1,m1