Commit d8cc9644 authored by David Thompson's avatar David Thompson Committed by Kitware Robot
Browse files

Merge topic 'more-panels'

507da8b3

 Add more of ParaView's panels to ModelBuilder.
Acked-by: Kitware Robot's avatarKitware Robot <kwrobot@kitware.com>
Acked-by: T.J. Corona's avatarT.J. Corona <tj.corona@kitware.com>
Merge-request: !757
parents 048cc8cf 507da8b3
Pipeline #188216 failed with stages
in 3 minutes
ModelBuilder now includes ParaView's information, statistics, light, and memory
inspection panels. You can also set the `PV_DEBUG_LEAKS_VIEW` environment
variable when running aeva to debug memory leaks, although this feature
is currently untested.
......@@ -17,6 +17,8 @@
#include "modelbuilder/ui_mbFileMenu.h"
#include "modelbuilder/ui_mbMainWindow.h"
#include "vtkPVConfig.h"
#include "pqAlwaysConnectedBehavior.h"
#include "pqApplyBehavior.h"
#include "pqDefaultViewBehavior.h"
......@@ -49,6 +51,22 @@
#include "vtkPVPluginLoader.h"
#include "vtkSMProxyManager.h"
#include <vtksys/SystemTools.hxx>
#ifdef MODELBUILDER_USE_PYTHON
#include "pvpythonmodules.h"
#endif
#ifdef MODELBUILDER_USE_PYTHON
#include "pqExportInspector.h"
#include "pqPythonDebugLeaksView.h"
#include "pqPythonShell.h"
using DebugLeaksViewType = pqPythonDebugLeaksView;
#else
#include "vtkQtDebugLeaksView.h"
using DebugLeaksViewType = vtkQtDebugLeaksView;
#endif
namespace
{
bool registerFactoryOverrides()
......@@ -169,6 +187,30 @@ static void showAction(QAction* act)
//-----------------------------------------------------------------------------
mbMainWindow::mbMainWindow()
{
// the debug leaks view should be constructed as early as possible
// so that it can monitor vtk objects created at application startup.
DebugLeaksViewType* leaksView = nullptr;
if (vtksys::SystemTools::GetEnv("PV_DEBUG_LEAKS_VIEW"))
{
leaksView = new DebugLeaksViewType(this);
leaksView->setWindowFlags(Qt::Window);
leaksView->show();
}
#ifdef MODELBUILDER_USE_PYTHON
pvpythonmodules_load();
#endif
#ifdef MODELBUILDER_USE_PYTHON
pqPythonShell* shell = new pqPythonShell(this);
shell->setObjectName("pythonShell");
this->Internals->pythonShellDock->setWidget(shell);
if (leaksView)
{
leaksView->setShell(shell);
}
#endif
this->setTabPosition(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea, QTabWidget::North);
this->Internals = new pqInternals();
this->Internals->setupUi(this);
......
......@@ -101,6 +101,18 @@
</property>
</widget>
</widget>
<widget class="QDockWidget" name="statisticsDock">
<property name="allowedAreas">
<set>Qt::BottomDockWidgetArea|Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea</set>
</property>
<property name="windowTitle">
<string>Statistics Inspector</string>
</property>
<attribute name="dockWidgetArea">
<number>8</number>
</attribute>
<widget class="pqDataInformationWidget" name="statisticsView"/>
</widget>
<widget class="QDockWidget" name="proxyTabDock">
<property name="allowedAreas">
<set>Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea</set>
......@@ -125,6 +137,77 @@
</attribute>
<widget class="pqMultiBlockInspectorWidget" name="multiBlockInspectorPanel"/>
</widget>
<widget class="QDockWidget" name="informationDock">
<property name="allowedAreas">
<set>Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea</set>
</property>
<property name="windowTitle">
<string>Information</string>
</property>
<attribute name="dockWidgetArea">
<number>1</number>
</attribute>
<widget class="QWidget" name="informationWidgetFrame">
<layout class="QVBoxLayout" name="verticalLayout_2">
<property name="spacing">
<number>0</number>
</property>
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QScrollArea" name="informationScrollArea">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="pqProxyInformationWidget" name="informationWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>78</width>
<height>154</height>
</rect>
</property>
</widget>
</widget>
</item>
</layout>
</widget>
</widget>
<widget class="QDockWidget" name="memoryInspectorDock">
<property name="allowedAreas">
<set>Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea</set>
</property>
<property name="windowTitle">
<string>Memory Inspector</string>
</property>
<attribute name="dockWidgetArea">
<number>2</number>
</attribute>
<widget class="pqMemoryInspectorPanel" name="dockWidgetContents"/>
</widget>
<widget class="QDockWidget" name="lightInspectorDock">
<property name="allowedAreas">
<set>Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea</set>
</property>
<property name="windowTitle">
<string>Light Inspector</string>
</property>
<attribute name="dockWidgetArea">
<number>1</number>
</attribute>
<widget class="pqLightsInspector" name="lightInspectorPanel"/>
</widget>
<widget class="QDockWidget" name="outputWidgetDock">
<property name="floating">
<bool>false</bool>
......@@ -156,10 +239,16 @@
</widget>
<customwidgets>
<customwidget>
<class>pqPipelineBrowserWidget</class>
<extends>QWidget</extends>
<header>pqPipelineBrowserWidget.h</header>
<container>1</container>
<class>pqPipelineBrowserWidget</class>
<extends>QWidget</extends>
<header>pqPipelineBrowserWidget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqProxyInformationWidget</class>
<extends>QWidget</extends>
<header>pqProxyInformationWidget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqViewManager</class>
......@@ -190,12 +279,30 @@
<header>pqOutputWidget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqMultiBlockInspectorWidget</class>
<extends>QWidget</extends>
<header>pqMultiBlockInspectorWidget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqMultiBlockInspectorWidget</class>
<extends>QWidget</extends>
<header>pqMultiBlockInspectorWidget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqDataInformationWidget</class>
<extends>QWidget</extends>
<header>pqDataInformationWidget.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqMemoryInspectorPanel</class>
<extends>QWidget</extends>
<header>pqMemoryInspectorPanel.h</header>
<container>1</container>
</customwidget>
<customwidget>
<class>pqLightsInspector</class>
<extends>QWidget</extends>
<header>pqLightsInspector.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment