]> SALOME platform Git repositories - modules/visu.git/commitdiff
Salome HOME
Plugins manager for VISU
authorgdd <gdd>
Wed, 17 Nov 2010 18:05:34 +0000 (18:05 +0000)
committergdd <gdd>
Wed, 17 Nov 2010 18:05:34 +0000 (18:05 +0000)
src/VISUGUI/VISU_msg_en.ts
src/VISUGUI/VISU_msg_fr.ts
src/VISUGUI/VisuGUI.cxx

index 61b0e2e2d817461c41f3baa371bb872cc1c1c183..b67b34b77f178f8229577cb041d0a1b52f62d85d 100644 (file)
@@ -612,6 +612,10 @@ Input value precision can be adjusted using
         <source>WRN_NO_APPROPRIATE_SELECTION</source>
         <translation>No appropriate objects selected</translation>
     </message>
+    <message>
+        <source>VISU_PLUGINS_OTHER</source>
+        <translation>VISU plugins</translation>
+    </message>  
 </context>
 <context>
     <name>VisuGUI</name>
index 30953b5cec650f8c789627b003a27e37d8a82357..6f07d2eb86872f73ba1331b7d4c0120f1e05c598 100755 (executable)
@@ -611,6 +611,10 @@ le &apos;%1&apos; paramètre des préférences du module Post-Pro.</translation>
         <source>WRN_NO_APPROPRIATE_SELECTION</source>
         <translation>Les objets appropriés ne sont pas choisis</translation>
     </message>
+    <message>
+        <source>VISU_PLUGINS_OTHER</source>
+        <translation>Extensions VISU</translation>
+    </message>   
 </context>
 <context>
     <name>VisuGUI</name>
index fd8d1557d9d4cbb5764bfd9d6c239c0eb3f3f0b8..3b23f2c80c46c6c7b7a51297dec22c198c37b4b3 100644 (file)
 //  File   : VisuGUI.cxx
 //  Author :
 //  Module : VISU
-//
+
+#include <Standard_math.hxx>  // E.A. must be included before Python.h to fix compilation on windows
+#include "Python.h"
+
 #include "VisuGUI.h"
 
 // STL Includes
@@ -3657,6 +3660,21 @@ VisuGUI
   setMenuShown( true );
   setToolShown( true );
 
+  // import Python module that manages VISU plugins (need to be here because SalomePyQt API uses active module)
+  PyGILState_STATE gstate = PyGILState_Ensure();
+  PyObject* pluginsmanager=PyImport_ImportModule((char*)"salome_pluginsmanager");
+  if(pluginsmanager==NULL)
+    PyErr_Print();
+  else
+    {
+      PyObject* result=PyObject_CallMethod( pluginsmanager, (char*)"initialize", (char*)"isss",1,"visu",tr("MEN_VISUALIZATION").toStdString().c_str(),tr("VISU_PLUGINS_OTHER").toStdString().c_str());
+      if(result==NULL)
+        PyErr_Print();
+      Py_XDECREF(result);
+    }
+  PyGILState_Release(gstate);
+  // end of GEOM plugins loading
+
   // Reset actions accelerator keys
   QList<QKeySequence> shortcuts;
   shortcuts.append( QKeySequence(Qt::CTRL + Qt::Key_I) );