Salome HOME
A revision of documentation changes in the new version. Very minor corrections.
[modules/gui.git] / src / OCCViewer / OCCViewer_VService.cxx
index 32d4b321626abfa65148c5e9b8332aae97f17ccb..3b99fc0a0a377571574ed52622b2c34d530de0f6 100755 (executable)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2014  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
@@ -6,7 +6,7 @@
 // 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
 #include <V3d_View.hxx>
 
 #include <Aspect_DisplayConnection.hxx>
+#include <Basics_OCCTVersion.hxx>
+#if OCC_VERSION_LARGE > 0x06070200 // for OCC-6.7.3 and higher version
+#include <OpenGl_GraphicDriver.hxx>
+#else
 #include <Graphic3d.hxx>
 #include <Graphic3d_GraphicDriver.hxx>
-#ifdef WNT
+#endif
+
+#ifdef WIN32
 #include <WNT_Window.hxx>
 #else
 #include <Xw_Window.hxx>
@@ -41,7 +47,7 @@ Handle(Aspect_Window) OCCViewer_VService::CreateWindow( const Handle(V3d_View)&
                                                        WId winId )
 {
   Aspect_Handle aWindowHandle = (Aspect_Handle)winId;
-#ifdef WNT
+#ifdef WIN32
   Handle(WNT_Window) viewWindow = new WNT_Window( aWindowHandle );
 #else
   Handle(Aspect_DisplayConnection) aDispConnection = view->Viewer()->Driver()->GetDisplayConnection();
@@ -61,16 +67,24 @@ Handle(V3d_Viewer) OCCViewer_VService::CreateViewer( const Standard_ExtString na
                                                     const Standard_Boolean computedMode,
                                                     const Standard_Boolean defaultComputedMode )
 {
+#if OCC_VERSION_LARGE > 0x06070200 // for OCC-6.7.3 and higher version
+  static Handle(OpenGl_GraphicDriver) aGraphicDriver;
+#else
   static Handle(Graphic3d_GraphicDriver) aGraphicDriver;
+#endif
   if (aGraphicDriver.IsNull())
   {
     Handle(Aspect_DisplayConnection) aDisplayConnection;
-#ifndef WNT
+#ifndef WIN32
     aDisplayConnection = new Aspect_DisplayConnection( displayName );
 #else
     aDisplayConnection = new Aspect_DisplayConnection();
 #endif
+#if OCC_VERSION_LARGE > 0x06070200 // for OCC-6.7.3 and higher version
+    aGraphicDriver = new OpenGl_GraphicDriver(aDisplayConnection);
+#else
     aGraphicDriver = Graphic3d::InitGraphicDriver( aDisplayConnection );
+#endif
   }
 
   return new V3d_Viewer( aGraphicDriver, name, domain, viewSize, viewProjection,