Merge pull request #192

96c7dde Add QR code display on the receive page (moneromooo.monero)
This commit is contained in:
Riccardo Spagni
2016-11-24 12:37:53 +02:00
12 changed files with 1627 additions and 2 deletions

View File

@@ -0,0 +1,17 @@
#include "QrCode.hpp"
#include "QRCodeImageProvider.h"
QImage QRCodeImageProvider::requestImage(const QString &id, QSize *size, const QSize &requestedSize)
{
using namespace qrcodegen;
QrCode qrcode = QrCode::encodeText(id.toStdString().c_str(), QrCode::Ecc::MEDIUM);
QImage img = QImage(qrcode.size, qrcode.size, QImage::Format_Mono);
for (int y = 0; y < qrcode.size; ++y)
for (int x = 0; x < qrcode.size; ++x)
img.setPixel(x, y, qrcode.getModule(x, y));
if (size)
*size = QSize(qrcode.size, qrcode.size);
return img;
}

View File

@@ -0,0 +1,11 @@
#include <QImage>
#include <QQuickImageProvider>
class QRCodeImageProvider: public QQuickImageProvider
{
public:
QRCodeImageProvider(): QQuickImageProvider(QQuickImageProvider::Image) {}
QImage requestImage(const QString &id, QSize *size, const QSize &requestedSize);
};