X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_GeoreferencementDlg.h;h=028c2e75ba4fe18c301c3c7482d8e81862d780d0;hb=a53349567d67f4df0ef737798a25c24d9dc8f08e;hp=25e2130e762061abb384cc8404fd39132c0f4712;hpb=03ac40d409e4ca78dca10fd5d1fb3bf35e033a41;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h b/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h index 25e2130e..028c2e75 100644 --- a/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h +++ b/src/HYDROGUI/HYDROGUI_GeoreferencementDlg.h @@ -1,12 +1,8 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE -// -// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// +// Copyright (C) 2014-2015 EDF-R&D // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -20,6 +16,7 @@ // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + #ifndef HYDROGUI_GEOREFERENCEMENT_H #define HYDROGUI_GEOREFERENCEMENT_H @@ -30,6 +27,7 @@ class SUIT_ViewWindow; class QGroupBox; class QButtonGroup; class QTableWidget; +class QPushButton; class HYDROGUI_GeoreferencementDlg : public HYDROGUI_InputPanel { @@ -47,15 +45,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 ); @@ -65,24 +72,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 onDataChanged(); signals: void modeActivated( int ); - -private: - QString getString( const double theNumber ) const; + void updateSelection(); private: QButtonGroup* myModeButtons; + QPushButton* myUpdateSelBtn; QTableWidget* myTable; + + bool myIsModified; }; #endif