V6.7.4 release
This commit is contained in:
+4
-3
@@ -1090,9 +1090,6 @@ void InkJetPrinter::timerHandler(void){
|
|||||||
m_stableCount = 0;
|
m_stableCount = 0;
|
||||||
for(int i = 0; i < 10; i++) m_pressureBuf[i] = 0;
|
for(int i = 0; i < 10; i++) m_pressureBuf[i] = 0;
|
||||||
m_bufIdx = 0;
|
m_bufIdx = 0;
|
||||||
LogInfo::setRunStatusText(tr("自检完成!!!"));
|
|
||||||
m_MainWidget->setRunStatus(tr("自检完成!!!"));
|
|
||||||
qDebug()<<"自检完成!!!";
|
|
||||||
|
|
||||||
m_MainWidget->setReclaimOpenBtnStatus(true);
|
m_MainWidget->setReclaimOpenBtnStatus(true);
|
||||||
m_MainWidget->setReclaimCloseBtnStatus(false);
|
m_MainWidget->setReclaimCloseBtnStatus(false);
|
||||||
@@ -1117,6 +1114,10 @@ void InkJetPrinter::timerHandler(void){
|
|||||||
|
|
||||||
m_MainWidget->on_m_StopBtn_clicked();
|
m_MainWidget->on_m_StopBtn_clicked();
|
||||||
|
|
||||||
|
LogInfo::setRunStatusText(tr("自检完成!!!"));
|
||||||
|
m_MainWidget->setRunStatus(tr("自检完成!!!"));
|
||||||
|
qDebug()<<"自检完成!!!";
|
||||||
|
|
||||||
if(sysPara->para.Reciclar)
|
if(sysPara->para.Reciclar)
|
||||||
test_flag = 1;
|
test_flag = 1;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
*/
|
*/
|
||||||
#define UP_PRINTER_MAJOR_VER 6
|
#define UP_PRINTER_MAJOR_VER 6
|
||||||
#define UP_PRINTER_MINOR_VER 7
|
#define UP_PRINTER_MINOR_VER 7
|
||||||
#define UP_PRINTER_RIVISION_VER 3
|
#define UP_PRINTER_RIVISION_VER 4
|
||||||
#define SUB_VERSION "_KOR"
|
#define SUB_VERSION "_KOR"
|
||||||
#ifdef __RFID_OLD
|
#ifdef __RFID_OLD
|
||||||
#define SUB_RFID "_RO"
|
#define SUB_RFID "_RO"
|
||||||
|
|||||||
+448
-374
File diff suppressed because it is too large
Load Diff
Binary file not shown.
+448
-374
File diff suppressed because it is too large
Load Diff
+89
-12
@@ -9,12 +9,16 @@
|
|||||||
|
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
#include <QXmlStreamReader>
|
#include <QXmlStreamReader>
|
||||||
|
#include <QXmlStreamWriter>
|
||||||
#include <QXmlStreamAttributes>
|
#include <QXmlStreamAttributes>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QImage>
|
#include <QImage>
|
||||||
#include <QPainter>
|
#include <QPainter>
|
||||||
#include <QScopedPointer>
|
#include <QScopedPointer>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "../Printsetting.h"
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
@@ -99,6 +103,7 @@ bool parseVbFileElement(QXmlStreamReader& reader, PicScene* scene)
|
|||||||
SourceType sourceType = sourceTypeFromAttrs(itemAttrs);
|
SourceType sourceType = sourceTypeFromAttrs(itemAttrs);
|
||||||
PicTextItem* item = createSceneItem(sourceType);
|
PicTextItem* item = createSceneItem(sourceType);
|
||||||
if (!item) {
|
if (!item) {
|
||||||
|
// 单个图元损坏不应影响整个文件的其余内容加载。
|
||||||
qWarning() << "PicSceneLoader: skip invalid VBfile item";
|
qWarning() << "PicSceneLoader: skip invalid VBfile item";
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -121,26 +126,36 @@ bool parseVbFileElement(QXmlStreamReader& reader, PicScene* scene)
|
|||||||
|
|
||||||
namespace PicSceneLoader {
|
namespace PicSceneLoader {
|
||||||
|
|
||||||
PicScene* createSceneFromFile(const QString& xmlFilename)
|
bool loadSceneFromFile(const QString& xmlFilename, PicScene* targetScene, PrintSettingModel* outPrintSettings)
|
||||||
{
|
{
|
||||||
|
if (!targetScene) {
|
||||||
|
qWarning() << "PicSceneLoader: targetScene is null";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
QFile file(xmlFilename);
|
QFile file(xmlFilename);
|
||||||
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
|
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
|
||||||
qWarning() << "PicSceneLoader: failed to open" << xmlFilename << file.errorString();
|
qWarning() << "PicSceneLoader: failed to open" << xmlFilename << file.errorString();
|
||||||
return nullptr;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
QXmlStreamReader reader(&file);
|
QXmlStreamReader reader(&file);
|
||||||
PicScene* scene = new PicScene();
|
PrintSettingModel printSettings;
|
||||||
|
|
||||||
|
// Widget 对 scene 持有长期信号和 view 绑定,因此加载时必须复用现有 scene。
|
||||||
|
targetScene->clear();
|
||||||
|
|
||||||
while (!reader.atEnd()) {
|
while (!reader.atEnd()) {
|
||||||
reader.readNext();
|
reader.readNext();
|
||||||
if (reader.isStartElement() && reader.name() == "VBfiles") {
|
if (reader.isStartElement() && reader.name() == "VBfiles") {
|
||||||
while (reader.readNextStartElement()) {
|
while (reader.readNextStartElement()) {
|
||||||
if (reader.name() == "VBfile") {
|
if (reader.name() == "VBfile") {
|
||||||
if (!parseVbFileElement(reader, scene)) {
|
if (!parseVbFileElement(reader, targetScene)) {
|
||||||
delete scene;
|
return false;
|
||||||
return nullptr;
|
|
||||||
}
|
}
|
||||||
|
} else if (reader.name() == "PrintSettings") {
|
||||||
|
PrintSettingModel::loadFromXml(printSettings, reader.attributes());
|
||||||
|
reader.skipCurrentElement();
|
||||||
} else {
|
} else {
|
||||||
reader.skipCurrentElement();
|
reader.skipCurrentElement();
|
||||||
}
|
}
|
||||||
@@ -151,17 +166,21 @@ PicScene* createSceneFromFile(const QString& xmlFilename)
|
|||||||
if (reader.hasError()) {
|
if (reader.hasError()) {
|
||||||
qWarning() << "PicSceneLoader: XML parse error" << reader.errorString()
|
qWarning() << "PicSceneLoader: XML parse error" << reader.errorString()
|
||||||
<< "at" << reader.lineNumber() << ":" << reader.columnNumber();
|
<< "at" << reader.lineNumber() << ":" << reader.columnNumber();
|
||||||
delete scene;
|
return false;
|
||||||
return nullptr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return scene;
|
if (outPrintSettings) {
|
||||||
|
*outPrintSettings = printSettings;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
QImage previewSceneFromFile(const QString &xmlFilename)
|
QImage previewSceneFromFile(const QString &xmlFilename)
|
||||||
{
|
{
|
||||||
QScopedPointer<PicScene> scene(createSceneFromFile(xmlFilename));
|
// 预览刻意复用与正常打开相同的加载路径,避免两套逻辑逐渐产生偏差。
|
||||||
if (!scene) {
|
QScopedPointer<PicScene> scene(new PicScene());
|
||||||
|
if (!loadSceneFromFile(xmlFilename, scene.data(), nullptr)) {
|
||||||
return QImage();
|
return QImage();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -179,10 +198,68 @@ QImage previewSceneFromFile(const QString &xmlFilename)
|
|||||||
painter.setRenderHint(QPainter::Antialiasing, true);
|
painter.setRenderHint(QPainter::Antialiasing, true);
|
||||||
painter.setRenderHint(QPainter::SmoothPixmapTransform, true);
|
painter.setRenderHint(QPainter::SmoothPixmapTransform, true);
|
||||||
|
|
||||||
|
// 以 itemsBoundingRect 作为渲染源区域,预览图会裁剪到实际内容,而不是整个 sceneRect。
|
||||||
scene->render(&painter, QRectF(QPointF(0, 0), imageSize), contentRect);
|
scene->render(&painter, QRectF(QPointF(0, 0), imageSize), contentRect);
|
||||||
painter.end();
|
painter.end();
|
||||||
|
|
||||||
return image;
|
return image;
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace PicSceneLoader
|
bool saveSceneToXmlFile(const QString &xmlFilename, PicScene *scene, const PrintSettingModel *printSettings)
|
||||||
|
{
|
||||||
|
if (!scene)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
QFile file(xmlFilename);
|
||||||
|
if (!file.open(QFile::WriteOnly | QFile::Text)) {
|
||||||
|
qDebug() << QString("Cannot write file %1(%2).").arg(xmlFilename).arg(file.errorString());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
QXmlStreamWriter writer(&file);
|
||||||
|
writer.setAutoFormatting(true);
|
||||||
|
writer.writeStartDocument("1.0", true);
|
||||||
|
writer.writeComment(QString::fromLocal8Bit("Vernon Bach graphic scene file"));
|
||||||
|
writer.writeDTD(QString::fromLocal8Bit("<!DOCTYPE VBfiles [ <!ELEMENT VBfiles (VBfile) > <!ELEMENT VBfile (pointer_x,pointer_y,html_src)> <!ELEMENT pointer_x (#PCDATA)><!ELEMENT pointer_y (#PCDATA)><!ELEMENT html_src (#PCDATA)> ]>"));
|
||||||
|
writer.writeStartElement("VBfiles");
|
||||||
|
writer.writeAttribute("Version", "1.0");
|
||||||
|
|
||||||
|
QList<QGraphicsItem *> items = scene->items();
|
||||||
|
foreach (QGraphicsItem *item, items) {
|
||||||
|
PicTextItem *picText = qgraphicsitem_cast<PicTextItem*>(item);
|
||||||
|
if (picText == nullptr)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
writer.writeStartElement("VBfile");
|
||||||
|
writer.writeTextElement(QString::fromLocal8Bit("pointer_x"), QString::fromLocal8Bit("%1").arg(picText->pos().x()));
|
||||||
|
writer.writeTextElement(QString::fromLocal8Bit("pointer_y"), QString::fromLocal8Bit("%1").arg(picText->pos().y()));
|
||||||
|
writer.writeTextElement(QString::fromLocal8Bit("Condition"), QString::fromLocal8Bit("%1").arg(picText->SpecialConditions ? 1 : 0));
|
||||||
|
writer.writeTextElement(QString::fromLocal8Bit("CatchStartValue"), QString::fromLocal8Bit("%1").arg(picText->CatchCnt1StartValue));
|
||||||
|
writer.writeTextElement(QString::fromLocal8Bit("CatchValue"), QString::fromLocal8Bit("%1").arg(picText->CatchCnt1CurrValue));
|
||||||
|
|
||||||
|
QXmlStreamAttributes attrs;
|
||||||
|
attrs.append("sourceType", QString::number(picText->sourceType()));
|
||||||
|
if (picText->sourceType() != SourceType::UNKNOWN) {
|
||||||
|
picText->saveAttrs(attrs);
|
||||||
|
}
|
||||||
|
writer.writeStartElement("itemAttrs");
|
||||||
|
writer.writeAttributes(attrs);
|
||||||
|
writer.writeEndElement();
|
||||||
|
|
||||||
|
writer.writeTextElement(QString::fromLocal8Bit("html_src"), QString::fromLocal8Bit("my_src"));
|
||||||
|
writer.writeCDATA(picText->toHtml());
|
||||||
|
writer.writeEndElement();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (printSettings) {
|
||||||
|
writer.writeEmptyElement("PrintSettings");
|
||||||
|
PrintSettingModel::saveToXml(*printSettings, writer);
|
||||||
|
}
|
||||||
|
|
||||||
|
writer.writeEndElement();
|
||||||
|
writer.writeEndDocument();
|
||||||
|
fsync(file.handle());
|
||||||
|
file.close();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace PicSceneLoader
|
||||||
+35
-2
@@ -5,13 +5,46 @@
|
|||||||
#include <QString>
|
#include <QString>
|
||||||
|
|
||||||
class PicScene;
|
class PicScene;
|
||||||
|
class PrintSettingModel;
|
||||||
|
|
||||||
namespace PicSceneLoader {
|
namespace PicSceneLoader {
|
||||||
|
|
||||||
PicScene* createSceneFromFile(const QString& xmlFilename);
|
/**
|
||||||
|
* @brief 从 XML 文件解析并加载到已有 PicScene 场景
|
||||||
|
*
|
||||||
|
* 读取 VBfiles 格式的 XML 文件,解析其中的 VBfile 元素构建场景图元,
|
||||||
|
* 同时可选的提取 PrintSettings 打印配置。
|
||||||
|
*
|
||||||
|
* @param xmlFilename XML 文件路径
|
||||||
|
* @param targetScene 目标场景,不可为 nullptr
|
||||||
|
* @param outPrintSettings 输出参数,解析到的打印配置;仅当函数返回 true 时有效,可为 nullptr
|
||||||
|
* @return 成功返回 true,失败返回 false
|
||||||
|
*/
|
||||||
|
bool loadSceneFromFile(const QString& xmlFilename, PicScene* targetScene, PrintSettingModel* outPrintSettings = nullptr);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief 从 XML 文件渲染场景预览图
|
||||||
|
*
|
||||||
|
* 解析 XML 文件创建临时场景,将其渲染为 QImage 预览图后立即销毁场景。
|
||||||
|
*
|
||||||
|
* @param xmlFilename XML 文件路径
|
||||||
|
* @return 成功返回场景渲染的 QImage,失败返回空 QImage
|
||||||
|
*/
|
||||||
QImage previewSceneFromFile(const QString& xmlFilename);
|
QImage previewSceneFromFile(const QString& xmlFilename);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief 将 PicScene 场景保存为 XML 文件
|
||||||
|
*
|
||||||
|
* 将场景中的所有 PicTextItem 图元序列化为 VBfiles 格式的 XML,
|
||||||
|
* 同时可选的写入 PrintSettings 打印配置。
|
||||||
|
*
|
||||||
|
* @param xmlFilename 目标 XML 文件路径
|
||||||
|
* @param scene 要保存的场景,不可为 nullptr
|
||||||
|
* @param printSettings 要写入的打印配置,可为 nullptr 表示不写入
|
||||||
|
* @return true 保存成功,false 保存失败
|
||||||
|
*/
|
||||||
|
bool saveSceneToXmlFile(const QString& xmlFilename, PicScene* scene, const PrintSettingModel* printSettings = nullptr);
|
||||||
|
|
||||||
} // namespace PicSceneLoader
|
} // namespace PicSceneLoader
|
||||||
|
|
||||||
#endif // PICSCENELOADER_H
|
#endif // PICSCENELOADER_H
|
||||||
+448
-374
File diff suppressed because it is too large
Load Diff
+8
-76
@@ -16,6 +16,7 @@
|
|||||||
#include <QPalette>
|
#include <QPalette>
|
||||||
#include "scene/PicScheduleShiftItem.h"
|
#include "scene/PicScheduleShiftItem.h"
|
||||||
#include "scene/PicCounterItem.h"
|
#include "scene/PicCounterItem.h"
|
||||||
|
#include "scene/PicSceneLoader.h"
|
||||||
#include "Printsetting.h"
|
#include "Printsetting.h"
|
||||||
|
|
||||||
#pragma execution_character_set("utf-8")
|
#pragma execution_character_set("utf-8")
|
||||||
@@ -48,7 +49,6 @@ TestPrintWidget::TestPrintWidget(QWidget* parent)
|
|||||||
|
|
||||||
dialogFileOperation = new DialogFileOperation(0);
|
dialogFileOperation = new DialogFileOperation(0);
|
||||||
connect(dialogFileOperation,SIGNAL(openFile(QString,bool)),this,SLOT(onFileOpen(QString,bool)));
|
connect(dialogFileOperation,SIGNAL(openFile(QString,bool)),this,SLOT(onFileOpen(QString,bool)));
|
||||||
connect(dialogFileOperation,SIGNAL(createSceneImage(QString)),this,SLOT(onCreateSceneImage(QString)));
|
|
||||||
|
|
||||||
m_CreateImageFlag = false;
|
m_CreateImageFlag = false;
|
||||||
m_pSavePicScene = new QGraphicsScene();
|
m_pSavePicScene = new QGraphicsScene();
|
||||||
@@ -421,67 +421,14 @@ void TestPrintWidget::on_saveButton_pressed()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TestPrintWidget::saveFile(){
|
void TestPrintWidget::saveFile()
|
||||||
QFile file(xmlfileName);
|
{
|
||||||
if (!file.open(QFile::WriteOnly | QFile::Text)) { // 只写模式打开文件
|
|
||||||
qDebug() << QString("Cannot write file %1(%2).").arg(xmlfileName).arg(file.errorString());
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
QXmlStreamWriter writer(&file);
|
|
||||||
writer.setAutoFormatting(true); // 自动格式化
|
|
||||||
writer.writeStartDocument("1.0", true); // 开始文档(XML 声明)
|
|
||||||
writer.writeComment(QString::fromLocal8Bit("Vernon Bach graphic scene file")); // 注释
|
|
||||||
writer.writeDTD(QString::fromLocal8Bit("<!DOCTYPE VBfiles [ <!ELEMENT VBfiles (VBfile) > <!ELEMENT VBfile (pointer_x,pointer_y,html_src)> <!ELEMENT pointer_x (#PCDATA)><!ELEMENT pointer_y (#PCDATA)><!ELEMENT html_src (#PCDATA)> ]>"));
|
|
||||||
writer.writeStartElement("VBfiles"); // 开始根元素 <picscene>
|
|
||||||
writer.writeAttribute("Version", "1.0"); // 属性
|
|
||||||
|
|
||||||
QList<QGraphicsItem *> items = pPicScene->items();
|
|
||||||
int index=0;
|
|
||||||
foreach (QGraphicsItem *item, items) {
|
|
||||||
PicTextItem *picText = qgraphicsitem_cast<PicTextItem*>(item);
|
|
||||||
if (picText == nullptr) continue;
|
|
||||||
|
|
||||||
writer.writeStartElement("VBfile"); // 开始子元素 <picscene>
|
|
||||||
writer.writeTextElement(QString::fromLocal8Bit("pointer_x"), QString::fromLocal8Bit("%1").arg(picText->pos().x()));
|
|
||||||
writer.writeTextElement(QString::fromLocal8Bit("pointer_y"), QString::fromLocal8Bit("%1").arg(picText->pos().y()));
|
|
||||||
writer.writeTextElement(QString::fromLocal8Bit("Condition"), QString::fromLocal8Bit("%1").arg(picText->SpecialConditions? 1:0));
|
|
||||||
writer.writeTextElement(QString::fromLocal8Bit("CatchStartValue"), QString::fromLocal8Bit("%1").arg(picText->CatchCnt1StartValue));
|
|
||||||
writer.writeTextElement(QString::fromLocal8Bit("CatchValue"), QString::fromLocal8Bit("%1").arg(picText->CatchCnt1CurrValue));
|
|
||||||
|
|
||||||
QXmlStreamAttributes attrs;
|
|
||||||
attrs.append("sourceType", QString::number(picText->sourceType()));
|
|
||||||
if(picText->sourceType() != SourceType::UNKNOWN) {
|
|
||||||
picText->saveAttrs(attrs);
|
|
||||||
}
|
|
||||||
writer.writeStartElement("itemAttrs");
|
|
||||||
writer.writeAttributes(attrs);
|
|
||||||
writer.writeEndElement();
|
|
||||||
|
|
||||||
writer.writeTextElement(QString::fromLocal8Bit("html_src"), QString::fromLocal8Bit("my_src"));
|
|
||||||
|
|
||||||
//Scene Test 内容用pPicScene2 Item的html 其他的位置信息用pPicScene Item
|
|
||||||
|
|
||||||
if(index<items.size()){
|
|
||||||
PicTextItem *picText = (PicTextItem *)items.at(index);
|
|
||||||
writer.writeCDATA((picText->toHtml()));
|
|
||||||
}
|
|
||||||
index++;
|
|
||||||
|
|
||||||
// writer.writeCDATA((picText->toHtml()));
|
|
||||||
writer.writeEndElement(); // 结束子元素 </picscene>
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if (m_printSetting) {
|
if (m_printSetting) {
|
||||||
writer.writeEmptyElement("PrintSettings");
|
auto model = m_printSetting->model();
|
||||||
if(m_printSetting)
|
PicSceneLoader::saveSceneToXmlFile(xmlfileName, pPicScene, &model);
|
||||||
PrintSettingModel::saveToXml(m_printSetting->model(), writer);
|
} else {
|
||||||
|
PicSceneLoader::saveSceneToXmlFile(xmlfileName, pPicScene, nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
writer.writeEndElement(); // 结束根元素 </picscenes>
|
|
||||||
writer.writeEndDocument(); // 结束文档
|
|
||||||
fsync(file.handle());
|
|
||||||
file.close(); // 关闭文件
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void TestPrintWidget::onSaveASFile(QString filename,bool Flag){// use for dialogSaveFile class
|
void TestPrintWidget::onSaveASFile(QString filename,bool Flag){// use for dialogSaveFile class
|
||||||
@@ -963,21 +910,6 @@ void TestPrintWidget::pasteCopiedLayer()
|
|||||||
pasteTime++;
|
pasteTime++;
|
||||||
}
|
}
|
||||||
|
|
||||||
void TestPrintWidget::onCreateSceneImage(QString filePath)
|
|
||||||
{
|
|
||||||
m_CreateImageFlag = true;
|
|
||||||
m_pSavePicScene->clear();
|
|
||||||
onFileOpen(filePath,false);
|
|
||||||
m_pSavePicScene->clearSelection();
|
|
||||||
QSize size(m_pSavePicScene->itemsBoundingRect().width(),m_pSavePicScene->itemsBoundingRect().height());
|
|
||||||
QImage image(size,QImage::Format_ARGB32);
|
|
||||||
image.fill(0x00ffffff);//填充白色
|
|
||||||
QPainter painter(&image);
|
|
||||||
m_pSavePicScene->render(&painter,QRectF(),m_pSavePicScene->itemsBoundingRect());
|
|
||||||
image.save("./printSceneView.png");//图片
|
|
||||||
m_CreateImageFlag = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void TestPrintWidget::on_KeyUp_clicked()
|
void TestPrintWidget::on_KeyUp_clicked()
|
||||||
{
|
{
|
||||||
moveSelectedItem(Qt::Key_Up);
|
moveSelectedItem(Qt::Key_Up);
|
||||||
@@ -1544,4 +1476,4 @@ void TestPrintWidget::on_btn_copy_clicked()
|
|||||||
void TestPrintWidget::on_btn_paste_clicked()
|
void TestPrintWidget::on_btn_paste_clicked()
|
||||||
{
|
{
|
||||||
pasteCopiedLayer();
|
pasteCopiedLayer();
|
||||||
}
|
}
|
||||||
@@ -94,7 +94,6 @@ public slots:
|
|||||||
void onSaveASFile(QString filename,bool Flag);
|
void onSaveASFile(QString filename,bool Flag);
|
||||||
|
|
||||||
void onFileOpen(QString filePath,bool insertFlag);
|
void onFileOpen(QString filePath,bool insertFlag);
|
||||||
void onCreateSceneImage(QString filePath);//生成场景图片
|
|
||||||
|
|
||||||
void on_newfileButton_pressed();
|
void on_newfileButton_pressed();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user