Developer: Amar Sagoo
Issue: 1.5 (April/May 2003)
Author: Greg Fiumara
Article Description: No description available.
Article Length (in bytes): 4,268
Starting Page Number: 8
Article Number: 1502
Related Link(s): None
Excerpt of article text...
Just as there are .DLLs on Windows, Apple provides the HIToolbox for Mac developers. REALbasic has always allowed for developers to utilize the Toolbox. For those who do not know, the HIToolbox is code stored in the Mac OS system files which developers can call for basic interface needs, like proxy icons, mixed state check boxes/radio buttons, and sheet windows. Developers can call this code using the "declare" tag in REALbasic. On the "Classic" Mac OS, the Toolbox was spread out over various "Libraries" such as "MenuLib" and "InterfaceLib." Now, with Mac OS X (and Mac OS 9.2), all of the code is stored in a file called "CarbonLib," making it much easier for developers to find and utilize the code they need. A few examples of this are made available through many of Amar Sagoo's developer files.
Amar provides around 10 interface development tools that use CarbonLib, including Aqua Helper Methods, DragGrayRegion, and Column Browser. The majority of the tested methods worked as advertised. However, some of the methods disfunction or do not work properly under Mac OS X without changing some code. For example, ProxyIcon can add proxy icons to windows under Mac OS 9, but when running under Mac OS X you get a REALbasic error stating that it was, "unable to connect to fragment InterfaceLib." This is easily fixed by changing all occurrences of "InterfaceLib" to "CarbonLib" in the source code. Another problem is encountered when running ColumnBrowser under Mac OS X. Aptly named, ColumnBrowser provides a way for REALbasic to support the Finder's Column View. The example project works great except that it crashes when selecting some invisible items, and text in the browser is distorted, multicolored, and sometimes invisible, providing for a bad end-user experience.
There are, however, some very nice classes in this collection of developer tools. These include ASCheckbox, ASRadiobutton, and ASRoundButton. ASCheckbox and ASRadiobutton are canvas-based classes that provide for mixed state values in check boxes and radio buttons. If you are trying to create a meticulous interface, you will be glad to know that ASCheckbox and ASRadiobutton draw their backgrounds correctly under Mac OS X, unlike the REALbasic provided interface elements which do not keep the aqua stripes aligned and which show aqua stripes even when building a brushed metal application. ASRoundButton creates, as the name suggests, Mac OS X round buttons through a canvas-based class. All of these classes are Mac OS X HIG compliant and are much better than the plugin alternatives from other authors.
...End of Excerpt. Please purchase the magazine to read the full article.