File indexing completed on 2024-05-19 16:31:58

0001 /*
0002  *   SPDX-FileCopyrightText: 2015 Kai Uwe Broulik <kde@privat.broulik.de>
0003  *
0004  *   SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #include "kcm.h"
0008 
0009 #include <KAboutData>
0010 #include <KPluginFactory>
0011 #include <QDebug>
0012 #include <QStandardPaths>
0013 
0014 #include <QQmlContext>
0015 #include <QQmlEngine>
0016 #include <QStandardItemModel>
0017 #include <QtQml>
0018 
0019 #include <Solid/Battery>
0020 #include <Solid/Device>
0021 #include <Solid/DeviceNotifier>
0022 
0023 #include <KLocalizedString>
0024 
0025 #include "batterymodel.h"
0026 #include "statisticsprovider.h"
0027 
0028 K_PLUGIN_CLASS_WITH_JSON(KCMEnergyInfo, "kcm_energyinfo.json")
0029 
0030 using namespace KQuickAddons;
0031 
0032 KCMEnergyInfo::KCMEnergyInfo(QObject *parent, const KPluginMetaData &data, const QVariantList &args)
0033     : ConfigModule(parent, data, args)
0034 {
0035     qmlRegisterAnonymousType<BatteryModel>("org.kde.kinfocenter.energy.private", 1);
0036 
0037     qmlRegisterType<StatisticsProvider>("org.kde.kinfocenter.energy.private", 1, 0, "HistoryModel");
0038     qmlRegisterUncreatableType<BatteryModel>("org.kde.kinfocenter.energy.private", 1, 0, "BatteryModel", QStringLiteral("Use BatteryModel"));
0039 
0040     KAboutData *about =
0041         new KAboutData(QStringLiteral("kcm_energyinfo"), i18n("Energy Consumption Statistics"), QStringLiteral("0.2"), QString(), KAboutLicense::GPL);
0042     about->addAuthor(i18n("Kai Uwe Broulik"), QString(), QStringLiteral("kde@privat.broulik.de"));
0043     setAboutData(about);
0044 
0045     m_batteries = new BatteryModel(this);
0046 }
0047 
0048 #include "kcm.moc"