The Codesmith's Library
Written by Carsten Whimster
Well, there isn't much to report this month. It has gotten quiet, and perhaps people have started going on holidays already.
If you use the Internet, but haven't tried the WebExplorer yet, try it
soon. It gets better all the time, and the May 25 beta is so good that I
prefer it to Netscape, that perennial favorite. I don't use Netscape at
home anyway, but at work I have a Mac with Netscape. The amount of
information on OS/2 available on the net is ever growing, and I am trying
to make my homepage a bit of a launching point to some of these pages.
Hopefully one day there will be a developer's repository of information
somewhere on the Web.
This reference book has a very simple layout, so this review will probably be the shortest ever. Here are the chapter headings:
This book has ring bindings, and a flap which you can use to mark a spot when you close it. It is smaller than a normal computer-type book, and is the perfect size for a desktop reference manual. The first chapter just explains how the book is laid out, and the conventions used within chapter 2.
Chapter 2 is the meat of the book, and has every WIN function from WinAddAtom to WinWindowFromPoint. Each function has a description (explanatory text), #include identifiers (the shorter ones which #include as little as possible), the function prototype, parameter explanations, return value explanations, error codes, remarks (with Gotcha's listed), and a small section of related functions with page numbers. Sounds simple, doesn't it? But it works. Consider how you might use it. Let's say that you want to allow your application to use a tracking rectangle to select an area in the client window. You go to appendix C, and you try to find something related to this, by examining the function categories. Pretty soon you find Mouse Functions, Pointer Functions, and Rectangle Functions, all of which sound like possible categories. You start looking at the function names, and you stumble on one called WinTrackRect in the Mouse section. This sounds like a good place to start, so you find it alphabetically in chapter 2. The description confirms your suspicion. The Remarks section has a lengthy explanation of the purpose and use of this function. Like so many PM functions, you are never quite sure whether it indeed does what you need, but now you can at least try something. You write some code, using the function prototype listed.
Another way of using it (not mutually exclusive) is to use it as a memory replacement. You just remember what the terms are, and the book remembers the details of how you need to call it, what has to be done beforehand, and what effect you can expect. This is probably how you will use it after getting more familiar with PM.
There is one way that you can't use this book. It is not a tutorial on how to program PM. The descriptions are too terse, and there isn't enough information there to teach you new areas of PM programming. For example, in my programming I haven't ever needed to figure out what an atom table is. I saw the functions in here, but even after reading several of the entries, I still do not know what an atom table is, or how to use it. All I know is how to call the functions. I then have to go elsewhere to learn about atom tables, and once I have figured this out, I can return to the reference manual, and browse the functions to see what I can do.
The cross-references are invaluable, but I suppose that since these books have to compete with the on-line manuals, they had to come up with a way of giving you similar functionality to the hyper-text links in the INF files. The system they came up with works real well.
I love this book. If the explanations were longer, and more tutorial in nature (after all, even the best PM programmers probably have areas in which their knowledge is spotty), then I would give it an A+. As it is, it'll get an A. A good solid reference book, easier to read than the online material, and takes up much less screen real estate <grin>.
WIN Functions, Scholinl.
Our Bookstore has reviews and links to Amazon for all books we have reviewed in the past, as well as several books waiting to be reviewed, and others which we recommend.