![]() |
|
Published 1997-11-01 Printer-friendly version
Hello and welcome to the first public sighting of "Heard it through the Bit-vine", a new column about what's happening in the world of third-party products for Clarion. Each month, this column will provide you with the latest in Clarion news, tips, rumors, freebies and basically anything else that seems interesting about the going's on in the Clarion world.
So, who determines what's most interesting? YOU DO!!
Are you a vendor? Let me know about new releases, updates, betas, product plans or anything else you think Clarion Online readers might want to know about.
Are you a user (and who isn't)? Drop me a line about any cool nuggets of information you come across, free templates or examples worth sharing, or anything else that other readers might find useful.
What do you get for contributing? Well, you'll see your name up in lights (phosphor, to be accurate) here in the Bit-vine credits. For especially useful bits, you may even win an autographed GIF of an official Clarion Online shirt or other similarly valuable prize. Come on, how can you resist?
Let me hear from you! The magic address is TomH@ClarionOnline.com
OK, now that we're done with the begging, pleading and bribing bit, let's get on with the show!
If you were at DevCon, you already know that the title of the talk David Bayliss gave was 'C4 - The Big Bang' (and if you weren't there, I guess you know it now). To recap briefly: C4 changes everything. Period. End of story. You have been assimilated into the OOP collective.
You think I'm kidding? Try this on for size - pick the simplest browse in CW 2.003 you can find (no embed code, fancy extension templates, etc.). Now right click on that procedure and select the 'Source' option to view the source code for the browse. Scan on down to the 'Code' keyword and take a look at all that code generated between Code and the first Routine to set up the browse, process events in the ACCEPT loop, call the refresh routines, and so forth (way too much code to reproduce here, I'm afraid).
Now let's take a look at what's after the Code statement in the same browse as generated in C4 Beta 2 using the new ABC templates:
CODE ThisWindow.Init ThisWindow.Ask ThisWindow.Kill RETURN
Bit different, eh? Rumor has it that with the addition of the new automatic constructors and destructors (sorry for the OOP-speak), it might even look more like this by the time C4 is actually shipped:
CODE ThisWindow.Ask RETURN
That's right. One line of code.
Of course, from David's perspective, it is a revolutionary change for the better (talk about your code size reduction!). And you know, he is probably right BUT...what about the rest of us shmucks who don't know a method from a molehill? Or that think (to quote Gus Creces, TopSpeed instructor and all-around Major OOP Dude) that polymorphism is "a new method for curing drug addicted parrots"? Who is going to get us from our stone-age procedural-type Alley-Oop code to the all of the benefits of our shiny new genuine OOP-dom?
Well, TopSpeed for one, with their spiffy CW 2.003 to C4 app conversion program, but if you're like me, you also use quite a few third-party templates, which means...
Given the above, is it any wonder that one of the most commonly asked questions in the third-party area on the TopSpeed CompuServe forum goes something like this:
"My livelihood and the fate of my house and children depends on the Smegmoid Mega-Templates BrowseMasher - will there be an upgrade to C4 for it?"
Sound familiar?
Now, lest I've set your hearts all a pitter-pat with fear about C4, most vendors have already announced their intention to upgrade to C4 and the new ABC templates. Indeed, some have indicated that their products already work with the C4 betas. And the good old 2.003 style procedural templates will be in C4 box as well.
BUT -- Just how big a task will it be for your favorite third-party vendor to upgrade their product to the new C4 ABC templates, though? What will be gained (or lost)? When will it happen? Most importantly, how can you find out the answers to these questions?
Well, by an amazing coincidence, I just happen to have spent the last two weeks doing exactly that - polling vendors about their C4 plans - and I've gathered their replies to those same questions (and others) into a Bit-vine 'Special Report' which you can download right here (it's C4Vendor.RTF, included in the install package that you can download above), right now. It includes the latest information from companies such as Toolcraft, CPCS, Boxsoft, Paragon, Lodestar, ProDomus, the Moseley Group and many others (16 in all). If you use 3rd party templates, you'll want to read it!
OK, so much for third party vendors and the OOP stuff. Now where can we find serious information about OOP for our own use? Well, so far some of the best information I've found about designing a system using OOP (as opposed to writing little class wrappers and interfaces, etc.), is the web site maintained by Team TopSpeed member and author Dave Harms. He has an ongoing series of articles (musings? lectures?) on his conversion of an existing procedural program to total OOP. So drop on by his 'Unofficial Clarion OOP Page' and check it out...
Also, if any of you have found any good general books on OOP (not written just for VB or C++ gurus), drop me a line and we'll all give each other a hand up this learning curve.
Oh, and by the way, Dave's site is at: http://www.incunabula.com/cwoop/index.htm
Watch out! I feel a FLAME coming on about PRODUCTS THAT COST A LOT OF MONEY BUT DON'T GIVE YOU ANY PRINTED OR PRINTABLE DOCUMENTATION! C'mon, you third party vendors (you know who you are<G>), how about something besides a Windows Help file. I mean, some of these products cost a LOT of money, and all I get is a lousy HELP FILE?!? It just isn't enough.
I spend my days clicking - clicking - clicking, and always suffering from a nagging feeling that I might be missing something important just because I didn't follow some link on an obscure reference to an unindexed function in a topic that just didn't seem relevant at the time... It is simply too easy to miss important details in a help file.
SOOOO... How about a cool solution that I just ran across (actually, searched out in a fit of desperation<G>) which could help ALL of us? Read on...
A while ago, I tried a utility called HLP2DOC that converted Help Files to a Word Document. Problem was, it choked on about half the files I tried it with and didn't support graphics at all, so I eventually junked it. Well, when I went searching again recently I came across a truly KILLER utility called "HELP to RTF". This puppy easily handled every file I threw at it, automatically generated an index and a table of contents, kept graphics in exactly the right places and in general just impressed the heck out me. It offers a ton of options for the conversion (including creating the RTF and so on in a format so that the file can be recompiled), all laid out in a simple wizard style process. To top it off, it has documentation in English, German and Spanish (the authors are German). And I now have a ring binder of readable documentation. (Woohoo!)
It is available as shareware, and registration is $40. They offer multiple ways to purchase included CSi SWREG. Go to www.herdsoft.com for complete info or to download it.
And how does this help the vendors? Well, they can run their help file through Help 2 RTF, load it into Word, spend a half hour or less rearranging it and then either save the DOC to a ZIP or even create a PDF file. We get something printable and they don't spend weeks typing docs. Now... EVERYBODY SMILE!<G>
One of the really nice things about using Clarion is the overall generosity of the user community. (Go ahead, all of you give yourselves a pat on the back!) Often, this manifests itself in truly useful templates that the authors have made available to the rest of us for that most favorite of prices: FREE! Each month, this column will feature a handy free template (or collection of templates) which you might want to add to your bag of Clarion tricks.
Note: If you decide to download and try out any free templates mentioned here, please remember that you get what you pay for - don't expect support from the author like you would from a commercial product. While most of them are generous to a fault (as witnessed by their giving away the template), they are NOT obligated in any way, shape or form to you because you want to use the template. Be nice to them!
This month's jewel is:
This one has been floating around for a while, but I still find myself using it whenever I need simple thread management in an app. Basically, it allows you to specify that only one instance of a procedure (thread) can be run at a time. Very handy for preventing what I call 'Windows Breed Like Bunnies Syndrome' (WBLBS, in tech-speak), where CW, by default, will let the user start a menu option as many times as they want - often not realizing that the option is already running behind another window. When this template is in use, it will check to see if an option is running, and, if it is, automatically pop the existing instance to the top rather than start another instance.
Installation and usage is dead simple. Just add a global extension template to your app that sets up some global thread handling variables, then a procedure extension to any thread where you want to limit the user to one instance.
The template was originally based on an article in the (now out of print) Clarion for Window Journal which was written by none other than Jim DeFabia (our own Dr. DePhobia here on Clarion Online). The version available here was modified by John Morter of JCM Computing in Melbourne, Australia and uploaded to CompuServe where it fell into my greedy little hands. And no, don't ask me how he modified it - I just know it works great! Our thanks to Jim and John.
If this sounds like it would be useful to you, you can download it here on Clarion Online (it's a very small 4kb file named SNGLTHRD.ZIP). Very good installation and usage instructions are provided in a README.TXT file inside the Zip file.
Note: You will need a ZIP compatible program to extract the template and its instructions.
Next month: Vince Sorensen's incredible WinAPI Toolkit.
Here are some tidbits and announcements gleaned from the TopSpeed forum and elsewhere over the last couple of weeks. If you see any products here which you would like to see scheduled for a full review in Clarion Online, let us know!
Everything in this column is the sole opinion of me, the author, and does not necessarily reflect the views of this magazine, its publisher, or even of myself (hey, I can be as schizophrenic as the next guy - both of him). Don't bet the farm on anything you read here: consider it a starting point for your own inquiries and research. The point here is that this column is intended to both enlighten and entertain, and that in the fast-moving world of software development this month's truth (or product release date) is often next month's "oops, did I say that...?".
'Nuff said!
Copyright © 1999-2008 by CoveComm Inc. All Rights Reserved. Reproduction in any form without the express written consent of CoveComm Inc., except as described in the subscription agreement, is prohibited.
Clarion Magazine ISSN 1718-9942
One year: $189
(includes all back issues since '99)
Renewals from $139
Two years: $289
Renewals from $239