Bitcoin ABC  0.29.2
P2P Digital Currency
qrimagewidget.h
Go to the documentation of this file.
1 // Copyright (c) 2011-2018 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 
5 #ifndef BITCOIN_QT_QRIMAGEWIDGET_H
6 #define BITCOIN_QT_QRIMAGEWIDGET_H
7 
8 #include <QImage>
9 #include <QLabel>
10 
11 /* Maximum allowed URI length */
12 static const int MAX_URI_LENGTH = 255;
13 
14 /* Size of exported QR Code image */
15 static const int QR_IMAGE_SIZE = 350;
16 
17 QT_BEGIN_NAMESPACE
18 class QMenu;
19 QT_END_NAMESPACE
20 
25 class QRImageWidget : public QLabel {
26  Q_OBJECT
27 
28 public:
29  explicit QRImageWidget(QWidget *parent = nullptr);
30  bool hasPixmap() const;
31  bool setQR(const QString &qrData, const QString &text = "");
32  QImage exportImage();
33 
34 public Q_SLOTS:
35  void saveImage();
36  void copyImage();
37 
38 protected:
39  virtual void mousePressEvent(QMouseEvent *event) override;
40  virtual void contextMenuEvent(QContextMenuEvent *event) override;
41 
42 private:
43  QMenu *contextMenu;
44 };
45 
46 #endif // BITCOIN_QT_QRIMAGEWIDGET_H
Label widget for QR code.
Definition: qrimagewidget.h:25
bool setQR(const QString &qrData, const QString &text="")
QMenu * contextMenu
Definition: qrimagewidget.h:43
bool hasPixmap() const
QImage exportImage()
virtual void contextMenuEvent(QContextMenuEvent *event) override
virtual void mousePressEvent(QMouseEvent *event) override
QRImageWidget(QWidget *parent=nullptr)
static const int QR_IMAGE_SIZE
Definition: qrimagewidget.h:15
static const int MAX_URI_LENGTH
Definition: qrimagewidget.h:12