1 // PARAVIS : ParaView wrapper SALOME module
3 // Copyright (C) 2010-2015 CEA/DEN, EDF R&D
5 // This library is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation; either
8 // version 2.1 of the License, or (at your option) any later version.
10 // This library is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 // Lesser General Public License for more details.
15 // You should have received a copy of the GNU Lesser General Public
16 // License along with this library; if not, write to the Free Software
17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 // File : PVGUI_Module_MenuActions.cxx
22 // Author : Margarita KARPUNINA
25 #include "PVGUI_Module.h"
26 #include <PVViewer_GUIElements.h>
27 #include <PVViewer_ViewManager.h>
29 #include <QtxAction.h>
30 #include <QtxActionMenuMgr.h>
31 #include <QtxActionToolMgr.h>
32 #include <SUIT_Desktop.h>
33 #include <SUIT_ResourceMgr.h>
34 #include <SUIT_Session.h>
35 #include <LightApp_Application.h>
42 #include <pqApplicationCore.h>
44 #include <pqSaveStateReaction.h>
45 #include <pqLoadDataReaction.h>
46 #include <pqLoadStateReaction.h>
47 #include <pqSaveDataReaction.h>
48 #include <pqSaveScreenshotReaction.h>
49 #include <pqExportReaction.h>
50 #include <pqSaveAnimationReaction.h>
51 #include <pqSaveAnimationGeometryReaction.h>
52 #include <pqServerConnectReaction.h>
53 #include <pqServerDisconnectReaction.h>
54 #include <pqCameraUndoRedoReaction.h>
55 #include <pqUndoRedoReaction.h>
56 #include <pqDeleteReaction.h>
57 #include <pqChangePipelineInputReaction.h>
58 #include <pqApplicationSettingsReaction.h>
59 #include <pqIgnoreSourceTimeReaction.h>
60 #include <pqCreateCustomFilterReaction.h>
61 #include <pqManageLinksReaction.h>
62 #include <pqManagePluginsReaction.h>
63 #include <pqCameraLinkReaction.h>
64 #include <pqManageCustomFiltersReaction.h>
65 #include <pqTimerLogReaction.h>
66 #include <pqTestingReaction.h>
67 #include <pqAboutDialogReaction.h>
68 #include <pqHelpReaction.h>
69 #include <pqDataQueryReaction.h>
70 #include <pqPythonShellReaction.h>
72 #include <pqViewManager.h>
73 #include <pqViewMenuManager.h>
74 #include <pqParaViewMenuBuilders.h>
75 #include <pqProxyGroupMenuManager.h>
76 #include <pqSetName.h>
77 #include <pqRecentFilesMenu.h>
78 #include <pqPipelineBrowserWidget.h>
81 \brief Create actions for ParaView GUI operations
82 duplicating menus and toolbars in MainWindow class of
83 the standard ParaView GUI client application.
85 void PVGUI_Module::pvCreateActions()
87 SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
95 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_OPEN_FILE"), false );
96 anAction = new QAction(QIcon(aPixmap), tr("MEN_OPEN_FILE"), this);
97 anAction->setToolTip(tr("TOP_OPEN_FILE"));
98 anAction->setStatusTip(tr("STB_OPEN_FILE"));
99 registerAction(OpenFileId, anAction);
100 new pqLoadDataReaction(anAction);
103 anAction = new QAction(tr("MEN_LOAD_STATE"), this);
104 anAction->setToolTip(tr("TOP_LOAD_STATE"));
105 anAction->setStatusTip(tr("STB_LOAD_STATE"));
106 registerAction(LoadStateId, anAction);
107 new pqLoadStateReaction(anAction);
110 anAction = new QAction(tr("MEN_SAVE_STATE"), this);
111 anAction->setToolTip(tr("TOP_SAVE_STATE"));
112 anAction->setStatusTip(tr("STB_SAVE_STATE"));
113 registerAction(SaveStateId, anAction);
114 new pqSaveStateReaction(anAction);
117 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_SAVE_DATA"), false );
118 anAction = new QAction(QIcon(aPixmap), tr("MEN_SAVE_DATA"), this);
119 anAction->setToolTip(tr("TOP_SAVE_DATA"));
120 anAction->setStatusTip(tr("STB_SAVE_DATA"));
121 registerAction(SaveDataId, anAction);
122 new pqSaveDataReaction(anAction);
125 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_SAVE_SCREENSHOT"), false );
126 anAction = new QAction(QIcon(aPixmap), tr("MEN_SAVE_SCREENSHOT"), this);
127 anAction->setToolTip(tr("TOP_SAVE_SCREENSHOT"));
128 anAction->setStatusTip(tr("STB_SAVE_SCREENSHOT"));
129 registerAction(SaveScreenshotId, anAction);
130 new pqSaveScreenshotReaction(anAction);
133 anAction = new QAction(tr("MEN_EXPORT"), this);
134 anAction->setToolTip(tr("TOP_EXPORT"));
135 anAction->setStatusTip(tr("STB_EXPORT"));
136 registerAction(ExportId, anAction);
137 new pqExportReaction(anAction);
140 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_SAVE_ANIMATION"), false );
141 anAction = new QAction(QIcon(aPixmap), tr("MEN_SAVE_ANIMATION"), this);
142 anAction->setToolTip(tr("TOP_SAVE_ANIMATION"));
143 anAction->setStatusTip(tr("STB_SAVE_ANIMATION"));
144 registerAction(SaveAnimationId, anAction);
145 new pqSaveAnimationReaction(anAction);
148 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_SAVE_GEOMETRY"), false );
149 anAction = new QAction(QIcon(aPixmap), tr("MEN_SAVE_GEOMETRY"), this);
150 anAction->setToolTip(tr("TOP_SAVE_GEOMETRY"));
151 anAction->setStatusTip(tr("STB_SAVE_GEOMETRY"));
152 registerAction(SaveGeometryId, anAction);
153 new pqSaveAnimationGeometryReaction(anAction);
156 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_CONNECT"), false );
157 anAction = new QAction(QIcon(aPixmap), tr("MEN_CONNECT"), this);
158 anAction->setToolTip(tr("TOP_CONNECT"));
159 anAction->setStatusTip(tr("STB_CONNECT"));
160 registerAction(ConnectId, anAction);
161 new pqServerConnectReaction(anAction);
164 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_DISCONNECT"), false );
165 anAction = new QAction(QIcon(aPixmap), tr("MEN_DISCONNECT"), this);
166 anAction->setToolTip(tr("TOP_DISCONNECT"));
167 anAction->setStatusTip(tr("STB_DISCONNECT"));
168 registerAction(DisconnectId, anAction);
169 new pqServerDisconnectReaction(anAction);
174 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_UNDO"), false );
175 anAction = new QAction(QIcon(aPixmap), tr("MEN_UNDO"), this);
176 anAction->setToolTip(tr("TOP_UNDO"));
177 anAction->setStatusTip(tr("STB_UNDO"));
178 registerAction(UndoId, anAction);
179 new pqUndoRedoReaction(anAction, true);
182 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_REDO"), false );
183 anAction = new QAction(QIcon(aPixmap), tr("MEN_REDO"), this);
184 anAction->setToolTip(tr("TOP_REDO"));
185 anAction->setStatusTip(tr("STB_REDO"));
186 registerAction(RedoId, anAction);
187 new pqUndoRedoReaction(anAction, false);
190 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_CAMERA_UNDO"), false );
191 anAction = new QAction(QIcon(aPixmap), tr("MEN_CAMERA_UNDO"), this);
192 anAction->setToolTip(tr("TOP_CAMERA_UNDO"));
193 anAction->setStatusTip(tr("STB_CAMERA_UNDO"));
194 registerAction(CameraUndoId, anAction);
195 new pqCameraUndoRedoReaction(anAction, true);
198 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_CAMERA_REDO"), false );
199 anAction = new QAction(QIcon(aPixmap), tr("MEN_CAMERA_REDO"), this);
200 anAction->setToolTip(tr("TOP_CAMERA_REDO"));
201 anAction->setStatusTip(tr("STB_CAMERA_REDO"));
202 registerAction(CameraRedoId, anAction);
203 new pqCameraUndoRedoReaction(anAction, false);
206 anAction = new QAction(tr("MEN_FIND_DATA"), this);
207 anAction->setToolTip("");
208 anAction->setStatusTip("");
209 registerAction(FindDataId, anAction);
210 new pqDataQueryReaction(anAction);
213 anAction = new QAction(tr("MEN_CHANGE_INPUT"), this);
214 anAction->setToolTip(tr("TOP_CHANGE_INPUT"));
215 anAction->setStatusTip(tr("STB_CHANGE_INPUT"));
216 registerAction(ChangeInputId, anAction);
217 new pqChangePipelineInputReaction(anAction);
219 // Ignore source time
220 anAction = new QAction(tr("MEN_IGNORE_TIME"), this);
221 anAction->setToolTip(tr("TOP_IGNORE_TIME"));
222 anAction->setStatusTip(tr("STB_IGNORE_TIME"));
223 anAction->setCheckable(true);
224 registerAction(IgnoreTimeId, anAction);
225 new pqIgnoreSourceTimeReaction(anAction);
228 anAction = new QAction(tr("MEN_DELETE"), this);
229 anAction->setToolTip(tr("TOP_DELETE"));
230 anAction->setStatusTip(tr("STB_DELETE"));
231 registerAction(DeleteId, anAction);
232 new pqDeleteReaction(anAction);
235 anAction = new QAction(tr("MEN_DELETE_ALL"), this);
236 anAction->setToolTip(tr("TOP_DELETE_ALL"));
237 anAction->setStatusTip(tr("STB_DELETE_ALL"));
238 registerAction(DeleteAllId, anAction);
239 new pqDeleteReaction(anAction, true);
243 /*anAction = new QAction(tr("MEN_SETTINGS"), this);
244 anAction->setToolTip(tr("TOP_SETTINGS"));
245 anAction->setStatusTip(tr("STB_SETTINGS"));
246 registerAction(SettingsId, anAction);
247 new pqApplicationSettingsReaction(anAction);*/
250 // anAction = new QAction(tr("MEN_VIEW_SETTINGS"), this);
251 // anAction->setToolTip(tr("TOP_VIEW_SETTINGS"));
252 // anAction->setStatusTip(tr("STB_VIEW_SETTINGS"));
253 // registerAction(ViewSettingsId, anAction);
254 // new pqViewSettingsReaction(anAction);
257 //pqViewManager* viewManager = qobject_cast<pqViewManager*>(
258 // pqApplicationCore::instance()->manager("MULTIVIEW_WIDGET"));
260 //rnv: Commented to implement issue
261 //21318: EDF 1615 ALL: Display in full screen mode
262 //Switching to the "Full screen" mode added in the SALOME GUI module.
264 //anAction = new QAction("Full Screen", this);
265 //anAction->setObjectName("actionFullScreen");
266 //anAction->setShortcut(QKeySequence("F11"));
267 //connect(anAction, SIGNAL(triggered()), viewManager, SLOT(toggleFullScreen()));
268 //registerAction(FullScreenId, anAction);
272 // Create Custom Filter
273 anAction = new QAction(tr("MEN_CREATE_CUSTOM_FILTER"), this);
274 anAction->setToolTip(tr("TOP_CREATE_CUSTOM_FILTER"));
275 anAction->setStatusTip(tr("STB_CREATE_CUSTOM_FILTER"));
276 registerAction(CreateCustomFilterId, anAction);
277 new pqCreateCustomFilterReaction(anAction << pqSetName("actionToolsCreateCustomFilter"));
279 // Manage Custom Filters
280 anAction = new QAction(tr("MEN_MANAGE_CUSTOM_FILTERS"), this);
281 anAction->setToolTip(tr("TOP_MANAGE_CUSTOM_FILTERS"));
282 anAction->setStatusTip(tr("STB_MANAGE_CUSTOM_FILTERS"));
283 registerAction(ManageCustomFiltersId, anAction);
284 new pqManageCustomFiltersReaction(anAction << pqSetName("actionToolsManageCustomFilters"));
287 anAction = new QAction(tr("MEN_MANAGE_LINKS"), this);
288 anAction->setToolTip(tr("TOP_MANAGE_LINKS"));
289 anAction->setStatusTip(tr("STB_MANAGE_LINKS"));
290 registerAction(ManageLinksId, anAction);
291 new pqManageLinksReaction(anAction << pqSetName("actionToolsManageLinks"));
294 anAction = new QAction(tr("MEN_ADD_CAMERA_LINK"), this);
295 anAction->setToolTip(tr("TOP_ADD_CAMERA_LINK"));
296 anAction->setStatusTip(tr("STB_ADD_CAMERA_LINK"));
297 registerAction(AddCameraLinkId, anAction);
298 new pqCameraLinkReaction(anAction << pqSetName("actionToolsAddCameraLink"));
300 // Manage Plugins/Extensions
301 anAction = new QAction(tr("MEN_MANAGE_PLUGINS"), this);
302 anAction->setToolTip(tr("TOP_MANAGE_PLUGINS"));
303 anAction->setStatusTip(tr("STB_MANAGE_PLUGINS"));
304 registerAction(ManagePluginsExtensionsId, anAction);
305 new pqManagePluginsReaction(anAction << pqSetName("actionManage_Plugins"));
308 anAction = new QAction(tr("MEN_RECORD_TEST"), this);
309 anAction->setToolTip(tr("TOP_RECORD_TEST"));
310 anAction->setStatusTip(tr("STB_RECORD_TEST"));
311 registerAction(RecordTestId, anAction);
312 new pqTestingReaction(anAction << pqSetName("actionToolsRecordTest"), pqTestingReaction::RECORD);
315 anAction = new QAction(tr("MEN_PLAY_TEST"), this);
316 anAction->setToolTip(tr("TOP_PLAY_TEST"));
317 anAction->setStatusTip(tr("STB_PLAY_TEST"));
318 registerAction(PlayTestId, anAction);
319 new pqTestingReaction(anAction << pqSetName("actionToolsPlayTest"), pqTestingReaction::PLAYBACK);
322 anAction = new QAction(tr("MEN_MAX_WINDOW_SIZE"), this);
323 anAction->setToolTip(tr("TOP_MAX_WINDOW_SIZE"));
324 anAction->setStatusTip(tr("PRP_APP_MAX_WINDOW_SIZE"));
325 anAction->setCheckable(true);
326 registerAction(MaxWindowSizeId, anAction);
327 new pqTestingReaction(anAction << pqSetName("actionTesting_Window_Size"),
328 pqTestingReaction::LOCK_VIEW_SIZE);
330 // Custom Window Size
331 anAction = new QAction(tr("MEN_CUSTOM_WINDOW_SIZE"), this);
332 anAction->setToolTip(tr(""));
333 anAction->setStatusTip(tr(""));
334 anAction->setCheckable(true);
335 registerAction(CustomWindowSizeId, anAction);
336 new pqTestingReaction(anAction << pqSetName("actionTesting_Window_Size_Custom"),
337 pqTestingReaction::LOCK_VIEW_SIZE_CUSTOM);
340 anAction = new QAction(tr("MEN_TIMER_LOG"), this);
341 anAction->setToolTip(tr("TOP_TIMER_LOG"));
342 anAction->setStatusTip(tr("STB_TIMER_LOG"));
343 registerAction(TimerLogId, anAction);
344 new pqTimerLogReaction(anAction << pqSetName("actionToolsTimerLog"));
347 anAction = new QAction(tr("MEN_OUTPUT_WINDOW"), this);
348 anAction->setToolTip(tr("TOP_OUTPUT_WINDOW"));
349 anAction->setStatusTip(tr("STB_OUTPUT_WINDOW"));
350 registerAction(OutputWindowId, anAction);
351 anAction << pqSetName("actionToolsOutputWindow");
352 connect(anAction, SIGNAL(triggered()), pqApplicationCore::instance(), SLOT(showOutputWindow()));
355 anAction = new QAction(tr("MEN_PYTHON_SHELL"), this);
356 anAction->setToolTip(tr("TOP_PYTHON_SHELL"));
357 anAction->setStatusTip(tr("STB_PYTHON_SHELL"));
358 registerAction(PythonShellId, anAction);
359 new pqPythonShellReaction(anAction << pqSetName("actionToolsPythonShell"));
362 anAction = new QAction(tr("MEN_SHOW_TRACE"), this);
363 anAction->setToolTip(tr("TOP_SHOW_TRACE"));
364 anAction->setStatusTip(tr("STB_SHOW_TRACE"));
365 connect(anAction, SIGNAL(triggered()), this, SLOT(onShowTrace()));
366 registerAction(ShowTraceId, anAction);
369 anAction = new QAction(tr("MEN_RESTART_TRACE"), this);
370 anAction->setToolTip(tr("TOP_RESTART_TRACE"));
371 anAction->setStatusTip(tr("STB_RESTART_TRACE"));
372 connect(anAction, SIGNAL(triggered()), this, SLOT(onRestartTrace()));
373 registerAction(RestartTraceId, anAction);
378 anAction = new QAction(tr("MEN_ABOUT"), this);
379 anAction->setToolTip(tr("TOP_ABOUT"));
380 anAction->setStatusTip(tr("STB_ABOUT"));
381 registerAction(AboutParaViewId, anAction);
382 new pqAboutDialogReaction(anAction << pqSetName("actionAbout"));
385 // Native ParaView user documentation
386 aPixmap = resMgr->loadPixmap( "ParaView", tr("ICON_PARAVIEW_HELP"), false );
387 anAction = new QAction(tr("MEN_PARAVIEW_HELP"), this);
388 anAction->setToolTip(tr("TOP_PARAVIEW_HELP"));
389 anAction->setStatusTip(tr("STB_PARAVIEW_HELP"));
390 registerAction(ParaViewHelpId, anAction);
391 new pqHelpReaction(anAction);
396 \brief Create menus for ParaView GUI operations
397 duplicating menus in pqMainWindow ParaView class
399 In particular, ParaView is responsible for updating "Sources" and "Filters" menus.
400 For this, specific menu managers created by pqMainWindowCore class are used, and PVGUI_Module
401 is responsible for creation of corresponding QMenu objects only.
403 void PVGUI_Module::pvCreateMenus()
405 SUIT_Desktop* desk = application()->desktop();
408 int aPVMnu = createMenu( tr( "MEN_DESK_FILE" ), -1, -1 );
410 createMenu( OpenFileId, aPVMnu, 5 );
413 myRecentMenuId = createMenu( tr( "MEN_RECENT_FILES" ), aPVMnu, -1, 5 );
414 QMenu* aMenu = menuMgr()->findMenu( myRecentMenuId );
415 pqRecentFilesMenu* aRecentFilesMenu = new pqRecentFilesMenu( *aMenu, getApp()->desktop() );
416 QList<QAction*> anActns = aMenu->actions();
417 for (int i = 0; i < anActns.size(); ++i)
418 createMenu( anActns.at(i), myRecentMenuId );
420 createMenu( separator(), aPVMnu, -1, 5 );
422 createMenu( LoadStateId, aPVMnu, 15 );
423 createMenu( SaveStateId, aPVMnu, 15 );
424 createMenu( separator(), aPVMnu, -1, 15 );
426 createMenu( SaveDataId, aPVMnu, 25 );
427 createMenu( SaveScreenshotId, aPVMnu, 25 );
428 createMenu( ExportId, aPVMnu, 25 );
429 createMenu( separator(), aPVMnu, -1, 25 );
431 createMenu( SaveAnimationId, aPVMnu, 35 );
432 createMenu( SaveGeometryId, aPVMnu, 35 );
433 createMenu( separator(), aPVMnu, -1, 35 );
435 createMenu( ConnectId, aPVMnu, 45 );
436 createMenu( DisconnectId, aPVMnu, 45 );
437 createMenu( separator(), aPVMnu, -1, 45 );
440 aPVMnu = createMenu( tr( "MEN_DESK_EDIT" ), -1, -1 );
442 createMenu( UndoId, aPVMnu );
443 createMenu( RedoId, aPVMnu );
444 createMenu( separator(), aPVMnu );
446 createMenu( CameraUndoId, aPVMnu );
447 createMenu( CameraRedoId, aPVMnu );
448 createMenu( separator(), aPVMnu );
450 createMenu( FindDataId, aPVMnu );
451 createMenu( ChangeInputId, aPVMnu );
452 createMenu( IgnoreTimeId, aPVMnu );
453 createMenu( DeleteId, aPVMnu );
454 createMenu( DeleteAllId, aPVMnu );
455 createMenu( separator(), aPVMnu );
457 //createMenu( SettingsId, aPVMnu );
458 //createMenu( ViewSettingsId, aPVMnu );
459 createMenu( separator(), aPVMnu );
462 aPVMnu = createMenu( tr( "MEN_DESK_VIEW" ), -1, -1 );
464 createMenu( FullScreenId, aPVMnu );
466 // --- Menu "Sources"
467 // Install ParaView managers for "Sources" menu
469 PVViewer_GUIElements * guiElements = PVViewer_GUIElements::GetInstance(desk);
470 aRes = guiElements->getSourcesMenu();
471 mySourcesMenuId = createMenu( tr( "MEN_DESK_SOURCES" ), -1, -1, 60, -1, aRes);
473 // --- Menu "Filters"
474 // Install ParaView managers for "Filters" menu
475 aRes = guiElements->getFiltersMenu();
476 myFiltersMenuId = createMenu( tr( "MEN_DESK_FILTERS" ), -1, -1, 70, -1, aRes);
479 aRes = guiElements->getMacrosMenu();
480 myMacrosMenuId = createMenu( tr( "MEN_MACROS" ), -1, -1, 80, -1, aRes);
483 int aToolsMnu = createMenu( tr( "MEN_DESK_TOOLS" ), -1, -1, 90 );
485 createMenu( CreateCustomFilterId, aToolsMnu );
486 createMenu( AddCameraLinkId, aToolsMnu );
487 createMenu( separator(), aToolsMnu );
488 createMenu( ManageCustomFiltersId, aToolsMnu );
489 createMenu( ManageLinksId, aToolsMnu );
490 createMenu( ManagePluginsExtensionsId, aToolsMnu );
491 createMenu( separator(), aToolsMnu );
493 createMenu( RecordTestId, aToolsMnu );
494 createMenu( PlayTestId, aToolsMnu );
495 createMenu( MaxWindowSizeId, aToolsMnu );
496 createMenu( CustomWindowSizeId, aToolsMnu );
497 createMenu( separator(), aToolsMnu );
499 createMenu( TimerLogId, aToolsMnu );
500 createMenu( OutputWindowId, aToolsMnu );
501 createMenu( separator(), aToolsMnu );
503 createMenu( PythonShellId, aToolsMnu );
504 createMenu( separator(), aToolsMnu );
505 createMenu( ShowTraceId, aToolsMnu );
506 createMenu( RestartTraceId, aToolsMnu );
510 int aHelpMnu = createMenu( tr( "MEN_DESK_HELP" ), -1, -1 );
511 int aPVHelpMnu = createMenu( tr( "ParaViS module" ), aHelpMnu, -1, 0 );
513 createMenu( ParaViewHelpId, aPVHelpMnu );
514 createMenu( separator(), aPVHelpMnu );
516 createMenu( AboutParaViewId, aPVHelpMnu );
518 // -- Context menu in the pipeline browser
519 pqPipelineBrowserWidget * pq = guiElements->getPipelineBrowserWidget();
520 pqParaViewMenuBuilders::buildPipelineBrowserContextMenu( *pq );
524 \brief Create toolbars for ParaView GUI operations
525 duplicating toolbars in pqMainWindow ParaView class
527 void PVGUI_Module::pvCreateToolBars()
529 SUIT_Desktop* desk = application()->desktop();
530 // pqParaViewMenuBuilders::buildToolbars(*desk);
531 PVViewer_GUIElements * guiElements = PVViewer_GUIElements::GetInstance(desk);
532 guiElements->setToolBarVisible(true);