diff options
| author | Riccardo Spagni <ric@spagni.net> | 2017-03-27 21:23:21 +0200 |
|---|---|---|
| committer | Riccardo Spagni <ric@spagni.net> | 2017-03-27 21:23:21 +0200 |
| commit | 508b512c450529e38b58f2bd46814fa292cc4771 (patch) | |
| tree | 0bbffcbe0c399ac23b9ae48da6374e2432a8d2e3 /main.cpp | |
| parent | b1d24f8aa779953ece9a16c3fdfafbd85a302d34 (diff) | |
| parent | 716010a8698162404ee72c264a33af0a7c5f3be7 (diff) | |
| download | monzero-gui-508b512c450529e38b58f2bd46814fa292cc4771.tar.gz monzero-gui-508b512c450529e38b58f2bd46814fa292cc4771.tar.xz monzero-gui-508b512c450529e38b58f2bd46814fa292cc4771.zip | |
Merge pull request #616
716010a README: QtMultimedia dependency optional (MoroccanMalinois)
fb3a618 Make QtMultimedia dependency optional (MoroccanMalinois)
Diffstat (limited to 'main.cpp')
| -rw-r--r-- | main.cpp | 27 |
1 files changed, 20 insertions, 7 deletions
@@ -39,7 +39,6 @@ #include "WalletManager.h" #include "Wallet.h" #include "QRCodeImageProvider.h" -#include "QrCodeScanner.h" #include "PendingTransaction.h" #include "UnsignedTransaction.h" #include "TranslationManager.h" @@ -57,6 +56,10 @@ #include "daemon/DaemonManager.h" #endif +#ifdef WITH_SCANNER +#include "QrCodeScanner.h" +#endif + void messageHandler(QtMsgType type, const QMessageLogContext &context, const QString &msg) { // Send all message types to logger @@ -131,7 +134,9 @@ int main(int argc, char *argv[]) qRegisterMetaType<TransactionInfo::Direction>(); qRegisterMetaType<TransactionHistoryModel::TransactionInfoRole>(); +#ifdef WITH_SCANNER qmlRegisterType<QrCodeScanner>("moneroComponents.QRCodeScanner", 1, 0, "QRCodeScanner"); +#endif QQmlApplicationEngine engine; @@ -197,19 +202,27 @@ int main(int argc, char *argv[]) engine.rootContext()->setContextProperty("defaultAccountName", accountName); engine.rootContext()->setContextProperty("applicationDirectory", QApplication::applicationDirPath()); + bool builtWithScanner = false; +#ifdef WITH_SCANNER + builtWithScanner = true; +#endif + engine.rootContext()->setContextProperty("builtWithScanner", builtWithScanner); + // Load main window (context properties needs to be defined obove this line) engine.load(QUrl(QStringLiteral("qrc:///main.qml"))); QObject *rootObject = engine.rootObjects().first(); - bool builtWithScanner = false; #ifdef WITH_SCANNER - builtWithScanner = true; QObject *qmlCamera = rootObject->findChild<QObject*>("qrCameraQML"); - QCamera *camera_ = qvariant_cast<QCamera*>(qmlCamera->property("mediaObject")); - QObject *qmlFinder = rootObject->findChild<QObject*>("QrFinder"); - qobject_cast<QrCodeScanner*>(qmlFinder)->setSource(camera_); + if( qmlCamera ){ + qDebug() << "QrCodeScanner : object found"; + QCamera *camera_ = qvariant_cast<QCamera*>(qmlCamera->property("mediaObject")); + QObject *qmlFinder = rootObject->findChild<QObject*>("QrFinder"); + qobject_cast<QrCodeScanner*>(qmlFinder)->setSource(camera_); + } else { + qDebug() << "QrCodeScanner : something went wrong !"; + } #endif - engine.rootContext()->setContextProperty("builtWithScanner", builtWithScanner); QObject::connect(eventFilter, SIGNAL(sequencePressed(QVariant,QVariant)), rootObject, SLOT(sequencePressed(QVariant,QVariant))); QObject::connect(eventFilter, SIGNAL(sequenceReleased(QVariant,QVariant)), rootObject, SLOT(sequenceReleased(QVariant,QVariant))); |
