<?xml version="1.0" encoding="windows-1252"?>
<node id="762748" title="Is there a better way to learn Tk?" created="2009-05-08 01:00:00" updated="2009-05-08 01:00:00">
<type id="115">
perlquestion</type>
<author id="720219">
ELISHEVA</author>
<data>
<field name="doctext">
&lt;p&gt;I'm trying to get up to speed with [mod://Tk] and finding it hard going.  To translate my knowledge of other GUIs to Tk I really need something like a systematic overview that says: Hey, Tk sort-of, but not quite, borrows its terminology from Motif (e.g. Geometry manager) but don't look for Combobox in the documentation because we call it "BrowseEntry". (go figure);  the core widget set is ... here are the five programmable events handled by the Foobar widget and so on.  Here is how to control the event loop... &lt;/p&gt;

&lt;p&gt;The CPAN documentation seems plentiful but incomplete.  For example, if there are parameters for [Tk::MainLoop] or any special methods for [Tk::MainWindow] it can't be discerned from the documentation.&lt;/p&gt;

&lt;p&gt;Studying Perl source code is time consuming but even that isn't an option, since most of the Tk library is just a wrapper around a C library.&lt;/p&gt;

&lt;p&gt;Often times a Perl wrapper for a cross-language library has sketchy documentation, so usually I look for a good cross-referenced API in the original language.  But if such an animal exists, my Google fu isn't strong enough to find it.  Maybe a reference to it is hiding somewhere in the CPAN documentation?  The closest thing I could find was [http://www.seedling.org/tcl/tkAPI_man.html|Tk API manual] but it isn't very searchable - just a long list of manual pages.  Furthermore, I don't have a clear idea of how any of this is mapped back to the Perl Tk without exploring the C code itself (and I can't even do that because I'm not sure where to find Tk.xs and tkGlue.c the two files supposedly responsible for connecting the C libraries to Perl, according to [mod://Tk]). [mod://CallingTk] is "under construction".&lt;/p&gt;

&lt;p&gt;Most of yesterday I muddled through using CPAN and a tutorial here and there, but this isn't a very efficient way of learning something.  Tutorials tend to focus on explaining concepts, not in laying out the full range of capabilities of a toolkit.&lt;/p&gt;

&lt;p&gt;I feel like I'm missing something obvious - a Google link that was staring me in the face, perhaps?&lt;/p&gt;

&lt;p&gt;Many thanks in advance, beth&lt;/p&gt;
</field>
</data>
</node>
