File indexing completed on 2024-04-14 05:38:08
0001 /*************************************************************************** 0002 * Copyright (C) 2012-2013 by Daniel Nicoletti <dantti12@gmail.com> * 0003 * * 0004 * This program is free software; you can redistribute it and/or modify * 0005 * it under the terms of the GNU General Public License as published by * 0006 * the Free Software Foundation; either version 2 of the License, or * 0007 * (at your option) any later version. * 0008 * * 0009 * This program is distributed in the hope that it will be useful, * 0010 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 0011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 0012 * GNU General Public License for more details. * 0013 * * 0014 * You should have received a copy of the GNU General Public License * 0015 * along with this program; if not, write to the * 0016 * Free Software Foundation, Inc., * 0017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . * 0018 ***************************************************************************/ 0019 0020 #include "qmlplugins.h" 0021 0022 #include "daemonhelper.h" 0023 #include "DBusUpdaterInterface.h" 0024 0025 #include <QQuickItem> 0026 #include <QQmlContext> 0027 0028 #include <PackageModel.h> 0029 #include <PkTransaction.h> 0030 #include <PkTransactionProgressModel.h> 0031 #include <ApplicationSortFilterModel.h> 0032 #include <PkStrings.h> 0033 #include <PkIcons.h> 0034 #include <KLocalizedString> 0035 0036 #include <Daemon> 0037 #include <QQmlEngine> 0038 0039 void QmlPlugins::registerTypes(const char* uri) 0040 { 0041 // Q_ASSERT(uri == QString(QLatin1String("org.kde.apper"))); 0042 0043 qmlRegisterType<DaemonHelper>(uri, 0, 1, "DaemonHelper"); 0044 qmlRegisterType<DBusUpdaterInterface>(uri, 0, 1, "DBusUpdaterInterface"); 0045 qmlRegisterType<PackageModel>(uri, 0, 1, "PackageModel"); 0046 qmlRegisterType<PkTransaction>(uri, 0, 1, "PkTransaction"); 0047 qmlRegisterType<PkTransactionProgressModel>(uri, 0, 1, "PkTransactionProgressModel"); 0048 qmlRegisterType<ApplicationSortFilterModel>(uri, 0, 1, "ApplicationSortFilterModel"); 0049 qmlRegisterType<PackageKit::Transaction>(uri, 0, 1, "Transaction"); 0050 qmlRegisterUncreatableType<PackageKit::Daemon>(uri, 0, 1, "Daemon", QLatin1String("Global")); 0051 qRegisterMetaType<PkTransaction::ExitStatus>("PkTransaction::ExitStatus"); 0052 qRegisterMetaType<PackageKit::Daemon::Network>("PackageKit::Daemon::Network"); 0053 qRegisterMetaType<PackageKit::Daemon::Authorize>("PackageKit::Daemon::Authorize"); 0054 qRegisterMetaType<PackageKit::Transaction::InternalError>("PackageKit::Transaction::InternalError"); 0055 qRegisterMetaType<PackageKit::Transaction::Role>("PackageKit::Transaction::Role"); 0056 qRegisterMetaType<PackageKit::Transaction::Error>("PackageKit::Transaction::Error"); 0057 qRegisterMetaType<PackageKit::Transaction::Exit>("PackageKit::Transaction::Exit"); 0058 qRegisterMetaType<PackageKit::Transaction::Filter>("PackageKit::Transaction::Filter"); 0059 // qRegisterMetaType<PackageKit::Transaction::Message>("PackageKit::Transaction::Message"); 0060 qRegisterMetaType<PackageKit::Transaction::Status>("PackageKit::Transaction::Status"); 0061 qRegisterMetaType<PackageKit::Transaction::MediaType>("PackageKit::Transaction::MediaType"); 0062 qRegisterMetaType<PackageKit::Transaction::DistroUpgrade>("PackageKit::Transaction::DistroUpgrade"); 0063 qRegisterMetaType<PackageKit::Transaction::TransactionFlag>("PackageKit::Transaction::TransactionFlag"); 0064 qRegisterMetaType<PackageKit::Transaction::TransactionFlags>("PackageKit::Transaction::TransactionFlags"); 0065 qRegisterMetaType<PackageKit::Transaction::Restart>("PackageKit::Transaction::Restart"); 0066 qRegisterMetaType<PackageKit::Transaction::UpdateState>("PackageKit::Transaction::UpdateState"); 0067 qRegisterMetaType<PackageKit::Transaction::Group>("PackageKit::Transaction::Group"); 0068 qRegisterMetaType<PackageKit::Transaction::Info>("PackageKit::Transaction::Info"); 0069 qRegisterMetaType<PackageKit::Transaction::SigType>("PackageKit::Transaction::SigType"); 0070 0071 } 0072 0073 void QmlPlugins::initializeEngine(QQmlEngine *engine, const char *uri) 0074 { 0075 Q_UNUSED(uri) 0076 // Q_ASSERT(uri == QLatin1String("org.kde.apper")); 0077 0078 KLocalizedString::setApplicationDomain("apper"); 0079 0080 engine->rootContext()->setContextProperty(QLatin1String("Daemon"), Daemon::global()); 0081 engine->rootContext()->setContextProperty(QLatin1String("PkStrings"), new PkStrings); 0082 engine->rootContext()->setContextProperty(QLatin1String("PkIcons"), new PkIcons); 0083 engine->rootContext()->setContextProperty(QLatin1String("DaemonHelper"), new DaemonHelper); 0084 }