diff --git a/src/quick/barcodequickitem.h b/src/quick/barcodequickitem.h --- a/src/quick/barcodequickitem.h +++ b/src/quick/barcodequickitem.h @@ -26,6 +26,16 @@ Q_PROPERTY(QColor foregroundColor READ foregroundColor WRITE setForegroundColor NOTIFY foregroundColorChanged) Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor NOTIFY backgroundColorChanged) Q_PROPERTY(Dimensions dimensions READ dimensions NOTIFY dimensionsChanged) + /** + * @see Prison::AbstractBarcode::trueMinimumSize() + * @since 5.69 + */ + Q_PROPERTY(qreal minimumHeight READ minimumHeight NOTIFY implicitHeightChanged) + /** + * @see Prison::AbstractBarcode::trueMinimumSize() + * @since 5.69 + */ + Q_PROPERTY(qreal minimumWidth READ minimumWidth NOTIFY implicitWidthChanged) public: enum BarcodeType { @@ -63,6 +73,9 @@ void paint(QPainter *painter) override; void componentComplete() override; + qreal minimumHeight() const; + qreal minimumWidth() const; + Q_SIGNALS: void contentChanged(); void barcodeTypeChanged(); diff --git a/src/quick/barcodequickitem.cpp b/src/quick/barcodequickitem.cpp --- a/src/quick/barcodequickitem.cpp +++ b/src/quick/barcodequickitem.cpp @@ -104,6 +104,16 @@ updateBarcode(); } +qreal BarcodeQuickItem::minimumHeight() const +{ + return m_barcode ? m_barcode->trueMinimumSize().height() : 0.0; +} + +qreal BarcodeQuickItem::minimumWidth() const +{ + return m_barcode ? m_barcode->trueMinimumSize().width() : 0.0; +} + void BarcodeQuickItem::updateBarcode() { if (!isComponentComplete()) diff --git a/tests/barcode.qml b/tests/barcode.qml --- a/tests/barcode.qml +++ b/tests/barcode.qml @@ -46,6 +46,9 @@ Label { text: "2D: " + (barcode.dimensions == 2) } + Label { + text: "Min size: " + barcode.minimumWidth + "x" + barcode.minimumHeight + } } } }