2026年5月23日暂存
This commit is contained in:
+13
-2
@@ -37,17 +37,23 @@ void PicCodeItem::setBarcodeViewModel(const BarcodeViewModel &vm)
|
||||
{
|
||||
m_vm = vm;
|
||||
m_currCodeTxt = "";
|
||||
setTextItemModel(m_vm.generalSettingsVM);
|
||||
updateVariants();
|
||||
qInfo() << "Barcode model: \r\n" << qPrintable(BarcodeViewModel::toString(vm));
|
||||
}
|
||||
|
||||
BarcodeViewModel PicCodeItem::barcodeViewModel()
|
||||
{
|
||||
m_vm.generalSettingsVM = textItemModel();
|
||||
return m_vm;
|
||||
}
|
||||
|
||||
bool PicCodeItem::updateVariants(const QVector<int> counters)
|
||||
{
|
||||
if (counters.size() < 2) {
|
||||
qWarning() << "PicCodeItem::updateVariants: counters size insufficient:" << counters.size() << ", expected >= 2";
|
||||
return false;
|
||||
}
|
||||
m_currCounterValues = counters;
|
||||
return updateVariants();
|
||||
}
|
||||
@@ -70,10 +76,15 @@ void PicCodeItem::saveCustomAttrs(QXmlStreamAttributes &attrs)
|
||||
|
||||
bool PicCodeItem::updateVariants()
|
||||
{
|
||||
auto txt = generateTxtFromBarcodeViewModel(m_vm, {m_currCounterValues[0], m_currCounterValues[1]}, QDateTime::currentDateTime());
|
||||
if (m_currCounterValues.size() < 2) {
|
||||
qWarning() << "PicCodeItem::updateVariants: m_currCounterValues size < 2, cannot generate barcode text";
|
||||
return false;
|
||||
}
|
||||
|
||||
auto txt = ItemUtils::generateTxtFromBarcodeViewModel(m_vm, {m_currCounterValues[0], m_currCounterValues[1]}, QDateTime::currentDateTime());
|
||||
if(txt != m_currCodeTxt || m_currCodeTxt.isEmpty()) {
|
||||
m_currCodeTxt = txt;
|
||||
m_codeImage = generateBarcodeImage(txt, m_vm.type, m_vm.format);
|
||||
m_codeImage = ItemUtils::generateBarcodeImage(txt, m_vm.type, m_vm.format);
|
||||
applyModify();
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user