TweetFollow Us on Twitter

Resorcerer 2
Volume Number:10
Issue Number:4
Column Tag:Tools Of The Trade

Related Info: Dialog Manager Help Manager Resource Manager

Resorcerer: A Fan’s Notes

Just a few of the many reasons Resorcerer has so many avid followers

By Philip Borenstein

About the author

Philip enjoys family outings featuring his famous dogcow barbeque, and celebrates the Macintosh enthusiasts holiday of Jan. 1, 1904 by changing as many files on as many disks as possible.

Several years ago, a friend who used to write about the club scene for a Boston weekly caught some flack for writing well about a band she was particularly fond of. When I asked her about it, she said “Look, when you go out to clubs to hear bands almost every night, you’re bound to have some favorites. They’re not the only band I write about, but when I get a chance to do so, I’ll say good things about them.”

After several years in the Macintosh development tools business, I’ve grown fond of some programs. Mathemaesthetics’ Resorcerer is definitely one of them. In the interest of disclosure, let me say up front that I’ve used Resorcerer for five years and that Doug McKenna (Resorcerer’s author) has been a friend of mine for four. When he needed it, I helped him out by writing a chapter of his manual. If it helps, don’t think of this as a review; think of it as a fan’s notes.

Resorcerer by Mathemaesthetics, Inc. is a resource editor that lets you edit almost any kind of Macintosh resource. It has over a dozen built-in editors to edit resources like menus, icons, dialogs, cursors, strings, window templates, control templates, and so on. For resources that can’t be edited with the built-in editors, Resorcerer has a rich template-based editor, the data editor, that builds on and surpasses ResEdit’s TMPL mechanism.

Why should you spend your hard-earned money to buy Resorcerer when you can get ResEdit for free? That’s the question most people ask when they first see Resorcerer. If you’ve already come upon ResEdit’s limitations, the answer is easy. The real answer is that Resorcerer is better at editing many common resources. What’s more, while development on ResEdit has slowed (the last major version was released in 1991), Resorcerer has kept pace with the resource-editing needs of Macintosh programmers.

Rather than talk about each of Resorcerer’s editors, I’ll describe the highlights of some of the most-used editors and then discuss some general aspects of the program.

The Dialog Editor

The main job of a dialog editor is to help you design dialogs that your users can understand. A good dialog editor should make it easy for you to create dialog items and arrange them in the dialog window.

In Resorcerer, you choose dialog items from a hierarchical menu. In addition to the standard dialog items (buttons, static text, edit text, etc.), Resorcerer’s dialog editor lets you create pop-up menus and lists. These two items types have become so common, it’s hard to believe that they weren’t part of the original Dialog Manager spec. Resorcerer creates user items for these two items. This implementation of pop-up menus predates the pop-up menu CDEF introduced with System 7. But if you prefer to use the pop-up menu control, you can create a control item corresponding to a CNTL resource for the pop-up menu.

Usually, dialog items should be aligned properly and arranged in functional groups. As you would expect, the dialog has an “Align to Grid” command. You can set the size of the grid and choose to make the grid visible. You can also specify a margin to make sure that dialog items don’t get too close to the edge of the dialog window. The dialog editor provides commands that align selected items by their sides or centers. One nice feature is the ability to align static text items using the ends of each items’ text string instead of its item bounding box. Additionally, the dialog has a “Use Best Size” command that resizes an item to an optimal size. For pictures, icons, and controls, the dialog editor uses the item’s natural size; for static text, it increases or decreases the height of the item to contain all the text; for buttons, it uses a minimum size of 66 pixels and a height of 20 pixels. For pop-up menu user items, the width of the ‘MENU’ is calculated and used.

Resorcerer’s dialog editor lets you design dialogs at full size, so you can see exactly what they’ll look like. The “Try Out” command lets you run your dialog to see how it feels, and “Starter Code” command generates C code that you can use to prototype your application quickly. You’ll definitely need to edit the code, but it’s a good way to get something up and running. The generated code knows how to deal with any number of the two special user items that Resorcerer generates for pop-up menus and scrolling lists.

The dialog editor has a command to add a balloon help item to the dialog. Unlike ResEdit, this command works even if the help item is not the last item in the dialog. The editor will even warn you about a little-known problem the Help Manager has with help items in non-modal dialogs.

The Data Editor

The one feature that really sets Resorcerer apart from ResEdit is its template-based data editor. The data editor allows you to edit resources for which there is no built-in editor. Resorcerer uses the data editor to edit Apple event and Balloon Help resources, for example. The data editor has its roots in ResEdit’s TMPL mechanism but goes way beyond it.

