2026年6月4日 commit
This commit is contained in:
+33
-22
@@ -31,6 +31,7 @@
|
||||
#include "scene/PicScheduleShiftItem.h"
|
||||
#include "scene/piccodeitem.h"
|
||||
#include <QElapsedTimer>
|
||||
#include <QScroller>
|
||||
|
||||
extern MyInputMethod *myInputMethod;
|
||||
unsigned char test_flag,open_close;
|
||||
@@ -42,6 +43,10 @@ MainWidget::MainWidget(QWidget* parent)
|
||||
// 加载UI文件
|
||||
ui.setupUi(this);
|
||||
|
||||
if (sysPara == nullptr) {
|
||||
sysPara = SysPara::ins();
|
||||
}
|
||||
|
||||
// 关联成员变量到UI控件
|
||||
m_EditBtn = ui.m_EditBtn;
|
||||
m_AddBtn = ui.m_AddBtn;
|
||||
@@ -76,6 +81,24 @@ MainWidget::MainWidget(QWidget* parent)
|
||||
changeHighLight(false);
|
||||
enablePrintButton(false);
|
||||
|
||||
|
||||
QWidget* viewport = ui.scrollArea->viewport();
|
||||
|
||||
// 捕获鼠标左键拖动手势(桌面端)
|
||||
QScroller::grabGesture(viewport, QScroller::LeftMouseButtonGesture);
|
||||
// 如需同时支持触摸屏,可加上触屏手势
|
||||
QScroller::grabGesture(viewport, QScroller::TouchGesture);
|
||||
|
||||
QScroller* scroller = QScroller::scroller(viewport);
|
||||
QScrollerProperties properties = scroller->scrollerProperties();
|
||||
|
||||
// 启用惯性滚动
|
||||
properties.setScrollMetric(QScrollerProperties::DecelerationFactor, 0.7);
|
||||
// 防止过小的移动被误判为拖拽
|
||||
properties.setScrollMetric(QScrollerProperties::DragStartDistance, 0.002);
|
||||
|
||||
scroller->setScrollerProperties(properties);
|
||||
scroller->grabGesture(ui.scrollArea->viewport(), QScroller::LeftMouseButtonGesture);
|
||||
}
|
||||
|
||||
MainWidget::~MainWidget()
|
||||
@@ -151,21 +174,6 @@ void MainWidget::bindPicScene(PicScene* pPicScene){
|
||||
this->pPicScene = pPicScene;
|
||||
}
|
||||
|
||||
void MainWidget::bindSysPara(SysPara *sysPara){
|
||||
this->sysPara = sysPara;
|
||||
// ui->textEditOption->bindSysPara(sysPara);
|
||||
m_PrintDisplay->bindSysPara(sysPara);
|
||||
#ifdef _2DCODE_
|
||||
// barcode->bindSysPara(sysPara);
|
||||
// dlgqrcode->setSysPara(sysPara);
|
||||
// dlgqrcode->barCodeFlag = this->sysPara->para.qrOption.barCodeFlag;
|
||||
// dlgqrcode->SetOption((qrOption_t*)&sysPara->para.qrOption);
|
||||
#endif
|
||||
#ifdef PICSCENE
|
||||
// ui->senceEditOption->bindSysPara(sysPara);
|
||||
#endif
|
||||
}
|
||||
|
||||
void MainWidget::_on_pushButtonPowerOff_pressed(bool notice)
|
||||
{
|
||||
if(!sysPara)
|
||||
@@ -1782,7 +1790,6 @@ void MainWidget::airPushingProcess()
|
||||
{
|
||||
if(sysPara){
|
||||
if (sysPara->status.airPushing) {
|
||||
//qDebug()<< "start airPushingProcess "<<sysPara->status.airPushingOnTime;
|
||||
// 执行排气 7 秒
|
||||
setRunStatus(tr("正在排气..."));
|
||||
++sysPara->status.airPushingOnTime;
|
||||
@@ -3151,11 +3158,13 @@ void MainWidget::onPreviewScene()
|
||||
wmax = sysPara->status.currAlterPrintRow;
|
||||
}
|
||||
/*-------------------------------切换到显示窗口-----------------------------------*/
|
||||
if(sysPara->status.addSpace)
|
||||
m_PrintDisplay->setDisplaySize(sysPara->status.currPrintCol/2,sysPara->status.currPrintRow);
|
||||
else m_PrintDisplay->setDisplaySize(sysPara->status.currPrintCol,sysPara->status.currPrintRow);
|
||||
|
||||
m_PrintDisplay->setDisplaySize(sysPara->status.currPrintCol,sysPara->para.AlterMode?sysPara->status.currAlterPrintRow : sysPara->status.currPrintRow);
|
||||
qDebug() << "currPrintCol: " << sysPara->status.currPrintCol;
|
||||
auto rows = sysPara->para.AlterMode?sysPara->status.currAlterPrintRow : sysPara->status.currPrintRow;
|
||||
rows = std::max(rows, (m_PrintDisplay->parentWidget()->height() / m_PrintDisplay->currScaleRatio()));
|
||||
auto cols = sysPara->status.currPrintCol;
|
||||
cols = std::max(cols, (m_PrintDisplay->parentWidget()->width() / m_PrintDisplay->currScaleRatio()));
|
||||
m_PrintDisplay->setDisplaySize(cols, rows);
|
||||
// ui->stackedWidgetText->setCurrentWidget(ui->pagePrintTextDisplay);
|
||||
// ui->stackedWidgetOption->setCurrentWidget(ui->pageOption);
|
||||
// ui->labelTextWidthHeight->setText(tr("[ %1行 x %2列 ]").arg(wmax).arg(sysPara->status.currPrintCol));
|
||||
@@ -3186,10 +3195,12 @@ void MainWidget::handleEmptySize()
|
||||
|
||||
// 清空打印数据缓冲区
|
||||
unsigned char *dat = MaxCol4000 ? sysPara->status.printDat_Normal : sysPara->status.printDat;
|
||||
memset(dat, 0, sizeof(MaxCol4000 ? sysPara->status.printDat_Normal : sysPara->status.printDat));
|
||||
memset(dat, 0, MaxCol4000 ? sizeof(sysPara->status.printDat_Normal) : sizeof(sysPara->status.printDat));
|
||||
|
||||
// 刷新预览显示,显示空场景(白色背景)
|
||||
m_PrintDisplay->setDisplaySize(sysPara->status.currPrintCol, sysPara->status.currPrintRow);
|
||||
auto rows = sysPara->para.AlterMode?sysPara->status.currAlterPrintRow : sysPara->status.currPrintRow;
|
||||
rows = std::max(rows, (m_PrintDisplay->parentWidget()->height() / m_PrintDisplay->currScaleRatio()));
|
||||
m_PrintDisplay->setDisplaySize(m_PrintDisplay->parentWidget()->width() / m_PrintDisplay->currScaleRatio(), rows);
|
||||
m_PrintDisplay->update();
|
||||
previewFlag = 0;
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user