updated November 8, 2004

8 Nov 2004

Version 3.2

Updated to the 3.2 version of PilRC.

12 Feb 2002

Version 2.9p10b

A bug in the PilRC sources caused a crash when using a BitmapFamilyExtended or IconFamilyExtended (an uninitialized structure was causing a random pointer to be freed).

09 Aug 2002

Version 2.9p10a

Graphical controls in 2.9p10 had selected and non-selected bitmap IDs swapped.

09 Aug 2002

Version 2.9p10

Updated to Aaron's 2.9p10 sources.

Fixed a problem on windows with sliders (the value, minValue, maxValue, and pageSizes were getting byte-swapped).

Fixed problem with using the 5.0 SDK version of UIResDefs.r. That file now defines the tSLT resource type which we'd been defining explicitly in the .r file. The definition is now #ifdef'ed, so the .r file will work with both 5.0 and earlier SDKs.

18 Mar 2002

Version 2.9p2

Per Aaron's advice, backed out of 2.9p3 to a more stable 2.9p2.

12 Mar 2002

Version 2.9p3

If you downloaded version 2.9p3 for Mac OS prior to today, you actually were downloading version 2.9. Sorry (automated update script has been written to avoid this problem in the future).

11 Mar 2002

Version 2.9p3

Updated to Aaron's (released) 2.9p3 sources.

Fixed a bug that was added in 2.8p8 that disabled the functionality of the command-line processing (called strncmp with sizeof("pilrc") rather than strlen("pilrc")).

22 Feb 2002

Version 2.9

Updated to Aaron's (released) 2.9 sources.

21 Feb 2002

Version 2.8p8

Added

#ifndef __PALMTYPES_R__
#include "UIResDefs.r"
#endif
at the beginning of the .r output. This makes derezzing work.

Locked projects now work (as long as the .r file already exists in the project). This is important for source code control systems where the project isn't checked out and is locked.

Updated to Aaron's 2.8p8 PilRC sources. Sorry, no docs on the changes that have been made there. However, for the first time, absolutely no changes need to be made to base PilRC in order to compile the plugin.

26 Dec 2001

Version 2.8p7c

If you downloaded version 2.8p7c prior to today, you actually were downloading version 2.8p7b. Sorry.

07 Nov 2001

Version 2.8p7c

Fixed a bug introduced in 2.8p7a that caused crashes on Windows 2000 (thanks to Ben Combee for tracking it down).

