// PARAVIS : ParaView wrapper SALOME module
//
-// Copyright (C) 2010-2013 CEA/DEN, EDF R&D
+// Copyright (C) 2010-2014 CEA/DEN, EDF R&D
//
// 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 "PVGUI_Module.h"
+#include <PVViewer_GUIElements.h>
+#include <PVViewer_ViewManager.h>
#include <QtxAction.h>
#include <QtxActionMenuMgr.h>
#include <SUIT_Desktop.h>
#include <SUIT_ResourceMgr.h>
#include <SUIT_Session.h>
-#include <SalomeApp_Application.h>
+#include <SalomeApp_Application.h> // should ultimately be a LightApp only
#include <LightApp_Application.h>
#include <QAction>
#include <QFile>
#include <pqApplicationCore.h>
-#include <pqColorScaleToolbar.h>
+// #include <pqColorScaleToolbar.h>
#include <pqProgressManager.h>
-#include <pqRubberBandHelper.h>
-#include <pqScalarBarVisibilityAdaptor.h>
+//#include <pqRubberBandHelper.h>
+//#include <pqScalarBarVisibilityAdaptor.h>
#include <pqUndoStack.h>
#include <pqVCRController.h>
#include <pqDeleteReaction.h>
#include <pqChangePipelineInputReaction.h>
#include <pqApplicationSettingsReaction.h>
-#include <pqViewSettingsReaction.h>
+//#include <pqViewSettingsReaction.h>
#include <pqIgnoreSourceTimeReaction.h>
#include <pqViewMenuManager.h>
#include <pqParaViewMenuBuilders.h>
new pqApplicationSettingsReaction(anAction);*/
// View Settings
- anAction = new QAction(tr("MEN_VIEW_SETTINGS"), this);
- anAction->setToolTip(tr("TOP_VIEW_SETTINGS"));
- anAction->setStatusTip(tr("STB_VIEW_SETTINGS"));
- registerAction(ViewSettingsId, anAction);
- new pqViewSettingsReaction(anAction);
+// anAction = new QAction(tr("MEN_VIEW_SETTINGS"), this);
+// anAction->setToolTip(tr("TOP_VIEW_SETTINGS"));
+// anAction->setStatusTip(tr("STB_VIEW_SETTINGS"));
+// registerAction(ViewSettingsId, anAction);
+// new pqViewSettingsReaction(anAction);
// --- Menu "View"
//pqViewManager* viewManager = qobject_cast<pqViewManager*>(
connect(anAction, SIGNAL(triggered()), this, SLOT(onShowTrace()));
registerAction(ShowTraceId, anAction);
+ //Show Trace
+ anAction = new QAction(tr("MEN_RESTART_TRACE"), this);
+ anAction->setToolTip(tr("TOP_RESTART_TRACE"));
+ anAction->setStatusTip(tr("STB_RESTART_TRACE"));
+ connect(anAction, SIGNAL(triggered()), this, SLOT(onRestartTrace()));
+ registerAction(RestartTraceId, anAction);
+
// --- Menu "Help"
// About
QMenu* aMenu = menuMgr()->findMenu( myRecentMenuId );
pqRecentFilesMenu* aRecentFilesMenu = new pqRecentFilesMenu( *aMenu, getApp()->desktop() );
QList<QAction*> anActns = aMenu->actions();
- for (int i = 0; i < anActns.size(); ++i) {
- createMenu( anActns.at(i), myRecentMenuId );
- }
-
+ for (int i = 0; i < anActns.size(); ++i)
+ createMenu( anActns.at(i), myRecentMenuId );
createMenu( separator(), aPVMnu, -1, 5 );
createMenu( separator(), aPVMnu );
//createMenu( SettingsId, aPVMnu );
- createMenu( ViewSettingsId, aPVMnu );
+ //createMenu( ViewSettingsId, aPVMnu );
createMenu( separator(), aPVMnu );
// --- Menu "View"
createMenu( FullScreenId, aPVMnu );
// --- Menu "Sources"
-
// Install ParaView managers for "Sources" menu
QMenu* aRes = 0;
+ QMenu* filtersMenu = 0;
+ PVViewer_GUIElements * guiElements = PVViewer_GUIElements::GetInstance(desk);
mySourcesMenuId = createMenu( tr( "MEN_DESK_SOURCES" ), -1, -1, 60);
- if ( (aRes = getMenu( mySourcesMenuId )) ) {
+ if ( (aRes = getMenu( mySourcesMenuId )) )
pqParaViewMenuBuilders::buildSourcesMenu(*aRes, desk);
- }
// --- Menu "Filters"
-
// Install ParaView managers for "Filters" menu
myFiltersMenuId = createMenu( tr( "MEN_DESK_FILTERS" ), -1, -1, 70 );
- if ( (aRes = getMenu( myFiltersMenuId )) ) {
- pqParaViewMenuBuilders::buildFiltersMenu(*aRes, desk);
- }
+ if ( (filtersMenu = getMenu( myFiltersMenuId )) )
+ pqParaViewMenuBuilders::buildFiltersMenu(*filtersMenu, desk);
// --- Menu "Macros"
myMacrosMenuId = createMenu( tr( "MEN_MACROS" ), -1, -1, 80 );
- if ( (aRes = getMenu( myMacrosMenuId )) ) {
+ if ( (aRes = getMenu( myMacrosMenuId )) )
pqParaViewMenuBuilders::buildMacrosMenu(*aRes);
- }
// --- Menu "Tools"
-
int aToolsMnu = createMenu( tr( "MEN_DESK_TOOLS" ), -1, -1, 90 );
createMenu( CreateCustomFilterId, aToolsMnu );
createMenu( PythonShellId, aToolsMnu );
createMenu( separator(), aToolsMnu );
createMenu( ShowTraceId, aToolsMnu );
+ createMenu( RestartTraceId, aToolsMnu );
// --- Menu "Help"
createMenu( separator(), aPVHelpMnu );
#endif
createMenu( AboutParaViewId, aPVHelpMnu );
+
+ // Reload configuration to populate dynamic menus from ParaView:
+ PVViewer_ViewManager::ParaviewLoadConfigurations(true);
+
+ // Disable all filters for now (for some weird reasons they are all on when starting?)
+ QList<QMenu*> sub_menus = filtersMenu->findChildren<QMenu*>();
+ foreach(QMenu * m, sub_menus)
+ {
+ QList<QAction *> act_list = m->actions();
+ foreach(QAction * a, act_list)
+ {
+ a->setEnabled(false);
+ }
+ }
}
/*!
QMenu* PVGUI_Module::getMenu( const int id )
{
QMenu* res = 0;
- SalomeApp_Application* anApp = getApp();
+ //SalomeApp_Application* anApp = getApp();
+ LightApp_Application* anApp = getApp();
SUIT_Desktop* desk = anApp->desktop();
if ( desk ){
QtxActionMenuMgr* menuMgr = desk->menuMgr();
{
QAction* anAction;
- // New ParaView window
- anAction = new QtxAction(tr("MEN_NEW_PV_VIEW"), tr("MEN_NEW_PV_VIEW"), 0,
- this, false, "ParaViS:Create new ParaView view");
- connect(anAction, SIGNAL(triggered()), this, SLOT(onNewParaViewWindow()));
- registerAction(ParaViewNewWindowId, anAction);
+// // New ParaView window
+// anAction = new QtxAction(tr("MEN_NEW_PV_VIEW"), tr("MEN_NEW_PV_VIEW"), 0,
+// this, false, "ParaViS:Create new ParaView view");
+// connect(anAction, SIGNAL(triggered()), this, SLOT(onNewParaViewWindow()));
+// registerAction(ParaViewNewWindowId, anAction);
// Save state under the module root object
anAction = new QAction(tr("MEN_SAVE_MULTI_STATE"), this);