RasterProcessTool/Toolbox/KJ135WBJYAlgInterfaceToolbox/QWBFZAlgComponetXmlParamsDi...

87 lines
2.4 KiB
C++
Raw Normal View History

#include "QWBFZAlgComponetXmlParamsDialog.h"
#include "ui_QWBFZAlgComponetXmlParamsDialog.h"
#include <QFileDialog>
#include <QMessageBox>
2025-05-10 18:34:49 +00:00
#include "WBFZAlgComponetXmlParaseOperator.h"
#include "FileOperator.h"
QWBFZAlgComponetXmlParamsDialog::QWBFZAlgComponetXmlParamsDialog(QWidget *parent)
: QDialog(parent),
ui(new Ui::QWBFZAlgComponetXmlParamsDialogClass)
{
ui->setupUi(this);
}
QWBFZAlgComponetXmlParamsDialog::~QWBFZAlgComponetXmlParamsDialog()
2025-05-10 18:34:49 +00:00
{
delete ui;
delete xmlParseOperator;
}
void QWBFZAlgComponetXmlParamsDialog::loadXmlFile(const QString& fileName)
{
if (nullptr != xmlParseOperator)
{
delete xmlParseOperator;
xmlParseOperator = nullptr;
}
else {}
// <20><><EFBFBD><EFBFBD>xml<6D><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
xmlParseOperator = new WBFZAlgComponetXmlParaseOperator(this);
xmlParseOperator->loadXmlFile(fileName);
// <20><><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ui
// 1. workspace·<65><C2B7>
workspacePathWidget = new FileSelectWidget(this);
workspacePathWidget->setParaName("WorkSpace");
workspacePathWidget->setParaChsName(u8"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>·<EFBFBD><EFBFBD>");
workspacePathWidget->setDescription(u8"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>·<EFBFBD><EFBFBD>");
workspacePathWidget->setDatatype(u8"string");
workspacePathWidget->initUI();
ui->verticalLayout_param->addWidget(workspacePathWidget);
// 2. <20><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
QList < WBFZAlgComponetXmlParamenterItem*> parameterList = xmlParseOperator->getParameterList();
for (long i = 0; i < parameterList.size(); i++)
{
WBFZAlgComponetXmlParamenterItem* item = parameterList.at(i);
qDebug() << "item->getParaName():" << item->getParaName();
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AbstractComponentWidget* parameterWidget = createComponentWidgetFactory(
item->getParaName(),
item->getParaChsName(),
item->getDatatype(),
item->getParaType(),
item->getDescription(),
this);
//parameterWidget->initUI();
ui->verticalLayout_param->addWidget(parameterWidget);
this->parameterWidgetList.append(parameterWidget);
}
}
void WBFZAlgComponetLoadXmlParamsProcess()
{
QString xmlFileName = QFileDialog::getOpenFileName(nullptr, u8"ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>xml<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>", "", u8"xml<EFBFBD>ļ<EFBFBD>(*.xml)");
if (xmlFileName.isEmpty())
{
QMessageBox::warning(nullptr, u8"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>", u8"<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>xml<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>");
return;
}
else {
2025-05-08 15:00:13 +00:00
// TODO: <20><><EFBFBD><EFBFBD>xml<6D>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
2025-05-10 18:34:49 +00:00
qDebug() << "xmlFileName:" << xmlFileName;
2025-05-10 18:34:49 +00:00
QWBFZAlgComponetXmlParamsDialog* dialog = new QWBFZAlgComponetXmlParamsDialog();
dialog->setWindowTitle(QString(u8"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>xml<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>-%1").arg(getFileNameFromPath(xmlFileName)));
dialog->loadXmlFile(xmlFileName);
dialog->show();
return;
}
2025-05-08 15:00:13 +00:00
return;
}