Salome HOME
patch for correct immersible zone color in preview
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_ImportImageDlg.h
index 59de8c6c6c89aebb9f4a79710099a1d41ab96bd1..2adcb89592d532a9bb874e9e6b2da8494969c923 100644 (file)
@@ -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
@@ -42,6 +38,8 @@ class QCheckBox;
 
 class QtxDoubleSpinBox;
 class QtxIntSpinBox;
+class QAbstractSpinBox;
+class QToolButton;
 
 class HYDROGUI_ImportImageDlg : public HYDROGUI_InputPanel
 {
@@ -86,6 +84,8 @@ public:
   QString                    getRefImageName() const;
 
   QString                    getFileName() const;
+  void                       setFileName( const QString& theName );
+  QString                    getGeoreferencementFileName() const;
 
   void                       setImageSize( const QSize& theSize,
                                            const bool theIsRefImage = false );
@@ -106,6 +106,8 @@ public:
 
   void                       initializePointSelection();
 
+  void                       ActivateFile( const QString& theFileName, bool isEnableFilesChoice );
+
 public:
 
   static TransformationData  ComputeTrsfData( const int      theMode,
@@ -114,10 +116,12 @@ public:
 
 protected slots:
   void                       onBrowse();
+  void                       onGeoBrowse();
   void                       onModeActivated( int );
   void                       onRefImageActivated( const QString& );
   void                       onPointBtnToggled( bool );
   void                       onPointCoordChanged( int );
+  void                       onSetCIsUsed( bool theCIsUsed );
 
   void                       onGeodesicCoordChanged();
   void                       onGeodesicCoordChanged( const int thePointType );
@@ -126,8 +130,10 @@ protected slots:
   void                       onCartesianCoordChanged( const int thePointType );
 
 private:
-  void                       blockSignalsGeodesic( const bool theState );
-  void                       blockSignalsCartesian( const bool theState );
+  void                       clearSpins( QAbstractSpinBox* theSpin );
+  bool                       blockSignalsPoints( const bool theState );
+  bool                       blockSignalsGeodesic( const bool theState );
+  bool                       blockSignalsCartesian( const bool theState );
 
 signals:
   void                       createPreview( QImage );
@@ -138,11 +144,13 @@ signals:
                                                 int theValue );
   void                       modeActivated( int );
   void                       refImageActivated( const QString& );
-  void                       setIsByTwoPoints( bool theIsByTwoPoints );
+  void                       setCIsUsed( bool theIsByTwoPoints );
+  void                       filesSelected( const QStringList& );
 
 private:
   QGroupBox*                   myFileNameGroup;    //!< The group for the source image file selection
   QLineEdit*                   myFileName;         //!< Source image file name input field
+  QToolButton*                 myBrowseBtn;
 
   QGroupBox*                   myImageNameGroup;   //!< The group for the image name input field
   QLineEdit*                   myImageName;        //!< The image name input field
@@ -152,6 +160,8 @@ private:
   QButtonGroup*                myModeGroup;        //!< The group for the input mode selector
   QComboBox*                   myRefImage;         //!< Reference image selector
 
+  QLineEdit*                   myGeoFileName;      //!< Image georeferencement file name input field
+
   QList<QLabel*>               myGeodesicLabels;   //!< Labels for geodesic coords input fields
 
   QMap<int, QPushButton*>      myPointBtnMap;      //!< A,B,C points selection modes activators