I was able to get it working by using SetElement and setting the currentText retreived from the widget. Then I called UpdateProperty on the first combobox. Next I called UpdatePropertyInformation on the second combobox. For the order issue, I just ended up renaming them so they followed the order I needed.<br>
<br>Thanks,<br>Brian Panneton<br><br><div class="gmail_quote">On Thu, Mar 24, 2011 at 9:47 AM, Sebastien Jourdain <span dir="ltr">&lt;<a href="mailto:sebastien.jourdain@kitware.com">sebastien.jourdain@kitware.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Hi Brian,<br>
<br>
I&#39;m not sure to understand your UI and the way the things are.<br>
It might be overkill, but if you want to express those dependency, you<br>
can create your own domain based on what it is filled so far so at<br>
start only TypeList will be available, then &quot;TypeList + DataTypeList&quot;<br>
and then &quot;TypeList + DataTypeList + DataList&quot;<br>
Other than that, I don&#39;t know if it is possible to change the order...<br>
<br>
Seb<br>
<br>
<br>
On Thu, Mar 24, 2011 at 9:32 AM, Brian Panneton<br>
<div><div></div><div class="h5">&lt;<a href="mailto:brian.panneton@gmail.com">brian.panneton@gmail.com</a>&gt; wrote:<br>
&gt; I will attempt that and see if it corrects the issue. I have also noticed<br>
&gt; that when I start up the plugin and open a file, the order of my combobox<br>
&gt; population is wrong, and I can&#39;t seem to be able to change it.<br>
&gt;<br>
&gt; On load, I want it to populate in this order: TypeList, DataTypeList,<br>
&gt; DataList<br>
&gt; But it seems to always go in alphabetical order. This causes an issue<br>
&gt; because DataList depends on what is selected in DataTypeList which depends<br>
&gt; on TypeList. If either DataList or DataTypeList is run first it defaults to<br>
&gt; none.<br>
&gt;<br>
&gt; Is there a way to make them load data in order?<br>
&gt;<br>
&gt; On Wed, Mar 23, 2011 at 2:23 PM, Sebastien Jourdain<br>
&gt; &lt;<a href="mailto:sebastien.jourdain@kitware.com">sebastien.jourdain@kitware.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Who is supposed to change the property cbType ?<br>
&gt;&gt; I bet it get updated after that call, therefore, you should update<br>
&gt;&gt; with the correct value before you update the information property.<br>
&gt;&gt; To make sure you get the right value, print the combobox value so you<br>
&gt;&gt; know which value is pushed to the server before the update information<br>
&gt;&gt; property.<br>
&gt;&gt;<br>
&gt;&gt; Seb<br>
&gt;&gt;<br>
&gt;&gt; did you tried to print the combobox index when the slot get called ?<br>
&gt;&gt; Another thing could be to set yourself the value in the property at that<br>
&gt;&gt; time.<br>
&gt;&gt;<br>
&gt;&gt; On Wed, Mar 23, 2011 at 1:55 PM, Brian Panneton<br>
&gt;&gt; &lt;<a href="mailto:brian.panneton@gmail.com">brian.panneton@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; This XML is of two comboboxes, where the first depends on the second&#39;s<br>
&gt;&gt; &gt; selection.<br>
&gt;&gt; &gt; XML:<br>
&gt;&gt; &gt;             &lt;StringVectorProperty<br>
&gt;&gt; &gt;                 name=&quot;DataTypeList&quot;<br>
&gt;&gt; &gt;                 command=&quot;GetReaderDataTypeList&quot;<br>
&gt;&gt; &gt;                 information_only=&quot;1&quot;&gt;<br>
&gt;&gt; &gt;                 &lt;StringArrayHelper /&gt;<br>
&gt;&gt; &gt;             &lt;/StringVectorProperty&gt;<br>
&gt;&gt; &gt;             &lt;StringVectorProperty<br>
&gt;&gt; &gt;                 name=&quot;cbDataType&quot;<br>
&gt;&gt; &gt;                 command=&quot;SetReaderDataType&quot;<br>
&gt;&gt; &gt;                 immediate_update=&quot;1&quot;<br>
&gt;&gt; &gt;                 number_of_elements=&quot;1&quot;&gt;<br>
&gt;&gt; &gt;                 &lt;StringListDomain name=&quot;operation&quot;&gt;<br>
&gt;&gt; &gt;                     &lt;RequiredProperties&gt;<br>
&gt;&gt; &gt;                         &lt;Property name=&quot;DataTypeList&quot;<br>
&gt;&gt; &gt;                             function=&quot;ArraySelection&quot;/&gt;<br>
&gt;&gt; &gt;                     &lt;/RequiredProperties&gt;<br>
&gt;&gt; &gt;                 &lt;/StringListDomain&gt;<br>
&gt;&gt; &gt;             &lt;/StringVectorProperty&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;             &lt;StringVectorProperty<br>
&gt;&gt; &gt;                 name=&quot;TypeList&quot;<br>
&gt;&gt; &gt;                 command=&quot;GetReaderTypeList&quot;<br>
&gt;&gt; &gt;                 information_only=&quot;1&quot;&gt;<br>
&gt;&gt; &gt;                 &lt;StringArrayHelper /&gt;<br>
&gt;&gt; &gt;             &lt;/StringVectorProperty&gt;<br>
&gt;&gt; &gt;             &lt;StringVectorProperty<br>
&gt;&gt; &gt;                 name=&quot;cbType&quot;<br>
&gt;&gt; &gt;                 command=&quot;SetReaderType&quot;<br>
&gt;&gt; &gt;                 immediate_update=&quot;1&quot;<br>
&gt;&gt; &gt;                 number_of_elements=&quot;1&quot;&gt;<br>
&gt;&gt; &gt;                 &lt;StringListDomain name=&quot;operation&quot;&gt;<br>
&gt;&gt; &gt;                     &lt;RequiredProperties&gt;<br>
&gt;&gt; &gt;                         &lt;Property name=&quot;TypeList&quot;<br>
&gt;&gt; &gt;                             function=&quot;ArraySelection&quot;/&gt;<br>
&gt;&gt; &gt;                     &lt;/RequiredProperties&gt;<br>
&gt;&gt; &gt;                 &lt;/StringListDomain&gt;<br>
&gt;&gt; &gt;             &lt;/StringVectorProperty&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; When a currentIndexChanged event in cbType occurs, it sends a signal to<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; typeChanged() slot.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Code:<br>
&gt;&gt; &gt; void<br>
&gt;&gt; &gt; myclass::typeChanged()<br>
&gt;&gt; &gt; {<br>
&gt;&gt; &gt;     this-&gt;proxy()-&gt;GetProperty(&quot;cbType&quot;)-&gt;Modified();<br>
&gt;&gt; &gt;     vtkSMProperty* prop = this-&gt;proxy()-&gt;GetProperty(&quot;DataTypeList&quot;);<br>
&gt;&gt; &gt;     this-&gt;proxy()-&gt;UpdatePropertyInformation(prop);<br>
&gt;&gt; &gt; }<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; What ends up happening is that when I change the combobox for cbType<br>
&gt;&gt; &gt; from<br>
&gt;&gt; &gt; index 1 to index 2, typeChanged() is called, but is sending the 1st<br>
&gt;&gt; &gt; value to<br>
&gt;&gt; &gt; SetReaderType. It looks like it refeshes but remains index1. Thus, the<br>
&gt;&gt; &gt; DataTypeList is populated with the same information it had.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; When I remove the Modified() line, the combobox for cbType will show the<br>
&gt;&gt; &gt; change from index 1 to index 2, but SetReaderType does not get called.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Any idea why that is happening?<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Thanks,<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Brian<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Wed, Mar 23, 2011 at 12:15 PM, Sebastien Jourdain<br>
&gt;&gt; &gt; &lt;<a href="mailto:sebastien.jourdain@kitware.com">sebastien.jourdain@kitware.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Hi Brian,<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; could you send the (part of) XML proxy definition and the piece of<br>
&gt;&gt; &gt;&gt; code you are calling to that proxy to make that push...<br>
&gt;&gt; &gt;&gt; So I could be sure that both side are corrects.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Thanks,<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Seb<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Wed, Mar 23, 2011 at 11:32 AM, Brian Panneton<br>
&gt;&gt; &gt;&gt; &lt;<a href="mailto:brian.panneton@gmail.com">brian.panneton@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt; Okay, my attempt to push the variable to the server using<br>
&gt;&gt; &gt;&gt; &gt; immediate_update=&quot;1&quot; seems to not update the server variable when I<br>
&gt;&gt; &gt;&gt; &gt; change<br>
&gt;&gt; &gt;&gt; &gt; my current index of a combobox. I also tried to call Modified() on<br>
&gt;&gt; &gt;&gt; &gt; the<br>
&gt;&gt; &gt;&gt; &gt; currentIndexChanged event, but it seems to ignore the changes from<br>
&gt;&gt; &gt;&gt; &gt; the<br>
&gt;&gt; &gt;&gt; &gt; GUI<br>
&gt;&gt; &gt;&gt; &gt; and reset the combobox as if I just loaded it.<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; How should I be pushing the variable to the server?<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; On Wed, Mar 23, 2011 at 11:11 AM, Sebastien Jourdain<br>
&gt;&gt; &gt;&gt; &gt; &lt;<a href="mailto:sebastien.jourdain@kitware.com">sebastien.jourdain@kitware.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; Unfortunately that&#39;s the way you have to do it. Or the other way is<br>
&gt;&gt; &gt;&gt; &gt;&gt; to<br>
&gt;&gt; &gt;&gt; &gt;&gt; use GatherInformation() but it won&#39;t be much better.<br>
&gt;&gt; &gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; On Wed, Mar 23, 2011 at 10:23 AM, Brian Panneton<br>
&gt;&gt; &gt;&gt; &gt;&gt; &lt;<a href="mailto:brian.panneton@gmail.com">brian.panneton@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; If I have an information_only property with a command to get a<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; vtkStringArray, is there a way to pass a parameter to the fuction?<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; And,<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; can<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; that parameter be from another property? Otherwise, it seems that<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; I<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; would<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; need to push the variable to the server in order for it to be<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; available<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; for<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; the command called from the information_only property.<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; Thanks,<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; Brian Panneton<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; _______________________________________________<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; Visit other Kitware open-source projects at<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; Please keep messages on-topic and check the ParaView Wiki at:<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; <a href="http://paraview.org/Wiki/ParaView" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; Follow this link to subscribe/unsubscribe:<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt; <a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">http://www.paraview.org/mailman/listinfo/paraview</a><br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br>