UPC/EAN, ITF14: quiet zones, addongap; raster/vector: sync code, use double

This commit is contained in:
gitlost 2020-07-15 19:00:12 +01:00
parent e90c273165
commit 2a19b883a5
55 changed files with 2917 additions and 1351 deletions

View file

@ -8,9 +8,9 @@ set(zint-qt_SRCS barcodeitem.cpp main.cpp mainwindow.cpp datawindow.cpp sequen
QT5_WRAP_CPP(zint-qt_SRCS mainwindow.h datawindow.h sequencewindow.h exportwindow.h)
QT5_WRAP_UI(zint-qt_SRCS mainWindow.ui extData.ui extSequence.ui extExport.ui)
# grpAztec.ui grpC49.ui grpDBExtend.ui grpLOGMARS.ui grpPDF417.ui grpVIN.ui
# grpC11.ui grpChannel.ui grpDM.ui grpMaxicode.ui grpPZN.ui
# grpC128.ui grpCodabar.ui grpDotCode.ui grpMicroPDF.ui grpQR.ui
# grpAztec.ui grpC49.ui grpDBExtend.ui grpLOGMARS.ui grpPDF417.ui grpUPCA.ui
# grpC11.ui grpChannel.ui grpDM.ui grpMaxicode.ui grpPZN.ui grpUPCEAN.ui
# grpC128.ui grpCodabar.ui grpDotCode.ui grpMicroPDF.ui grpQR.ui grpVIN.ui
# grpC16k.ui grpCodablockF.ui grpGrid.ui grpMQR.ui grpRMQR.ui
# grpC39.ui grpCodeOne.ui grpHX.ui grpMSICheck.ui grpUltra.ui

View file

@ -39,6 +39,8 @@ FORMS += extData.ui \
grpPDF417.ui \
grpQR.ui \
grpRMQR.ui \
grpUPCA.ui \
grpUPCEAN.ui \
grpVIN.ui \
mainWindow.ui \
grpDotCode.ui

81
frontend_qt/grpUPCA.ui Normal file
View file

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>grpUPCA</class>
<widget class="QWidget" name="grpUPCA">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>310</width>
<height>78</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>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="lblUPCAAddonGap">
<property name="text">
<string>&amp;Add-on Gap:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
<property name="buddy">
<cstring>cmbUPCAAddonGap</cstring>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="cmbUPCAAddonGap">
<item>
<property name="text">
<string>9 X (default)</string>
</property>
</item>
<item>
<property name="text">
<string>10 X</string>
</property>
</item>
<item>
<property name="text">
<string>11 X</string>
</property>
</item>
<item>
<property name="text">
<string>12 X</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>30</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

91
frontend_qt/grpUPCEAN.ui Normal file
View file

@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>grpUPCEAN</class>
<widget class="QWidget" name="grpUPCEAN">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>310</width>
<height>78</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>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="lblUPCEANAddonGap">
<property name="text">
<string>&amp;Add-on Gap:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
<property name="buddy">
<cstring>cmbUPCEANAddonGap</cstring>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="cmbUPCEANAddonGap">
<item>
<property name="text">
<string>7 X (default)</string>
</property>
</item>
<item>
<property name="text">
<string>8 X</string>
</property>
</item>
<item>
<property name="text">
<string>9 X</string>
</property>
</item>
<item>
<property name="text">
<string>10 X</string>
</property>
</item>
<item>
<property name="text">
<string>11 X</string>
</property>
</item>
<item>
<property name="text">
<string>12 X</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>30</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View file

@ -96,7 +96,7 @@ MainWindow::MainWindow(QWidget* parent, Qt::WindowFlags fl)
"MicroPDF417 (ISO 24728)",
"Micro QR Code",
"MSI Plessey",
"NVE-18",
"NVE-18 (SSCC-18)",
"PDF417 (ISO 15438)",
"Pharmacode",
"Pharmacode 2-track",
@ -722,7 +722,7 @@ void MainWindow::change_options()
tabMain->insertTab(1,m_optionWidget,tr("GS1 DataBar Stacked"));
connect(m_optionWidget->findChild<QObject*>("cmbCols"), SIGNAL(currentIndexChanged ( int )), SLOT(update_preview()));
}
if (symbology == BARCODE_ULTRA)
{
QFile file(":/grpUltra.ui");
@ -738,6 +738,36 @@ void MainWindow::change_options()
connect(m_optionWidget->findChild<QObject*>("radUltraGS1"), SIGNAL(clicked( bool )), SLOT(update_preview()));
}
if (symbology == BARCODE_UPCA || symbology == BARCODE_UPCA_CHK || symbology == BARCODE_UPCA_CC)
{
QFile file(":/grpUPCA.ui");
if (!file.open(QIODevice::ReadOnly))
return;
m_optionWidget=uiload.load(&file);
file.close();
tabMain->insertTab(1, m_optionWidget, tr("UPC-A"));
connect(m_optionWidget->findChild<QObject*>("cmbUPCAAddonGap"), SIGNAL(currentIndexChanged( int )), SLOT(update_preview()));
}
if (symbology == BARCODE_EANX || symbology == BARCODE_EANX_CHK || symbology == BARCODE_EANX_CC
|| symbology == BARCODE_UPCE || symbology == BARCODE_UPCE_CHK || symbology == BARCODE_UPCE_CC
|| symbology == BARCODE_ISBNX)
{
QFile file(":/grpUPCEAN.ui");
if (!file.open(QIODevice::ReadOnly))
return;
m_optionWidget=uiload.load(&file);
file.close();
if (symbology == BARCODE_UPCE || symbology == BARCODE_UPCE_CHK || symbology == BARCODE_UPCE_CC) {
tabMain->insertTab(1, m_optionWidget, tr("UPC-E"));
} else if (symbology == BARCODE_ISBNX) {
tabMain->insertTab(1, m_optionWidget, tr("ISBN"));
} else {
tabMain->insertTab(1, m_optionWidget, tr("EAN"));
}
connect(m_optionWidget->findChild<QObject*>("cmbUPCEANAddonGap"), SIGNAL(currentIndexChanged( int )), SLOT(update_preview()));
}
if (symbology == BARCODE_VIN)
{
QFile file(":/grpVIN.ui");
@ -812,8 +842,27 @@ void MainWindow::maxi_primary()
}
}
void MainWindow::upcean_addon_gap(QComboBox *comboBox, QLabel* label, int base)
{
const QRegularExpression addonRE("^[0-9X]+[+][0-9]+$");
int item_val;
if (txtData->text().contains(addonRE)) {
comboBox->setEnabled(true);
label->setEnabled(true);
item_val = comboBox->currentIndex();
if (item_val) {
m_bc.bc.setOption2(item_val + base);
}
} else {
comboBox->setEnabled(false);
label->setEnabled(false);
}
}
void MainWindow::update_preview()
{
int symbology = metaObject()->enumerator(0).value(bstyle->currentIndex());
int width = view->geometry().width();
int height = view->geometry().height();
int item_val;
@ -838,8 +887,9 @@ void MainWindow::update_preview()
m_bc.bc.setHideText(1);
}
m_bc.bc.setGSSep(false);
switch(metaObject()->enumerator(0).value(bstyle->currentIndex()))
{
switch (symbology) {
case BARCODE_CODE128:
if(m_optionWidget->findChild<QRadioButton*>("radC128Stand")->isChecked())
m_bc.bc.setSymbol(BARCODE_CODE128);
@ -864,6 +914,12 @@ void MainWindow::update_preview()
m_bc.bc.setSymbol(BARCODE_EANX_CC);
else
m_bc.bc.setSymbol(BARCODE_EANX);
upcean_addon_gap(m_optionWidget->findChild<QComboBox*>("cmbUPCEANAddonGap"), m_optionWidget->findChild<QLabel*>("lblUPCEANAddonGap"), 7 /*base*/);
break;
case BARCODE_ISBNX:
m_bc.bc.setSymbol(symbology);
upcean_addon_gap(m_optionWidget->findChild<QComboBox*>("cmbUPCEANAddonGap"), m_optionWidget->findChild<QLabel*>("lblUPCEANAddonGap"), 7 /*base*/);
break;
case BARCODE_UPCA:
@ -871,6 +927,7 @@ void MainWindow::update_preview()
m_bc.bc.setSymbol(BARCODE_UPCA_CC);
else
m_bc.bc.setSymbol(BARCODE_UPCA);
upcean_addon_gap(m_optionWidget->findChild<QComboBox*>("cmbUPCAAddonGap"), m_optionWidget->findChild<QLabel*>("lblUPCAAddonGap"), 9 /*base*/);
break;
case BARCODE_UPCE:
@ -878,6 +935,7 @@ void MainWindow::update_preview()
m_bc.bc.setSymbol(BARCODE_UPCE_CC);
else
m_bc.bc.setSymbol(BARCODE_UPCE);
upcean_addon_gap(m_optionWidget->findChild<QComboBox*>("cmbUPCEANAddonGap"), m_optionWidget->findChild<QLabel*>("lblUPCEANAddonGap"), 7 /*base*/);
break;
case BARCODE_RSS14:
@ -1196,7 +1254,7 @@ void MainWindow::update_preview()
m_bc.bc.setSecurityLevel(item_val);
}
break;
case BARCODE_ULTRA:
m_bc.bc.setSymbol(BARCODE_ULTRA);
if(m_optionWidget->findChild<QRadioButton*>("radUltraEcc")->isChecked())
@ -1213,7 +1271,7 @@ void MainWindow::update_preview()
break;
default:
m_bc.bc.setSymbol(metaObject()->enumerator(0).value(bstyle->currentIndex()));
m_bc.bc.setSymbol(symbology);
break;
}

View file

@ -129,6 +129,7 @@ public slots:
protected:
void resizeEvent(QResizeEvent *event);
void upcean_addon_gap(QComboBox *comboBox, QLabel* label, int base);
private slots:
bool save();

View file

@ -29,6 +29,8 @@
<file>grpCodablockF.ui</file>
<file>grpRMQR.ui</file>
<file>grpUltra.ui</file>
<file>grpUPCA.ui</file>
<file>grpUPCEAN.ui</file>
<file>grpVIN.ui</file>
</qresource>
</RCC>