]> SALOME platform Git repositories - modules/hydro.git/commitdiff
Salome HOME
HYDRO bug 15: Labels to distinguish the imported and reference images.
authorouv <ouv@opencascade.com>
Wed, 4 Sep 2013 12:47:44 +0000 (12:47 +0000)
committerouv <ouv@opencascade.com>
Wed, 4 Sep 2013 12:47:44 +0000 (12:47 +0000)
src/HYDROGUI/HYDROGUI_ImportImageOp.cxx
src/HYDROGUI/HYDROGUI_PrsImage.cxx
src/HYDROGUI/HYDROGUI_PrsImage.h
src/HYDROGUI/resources/HYDROGUI_msg_en.ts

index f2835a47f0ba2988f4e1eded84c7f41268926304..52ea65d9c32263bb5033fef06b230f79b6709471 100644 (file)
@@ -394,10 +394,17 @@ void HYDROGUI_ImportImageOp::onRefImageActivated( const QString& theName )
   if( !aViewPort )
     return;
 
-  aViewPort->removeItem( myRefPreviewPrs );
+  if( myPreviewPrs )
+    myPreviewPrs->setCaption( QString() );
+
+  if( myRefPreviewPrs )
+  {
+    myRefPreviewPrs->setCaption( QString() );
+    aViewPort->removeItem( myRefPreviewPrs );
 
-  delete myRefPreviewPrs;
-  myRefPreviewPrs = 0;
+    delete myRefPreviewPrs;
+    myRefPreviewPrs = 0;
+  }
 
   QImage anImage;
   Handle(HYDROData_Image) anImageObj = Handle(HYDROData_Image)::DownCast(
@@ -416,8 +423,11 @@ void HYDROGUI_ImportImageOp::onRefImageActivated( const QString& theName )
     // vertically shift the reference prs relatively to the main prs
     if( myPreviewPrs )
     {
+      myPreviewPrs->setCaption( tr( "IMPORTED_IMAGE" ) );
+
       QImage anImage = myPreviewPrs->getImage();
-      myRefPreviewPrs->moveBy( 0, anImage.height() + 20 );
+      myRefPreviewPrs->moveBy( 0, anImage.height() + 60 );
+      myRefPreviewPrs->setCaption( tr( "REFERENCE_IMAGE" ) );
     }
 
     aViewPort->addItem( myRefPreviewPrs );
index 90e54cf68acdb979535f67e67adc7d1b66cfd9b4..4a4ee5bb37fd997fa0685b80e10ff857ca6f8cf6 100644 (file)
@@ -35,6 +35,7 @@
 HYDROGUI_PrsImage::HYDROGUI_PrsImage( const Handle(HYDROData_Object)& theObject )
 : HYDROGUI_Prs( theObject ),
   myPixmapItem( 0 ),
+  myCaptionItem( 0 ),
   myPrsImageFrame( 0 ),
   myIsTransformationPointPreview( false ),
   myTransformationPointType( None )
@@ -73,6 +74,30 @@ QImage HYDROGUI_PrsImage::getImage() const
   return myImage;
 }
 
+//================================================================
+// Function : setCaption
+// Purpose  : 
+//================================================================
+void HYDROGUI_PrsImage::setCaption( const QString& theCaption )
+{
+  if( myCaptionItem )
+  {
+    myCaptionItem->setText( theCaption );
+    myCaptionItem->setVisible( !theCaption.isEmpty() );
+  }
+}
+
+//================================================================
+// Function : getCaption
+// Purpose  : 
+//================================================================
+QString HYDROGUI_PrsImage::getCaption() const
+{
+  if( myCaptionItem )
+    return myCaptionItem->text();
+  return QString();
+}
+
 //================================================================
 // Function : setIsTransformationPointPreview
 // Purpose  : 
@@ -150,12 +175,27 @@ void HYDROGUI_PrsImage::compute()
     myPixmapItem = new QGraphicsPixmapItem( this );
     addToGroup( myPixmapItem );
   }
+  if( !myCaptionItem )
+  {
+    myCaptionItem = new QGraphicsSimpleTextItem( this );
+
+    QFont aFont = myCaptionItem->font();
+    aFont.setPointSize( 14 );
+    myCaptionItem->setFont( aFont );
+
+    addToGroup( myCaptionItem );
+  }
   if( !myPrsImageFrame )
   {
     myPrsImageFrame = new HYDROGUI_PrsImageFrame( this );
     addToGroup( myPrsImageFrame );
   }
+
   myPixmapItem->setPixmap( QPixmap::fromImage( myImage ) );
+
+  myCaptionItem->setPos( 0, -30 );
+  myCaptionItem->setVisible( false );
+
   myPrsImageFrame->compute();
 }
 
index 3f78316c95a2883545b2e627648f92682e38eccd..c59218ff40401b430137f14eb7f2cd58b721771f 100644 (file)
@@ -53,6 +53,9 @@ public:
   void                            setImage( const QImage& theImage );
   QImage                          getImage() const;
 
+  void                            setCaption( const QString& theCaption );
+  QString                         getCaption() const;
+
   void                            setIsTransformationPointPreview( const bool theState );
   bool                            getIsTransformationPointPreview() const;
 
@@ -93,6 +96,7 @@ protected:
   QImage                          myImage;
 
   QGraphicsPixmapItem*            myPixmapItem;
+  QGraphicsSimpleTextItem*        myCaptionItem;
   HYDROGUI_PrsImageFrame*         myPrsImageFrame;
 
   bool                            myIsTransformationPointPreview;
index d3fb9693472518d49490daace61fc8b0cbd70143..4ebc63822354885d61dc569064f44dbbdeb570a6 100644 (file)
@@ -187,6 +187,10 @@ file cannot be correctly imported for a Bathymetry definition.</translation>
       <source>IMPORT_IMAGE</source>
       <translation>Import image</translation>
     </message>
+    <message>
+      <source>IMPORTED_IMAGE</source>
+      <translation>Imported image</translation>
+    </message>
     <message>
       <source>TRANSFORM_IMAGE</source>
       <translation>Transform image</translation>
@@ -199,6 +203,10 @@ file cannot be correctly imported for a Bathymetry definition.</translation>
       <source>REFERENCE_POINTS_A_B_C_BELONG_TO_SINGLE_LINE</source>
       <translation>Reference points A, B, C belong to a single line.</translation>
     </message>
+    <message>
+      <source>REFERENCE_IMAGE</source>
+      <translation>Reference image</translation>
+    </message>
     <message>
       <source>TRANSFORMATION_MATRIX_CANNOT_BE_COMPUTED</source>
       <translation>Transformation matrix cannot be computed.</translation>