[Paraview-developers] Enabling view splitting in a custom PV app

Utkarsh Ayachit utkarsh.ayachit at kitware.com
Thu Jun 29 15:12:44 EDT 2017


Put a break point in `pqMultiViewWidget::newFrame` and step through
the code. Do it in ParaView and CMB and maybe things will get clearer.

Utkarsh

On Thu, Jun 29, 2017 at 2:37 PM, David Thompson
<david.thompson at kitware.com> wrote:
> Hi Utkarsh,
>
>>> CMB does not explicitly create a layout proxy, and neither does it alter PV's XML ViewLayoutProxy. It just calls
>>>  builder->createView(
>>>    pqRenderView::renderViewType(),
>>>    activeServer);
>>> inside a slot named onServerCreationFinished. Should I be asking the builder to create a layout proxy first?
>>
>>
>> yes. See `pqDefaultViewBehavior::onServerCreation` for how that could be done.
>
> Still no luck.
>
> CMB was using pqParaViewBehaviors without disabling pqDefaultViewBehavior plus it created another view in onServerCreationFinished, which I fixed so only one is used: I tried both
> + disabling CMB's view creation (leaving pqDefaultViewBehavior enabled) and
> + disabling pqDefaultViewBehavior and using CMB to create a layout + view after the server connection completes.
>
> Both of the above ensure there is a layout and then generate a view, but neither shows the titlebar/split-view buttons.
>
> In neither case does the "Layout 1" tab or any view titlebar appear.
>
> I verified that pqParaViewBehaviors::setEnableStandardViewFrameActions(true) was called just before creating the pqParaViewBehaviors instance.
>
> I also added a menu action to call the pqTabbedMultiViewWidget's toggleWidgetDecoration but it has no effect.
>
> Also I can see pqViewFrame instances being created but then destroyed in pqMultiViewWidget::reload() at line 627.
>
> Any ideas on how to debug further?
>
>         David


More information about the Paraview-developers mailing list