You create TMPL resources that contain fields that describe the contents of the resource. Resorcerer has a dedicated editor for displaying and editing TMPLs, and makes it easy to import templates from text files as well. As in ResEdit, there are template fields for words of various sizes, Pascal strings, C strings, lists, etc. Resorcerer expands the kinds of fields to over 120 types (almost four times the number the ResEdit’s field types) to include colors, system dates, code disassembly, key-fields, and fixed- and floating-point numbers. One field type, SELF, allows you to create recursive resources.

To give you an idea of the flexibility of Resorcerer’s TMPL mechanism, one of the templates that comes with Resorcerer parses PICT resources. You can use this TMPL to inspect pictures and to edit any strings embedded in the picture.

Resorcerer comes with over 180 TMPLs to edit virtually every kind of Macintosh resource including Installer script resources, OCE resources, MacApp view resources, Finder resources, and many more.

For resources that can’t be described easily with a TMPL, Resorcerer allows you to write a filter that transforms the resource data into a form that you can edit with a template and then writes the edited data into the resource’s natural form. A good use of filters is for resources that begin with a list of offsets to other data. The filter scans the resource data and creates a representation without the offsets so that it can be edited with TMPL fields. Once you’re finished, the filter converts the representation to include the offsets. Resorcerer comes with filter examples and the appropriate interface files to get you started writing filters.

Rather than installing custom TMPL resources into Resorcerer itself, you place files that contain TMPL resources into a special folder. Resorcerer scans this folder when it starts up. To make it easier to develop custom resource templates, the data editor lets you open the file that contains the TMPL resource so you can edit it.

Powerful as it is, the data editor has one drawback. To enter data for most field types, you double-click on the field and type the data in a dialog box instead of typing directly in the field. The data editor does have a command that lets you toggle the value of a Boolean value without opening the field dialog box, and if a field takes one of several values, you can easily set up a pop-up menu to make entering values easier. Eventually you’ll develop “finger macros” to open the dialog box, enter the data and close the dialog, but for long or complex resources, this approach to data entry can get tedious quickly.

Unlike ResEdit, you can’t write custom editors for Resorcerer. While the template-based data editor goes a long way to make up for this, there are some cases where a custom editor is the best way to solve a problem. You can, however, write simple code extensions (“pickers” in ResEdit lingo, “showers” in Resorcerer lingo) for displaying the data of custom resources.

The Color Icon Editor

Resorcerer’s icon editor sports some features that you’d expect to find only in a color paint program. In addition to the standard pixel-editing tools (pencil, paint bucket, lasso, eraser, etc.), you’ll find a smudge tool and a text tool. When editing 8-bit pixels you can turn on anti-aliasing to make text, lines, and circles smoother. With special key combinations, you can select all pixels of a particular color. With other key combinations, you can use the color palette for live editing: as you choose colors from the palette, the color of all the pixels in the selection or last filled area change. This feature lets you see what different colors look like without having to apply the color and then undoing the coloring. A dedicated dither palette lets you choose a foreground “color” that is the dithered combination of any two colors. Another feature that makes it easier to create an icon family is the snapshot list. At any point you can take a snapshot of the icon and come back to it later.

Like ResEdit, Resorcerer’s icon editor is designed to let you create and edit an entire icon family at once. Unlike ResEdit it has some bells and whistles to help you get the job done faster. When you work on an 8-bit icon, you can have the icon editor select all the colors that don’t conform to the 34 Apple-approved Finder icon colors. If you like, you can have the icon editor map these colors to conforming colors. When you copy an 8-bit icon to a 4-bit icon, you can let the icon editor choose the nearest 4-bit color corresponds to the 8-bit color, or you can dither the 8-bit colors to 4-bit colors.

All of the other editors that edit bit-mapped data, such as cursors and 'cicn' resources work essentially the same way as the color icon editor. Unlike ResEdit, Resorcerer’s ‘ppat’ editor supports ‘ppat’s with power-of-two dimensions all the way up to 256 by 256.

General Features

Resorcerer is full of nice touches that programmers will appreciate. One very handy command compares two resource files. Another allows you to search the entire resource fork or a particular resource for a given hex or ASCII value. The “Change All” command lets you change virtually any attribute (including resource type) of a set of resources. For resources that can appear in dialogs and alerts, such as icons and controls, a “Find Dialog Item References” command helps you find which dialog uses the resource. For many resources, including icons and dialogs, the “Copy” command can decompile the resource into Rez format and places the text on the Clipboard. One of Resorcerer’s options lets you see the data fork of your file as if it were a resource. This is very nice when you want to take a look at a file that stores data in both forks.

