app/sources/main.cpp

57 lines
2.2 KiB
C++

/*
blueROCK - for digital rock
Copyright (C) 2019 Dorian Zedler
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <QQuickStyle>
#include <QGuiApplication>
#include <QtQml/QQmlContext>
#include <QQmlApplicationEngine>
#include <QIcon>
#include <QStyleFactory>
#include "headers/brserverconnector.h"
#include "headers/appsettings.h"
#include "headers/brcontroller.h"
int main(int argc, char *argv[])
{
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QGuiApplication app(argc, argv);
qDebug() << QStyleFactory::keys();
QQuickStyle::setStyle("Material");
QIcon::setFallbackSearchPaths(QIcon::fallbackSearchPaths() << ":/resources/shared/icons");
QIcon::setThemeName("bluerock");
qmlRegisterType<BRServerConnector>("com.itsblue.digitalRockRanking", 1, 0, "ServerConn");
qmlRegisterType<AppSettings>("com.itsblue.digitalRockRanking", 1, 0, "AppSettings");
qmlRegisterType<BRController>("de.itsblue.blueRock", 2, 0, "BRController");
qmlRegisterUncreatableType<BRCalendar>("de.itsblue.blueRock", 2, 0, "BRCalendar", "BRCalendar is not creatable");
qmlRegisterUncreatableType<BRWidget>("de.itsblue.blueRock", 2, 0, "BRWidget", "BRWidget is not creatable");
qRegisterMetaType<BRWidget::BRFederation>("BRWidget::BRFederation");
//qmlRegisterType<BRController>("de.itsblue.blueRock", 2, 0, "BRController");
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
if (engine.rootObjects().isEmpty())
return -1;
return app.exec();
}