blob: 168bb9855aedc586860a67b38c1416f3f5510b42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#include <QQmlContext>
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QCommandLineParser>
#include <QSettings>
#include "symedit.h"
int main(int argc, char *argv[])
{
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QCoreApplication::setOrganizationName("Syrja");
QCoreApplication::setOrganizationDomain("syrja.org");
QCoreApplication::setApplicationName("SymEdit");
QCoreApplication::setApplicationVersion("1.0");
QSettings::setDefaultFormat(QSettings::IniFormat);
QGuiApplication app(argc, argv);
// register enumerations
qmlRegisterUncreatableMetaObject(Operation::staticMetaObject,
"Org.Syrja.Symbol.Operation", 1, 0, "Operation", "Error: only enums" );
QCommandLineParser parser;
parser.process(app);
QString symbol;
const QStringList arguments = parser.positionalArguments();
if ( arguments.size() )
symbol = arguments.at(0);
// register manager
SymEditManager manager(symbol);
QQmlApplicationEngine engine;
engine.rootContext()->setContextProperty("manager", &manager);
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
if ( engine.rootObjects().isEmpty() )
return -1;
int result = app.exec();
manager.SaveSettings();
return result;
}
|