X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_StricklerTableDlg.h;h=0fa872b2d18fd1e27e35e48b70b5af70031a28bd;hb=d6e19029f8b41f295db878e9aecf451c2edda4af;hp=95f1261bf874ca7624ae10d558dcd340568bdf89;hpb=274017fd7e5b5e7104a8442da56ee164bc0b2fda;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h b/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h index 95f1261b..0fa872b2 100644 --- a/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h +++ b/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h @@ -21,21 +21,74 @@ #include "HYDROGUI_InputPanel.h" +class HYDROData_StricklerTable; + +class QGroupBox; class QLineEdit; +class QToolButton; +class QTableWidget; +class QtxFilePath; class HYDROGUI_StricklerTableDlg : public HYDROGUI_InputPanel { - Q_OBJECT + Q_OBJECT public: - HYDROGUI_StricklerTableDlg( HYDROGUI_Module* theModule, const QString& theTitle ); - virtual ~HYDROGUI_StricklerTableDlg(); + struct StricklerCoefficient + { + QString myType; + double myCoefficient; + + StricklerCoefficient( const QString& theType, + double theCoefficient ) + : myType( theType ), myCoefficient( theCoefficient ) {} + }; + typedef QList StricklerCoefficientList; + + enum { Edit, Import, Export }; + +public: + HYDROGUI_StricklerTableDlg( HYDROGUI_Module* theModule, const QString& theTitle, int theType ); + virtual ~HYDROGUI_StricklerTableDlg(); + + void reset(); + + QString getFileName() const; + void setFileName( const QString& theName ); + + void setTableName( const QString& theName ); + QString getTableName() const; + + bool isTableNameReadOnly() const; + void setTableNameReadOnly( bool ); + + StricklerCoefficientList getData() const; + void setData(const StricklerCoefficientList& theData); + +protected: + void updateControls(); + void removeRows( const QList theRows ); + +protected Q_SLOTS: + void onBrowse(); + + void onAddCoefficient(); + void onRemoveCoefficient(); + void onClearCoefficients(); + + void onSelectionChanged(); - void setStricklerTableName( const QString& theName ); - QString getStricklerTableName() const; +Q_SIGNALS: + void fileSelected( const QString& theFileName ); private: - QLineEdit* myName; + int myType; + QLineEdit* myFileName; //!< Source Strickler table file name input field + QLineEdit* myName; //!< The Strickler table name input field + QTableWidget* myTable; //!< The table of Strickler coefficients + QToolButton* myAddBtn; //!< The add Strickler coefficient button + QToolButton* myRemoveBtn; //!< The remove Strickler coefficient button + QToolButton* myClearBtn; //!< The clear all Strickler coefficients button }; #endif