- Add new symbology BARCODE_UPU_S10

- PZN: allow check digit to be given; add space after hyphen in
  HRT; PZN7 option
- backend_qt: add `encodedHeight()` read-only
This commit is contained in:
gitlost
2022-12-09 14:51:26 +00:00
parent 25dacb2949
commit 53769c6ed1
35 changed files with 1314 additions and 852 deletions

View File

@ -18,11 +18,11 @@ else()
qt5_wrap_ui(zint-qt_SRCS mainWindow.ui extCLI.ui extData.ui extScale.ui extSequence.ui extExport.ui)
endif()
# grpAztec.ui grpC39.ui grpCodablockF.ui grpDotCode.ui grpMailmark2D.ui grpPDF417.ui grpUPCEAN.ui
# grpC11.ui grpC49.ui grpCodeOne.ui grpDPD.ui grpMaxicode.ui grpQR.ui grpUPNQR.ui
# grpC128.ui grpC93.ui grpDAFT.ui grpGrid.ui grpMicroPDF.ui grpRMQR.ui grpVIN.ui
# grpC16k.ui grpChannel.ui grpDBExtend.ui grpHX.ui grpMQR.ui grpUltra.ui
# grpC25.ui grpCodabar.ui grpDM.ui grpITF14.ui grpMSICheck.ui grpUPCA.ui
# grpAztec.ui grpC39.ui grpCodablockF.ui grpDotCode.ui grpMailmark2D.ui grpPDF417.ui grpUPCA.ui
# grpC11.ui grpC49.ui grpCodeOne.ui grpDPD.ui grpMaxicode.ui grpPZN.ui grpUPCEAN.ui
# grpC128.ui grpC93.ui grpDAFT.ui grpGrid.ui grpMicroPDF.ui grpQR.ui grpUPNQR.ui
# grpC16k.ui grpChannel.ui grpDBExtend.ui grpHX.ui grpMQR.ui grpRMQR.ui grpVIN.ui
# grpC25.ui grpCodabar.ui grpDM.ui grpITF14.ui grpMSICheck.ui grpUltra.ui
if(APPLE)
# https://doc.qt.io/qt-5/appicon.html

View File

@ -52,6 +52,7 @@ FORMS += extCLI.ui \
grpMQR.ui \
grpMSICheck.ui \
grpPDF417.ui \
grpPZN.ui \
grpQR.ui \
grpRMQR.ui \
grpUltra.ui \

View File

@ -44,6 +44,7 @@ FORMS += extCLI.ui \
grpMQR.ui \
grpMSICheck.ui \
grpPDF417.ui \
grpPZN.ui \
grpQR.ui \
grpRMQR.ui \
grpUltra.ui \

53
frontend_qt/grpPZN.ui Normal file
View File

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>grpPZN</class>
<widget class="QWidget" name="grpPZN">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>186</width>
<height>123</height>
</rect>
</property>
<property name="maximumSize">
<size>
<width>600</width>
<height>16777215</height>
</size>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QCheckBox" name="chkPZN7">
<property name="text">
<string>PZN7</string>
</property>
<property name="checked">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Encode 6-digit PZN7 instead of default 7-digit PZN8</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -137,6 +137,7 @@ static const struct bstyle_item bstyle_items[] = {
{ QSL("UPC-A (ISO 15420)"), BARCODE_UPCA },
{ QSL("UPC-E (ISO 15420)"), BARCODE_UPCE },
{ QSL("UPNQR"), BARCODE_UPNQR },
{ QSL("UPU S10"), BARCODE_UPU_S10 },
{ QSL("USPS Intelligent Mail (OneCode)"), BARCODE_USPS_IMAIL },
{ QSL("VIN (Vehicle Identification Number)"), BARCODE_VIN },
};
@ -1855,6 +1856,16 @@ void MainWindow::change_options()
connect(get_widget(QSL("chkITF14NoQuietZones")), SIGNAL(toggled( bool )), SLOT(update_preview()));
}
} else if (symbology == BARCODE_PZN) {
QFile file(QSL(":/grpPZN.ui"));
if (file.open(QIODevice::ReadOnly)) {
m_optionWidget = uiload.load(&file);
file.close();
load_sub_settings(settings, symbology);
tabMain->insertTab(1, m_optionWidget, tr("PZN"));
connect(get_widget(QSL("chkPZN7")), SIGNAL(toggled( bool )), SLOT(update_preview()));
}
} else if (symbology == BARCODE_QRCODE) {
QFile file(QSL(":/grpQR.ui"));
if (!file.open(QIODevice::ReadOnly))
@ -2860,6 +2871,13 @@ void MainWindow::update_preview()
}
break;
case BARCODE_PZN:
m_bc.bc.setSymbol(BARCODE_PZN);
if (get_chk_val(QSL("chkPZN7"))) {
m_bc.bc.setOption2(1);
}
break;
case BARCODE_QRCODE:
if (get_rad_val(QSL("radQRHIBC")))
m_bc.bc.setSymbol(BARCODE_HIBC_QR);
@ -4068,6 +4086,10 @@ void MainWindow::save_sub_settings(QSettings &settings, int symbology)
settings.setValue(QSL("studio/bc/itf14/chk_no_quiet_zones"), get_chk_val(QSL("chkITF14NoQuietZones")));
break;
case BARCODE_PZN:
settings.setValue(QSL("studio/bc/pzn/chk_pzn7"), get_chk_val(QSL("chkPZN7")));
break;
case BARCODE_QRCODE:
case BARCODE_HIBC_QR:
settings.setValue(QSL("studio/bc/qrcode/size"), get_cmb_index(QSL("cmbQRSize")));
@ -4476,6 +4498,10 @@ void MainWindow::load_sub_settings(QSettings &settings, int symbology)
set_chk_from_setting(settings, QSL("studio/bc/itf14/chk_no_quiet_zones"), QSL("chkITF14NoQuietZones"));
break;
case BARCODE_PZN:
set_chk_from_setting(settings, QSL("studio/bc/pzn/chk_pzn7"), QSL("chkPZN7"));
break;
case BARCODE_QRCODE:
case BARCODE_HIBC_QR:
set_cmb_from_setting(settings, QSL("studio/bc/qrcode/size"), QSL("cmbQRSize"));

View File

@ -58,7 +58,7 @@ BEGIN
VALUE "InternalName", "qtZint"
VALUE "LegalCopyright", "Copyright <20> 2021 Robin Stuart & BogDan Vatra"
VALUE "LegalCopyright", "Copyright <20> 2022 Robin Stuart & BogDan Vatra"
VALUE "License", "GNU General Public License version 3"

View File

@ -26,6 +26,7 @@
<file>grpMQR.ui</file>
<file>grpMSICheck.ui</file>
<file>grpPDF417.ui</file>
<file>grpPZN.ui</file>
<file>grpQR.ui</file>
<file>grpRMQR.ui</file>
<file>grpUltra.ui</file>