#include "samplecoreapp.h" #include "sampleviewmodel.h" #include "drawerviewmodel.h" #include #include #include SampleCoreApp::SampleCoreApp(QObject *parent) : CoreApp(parent), _showDrawer(false) { QCoreApplication::setApplicationName(QStringLiteral("QtMvvmSample")); QCoreApplication::setApplicationVersion(QStringLiteral(QTMVVMCORE_VERSION_STR)); QCoreApplication::setOrganizationName(QStringLiteral("Skycoder42")); } bool SampleCoreApp::showDrawer() const { return _showDrawer; } void SampleCoreApp::setShowDrawer(bool showDrawer) { if (_showDrawer == showDrawer) return; _showDrawer = showDrawer; emit showDrawerChanged(_showDrawer); } void SampleCoreApp::performRegistrations() { Q_INIT_RESOURCE(sample_core); QtMvvm::registerInterfaceConverter(); QLoggingCategory::setFilterRules(QStringLiteral("qtmvvm.debug=true")); } int SampleCoreApp::startApp(const QStringList &arguments) { QCommandLineParser parser; parser.addVersionOption(); parser.addHelpOption(); parser.addOption({ {QStringLiteral("a"), QStringLiteral("active")}, QStringLiteral("Start with the active checkbox already checked") }); parser.addPositionalArgument(QStringLiteral("names"), QStringLiteral("A list of names, joined together as one string"), QStringLiteral("[names...]")); if(!autoParse(parser, arguments)) return EXIT_SUCCESS; QVariantHash args; args.insert(SampleViewModel::KeyActive, parser.isSet(QStringLiteral("active"))); args.insert(SampleViewModel::KeyNames, parser.positionalArguments()); show(args); if(_showDrawer) show(); return EXIT_SUCCESS; }