]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
Minor changes
authorapo <apo@opencascade.com>
Fri, 24 Nov 2006 16:55:28 +0000 (16:55 +0000)
committerapo <apo@opencascade.com>
Fri, 24 Nov 2006 16:55:28 +0000 (16:55 +0000)
src/VISUGUI/VisuGUI_Prs3dTools.h

index acac49e644f48e5f9b8ac5460240f9af2a1b3f37..12b5523b08f1f9eacb0fe310353a501b505ae8b2 100644 (file)
@@ -99,8 +99,9 @@ namespace VISU
     }
   }
 
+
+  //----------------------------------------------------------------------------
   template<class TPrs3d_i, class TDlg, int TIsDlgModal>
-  inline
   void
   EditPrs3d(VisuGUI* theModule,
            Handle(SALOME_InteractiveObject)& theIO,
@@ -116,9 +117,9 @@ namespace VISU
     }
   }
 
+
   //---------------------------------------------------------------
   template<class TPrs3d_i>
-  inline
   TPrs3d_i*
   CreatePrs3dFromFactory(VisuGUI* theModule,
                         _PTR(SObject) theTimeStamp,
@@ -159,7 +160,6 @@ namespace VISU
 
   //---------------------------------------------------------------
   template<class TPrs3d_i, class TViewer, class TDlg, int IsDlgModal>
-  inline
   TPrs3d_i*
   CreateAndEditPrs3d(VisuGUI* theModule,
                     _PTR(SObject) theTimeStamp,
@@ -240,7 +240,6 @@ namespace VISU
 
   //---------------------------------------------------------------
   template<class TPrs3d_i, class TViewer, class TDlg, int IsDlgModal>
-  inline
   void
   CreatePrs3dInViewer(VisuGUI* theModule,
                      _PTR(SObject) theTimeStampSObj,
@@ -259,8 +258,9 @@ namespace VISU
     theModule->application()->putInfo(QObject::tr("INF_DONE"));
   }
 
+
+  //----------------------------------------------------------------------------
   template<class TPrs3d_i, class TDlg, int IsDlgModal>
-  inline
   void
   CreatePrs3d(VisuGUI* theModule,
              const QString& theDesiredViewerType = QString())
@@ -298,6 +298,25 @@ namespace VISU
       }
     }
   }
+
+
+  //----------------------------------------------------------------------------
+  VISU::Prs3d_i*
+  GetPrs3d(CORBA::Object_ptr theObject)
+  {
+    if(!CORBA::is_nil(theObject)){
+      VISU::Base_var aBase = VISU::Base::_narrow(theObject);
+      if(!CORBA::is_nil(aBase)){
+       PortableServer::ServantBase_var aServant = VISU::GetServant(aBase);
+       if(aServant.in())
+         return dynamic_cast<VISU::Prs3d_i*>(aServant.in());
+      }
+    }
+    return NULL;
+  }
+  
+
+  //----------------------------------------------------------------------------
 }
 
 #endif