<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: FindJObj &#8211; find a Matlab component&#8217;s underlying Java object</title>
	<atom:link href="http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/feed/" rel="self" type="application/rss+xml" />
	<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/</link>
	<description>Charting Matlab's unsupported hidden underbelly</description>
	<lastBuildDate>Thu, 09 Sep 2010 11:59:30 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: GUI integrated HTML panel &#124; Undocumented Matlab</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-11756</link>
		<dc:creator>GUI integrated HTML panel &#124; Undocumented Matlab</dc:creator>
		<pubDate>Wed, 30 Jun 2010 19:19:32 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-11756</guid>
		<description>[...] for undocumented features we need the editbox&#039;s underlying JTextPane handle. This is done using the &lt;i&gt;&lt;b&gt;FindJObj&lt;/b&gt;&lt;/i&gt; utility [...]</description>
		<content:encoded><![CDATA[<p>[...] for undocumented features we need the editbox&#8217;s underlying JTextPane handle. This is done using the <i><b>FindJObj</b></i> utility [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tabbed panes – uitab and relatives &#124; Undocumented Matlab</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-11438</link>
		<dc:creator>Tabbed panes – uitab and relatives &#124; Undocumented Matlab</dc:creator>
		<pubDate>Wed, 23 Jun 2010 18:47:13 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-11438</guid>
		<description>[...] This object is not directly exposed by &lt;i&gt;&lt;b&gt;uitabgroup&lt;/b&gt;&lt;/i&gt;, but can be found using the FindJObj utility [...]</description>
		<content:encoded><![CDATA[<p>[...] This object is not directly exposed by <i><b>uitabgroup</b></i>, but can be found using the FindJObj utility [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Continuous slider callback &#124; Undocumented Matlab</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-7000</link>
		<dc:creator>Continuous slider callback &#124; Undocumented Matlab</dc:creator>
		<pubDate>Mon, 08 Feb 2010 14:08:29 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-7000</guid>
		<description>[...] AdjustmentValueChangedCallback property that is useful for our purposes and is accessible using the FindJObj utility. Simply download FindJObj from the File Exchange, and then: hSlider = [...]</description>
		<content:encoded><![CDATA[<p>[...] AdjustmentValueChangedCallback property that is useful for our purposes and is accessible using the FindJObj utility. Simply download FindJObj from the File Exchange, and then: hSlider = [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6551</link>
		<dc:creator>Peter</dc:creator>
		<pubDate>Fri, 29 Jan 2010 11:31:10 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6551</guid>
		<description>Thanks Yair! I will try to figure it out from there... As long as I know it should be possible, it puts a little more power behind the effort.

Peter</description>
		<content:encoded><![CDATA[<p>Thanks Yair! I will try to figure it out from there&#8230; As long as I know it should be possible, it puts a little more power behind the effort.</p>
<p>Peter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Yair Altman</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6550</link>
		<dc:creator>Yair Altman</dc:creator>
		<pubDate>Fri, 29 Jan 2010 11:00:54 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6550</guid>
		<description>@Peter - look at the way I added the callbacks-table in the &lt;a target=&quot;_blank&quot; href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/14317-findjobj-find-java-handles-of-matlab-graphic-objects&quot; rel=&quot;nofollow&quot;&gt;&lt;b&gt;&lt;i&gt;FindJObj&lt;/i&gt;&lt;/b&gt;&lt;/a&gt; and &lt;a target=&quot;_blank&quot; href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/17935-uiinspect-display-methodspropertiescallbacks-of-an-object&quot; rel=&quot;nofollow&quot;&gt;&lt;b&gt;&lt;i&gt;UIInspect&lt;/i&gt;&lt;/b&gt;&lt;/a&gt; utilities. The source code is available on the File Exchange.

Yair</description>
		<content:encoded><![CDATA[<p>@Peter &#8211; look at the way I added the callbacks-table in the <a target="_blank" href="http://www.mathworks.com/matlabcentral/fileexchange/14317-findjobj-find-java-handles-of-matlab-graphic-objects" rel="nofollow"><b><i>FindJObj</i></b></a> and <a target="_blank" href="http://www.mathworks.com/matlabcentral/fileexchange/17935-uiinspect-display-methodspropertiescallbacks-of-an-object" rel="nofollow"><b><i>UIInspect</i></b></a> utilities. The source code is available on the File Exchange.</p>
<p>Yair</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6548</link>
		<dc:creator>Peter</dc:creator>
		<pubDate>Fri, 29 Jan 2010 10:17:43 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6548</guid>
		<description>Dear Yair

I am sorry for this kind of java newbie question, but I am back using the panes from the findobj. Now, instead of including a figure (as I asked about above) in one of the panes I would like to put a uitable or preferably your createtable from the FEX. I have tried many approaches, but none of them successful. I would be very happy if you have any directions on how to do it or have an example.

Thank you very much in advance!

Best regards, Peter</description>
		<content:encoded><![CDATA[<p>Dear Yair</p>
<p>I am sorry for this kind of java newbie question, but I am back using the panes from the findobj. Now, instead of including a figure (as I asked about above) in one of the panes I would like to put a uitable or preferably your createtable from the FEX. I have tried many approaches, but none of them successful. I would be very happy if you have any directions on how to do it or have an example.</p>
<p>Thank you very much in advance!</p>
<p>Best regards, Peter</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6136</link>
		<dc:creator>Daniel</dc:creator>
		<pubDate>Fri, 15 Jan 2010 23:55:59 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6136</guid>
		<description>Yair, i moved my code to the _OutputFcn, but findjobj still returns empty arrays. I couldn&#039;t find out what is my error.
i&#039;ve written a simple code which replaces uicontrols with javax.swing.JTextFields:

&lt;pre lang=&quot;matlab&quot;&gt;
function [ output_args ] = ReemplazarControles(hObject)
%UNTITLED2 Summary of this function goes here
%   Detailed explanation goes here

    children = get(hObject,&#039;Children&#039;);
    nSize = size(children);
    for i=1:nSize
        hControl = children(i);
        if isa(handle(hControl),&#039;uicontrol&#039;) 
            cStyle = get(hControl,&#039;Style&#039;);
            if strcmp(cStyle,&#039;edit&#039;)==1
                sPosition = get(hControl,&#039;Position&#039;);
                sUnits = get(hControl,&#039;Units&#039;);
                sParent = get(hControl,&#039;Parent&#039;);
                [text textcontainer] = javacomponent(&#039;javax.swing.JTextField&#039;,[0 0 100 100], hObject);
                set(textcontainer,&#039;Units&#039;,&#039;characters&#039;,&#039;Position&#039;,sPosition);
                delete(hControl);
            end
        end
        if isa(handle(hControl),&#039;uipanel&#039;)
            ReemplazarControles(hControl);
        end
    end
end
&lt;/pre&gt;

it works fine, but JTextFields not response Tab key strokes.
I could use both methods. I don&#039;t know wich is better.
I deeply appreciate your help</description>
		<content:encoded><![CDATA[<p>Yair, i moved my code to the _OutputFcn, but findjobj still returns empty arrays. I couldn&#8217;t find out what is my error.<br />
i&#8217;ve written a simple code which replaces uicontrols with javax.swing.JTextFields:</p>

<div class="wp_syntax"><div class="code"><pre class="matlab" style="font-family:monospace;"><span style="color: #0000FF;">function</span> <span style="color: #080;">&#91;</span> output_args <span style="color: #080;">&#93;</span> = ReemplazarControles<span style="color: #080;">&#40;</span>hObject<span style="color: #080;">&#41;</span>
<span style="color: #228B22;">%UNTITLED2 Summary of this function goes here</span>
<span style="color: #228B22;">%   Detailed explanation goes here</span>
&nbsp;
    children = <span style="color: #0000FF;">get</span><span style="color: #080;">&#40;</span>hObject,<span style="color:#A020F0;">'Children'</span><span style="color: #080;">&#41;</span>;
    nSize = <span style="color: #0000FF;">size</span><span style="color: #080;">&#40;</span>children<span style="color: #080;">&#41;</span>;
    <span style="color: #0000FF;">for</span> <span style="color: #33f;">i</span>=<span style="color: #33f;">1</span><span style="color: #F0F;">:</span>nSize
        hControl = children<span style="color: #080;">&#40;</span><span style="color: #33f;">i</span><span style="color: #080;">&#41;</span>;
        <span style="color: #0000FF;">if</span> <span style="color: #0000FF;">isa</span><span style="color: #080;">&#40;</span>handle<span style="color: #080;">&#40;</span>hControl<span style="color: #080;">&#41;</span>,<span style="color:#A020F0;">'uicontrol'</span><span style="color: #080;">&#41;</span> 
            cStyle = <span style="color: #0000FF;">get</span><span style="color: #080;">&#40;</span>hControl,<span style="color:#A020F0;">'Style'</span><span style="color: #080;">&#41;</span>;
            <span style="color: #0000FF;">if</span> <span style="color: #0000FF;">strcmp</span><span style="color: #080;">&#40;</span>cStyle,<span style="color:#A020F0;">'edit'</span><span style="color: #080;">&#41;</span>==<span style="color: #33f;">1</span>
                sPosition = <span style="color: #0000FF;">get</span><span style="color: #080;">&#40;</span>hControl,<span style="color:#A020F0;">'Position'</span><span style="color: #080;">&#41;</span>;
                sUnits = <span style="color: #0000FF;">get</span><span style="color: #080;">&#40;</span>hControl,<span style="color:#A020F0;">'Units'</span><span style="color: #080;">&#41;</span>;
                sParent = <span style="color: #0000FF;">get</span><span style="color: #080;">&#40;</span>hControl,<span style="color:#A020F0;">'Parent'</span><span style="color: #080;">&#41;</span>;
                <span style="color: #080;">&#91;</span>text textcontainer<span style="color: #080;">&#93;</span> = javacomponent<span style="color: #080;">&#40;</span><span style="color:#A020F0;">'javax.swing.JTextField'</span>,<span style="color: #080;">&#91;</span><span style="color: #33f;">0</span> <span style="color: #33f;">0</span> <span style="color: #33f;">100</span> <span style="color: #33f;">100</span><span style="color: #080;">&#93;</span>, hObject<span style="color: #080;">&#41;</span>;
                <span style="color: #0000FF;">set</span><span style="color: #080;">&#40;</span>textcontainer,<span style="color:#A020F0;">'Units'</span>,<span style="color:#A020F0;">'characters'</span>,<span style="color:#A020F0;">'Position'</span>,sPosition<span style="color: #080;">&#41;</span>;
                <span style="color: #0000FF;">delete</span><span style="color: #080;">&#40;</span>hControl<span style="color: #080;">&#41;</span>;
            <span style="color: #0000FF;">end</span>
        <span style="color: #0000FF;">end</span>
        <span style="color: #0000FF;">if</span> <span style="color: #0000FF;">isa</span><span style="color: #080;">&#40;</span>handle<span style="color: #080;">&#40;</span>hControl<span style="color: #080;">&#41;</span>,<span style="color:#A020F0;">'uipanel'</span><span style="color: #080;">&#41;</span>
            ReemplazarControles<span style="color: #080;">&#40;</span>hControl<span style="color: #080;">&#41;</span>;
        <span style="color: #0000FF;">end</span>
    <span style="color: #0000FF;">end</span>
<span style="color: #0000FF;">end</span></pre></div></div>

<p>it works fine, but JTextFields not response Tab key strokes.<br />
I could use both methods. I don&#8217;t know wich is better.<br />
I deeply appreciate your help</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Yair Altman</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6122</link>
		<dc:creator>Yair Altman</dc:creator>
		<pubDate>Fri, 15 Jan 2010 07:35:43 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6122</guid>
		<description>@Daniel - as I said, simply attach your &lt;b&gt;InputVerifier&lt;/b&gt; in the &lt;i&gt;_OutputFcn()&lt;/i&gt; instead of in the &lt;i&gt;_OpeningFcn()&lt;/i&gt;. Both of these functions are automatically created by GUIDE: &lt;i&gt;_OpeningFcn()&lt;/i&gt; is invoked &lt;u&gt;before&lt;/u&gt; the figure is made visible and the Java peers are created; &lt;i&gt;_OutputFcn()&lt;/i&gt; is invoked immediately &lt;u&gt;after&lt;/u&gt; it&#039;s made visible, when the peers are in place. 

I would be happy if you added a comment with your &lt;b&gt;InputVerifier&lt;/b&gt; code, for the benefit of other readers. If the code is long, email me (altmany at&#160;gmail) and I&#039;ll add a separate post about it.</description>
		<content:encoded><![CDATA[<p>@Daniel &#8211; as I said, simply attach your <b>InputVerifier</b> in the <i>_OutputFcn()</i> instead of in the <i>_OpeningFcn()</i>. Both of these functions are automatically created by GUIDE: <i>_OpeningFcn()</i> is invoked <u>before</u> the figure is made visible and the Java peers are created; <i>_OutputFcn()</i> is invoked immediately <u>after</u> it&#8217;s made visible, when the peers are in place. </p>
<p>I would be happy if you added a comment with your <b>InputVerifier</b> code, for the benefit of other readers. If the code is long, email me (altmany at&nbsp;gmail) and I&#8217;ll add a separate post about it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6094</link>
		<dc:creator>Daniel</dc:creator>
		<pubDate>Thu, 14 Jan 2010 21:28:43 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6094</guid>
		<description>Yair, you&#039;re right. I was calling it in my OpenFcn() method. My purpose was set a InputVerifier to an edit control. Is there another callback in wich i can do that?

Thank you very much!</description>
		<content:encoded><![CDATA[<p>Yair, you&#8217;re right. I was calling it in my OpenFcn() method. My purpose was set a InputVerifier to an edit control. Is there another callback in wich i can do that?</p>
<p>Thank you very much!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Yair Altman</title>
		<link>http://undocumentedmatlab.com/blog/findjobj-find-underlying-java-object/comment-page-1/#comment-6079</link>
		<dc:creator>Yair Altman</dc:creator>
		<pubDate>Thu, 14 Jan 2010 17:23:52 +0000</pubDate>
		<guid isPermaLink="false">http://undocumentedmatlab.com/?p=892#comment-6079</guid>
		<description>@Daniel - It works for me...
Perhaps you&#039;re calling &lt;b&gt;&lt;i&gt;findjobj&lt;/i&gt;&lt;/b&gt; in your &lt;i&gt;_OpeningFcn()&lt;/i&gt; instead of in your &lt;i&gt;_OutputFcn()&lt;/i&gt; or in callbacks? This would explain the problem, since the GUI has not yet rendered onscreen in &lt;i&gt;_OpeningFcn()&lt;/i&gt; (the figure is still invisible), so &lt;b&gt;&lt;i&gt;findjobj&lt;/i&gt;&lt;/b&gt; cannot find the Java handle.</description>
		<content:encoded><![CDATA[<p>@Daniel &#8211; It works for me&#8230;<br />
Perhaps you&#8217;re calling <b><i>findjobj</i></b> in your <i>_OpeningFcn()</i> instead of in your <i>_OutputFcn()</i> or in callbacks? This would explain the problem, since the GUI has not yet rendered onscreen in <i>_OpeningFcn()</i> (the figure is still invisible), so <b><i>findjobj</i></b> cannot find the Java handle.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
