X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPVViewer%2FPVViewer_Core.cxx;h=6e9e6920380ee8e58a4a5ff1789c2ad1566498a4;hb=5204b0c67ebf51714353b53f585ff7aafe70af30;hp=5627c517a6be4a933da17db701a4a327cc51a0ca;hpb=ad6276bbf89c70b93ccef9a82800f18ff5578a00;p=modules%2Fgui.git diff --git a/src/PVViewer/PVViewer_Core.cxx b/src/PVViewer/PVViewer_Core.cxx index 5627c517a..6e9e69203 100644 --- a/src/PVViewer/PVViewer_Core.cxx +++ b/src/PVViewer/PVViewer_Core.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2010-2015 CEA/DEN, EDF R&D +// Copyright (C) 2014-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -29,6 +29,7 @@ #include #include #include +#include #include @@ -65,7 +66,7 @@ bool PVViewer_Core::ParaviewInitApp(QMainWindow * aDesktop, LogWindow * logWindo char** argv = 0; QString aOptions = getenv("PARAVIEW_OPTIONS"); QStringList aOptList = aOptions.split(":", QString::SkipEmptyParts); - argv = new char*[aOptList.size() + 1]; + argv = new char*[aOptList.size() + 3]; QStringList args = QApplication::arguments(); argv[0] = (args.size() > 0)? strdup(args[0].toLatin1().constData()) : strdup("paravis"); argc++; @@ -74,6 +75,25 @@ bool PVViewer_Core::ParaviewInitApp(QMainWindow * aDesktop, LogWindow * logWindo argv[argc] = strdup( aStr.toLatin1().constData() ); argc++; } + argv[argc++] = strdup("--multi-servers"); + // Make salome sharing the same server configuration than external one with "salome shell paraview" + QStringList li(QStandardPaths::standardLocations(QStandardPaths::ConfigLocation)); + foreach(QString pathConfig,li) + { + QFileInfo fi(QDir(pathConfig),QString("ParaView")); + if(fi.exists() && fi.isDir()) + { + QFileInfo fi2(fi.canonicalFilePath(),"servers.pvsc"); + if(fi2.exists() && fi2.isFile()) + { + QString addEntry(QString("--servers-file=%1").arg(fi2.canonicalFilePath())); + std::string addEntry2(addEntry.toStdString()); + argv[argc++] = strdup(addEntry2.c_str()); + break; + } + } + } + // MyCoreApp = new pqPVApplicationCore (argc, argv); if (MyCoreApp->getOptions()->GetHelpSelected() || MyCoreApp->getOptions()->GetUnknownArgument() || @@ -93,9 +113,11 @@ bool PVViewer_Core::ParaviewInitApp(QMainWindow * aDesktop, LogWindow * logWindo free(argv[i]); delete[] argv; } - // Initialize GUI elements if needed: - PVViewer_GUIElements::GetInstance(aDesktop); - return true; + // Initialization of ParaView GUI widgets will be done when these widgets are + // really needed. + // PVViewer_GUIElements* inst = PVViewer_GUIElements::GetInstance(aDesktop); + // inst->getPropertiesPanel(); + return true; } void PVViewer_Core::ParaviewInitBehaviors(bool fullSetup, QMainWindow* aDesktop)