RasterProcessTool/Toolbox/KJ135WBJYAlgInterfaceToolbox/KJ135WBJYAlgWidgetComponet.h

217 lines
4.6 KiB
C
Raw Normal View History

#pragma once
/**
* <EFBFBD>ջ<EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>΢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @file KJ135WBJYAlgWidgetComponet.h
* @brief KJ135WBJYAlgWidgetComponet.h
* @details
* <EFBFBD>ջ<EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>΢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
#ifndef __KJ135WBJYAlgInterfaceToolbox_GLOBAL_H__
#define __KJ135WBJYAlgInterfaceToolbox_GLOBAL_H__
#include "KJ135WBJYAlgInterfaceToolbox_global.h"
#include <QObject>
#include <QWidget>
#include <QFileDialog>
#include <QMessageBox>
#include <QDebug>
#include <QToolButton>
#include <QLineEdit>
#include <QLabel>
#include <QComboBox>
#include <QSpinBox>
#include <QDoubleSpinBox>
#include <QCheckBox>
2025-05-08 15:00:13 +00:00
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6>
/// </summary>
enum ComponentType{
2025-05-08 15:00:13 +00:00
UNKNOW = 0, // δ֪<CEB4><D6AA><EFBFBD><EFBFBD>
FileSelect , // <20>ļ<EFBFBD>ѡ<EFBFBD><D1A1>
FolderSelect, // <20>ļ<EFBFBD><C4BC><EFBFBD>ѡ<EFBFBD><D1A1>
ComboxSelect,// ö<>ٶ<EFBFBD>ѡ
IntInput,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DoubleInput,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-05-08 15:00:13 +00:00
MultipleSelect,// <20><>ѡ
ScopeIntInput,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD>
ScopeDoubleInput,// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD>
};
2025-05-08 15:00:13 +00:00
/**
<Parameter>
<ParaName>CoveringIDs</ParaName>
<ParaChsName><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id</ParaChsName>
<Description><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>id,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>idʹ<EFBFBD>á<EFBFBD>;<EFBFBD><EFBFBD><EFBFBD>ָʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>GlobeLand30<EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>cover_roi_ids = 10;20;30;40;50;70;71;72;83;74;90</Description>
<ParaType>Value</ParaType>
<DataType>string</DataType>
<ParaSource>Man</ParaSource>
<ParaValue>1;4;5;6;7;11;10;20;30;50;60;70;71;72;73;74;80;90;255</ParaValue>
<EnModification>True</EnModification>
<EnMultipleChoice>False</EnMultipleChoice>
<Control>UploadInput</Control>
<InputType>Aux</InputType>
<InputNum>0</InputNum>
<DateFrom>Aux</DateFrom>
<OptionValue>DEFAULT</OptionValue>
<MinValue>DEFAULT</MinValue>
<MaxValue>DEFAULT</MaxValue>
<NoDataValue>DEFAULT</NoDataValue>
<filePath>DEFAULT</filePath>
</Parameter>
**/
class AbstractComponentWidget : public QWidget
{
Q_OBJECT
public:
AbstractComponentWidget(QWidget* parent = nullptr);
~AbstractComponentWidget();
protected:
QString ParaName; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString ParaChsName;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString Description;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString Datatype;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Value // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString ParaType;// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> string
ComponentType componentType = ComponentType::UNKNOW; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public://<2F><><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD>
QString getParaName() const;
void setParaName(const QString& name);
// <20><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString getParaChsName() const;
void setParaChsName(const QString& name);
// <20><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString getDescription() const;
void setDescription(const QString& description);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString getDatatype() const;
void setDatatype(const QString& datatype);
// <20><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
QString getParaType() const;
void setParaType(const QString& type);
void setComponentType(ComponentType type);
ComponentType getComponentType() const;
};
2025-05-08 15:00:13 +00:00
/// <summary>
/// File <20>ļ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
class FileSelectWidget : public AbstractComponentWidget
{
Q_OBJECT
public:
2025-05-08 15:00:13 +00:00
FileSelectWidget(QWidget* parent = nullptr);
~FileSelectWidget();
void initUI();
private:
2025-05-08 15:00:13 +00:00
QLabel* fileNameLabel=nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QLineEdit* filePathEdit = nullptr;
QToolButton* fileSelectButton = nullptr;
public slots:
void onFileSelectButtonClicked();
public:
QString getValue() const;
};
2025-05-08 15:00:13 +00:00
/// <summary>
/// int<6E><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
class IntInputWidget : public AbstractComponentWidget
{
Q_OBJECT
public:
IntInputWidget(QWidget* parent = nullptr);
~IntInputWidget();
2025-05-08 15:00:13 +00:00
void initUI();
private:
2025-05-08 15:00:13 +00:00
QLabel* fileNameLabel = nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QSpinBox* intInput = nullptr;
public:
QString getValue() const;
};
2025-05-08 15:00:13 +00:00
/// <summary>
/// double <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
class DoubleInputWidget : public AbstractComponentWidget
{
Q_OBJECT
public:
DoubleInputWidget(QWidget* parent = nullptr);
~DoubleInputWidget();
2025-05-08 15:00:13 +00:00
void initUI();
private:
2025-05-08 15:00:13 +00:00
QLabel* fileNameLabel = nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QDoubleSpinBox* doubleInput = nullptr;
public:
QString getValue() const;
};
2025-05-08 15:00:13 +00:00
/// <summary>
/// <20><><EFBFBD><EFBFBD>ֵ <20><><EFBFBD>ݷ<EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
class ScopeIntInputWidget : public AbstractComponentWidget
{
Q_OBJECT
public:
ScopeIntInputWidget(QWidget* parent = nullptr);
~ScopeIntInputWidget();
void initUI();
private:
QLabel* fileNameLabel = nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QLabel* scopeConnectStr = nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QSpinBox* intInputMin = nullptr;
QSpinBox* intInputMax = nullptr;
public:
QString getValue() const;
};
2025-05-08 15:00:13 +00:00
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD>ݷ<EFBFBD>Χ<EFBFBD><CEA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/// </summary>
class ScopeDoubleInputWidget : public AbstractComponentWidget
{
Q_OBJECT
public:
ScopeDoubleInputWidget(QWidget* parent = nullptr);
~ScopeDoubleInputWidget();
void initUI();
private:
QLabel* fileNameLabel = nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QLabel* scopeConnectStr = nullptr; // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>
QDoubleSpinBox* doubleInputMin = nullptr;
QDoubleSpinBox* doubleInputMax = nullptr;
public:
QString getValue() const;
};
#endif// __KJ135WBJYAlgInterfaceToolbox_GLOBAL_H__