1
0
Fork 0
VideoPlayer/src/main.cpp

62 lines
1.8 KiB
C++
Raw Normal View History

2018-10-27 16:11:29 +01:00
#ifdef QRC_SOURCE_PATH
#include "runtimeqml/runtimeqml.h"
#endif
2018-10-13 15:38:31 +01:00
2018-10-30 15:38:29 +00:00
#include <cstdlib>
2018-10-13 15:38:31 +01:00
#include <QApplication>
#include <QQmlApplicationEngine>
2018-10-23 11:37:51 +01:00
#include <QProcessEnvironment>
#include "MpvPlayerBackend.h"
2018-10-13 15:38:31 +01:00
2018-10-31 07:53:38 +00:00
#ifdef WIN32
#include "setenv_mingw.hpp"
#endif
2018-10-13 15:38:31 +01:00
int main( int argc, char *argv[] )
{
2018-10-28 14:56:54 +00:00
setenv("QT_QUICK_CONTROLS_STYLE","Desktop",1);
2018-10-13 15:38:31 +01:00
QApplication app(argc, argv);
2018-10-24 17:41:41 +01:00
app.setOrganizationName("KittehPlayer");
app.setOrganizationDomain("namedkitten.pw");
app.setApplicationName("KittehPlayer");
2018-10-23 11:37:51 +01:00
for (int i = 1; i < argc; ++i) {
if (!qstrcmp(argv[i], "--update")) {
2018-10-23 13:43:27 +01:00
QString program = QProcessEnvironment::systemEnvironment().value("APPDIR", "") + "/usr/bin/appimageupdatetool";
2018-10-23 11:37:51 +01:00
QProcess updater;
updater.setProcessChannelMode(QProcess::ForwardedChannels);
updater.start(program, QStringList() << QProcessEnvironment::systemEnvironment().value("APPIMAGE", ""));
updater.waitForFinished();
2018-10-23 11:37:51 +01:00
qDebug() << program;
exit(0);
}
}
2018-10-23 23:56:24 +01:00
QProcess dpms;
dpms.start("xset", QStringList() << "-dpms");
QString newpath = QProcessEnvironment::systemEnvironment().value("APPDIR", "") + "/usr/bin:" + QProcessEnvironment::systemEnvironment().value("PATH", "");
2018-10-28 14:56:54 +00:00
qDebug() << newpath;
setenv("PATH", newpath.toUtf8().constData(), 1);
2018-10-31 07:53:38 +00:00
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
2018-11-04 21:20:11 +00:00
QApplication::setAttribute(Qt::AA_NativeWindows);
qmlRegisterType<MpvPlayerBackend>("player", 1, 0, "PlayerBackend");
2018-10-13 15:38:31 +01:00
std::setlocale(LC_NUMERIC, "C");
QQmlApplicationEngine engine;
2018-10-27 16:11:29 +01:00
#ifdef QRC_SOURCE_PATH
RuntimeQML *rt = new RuntimeQML(&engine, QRC_SOURCE_PATH"/qml.qrc");
rt->setAutoReload(true);
rt->setMainQmlFilename("main.qml");
rt->reload();
#else
engine.load(QUrl(QStringLiteral("qrc:///player/main.qml")));
#endif
2018-10-13 15:38:31 +01:00
return app.exec();
}