X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_StricklerTableDlg.h;h=0fa872b2d18fd1e27e35e48b70b5af70031a28bd;hb=d6e19029f8b41f295db878e9aecf451c2edda4af;hp=282648de9455229c1ba88c1c51f5f86c03f2ba2a;hpb=35d2822e3e33ca225dcc1ba24e6684a43e3bb2d1;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h b/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h index 282648de..0fa872b2 100644 --- a/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h +++ b/src/HYDROGUI/HYDROGUI_StricklerTableDlg.h @@ -21,41 +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; - void setIsEdit( const bool theIsEdit ); - void reset(); + StricklerCoefficient( const QString& theType, + double theCoefficient ) + : myType( theType ), myCoefficient( theCoefficient ) {} + }; + typedef QList StricklerCoefficientList; - QString getFileName() const; - void setFileName( const QString& theName ); + enum { Edit, Import, Export }; - void setStricklerTableName( const QString& theName ); - QString getStricklerTableName() const; +public: + HYDROGUI_StricklerTableDlg( HYDROGUI_Module* theModule, const QString& theTitle, int theType ); + virtual ~HYDROGUI_StricklerTableDlg(); -protected slots: - void onBrowse(); + void reset(); -signals: - void fileSelected( const QString& theFileName ); + QString getFileName() const; + void setFileName( const QString& theName ); -private: - QGroupBox* myFileNameGroup; //!< The group for the source Strickler table file selection - QLineEdit* myFileName; //!< Source Strickler table file name input field - QToolButton* myBrowseBtn; + void setTableName( const QString& theName ); + QString getTableName() const; + + bool isTableNameReadOnly() const; + void setTableNameReadOnly( bool ); + + StricklerCoefficientList getData() const; + void setData(const StricklerCoefficientList& theData); - QGroupBox* myNameGroup; //!< The group for the Strickler table name input field - QLineEdit* myName; //!< The Strickler table name input field +protected: + void updateControls(); + void removeRows( const QList theRows ); +protected Q_SLOTS: + void onBrowse(); + + void onAddCoefficient(); + void onRemoveCoefficient(); + void onClearCoefficients(); + + void onSelectionChanged(); + +Q_SIGNALS: + void fileSelected( const QString& theFileName ); + +private: + 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