http://qs321.pair.com?node_id=762748

ELISHEVA has asked for the wisdom of the Perl Monks concerning the following question:

I'm trying to get up to speed with 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...

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.

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.

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 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 Tk). CallingTk is "under construction".

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.

I feel like I'm missing something obvious - a Google link that was staring me in the face, perhaps?

Many thanks in advance, beth