Even the nuances that seem at first to be purely ornamental turn out to have practical foundations. For instance, when a window’s title is too long to fit in the title bar, Resorcerer uses a smaller font so that the title will fit. When you have several windows with similar titles on the screen, this small attention to detail becomes very important.

Resorcerer is smart about some common programmer’s tricks. If it encounters a definition procedure (WDEF, CDEF, MDEF, etc.) that is abnormally short, it will ignore it and use a standard defproc instead. This keeps you from crashing when you open windows that use the stub-WDEF technique.

Some of Resorcerer’s features are a little obscure until you discover a need for them. For instance, the ‘TEXT’ editor has a “Create Text PICT” that may not appear to be immediately useful. But suppose you want a Balloon Help item that contains a lot of styled text and you don’t particularly care for the way the Help Manager formats it. In that case, you use the text editor to format your text, create a picture of the text, and use the picture in the help balloon.

Although Resorcerer is primarily an interactive editor, it also supports a simple script language that lets you build a new resource file by including and excluding resources from many other files. You can use the script to change the IDs, names, or types of included resources before saving the final output file. The script language supports simple C preprocesser definitions so that you can share symbolic constants from your C project.

Unlike Rez, though, Resorcerer’s script language does not support compiling resources directly. To run a script, you can drag and drop it on Resorcerer’s icon, or open and run it directly from within the application.

Another useful feature is the value converter. This window lets you see the value of any arbitrary 32 bits as up to a dozen or so standard Macintosh types. The value converter hooks to any editor that displays hex data.

Unlike consumer-oriented applications where the number of options is kept to a minimum, Resorcerer has a rich set of preferences settings to accommodate the whims of all but the most finicky programmers. For example, in most cases, when you copy a DLOG resource from one file to another, you probably want to take the corresponding DITL as well, and that’s exactly what Resorcerer does. But if you like, you can change the preferences to not include related resources in a selection. In that case, Resorcerer warns you that your selection doesn’t include the related resource. And if you don’t like that, you can change the preferences so that Resorcerer doesn’t even warn you that your selection doesn’t include the related resources. There are options that let you choose whether Resorcerer should use animated zoom rectangles to when you double-click on a dialog item, which keys map to the tools in the icon editor, whether Resorcerer should give you hints about commands and short cuts, and, of course, whether to convert straight quotes to curly smart quotes. Being able to tune Resorcerer like this means that there are a lot of preferences dialogs. In addition to a multi-page program-wide preferences dialog, many of the major editors have their own preferences dialog.

Documentation

The Resorcerer documentation comes in two wire-bound volumes. The first volume, “User Manual,” discusses the basics of resources and resource editing and has a chapter for each of the editors. The second volume, “Technical Stuff,” covers the more technical editors including the code editor and the template editor, as well as the syntax of the script language. There is a good tutorial section on designing custom resource templates. Although you can use Resorcerer for a long time without reading the manuals, they contain useful information about shortcuts and idiosyncrasies of the Resource Manager.

For a technical application, Resorcerer has a surprising amount of on-line help. The Balloon Help goes well beyond what you’ve probably come to expect (“Clicking this check box turns this option on”). Resorcerer uses its Balloon Help to remind you of the shortcuts and techniques to help you work faster. See, for example, the Balloon Help for the lasso tool in the bitmap editors. This implementation probably doesn’t follow the Macintosh Human Interface Guidelines for Balloon Help (in fact, I don’t think it will even fit on a 9-inch Classic screen), but it’s nice to know that the information is available. Besides, you weren’t really going to read the manual anyway.

For some commands, Resorcerer displays a hint dialog that lets you know about ways to perform some tasks and shortcuts you may have overlooked.

Conclusion

Resorcerer is a well-supported resource editor for professional programmers, software localizers, and serious amateurs. If you use a resource editor only to change application icons, to add or change menu command key equivalents, or to explore applications, ResEdit may be good enough for you. But if you write Macintosh applications for a living, particularly if your application stores some of its data in application-specific resources, Resorcerer is the tool of choice. As far as I could tell, there’s only one or two things that ResEdit can do that Resorcerer can’t. ResEdit gives you some rudimentary tools to edit bitmapped fonts; it can change a folder’s Finder attributes; and it can verify and make minor fixes to a damaged resource file.

