From 0b8c488853d41f4500aa5322975267e08af0afd0 Mon Sep 17 00:00:00 2001 From: gitlost Date: Wed, 13 Oct 2021 15:31:28 +0100 Subject: [PATCH] GUI: fix quietzones, compliantheight per symbology setting/saving GUI: DATAMATRIX: move automatic size checkboxs to under Size and add label --- frontend_qt/grpDM.ui | 82 +++++++++++++++++++++++--------------- frontend_qt/mainwindow.cpp | 11 +++++ 2 files changed, 61 insertions(+), 32 deletions(-) diff --git a/frontend_qt/grpDM.ui b/frontend_qt/grpDM.ui index e850617a..5aa437c3 100644 --- a/frontend_qt/grpDM.ui +++ b/frontend_qt/grpDM.ui @@ -290,6 +290,54 @@ + + + + Automatic Size: + + + Selection criteria when considering +automatic sizes +Normally DMRE sizes are not considered, +but other rectangular versions are +(ignored if disabled) + + + + + + + + + Only Squa&re + + + Only consider square versions on automatic symbol +size selection, suppressing rectangular versions +(ignored if disabled) + + + true + + + + + + + Allo&w DMRE + + + Consider Data Matrix Rectangular Extension (DMRE) +versions on automatic symbol size selection +(ignored if disabled) + + + false + + + + + @@ -344,36 +392,6 @@ the data with a slash "/" - - - - Suppress &Rectangular Symbols in Automatic Mode - - - Only consider square versions on automatic symbol -size selection -(ignored if disabled) - - - true - - - - - - - Allo&w DMRE in Automatic Mode - - - Consider DMRE versions on automatic symbol -size selection -(ignored if disabled) - - - false - - - @@ -524,7 +542,7 @@ Value ranges from 2 to 16 - + @@ -656,7 +674,7 @@ Value ranges from 1 to count - + diff --git a/frontend_qt/mainwindow.cpp b/frontend_qt/mainwindow.cpp index 6ebe8a5a..97f20aea 100644 --- a/frontend_qt/mainwindow.cpp +++ b/frontend_qt/mainwindow.cpp @@ -1830,6 +1830,7 @@ void MainWindow::update_preview() if (get_cmb_index(QSL("cmbDM200Size")) == 0) { // Suppressing rectangles or allowing DMRE only makes sense if in automatic size mode + m_optionWidget->findChild(QSL("lblDMAutoSize"))->setEnabled(true); m_optionWidget->findChild(QSL("chkDMRectangle"))->setEnabled(true); if (m_optionWidget->findChild(QSL("chkDMRectangle"))->isChecked()) { m_bc.bc.setOption3(DM_SQUARE); @@ -1842,6 +1843,7 @@ void MainWindow::update_preview() m_bc.bc.setOption3(0); } } else { + m_optionWidget->findChild(QSL("lblDMAutoSize"))->setEnabled(false); m_optionWidget->findChild(QSL("chkDMRectangle"))->setEnabled(false); m_optionWidget->findChild(QSL("chkDMRE"))->setEnabled(false); m_bc.bc.setOption3(0); @@ -2626,6 +2628,10 @@ void MainWindow::save_sub_settings(QSettings &settings, int symbology) QSL("studio/bc/%1/appearance/autoheight").arg(name), chkAutoHeight->isChecked() ? 1 : 0); settings.setValue(QSL("studio/bc/%1/appearance/height").arg(name), heightb->value()); } + if (chkCompliantHeight->isEnabled()) { + settings.setValue( + QSL("studio/bc/%1/appearance/compliantheight").arg(name), chkCompliantHeight->isChecked() ? 1 : 0); + } settings.setValue(QSL("studio/bc/%1/appearance/border").arg(name), bwidth->value()); settings.setValue(QSL("studio/bc/%1/appearance/whitespace").arg(name), spnWhitespace->value()); settings.setValue(QSL("studio/bc/%1/appearance/vwhitespace").arg(name), spnVWhitespace->value()); @@ -2972,6 +2978,10 @@ void MainWindow::load_sub_settings(QSettings &settings, int symbology) QSL("studio/bc/%1/appearance/autoheight").arg(name), 1).toInt() ? true : false); heightb->setValue(settings.value(QSL("studio/bc/%1/appearance/height").arg(name), 50.0f).toFloat()); } + if (chkCompliantHeight->isEnabled()) { + chkCompliantHeight->setChecked(settings.value( + QSL("studio/bc/%1/appearance/compliantheight").arg(name), 1).toInt() ? true : false); + } bwidth->setValue(settings.value(QSL("studio/bc/%1/appearance/border").arg(name), 0).toInt()); spnWhitespace->setValue(settings.value(QSL("studio/bc/%1/appearance/whitespace").arg(name), 0).toInt()); spnVWhitespace->setValue(settings.value(QSL("studio/bc/%1/appearance/vwhitespace").arg(name), 0).toInt()); @@ -2984,6 +2994,7 @@ void MainWindow::load_sub_settings(QSettings &settings, int symbology) QSL("studio/bc/%1/appearance/chk_hrt_show").arg(name), 1).toInt() ? true : false); } chkCMYK->setChecked(settings.value(QSL("studio/bc/%1/appearance/cmyk").arg(name), 0).toInt() ? true : false); + chkQuietZones->setChecked(settings.value(QSL("studio/bc/%1/appearance/chk_quietzones").arg(name), 0).toInt() ? true : false); cmbRotate->setCurrentIndex(settings.value(QSL("studio/bc/%1/appearance/rotate").arg(name), 0).toInt()); if (symbology == BARCODE_DOTCODE || chkDotty->isEnabled()) { chkDotty->setChecked(settings.value(