Summary Panels

From ParaQ Wiki
Revision as of 13:13, 6 August 2013 by Utkarsh (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

*** OBSOLETE ***

Overview

Summary Panels are a new feature for ParaView 4.0. These new panels will be a part of the object inspector and show a subset of filter/representation properties to the user.

Motivation

The main motivation for adding summary panels is to reduce the amount of unnecessary information presented to the user during normal ParaView operation.

See Summit_May_24,_2011 for more information about the motivations for ParaView 4.0 features.

Screen Shots

Sphere-summary-panel.png Wavelet-contour-summary.png Surface-lic-summary.png Plot-summary.png

Panel from XML Hints

Panels may be auto-generated from XML hints. In order to mark a property to be included in the summary panel add the <ShowInSummaryPanel/> hint to its hints in the XML.

<DoubleVectorProperty
         name="Center"
         command="SetCenter"
         number_of_elements="3"
         animateable="1"
         default_values="0.0 0.0 0.0" >
  <DoubleRangeDomain name="range"/>
  <Documentation>
    This property specifies the center of the box.
  </Documentation>
  <Hints>
    <ShowInSummaryPanel/>
  </Hints>
</DoubleVectorProperty>

Custom Panels

Plugins that add filters and representations may create their own custom summary panels. They can do this by creating their own widgets which can then be inserted into the summary panel by using the ADD_PARAVIEW_SUMMARY_DISPLAY_PANEL() cmake function.

Here is an example from the SurfaceLIC plugin:

ADD_PARAVIEW_SUMMARY_DISPLAY_PANEL(
    IFACES
    IFACE_SRCS
    "representations, GeometryRepresentation, Surface LIC;"
    pqSurfaceLICSummaryDisplayPanel
)

Alternatively, plugins may provide custom panels by directly implementing the pqSummaryPanelInterface class.

// Interface class for plugins that create widgets to be shown on
// the summary panel.
class pqSummaryPanelInterface
{
public:
  // Destroys the summary panel interface object.
  virtual ~pqSummaryPanelInterface();

  // Creates and returns a widget to show in the properties frame
  // on the summary panel for the proxy. Returns 0 if the proxy is
  // not supported.
  virtual pqObjectPanel* createPropertiesPanel(pqProxy *proxy) const;

  // Creates and returns a widget to show in the display frame on
  // the summary panel for the representation. Returns 0 if the
  // representation is not supported.
  virtual QWidget* createDisplayPanel(pqRepresentation *representation) const;
};