X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_GeoreferencementDlg.h;h=399ddfc25df558cd05193979c33a474957b87acd;hb=81c9f5cdf82909d0aebd2c491c50fa7516cc80b7;hp=a2a1c0bd5e16a7179edd27b99c252be30bb407a3;hpb=76b254e749b5fcb49f860cbdaa69e7bdd239a587;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h b/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h index a2a1c0bd..399ddfc2 100644 --- a/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h +++ b/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h @@ -25,14 +25,19 @@ #include "HYDROGUI_InputPanel.h" +class SUIT_ViewWindow; + class QGroupBox; class QButtonGroup; class QTableWidget; +class QPushButton; class HYDROGUI_GeoreferencementDlg : public HYDROGUI_InputPanel { Q_OBJECT + class Delegate; + public: enum ProfilesMode { AllProfiles, SelectedProfiles }; @@ -43,15 +48,24 @@ public: double Xd; double Yd; - bool isValid; + bool isIncomplete, isEmpty; + + QString Name; + + ProfileGeoData( const QString& theName ) : + Name( theName ), isEmpty( true ), isIncomplete( false ) {} - ProfileGeoData() : - isValid( false ) {} + ProfileGeoData( const QString& theName, + const QString& theXg, const QString& theYg, + const QString& theXd, const QString& theYd ); - ProfileGeoData( double theXg, double theYg, double theXd, double theYd ) : - Xg( theXg ), Yg( theYg ), Xd( theXd ), Yd( theYd ), isValid( true ) {} + ProfileGeoData( const QString& theName, + double theXg, double theYg, + double theXd, double theYd ) + : Name( theName ), Xg( theXg ), Yg( theYg ), Xd( theXd ), Yd( theYd ), + isIncomplete(false), isEmpty(false) {} }; - typedef QMap< QString, ProfileGeoData > ProfilesGeoDataMap; + typedef QList ProfilesGeoDataList; public: HYDROGUI_GeoreferencementDlg( HYDROGUI_Module* theModule, const QString& theTitle ); @@ -61,19 +75,28 @@ public: void setMode( const int theMode ); - void setData( const ProfilesGeoDataMap& theMap ); - void getData( ProfilesGeoDataMap& theMap ); + void setData( const ProfilesGeoDataList& theData ); + void getData( ProfilesGeoDataList& theData ) const; + + bool isModified() const; + +public slots: + void onMousePress( SUIT_ViewWindow*, QMouseEvent* ); protected slots: void onModeActivated( int ); - void onProfilesSelectionChanged(); + void onDataChanged(); signals: void modeActivated( int ); + void updateSelection(); private: QButtonGroup* myModeButtons; + QPushButton* myUpdateSelBtn; QTableWidget* myTable; + + bool myIsModified; }; #endif