2025-05-06 02:15:54 +00:00
# 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
2025-05-06 02:15:54 +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>
2025-05-06 02:15:54 +00:00
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-06 02:15:54 +00:00
} ;
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-06 02:15:54 +00:00
2025-05-08 15:00:13 +00:00
/// <summary>
/// File <20> ļ<EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
/// </summary>
class FileSelectWidget : public AbstractComponentWidget
2025-05-06 02:15:54 +00:00
{
Q_OBJECT
public :
2025-05-08 15:00:13 +00:00
FileSelectWidget ( QWidget * parent = nullptr ) ;
~ FileSelectWidget ( ) ;
void initUI ( ) ;
2025-05-06 02:15:54 +00:00
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-06 02:15:54 +00:00
2025-05-08 15:00:13 +00:00
/// <summary>
/// int<6E> <74> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
/// </summary>
class IntInputWidget : public AbstractComponentWidget
2025-05-06 02:15:54 +00:00
{
Q_OBJECT
public :
IntInputWidget ( QWidget * parent = nullptr ) ;
~ IntInputWidget ( ) ;
2025-05-08 15:00:13 +00:00
void initUI ( ) ;
2025-05-06 02:15:54 +00:00
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-06 02:15:54 +00:00
} ;
2025-05-08 15:00:13 +00:00
/// <summary>
/// double <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
/// </summary>
class DoubleInputWidget : public AbstractComponentWidget
2025-05-06 02:15:54 +00:00
{
Q_OBJECT
public :
DoubleInputWidget ( QWidget * parent = nullptr ) ;
~ DoubleInputWidget ( ) ;
2025-05-08 15:00:13 +00:00
void initUI ( ) ;
2025-05-06 02:15:54 +00:00
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-06 02:15:54 +00:00
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-06 02:15:54 +00:00
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 ;
} ;
2025-05-06 02:15:54 +00:00
# endif // __KJ135WBJYAlgInterfaceToolbox_GLOBAL_H__