>Im trying to get to grips with overlays.
>Unfortunatly the ROMs web page is down so I cannot download european roms at
>the moment to test what I am doing.
>
>What I dont understand is how to get the languages into the overlay PRC.
>
>I have just created a French overlay (frFR), which has all my english text
>in. Am I supposed to manually edit this PRC file with the french, or am i
>missing something here ?

There are three ways that I know of for 3rd parties to create 
localized overlays (internally Palm uses a special MPW tool to help 
automate the process):

1. You create the French (frFR) overlay from your English PRC, using 
PRC2OVL, then edit that overlay using Constructor. This is what 
you're describing above. It works, but whenever you change the 
structure of resource data (e.g. add a new button to a form) you'll 
have to repeat the process, which wastes a lot of time.

2. You can use Multilizer (http://www.multilizer.com) to build 
overlays for an English PRC, using its translation memory. You'll 
still need to touch up the UI layout (buttons widths, label 
placement, etc) but it's much easier to re-use previous translations 
for when the English PRC changes.

3. You have separate resource data (English & French) as part of your 
project (there are several ways to structure this - search the 
archives). It's up to you to make sure these two sets of data are in 
sync. You then build two versions of your PRC, one for English and 
one for French. You use PRC2OVL to create a French overlay from the 
French PRC. Finally, you use PRC2OVL's special -p (Patch Overlay) 
command to update the overlay resource in the French overlay with 
data from the English PRC.

This last step is required because the overlay resource inside of the 
overlay PRC must match the resource data in the base PRC, which I'm 
assuming is English.  Note that this process is described in the 
Development Tools Guide.pdf document.

It would be nice if PalmRez could automate this option #3, but it 
doesn't, so you're currently stuck with manual munging of PRCs using 
PRC2OVL.

BTW, regarding Aaron's previous comment about "overlays suck". Yes, 
they were designed for building multi-lingual ROMs (actually they 
were designed to speed up Palm's internal localization process, but 
wound up being used for EFIGS ROMs). So they have a number of 
limitations, the main one being that they only get opened 
automatically for you if the overlay's locale matches that of the 
device's current locale.

But you can of course open any overlay yourself when the app starts 
up. You'd have to build your own UI for letting the user select the 
desired app language, based on the set of installed overlays. You'd 
also want to check that the overlay wasn't automatically opened, for 
the case where the user's selected UI language matches the device's 
current locale. Finally, it's up to you to ensure that the overlay 
data is in sync with the base app data (e.g. make sure the PRC header 
version numbers match).

In the above scenario, you're not using any information found in the 
overlay resource, so the build process would be simplified if you 
directly created PRCs that contained localized resource data, and 
skipped the manual PRC2OVL process. Just make sure you don't use the 
'ovly' type for these PRCs, as otherwise the OS will be very confused.

This topic has come up a few times in the past - maybe I should add a 
KB entry. Or even write some code to implement an application 
language picker UI :)

-- Ken
-- 
Ken Krugler
TransPac Software, Inc.
<http://www.transpac.com>
+1 530-470-9200

-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/support/forums/

Reply via email to