mirror of
https://invent.kde.org/marcoa/a-la-karte.git
synced 2026-02-09 21:13:08 +00:00
69 lines
2.1 KiB
C++
69 lines
2.1 KiB
C++
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||
|
|
// SPDX-FileCopyrightText: 2026 A-La-Karte Contributors
|
||
|
|
|
||
|
|
#include <QCommandLineParser>
|
||
|
|
#include <QGuiApplication>
|
||
|
|
#include <QIcon>
|
||
|
|
#include <QQmlApplicationEngine>
|
||
|
|
#include <QQmlContext>
|
||
|
|
#include <QQuickStyle>
|
||
|
|
|
||
|
|
#include <KAboutData>
|
||
|
|
#include <KCrash>
|
||
|
|
#include <KDBusService>
|
||
|
|
#include <KLocalizedContext>
|
||
|
|
#include <KLocalizedString>
|
||
|
|
|
||
|
|
#include "alakarte-version.h"
|
||
|
|
|
||
|
|
int main(int argc, char *argv[])
|
||
|
|
{
|
||
|
|
QGuiApplication app(argc, argv);
|
||
|
|
QGuiApplication::setDesktopFileName(QStringLiteral("org.kde.alakarte"));
|
||
|
|
|
||
|
|
KLocalizedString::setApplicationDomain("alakarte");
|
||
|
|
|
||
|
|
KAboutData aboutData(QStringLiteral("alakarte"),
|
||
|
|
i18n("A-La-Karte"),
|
||
|
|
QStringLiteral(ALAKARTE_VERSION_STRING),
|
||
|
|
i18n("A unified game launcher for KDE Plasma"),
|
||
|
|
KAboutLicense::GPL_V3,
|
||
|
|
i18n("© 2026 A-La-Karte Contributors"),
|
||
|
|
QString(),
|
||
|
|
QString());
|
||
|
|
|
||
|
|
aboutData.addAuthor(i18n("A-La-Karte Team"), i18n("Developer"), QString());
|
||
|
|
|
||
|
|
aboutData.setDesktopFileName(QStringLiteral("org.kde.alakarte"));
|
||
|
|
aboutData.setProductName(QByteArrayLiteral("alakarte"));
|
||
|
|
|
||
|
|
KAboutData::setApplicationData(aboutData);
|
||
|
|
const QIcon fallbackIcon(QStringLiteral(":/icons/sc-apps-org.kde.alakarte.svg"));
|
||
|
|
QGuiApplication::setWindowIcon(QIcon::fromTheme(QStringLiteral("org.kde.alakarte"), fallbackIcon));
|
||
|
|
|
||
|
|
KCrash::initialize();
|
||
|
|
|
||
|
|
QCommandLineParser parser;
|
||
|
|
aboutData.setupCommandLine(&parser);
|
||
|
|
parser.process(app);
|
||
|
|
aboutData.processCommandLine(&parser);
|
||
|
|
|
||
|
|
KDBusService service(KDBusService::Unique);
|
||
|
|
|
||
|
|
if (qEnvironmentVariableIsEmpty("QT_QUICK_CONTROLS_STYLE")) {
|
||
|
|
QQuickStyle::setStyle(QStringLiteral("org.kde.desktop"));
|
||
|
|
}
|
||
|
|
|
||
|
|
QQmlApplicationEngine engine;
|
||
|
|
|
||
|
|
engine.rootContext()->setContextObject(new KLocalizedContext(&engine));
|
||
|
|
|
||
|
|
engine.loadFromModule("org.kde.alakarte", "Main");
|
||
|
|
|
||
|
|
if (engine.rootObjects().isEmpty()) {
|
||
|
|
return -1;
|
||
|
|
}
|
||
|
|
|
||
|
|
return app.exec();
|
||
|
|
}
|