This review just covers a few of Resorcerer’s editors. There are many more that might be of particular use for you such as the code editor or the color table editor. The best way to find out whether Resorcerer is for you, download (or call for) the demo version. All of the editors are fully functional, you just can’t save changes to them.

Product Information

Resorcerer costs $256 and comes with a 60 day money-back gurantee. The current version is 1.2.4. Upgrades from previous versions are $77. Volume and educational discounts are available. A demo version is available free from Mathemaesthetics and on AppleLink, America On Line, and CompuServe.

Mathemaesthetics, Inc.
P.O. Box 67156
Chestnut Hill, MA 02167 USA.
Telephone: (800) 738-8803
Fax: (617) 738-0164
America Online or AppleLink: Resorcerer
Internet: resorcerer@aol.com
CompuServe: 70521,1114

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Macs Fan Control 1.3.1.0 - Monitor and c...
Macs Fan Control allows you to monitor and control almost any aspect of your computer's fans, with support for controlling fan speed, temperature sensors pane, menu-bar icon, and autostart with... Read more
NetShade 6.3.1 - Browse privately using...
NetShade is an anonymous proxy and VPN app+service for Mac. Unblock your Internet through NetShade's high-speed proxy and VPN servers spanning seven countries. NetShade masks your IP address as you... Read more
Dragon Dictate 4.0.7 - Premium voice-rec...
With Dragon Dictate speech recognition software, you can use your voice to create and edit text or interact with your favorite Mac applications. Far more than just speech-to-text, Dragon Dictate lets... Read more
Persecond 1.0.2 - Timelapse video made e...
Persecond is the easy, fun way to create a beautiful timelapse video. Import an image sequence from any camera, trim the length of your video, adjust the speed and playback direction, and you’re done... Read more
GIMP 2.8.14p2 - Powerful, free image edi...
GIMP is a multi-platform photo manipulation tool. GIMP is an acronym for GNU Image Manipulation Program. The GIMP is suitable for a variety of image manipulation tasks, including photo retouching,... Read more
Sandvox 2.10.2 - Easily build eye-catchi...
Sandvox is for Mac users who want to create a professional looking website quickly and easily. With Sandvox, you don't need to be a Web genius to build a stylish, feature-rich, standards-compliant... Read more
LibreOffice 5.0.1.2 - Free, open-source...
LibreOffice is an office suite (word processor, spreadsheet, presentations, drawing tool) compatible with other major office suites. The Document Foundation is coordinating development and... Read more
f.lux 36.1 - Adjusts the color of your d...
f.lux makes the color of your computer's display adapt to the time of day, warm at night and like sunlight during the day. Ever notice how people texting at night have that eerie blue glow? Or wake... Read more
VirtualBox 5.0.2 - x86 virtualization so...
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers... Read more
File Juicer 4.43 - Extract images, video...
File Juicer is a drag-and-drop can opener and data archaeologist. Its specialty is to find and extract images, video, audio, or text from files which are hard to open in other ways. In computer... Read more

