mirror of
https://git.code.sf.net/p/zint/code
synced 2026-05-07 22:53:47 +00:00
DATAMATRIX: add manual FNC1 support
CODE128: error on unrecognized extra escape sequences instead of just passing them thru; fix possible shifting before manual FNC1 in 2nd position after single alpha (otherwise won't be recognized as AIM) fix not removing manual FNC1 in 1st/2nd position from content segs (as implied by symbology identifier) CLI: warn if both "--dmre" and "--square" given (as "--square" overwrites "--dmre") common: new routines `z_isalpha()`, `z_extra_escapes()` and `z_ct_set_seg_extra_escapes_eci()` library: new helper `supports_extra_escape_mode()`; fix some error_number dups BWIPP: update to latest, and allow for removal of DBAR_LTD_CC RHS quiet zones & extra row when have add-on in EAN/UPC composites test suite: fix BWIPP escaping manual/man/tcl: update for DATAMATRIX manual FNC1 support Windows: resource scripts: make more consistent (libzint, CLI, GUI) win32/README: update with MSVC 2026
This commit is contained in:
@@ -2026,6 +2026,7 @@ void MainWindow::change_options()
|
||||
dm_startmode_ui_set();
|
||||
tabMain->insertTab(1, m_optionWidget, tr("D&ata Matrix"));
|
||||
connect(get_widget(QSL("radDMStand")), SIGNAL(toggled(bool)), SLOT(update_preview()));
|
||||
connect(get_widget(QSL("radDMExtraEsc")), SIGNAL(toggled(bool)), SLOT(update_preview()));
|
||||
connect(get_widget(QSL("radDMGS1")), SIGNAL(toggled(bool)), SLOT(update_preview()));
|
||||
connect(get_widget(QSL("radDMHIBC")), SIGNAL(toggled(bool)), SLOT(update_preview()));
|
||||
connect(get_widget(QSL("cmbDMSize")), SIGNAL(currentIndexChanged(int)), SLOT(update_preview()));
|
||||
@@ -3113,6 +3114,11 @@ void MainWindow::update_preview()
|
||||
checkBox->setEnabled(false);
|
||||
}
|
||||
|
||||
if (get_rad_val(QSL("radDMExtraEsc"))) {
|
||||
m_bc.bc.setSymbol(BARCODE_DATAMATRIX);
|
||||
m_bc.bc.setInputMode(m_bc.bc.inputMode() | EXTRA_ESCAPE_MODE);
|
||||
}
|
||||
|
||||
m_bc.bc.setOption2(get_cmb_index(QSL("cmbDMSize")));
|
||||
|
||||
if (get_cmb_index(QSL("cmbDMSize")) == 0) {
|
||||
@@ -4546,7 +4552,7 @@ void MainWindow::save_sub_settings(QSettings &settings, int symbology)
|
||||
case BARCODE_HIBC_DM:
|
||||
settings.setValue(QSL("studio/bc/datamatrix/size"), get_cmb_index(QSL("cmbDMSize")));
|
||||
settings.setValue(QSL("studio/bc/datamatrix/encoding_mode"), get_rad_grp_index(
|
||||
QStringList() << QSL("radDMStand") << QSL("radDMGS1") << QSL("radDMHIBC")));
|
||||
QStringList() << QSL("radDMStand") << QSL("radDMGS1") << QSL("radDMHIBC") << QSL("radDMExtraEsc")));
|
||||
settings.setValue(QSL("studio/bc/datamatrix/chk_suppress_rect"), get_chk_val(QSL("chkDMRectangle")));
|
||||
settings.setValue(QSL("studio/bc/datamatrix/chk_allow_dmre"), get_chk_val(QSL("chkDMRE")));
|
||||
settings.setValue(QSL("studio/bc/datamatrix/chk_gs_sep"), get_chk_val(QSL("chkDMGSSep")));
|
||||
@@ -5024,7 +5030,7 @@ void MainWindow::load_sub_settings(QSettings &settings, int symbology)
|
||||
case BARCODE_HIBC_DM:
|
||||
set_cmb_from_setting(settings, QSL("studio/bc/datamatrix/size"), QSL("cmbDMSize"));
|
||||
set_rad_from_setting(settings, QSL("studio/bc/datamatrix/encoding_mode"),
|
||||
QStringList() << QSL("radDMStand") << QSL("radDMGS1") << QSL("radDMHIBC"));
|
||||
QStringList() << QSL("radDMStand") << QSL("radDMGS1") << QSL("radDMHIBC") << QSL("radDMExtraEsc"));
|
||||
set_chk_from_setting(settings, QSL("studio/bc/datamatrix/chk_suppress_rect"), QSL("chkDMRectangle"));
|
||||
set_chk_from_setting(settings, QSL("studio/bc/datamatrix/chk_allow_dmre"), QSL("chkDMRE"));
|
||||
set_chk_from_setting(settings, QSL("studio/bc/datamatrix/chk_gs_sep"), QSL("chkDMGSSep"));
|
||||
|
||||
Reference in New Issue
Block a user