Also added back in version numbers to the plugin (they'd gone walkabout in 2.8p7a due to the .r and .rc files losing their TEXT type, and thus not being compiled by the IDE).

29 Oct 2001

Version 2.8p7b

Fixed a latent bug that was uncovered by our change to allow command-lines (we were calling CWReleaseText after calling CWGetMainFileText, which was a no-no). The bug showed up intermittenly as compiles sometimes not working (complaining of garbage characters), or of crashing the IDE (Windows only).

11 Oct 2001

Version 2.8p7a

Carbonized the plugin. That means it now runs native on Mac OS X. On OS 9, you'll need the CarbonLib.

Updated to patch 7 of the command-line version of 2.8 The command-line version has a bug if there is exactly one button in an alert: it will set the default button ID to 1, rather than the correct 0. This has been reported to Aaron, and should be fixed in the next version.

Added support for command-line arguments (thank, Alexander Hinds!). Instead of directly adding a normal .rcp file, you can add a special command file which mimics the command-line version of PilRC. Instead of separating commands by spaces, use newlines. The first line of the file must be the word pilrc.

Here's an example Command.rcp file:

pilrc
-LANGUAGE
FRENCH
myrealpilrcfile.rcp
Some flags are meaningless in the plugin (for example, -ro). The two of most utility are -LANGUAGE and -H.

Fixed problem where modifying a .h file included by an .rcp file didn't cause the .rcp file to be marked as needing recompilation.

Now reports progress (# lines processed) during the compile.

01 Aug 2001

Version 2.8p6e

The command-line version has a bug if there is exactly one button in an alert: it will set the default button ID to 1, rather than the correct 0. This has been reported to Aaron, and should be fixed in the next version.

I thought there was a workaround, but it doesn't work:).

For the sake of utility, the plugin will now only accept a default button ID of 0 if there is one button.

01 Aug 2001

Version 2.8p6d

Default button IDs were 1 less than they should be. Now, they exactly match the command-line version of PilRC.

However, note that the command-line version has a bug if there is exactly one button, and there is no default specified: it will create a default of 1, rather than the correct 0. This has been reported to Aaron, and should be fixed in the next version. A workaround is to explicitly specify a default button ID for alerts with exactly one button.

For the sake of compatibility, the plugin currently shares this behavior with the command line.

07/22/01

Version 2.8p6c

There were some problems if your project had multiple .rcp files. In particular, IDs for menu resources were reused, as were IDs for form bitmaps, graffiti state indicators, and form titles. Now, form titles and graffiti state indicators have the same ID as the form itself (since there's only one of each on a form). The first form bitmap in a form has the same ID as the form itself; subsequent form bitmaps in the same form have the ID incremented by 1. The menu IDs are now assigned consecutively starting with the ID of the menubar itself. This means that, in your .rcp file, your menubar IDs must be separated by at least the number of menus within the menubar. AUTOIDs are still a problem with multiple .rcp files that I don't know how to deal with.

07/18/01

Version 2.8p6b

The IDE was crashing on Windows 2K systems. Now it doesn't.

Default button index on alerts was off-by-one.

07/17/01

Version 2.8p6: Updated to the 2.7b version of Aaron's code.

Errors no longer cause the Windows IDE to crash (thanks to Ben Combee for fixing that).

On the Mac, compiling a .rcp file when the associated .r file is open will give a useful error message

Sliders, and graphical buttons now working.

04/24/01

Version 2.7b1: fixed following Fixed a bug with lists. Now, we'll honor the requested height. If there aren't enough items in the list, we'll add empty items to the list.

Fixed an ellipsis bug (we were missing that character).

ENGLISH is now the default translation language (sorry, still no way to specify a different language).

03/11/01

Version 2.7b: Updated to the 2.7b version of Aaron's code.

Fixed a bug that caused a line like:

DATA "junk" ID 1000 "palm1bpp.bmp"
to infinite loop (was returning wrong result from fread).

Added support for reading strings from a file. It used to be that:

STRING ID 101 FILE "Test.txt"
would give an error: fread not supported for non-native files.

Added support for including partial pathnames in files (for example, "images/foo.bmp"). This allows the example pilrctst.rcp to compile.

Added regression tests (.rcp original and .r files they should generate).

11/17/00

Version 2.6: Updated to the 2.6 version of Aaron's code.

10/30/00

Version 2.5c3: Fixed a bug with lists (the number of visible items was being computed wrong). Constructor stores only the number of visible items in a list, not the actual height. However, the tFRM resource on the Palm stores only the height, and not the number of visible items. This leads to some loss of information when mapping from PilRC output (that contains height) to .r format (that contains only the number of visible items).

In addition, the PalmRez postlinker (the code that actually creates the .PRC file) requires that the number of visible items be less than or equal to the number of items in the list.

Given all that, there was a bug in the PilRC plugin where it converted height to number of items. It was using a value of 12 for the font height, rather than the correct values (ranging from 11 to 14).

So, you'll still need to add extra empty items to your list (so that there are at least as many as your value for VISIBLEITEMS). In addition, the height of your list is going to be rounded to a multiple of the line height of the font.

10/27/00

Version 2.5c2: Fixed a bug with CATEGORIES (the Rez output was bad).

10/17/00

Version 2.5c1: Fixed a bug in menus that didn't allow SEPARATORs. Menu IDs must be sequential, including the (unseen) menu ID of a SEPARATOR. Thus, if you have a separator, you must skip an ID (as in the following):

MENU ID 1000
BEGIN
	PULLDOWN "TITLE"
	BEGIN
		MENUITEM  "Item1" 1000 "A"
		SEPARATOR
		MENUITEM  "Item2" 1002 "B"
	END
END

Mapping of characters with the upper-bit set was accidentally turned off. Now, it's back on

Code was added to map the following: buttons in alerts, menus (titles, item text, and shortcuts), tver and tAIN resources

7/5/00

Version 2.5c: Updated to use newest PilRC sources: 2-5c!

In strings, characters with the upper-bit set were not being mapped correctly. PalmRez PostLinker expects all strings to use a Mac encoding. Now, we map our strings to that Mac encoding. The following chars aren't supported: 0x7f, 0x85, 0x9d, 0x9e, 0xc9.

PalmRez PostLinker expects that any bitmaps are being generated on the fly from PICT resources. It assumes, therefore, that tAIB and Tbmp resources use an intel byte-ordering on Windows. Thus, we need to swap byte-ordering on these resources for the following fields: width, height, rowBytes, flags, nextDepthOffset, and reserved.

Added support for feof, needed when reading in font files.

Added version resources for both Mac and Windows. The version matches the corresponding version of PilRC.

6/10/00

Second and subsequent compiles could crash the IDE. This was fixed by re-initializing psymFirst to 0 in InitRcpfile (note that, unlike the command-line tool, the plugin can be re-executed with old global values).

The line # and error location were not correct (although they were usually within approximately one line). The computation of the offset within the file has been fixed in ErrorLine2.

If an error occured while dumping a resource (for example, if menu IDs weren't sequential), the next compile would crash (removed assert).

Non-sequential menu IDs gave an error referencing the menu (which wasn't correct). Now it specifies the menu as well as the item.

Tables, and gadgets in a form weren't supported (they generated invalid Rez output). Therefore, the resulting .r file was invalid.

Note that all form object IDs must be unique (across all forms). This is a restriction shared with Constructor.

More than 10 forms would crash the Windows version My version of realloc tried to move the new amount of allocated memory, which was more than was there. Now, we store the allocated lengths and only copy what's actually there.

5/24/00

The 5/5/00 release added a bug that caused controls to have no frame. This is now fixed.

Added an "All" target to the project that builds both the Mac and Windows plugins.

5/5/00

Fixed a byte-swapping bug that caused (for CW on Windows only) lists Usable flags to always be false (on Windows--Mac was fine).

New project file builds both Mac and Windows targets from Mac (but I wish I could figure out how to get remote debugging of the Windows DLL working!).

Released source code (still needs to be updated to current version of PilRC sources).

Needs support for -H flag of PilRC (probably requires a panel for the plugin to have a UI to specify constant header file.

3/5/00

In getting startedwriting the second edition of Palm Programming: The Developer's Guide, I realized that it's currently very difficult to manage cross-platform projects.

The solution I came up with was to standardize on using PilRC for all environments.

Advantages:

Disadvantages:

 

[Calliope Home]

[PilRC Plugin]