I can now change the display panel for all sources/filters relating to
a view.  Is there a way to set the display panel depending on the
source or filter?<br>
<br>
Thanks for all the help so far,<br>
Paul<br><br><div><span class="gmail_quote">On 03/01/2008, <b class="gmail_sendername">Clinton Stimpson</b> &lt;<a href="mailto:clinton@elemtech.com">clinton@elemtech.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Paul Edwards wrote:<br>&gt; Does this mean that I don&#39;t need to edit the main Paraview code?<br>That&#39;s correct.&nbsp;&nbsp;You can do this in a plugin.<br>&gt; Do you have any examples of a plugin which does this?<br>The closest example is ParaView3/Examples/Plugins/GUIView.&nbsp;&nbsp;But what you
<br>want is different enough that it may not help much.<br>&gt; If not, I would be happy to make one, but I&#39;m still a little confused<br>&gt; as to how to implement it.&nbsp;&nbsp;So far I have a plugin for the server and<br>&gt; one for the client, adding a reader and panel to paraview.&nbsp;&nbsp;Below is
<br>&gt; my CMake file:<br>&gt;<br>&gt; 8&lt;----------------------------------------------------------------<br>&gt; FIND_PACKAGE(ParaView REQUIRED)<br>&gt; INCLUDE(${PARAVIEW_USE_FILE})<br>&gt;<br>&gt;<br>&gt; QT4_WRAP_CPP(MOC_SRCS 
pqMyPanel.h)<br>&gt; QT4_WRAP_UI(UIC_SRCS pqMyPanel.ui )<br>&gt;<br>&gt; ADD_PARAVIEW_OBJECT_PANEL(IFACES IFACE_SRCS CLASS_NAME pqMyPanel<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; XML_NAME MyReader XML_GROUP sources)<br>&gt;<br>&gt;
<br>&gt; ADD_PARAVIEW_PLUGIN(MyReaderSMPlugin &quot;1.0&quot;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SERVER_MANAGER_XML vtkMyReader.xml<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SERVER_MANAGER_SOURCES vtkMyReader.cxx)<br>&gt; ADD_PARAVIEW_PLUGIN(MyReaderGUIPlugin &quot;
1.0&quot;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GUI_INTERFACES ${IFACES}<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GUI_RESOURCE_FILES pqMyReader.xml<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SOURCES pqMyPanel.cxx ${MOC_SRCS} ${UIC_SRCS}<br>&gt; ${IFACE_SRCS})
<br>&gt; ----------------------------------------------------------------&gt;8<br>&gt;<br>&gt; Is there a macro to add a display panel so the file can be auto<br>&gt; generated, or do I need to create my own subclass for pqPlugin and
<br>&gt; manually add it as one of the interfaces?<br>As Utkarsh said, you create your own implementation of<br>pqDisplayPanelInterface, not pqPlugin.<br>There&#39;s an ADD_PARAVIEW_DISPLAY_PANEL macro that you can follow as an
<br>example.&nbsp;&nbsp;Since you need to make your own pqDisplayPanelInterface,&nbsp;&nbsp;you<br>can&#39;t call that macro.<br>Your implementation of pqDisplayPanelInterface needs to be give to<br>ADD_PARAVIEW_PLUGIN&#39;s GUI_INTERFACES argument so it can put it in the
<br>pqPlugin implementation it creates.<br><br>Clint<br><br>&gt; On 03/01/2008, *Utkarsh Ayachit* &lt;<a href="mailto:utkarsh.ayachit@kitware.com">utkarsh.ayachit@kitware.com</a><br>&gt; &lt;mailto:<a href="mailto:utkarsh.ayachit@kitware.com">
utkarsh.ayachit@kitware.com</a>&gt;&gt; wrote:<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Hi Paul,<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; In your plugin, you need to implement the pqDisplayPanelInterface<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; (just<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; what the pqStandardDisplayPanels in 
pqDisplayProxyEditorWidget.cxx<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; does)<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; and the register it with the plugin manager. If you look at<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; pqDisplayProxyEditorWidget::updatePanel, you&#39;ll see that it checks for<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; all pqDisplayPanelInterface implementations registered and asks
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; them to<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; create the panel for the source.<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Utkarsh<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Robert Maynard wrote:<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; Last time I asked the same question, I was told I would have to
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; include<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; the xmlName of my class to the conditional statement, and recompile<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; paraview to get custom display panels like TextSource to work.<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; On Jan 3, 2008 9:12 AM, Paul Edwards &lt;
<a href="mailto:paul.m.edwards@gmail.com">paul.m.edwards@gmail.com</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mailto:<a href="mailto:paul.m.edwards@gmail.com">paul.m.edwards@gmail.com</a>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; &lt;mailto: <a href="mailto:paul.m.edwards@gmail.com">
paul.m.edwards@gmail.com</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mailto:<a href="mailto:paul.m.edwards@gmail.com">paul.m.edwards@gmail.com</a>&gt;&gt;&gt; wrote:<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; I am trying to provide a custom display panel for a plugin I
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; have<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; created.&nbsp;&nbsp;The plugin is for a new source which is a subclass of<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; vtkMultiBlockPLOT3DReader (the plot3d file is generated from<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; inputs<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; selected in the object panel) and I would like to customize the
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; display options for my users.<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; I can see this is done for &quot;TextSource&quot; and<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &quot;TimeToTextConverter&quot;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; but when looking through the code (
pqObjectBuilder.cxx, line<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; 400)<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; there is a conditional statement to check specifically for these<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; sources.&nbsp;&nbsp;Does this mean that it is not possible from a<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; plugin? (Or
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; am I looking in the wrong place here?)<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; Any help would be appreciated, thanks in advance,<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; Paul<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; PS Great software ;)
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; _______________________________________________<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; ParaView mailing list<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; <a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a> &lt;mailto:
<a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;mailto:<a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a> &lt;mailto:<a href="mailto:ParaView@paraview.org">ParaView@paraview.org
</a>&gt;&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; ------------------------------------------------------------------------
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; _______________________________________________<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; ParaView mailing list<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; <a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a> &lt;mailto:<a href="mailto:ParaView@paraview.org">
ParaView@paraview.org</a>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &gt; <a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;<a href="http://www.paraview.org/mailman/listinfo/paraview">
http://www.paraview.org/mailman/listinfo/paraview</a>&gt;<br>&gt;<br>&gt;<br>&gt; ------------------------------------------------------------------------<br>&gt;<br>&gt; _______________________________________________<br>
&gt; ParaView mailing list<br>&gt; <a href="mailto:ParaView@paraview.org">ParaView@paraview.org</a><br>&gt; <a href="http://www.paraview.org/mailman/listinfo/paraview">http://www.paraview.org/mailman/listinfo/paraview</a>
<br>&gt;<br><br></blockquote></div><br>