ReBoard: Revolutionary Keyboard (Utilit...
ReBoard: Revolutionary Keyboard 1.0 Device: iOS Universal Category: Utilities Price: $1.99, Version: 1.0 (iTunes) Description: Do everything within the keyboard without switching apps! If you are in WhatsApp, how do you schedule a... | Read more »
Tiny Empire (Games)
Tiny Empire 1.1.3 Device: iOS Universal Category: Games Price: $2.99, Version: 1.1.3 (iTunes) Description: Launch cannonballs and blow tiny orcs into thousands of pieces in this intuitive fantasy-themed puzzle shooter! Embark on an... | Read more »
Astropad Mini (Productivity)
Astropad Mini 1.0 Device: iOS iPhone Category: Productivity Price: $4.99, Version: 1.0 (iTunes) Description: *** 50% off introductory price! ​*** Get the high-end experience of a Wacom tablet at a fraction of the price with Astropad... | Read more »
Emo Chorus (Music)
Emo Chorus 1.0.0 Device: iOS Universal Category: Music Price: $1.99, Version: 1.0.0 (iTunes) Description: Realistic Choir simulator ranging from simple Chorus emulation to full ensemble Choir with 128 members. ### introductory offer... | Read more »
Forest Spirit (Games)
Forest Spirit 1.0.5 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.5 (iTunes) Description: | Read more »
Ski Safari 2 (Games)
Ski Safari 2 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: The world's most fantastical, fun, family-friendly skiing game is back and better than ever! Play as Sven's sister Evana, share... | Read more »
Lara Croft GO (Games)
Lara Croft GO 1.0.47768 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.47768 (iTunes) Description: Lara Croft GO is a turn based puzzle-adventure set in a long-forgotten world. Explore the ruins of an ancient... | Read more »
Whispering Willows (Games)
Whispering Willows 1.23 Device: iOS Universal Category: Games Price: $4.99, Version: 1.23 (iTunes) Description: **LAUNCH SALE 50% OFF** - Whispering Willows is on sale for 50% off ($4.99) until September 9th. | Read more »
Calvino Noir (Games)
Calvino Noir 1.1 Device: iOS iPhone Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: The film noir stealth game. Calvino Noir is the exploratory, sneaking adventure through the 1930s European criminal underworld.... | Read more »
Angel Sword (Games)
Angel Sword 1.0 Device: iOS Universal Category: Games Price: $6.99, Version: 1.0 (iTunes) Description: Prepare to adventure in the most epic full scale multiplayer 3D RPG for mobile! Experience amazing detailed graphics in full HD.... | Read more »

Price Scanner via MacPrices.net

Apple offering refurbished 2015 13-inch Retin...
The Apple Store is offering Apple Certified Refurbished 2015 13″ Retina MacBook Pros for up to $270 (15%) off the cost of new models. An Apple one-year warranty is included with each model, and... Read more
Apple refurbished 2015 MacBook Airs available...
The Apple Store has Apple Certified Refurbished 2015 11″ and 13″ MacBook Airs (the latest models), available for up to $180 off the cost of new models. An Apple one-year warranty is included with... Read more
21-inch iMacs on sale for up to $120 off MSRP
B&H Photo has 21″ iMacs on sale for up to $120 off MSRP including free shipping plus NY sales tax only: - 21″ 1.4GHz iMac: $999.99 $100 off - 21″ 2.7GHz iMac: $1199.99 $100 off - 21″ 2.9GHz iMac... Read more
5K iMacs on sale for up to $150 off MSRP, fre...
B&H Photo has the 27″ 3.3GHz 5K iMac on sale for $1899.99 including free shipping plus NY tax only. Their price is $100 off MSRP. They have the 27″ 3.5GHz 5K iMac on sale for $2149.99 $2199.99, $... Read more
1.4GHz Mac mini, refurbished, available for $...
The Apple Store has Apple Certified Refurbished 1.4GHz Mac minis available for $419. Apple’s one-year warranty is included, and shipping is free. Their price is $80 off MSRP, and it’s the lowest... Read more
iPad Air 2 on sale for up to $100 off MSRP
Best Buy has iPad Air 2s on sale for up to $100 off MSRP on their online store for a limited time. Choose free shipping or free local store pickup (if available). Sale prices available for online... Read more
MacBook Airs on sale for $100 off MSRP
Best Buy has MacBook Airs on sale for $100 off MSRP on their online store. Choose free shipping or free local store pickup (if available). Sale prices for online orders only, in-store prices may vary... Read more
Big Grips Lift Handle For iPad Air and iPad A...
KEM Ventures, Inc. which pioneered the extra-large, super-protective iPad case market with the introduction of Big Grips Frame and Stand in 2011, is launching Big Grips Lift featuring a new super-... Read more
Samsung Launches Galaxy Tab S2, Its Most Powe...
Samsung Electronics America, Inc. has announced the U.S. release of the Galaxy Tab S2, its thinnest, lightest, ultra-fast tablet. Blending form and function, elegant design and multitasking power,... Read more
Tablet Screen Sizes Expanding as iPad Pro App...
Larger screen sizes are gaining favor as the tablet transforms into a productivity device, with shipments growing 185 percent year-over-year in 2015. According to a new Strategy Analytics’ Tablet... Read more

Jobs Board

*Apple* Music, Business Operations - Apple (...
**Job Summary** This role in Apple Music and in iTunes is working with…the songs that we all enjoy listening to in Apple Music. Your job will be to work wit Read more
Hardware Systems Integration Engineer - *App...
**Job Summary** We are seeking an enthusiastic electrical engineer for the Apple Watch team. This is a design engineering position that entails working with Read more
Engineering Project Manager - *Apple* TV -...
**Job Summary** The iTunes Apps project management team oversees iTunes, Apple TV, DRM and iOS Applications. We are looking for a project manager to help manage and Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
*Apple* Retail Online Store: Customer Insigh...
**Job Summary** Apple Retail (Online Store) is seeking an experienced e-commerce analytics professional to join the Customer Insights Team. The Web e-Commerce Analyst Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.