Documentation  |   Table of Contents   |  < Previous   |  Next >   |  Index

3    XRD Resource Element Reference

Palm OS® Resource File Formats

Palm OS® Developer Suite

This chapter provides reference for the XRD resource elements.

Reference Conventions ^TOP^

The following conventions are used in the description of the XRD resource elements.

Common Variables ^TOP^

The reference descriptions in this chapter use the following variables for common data types, attributes, and elements:

binary_data
As described in the section "Binary Data".
boolean
As described in the section "Boolean".
enum
As described in the section "Enum (Enumerated Value-Label)".
ext_file
As described in the section "External File Reference".
four_character_code
As described in the section "Four-Character Code".
integer
As described in the section "Integer Number".
quoted_text
As described in the section "Quoted Text".
resource_id
As described in the section "Resource ID Attribute".
text_element
As described in the section "Text Element".

Common Resource Elements ^TOP^

Many resource elements use COMMENT_TEXT and TEXT elements. These elements are described in this section.

Comment Text Element

Purpose

Use the COMMENT_TEXT element to include comments in the XRD file.

Tag

<COMMENT_TEXT> quoted_text </COMMENT_TEXT>
The text of the comment. The text must follow the XRD quoted text format.

Text Element

Purpose

Use the TEXT element to include text where needed.

Tag

<TEXT> quoted_text </TEXT>
The text must follow the XRD quoted text format.

Palm OS Resource File ^TOP^

The Palm OS resource file element, PALMOS_RESOURCE_FILE, is the XML element that encloses all other XRD resource elements. This element defines an XRD file.

The Palm OS resource file element consists of an optional DATABASE_HEADER element followed by the additional resource elements, which are described in "Resource Element Reference."

Start Tag

<PALMOS_RESOURCE_FILE>

Child Elements

<DATABASE_HEADER> database_def
</DATABASE_HEADER>
This element is not normally used in resource files because these attributes are generally set using the PRCMerge tool when a Palm OS application is built.
If you use GenerateXRD with a PRC file and specify the -d option, GenerateXRD adds the DATABASE_HEADER element to the created XRD file.
The database_def can include any of the following elements:
<DB_NAME> quoted_text </DB_NAME>
quoted_text - The name of the database as it will appear on the Palm Powered device.
<DB_FLAG_RESET> boolean </DB_FLAG_RESET>
TRUE - You want Palm OS to notify the application of a device reset.
FALSE - You do not want Palm OS to notify the application of a device reset.
<DB_FLAG_BACKUP> boolean </DB_FLAG_BACKUP>
TRUE - The application should be backed up to the desktop computer if no application-specific conduit is available.
FALSE - You do not want the application to be backed up to the desktop computer.
<DB_FLAG_HIDDEN> boolean </DB_FLAG_HIDDEN>
TRUE - The database is marked as hidden from view. For PRC databases, this value tells the Launcher not to show the application. For PDB databases, this value tells the Launcher to disregard the database's records when showing a count of records.
FALSE - The database is not marked as hidden.
<DB_FLAG_COPY_PROTECT> boolean
</DB_FLAG_COPY_PROTECT>
TRUE - The database is marked as protected from being copied. This value prevents the database from being copied by methods such as IR beaming.
FALSE - The database is not marked as protected from being copied.
<DB_VERSION> integer </DB_VERSION>
integer - The application-specific version of the database.
<DB_MOD_NUM> integer </DB_MOD_NUM>
integer - The modification number of the database.
<DB_TYPE> four_character_code </DB_TYPE>
four_character_code - The database type identifier. For PDB databases, the value of this field depends on the creator application. For PRC databases, this field usually has the value 'appl'.
<DB_CREATOR> four_character_code
</DB_CREATOR>
four_character_code - The database creator identifer. For more information about creator IDs, see the book Exploring Palm OS: Programming Basics.
<DB_UNIQUE_ID> integer </DB_UNIQUE_ID>
integer - Used internally by the Palm OS to generate unique identifiers for records on the Palm device when the database is loaded into the device. For PRC databases, this value is normally not used and is set to 0.
<DB_APP_INFO> binary_data </DB_APP_INFO>
binary_data - The local offset from the beginning of the database header data to the start of the optional, application-specific application information (app info) block.
<DB_SORT_INFO> binary_data </DB_SORT_INFO>
binary_data - The local offset from the beginning of the PDB header data to the start of the optional, application-specific sort information (sort info) block. This value is set to NULL for databases that do not include an sort info block.
<FILE_PREFERENCES> file_prefs
</FILE_PREFERENCES>
This element is used by Palm OS Resource Editor to generate a C header file based on the XRD file contents. This element does not generate a binary resource in the output PRC file.
The file_prefs can include any of the following elements:
<PREFS_GENERATE_HEADER> boolean
</PREFS_GENERATE_HEADER>
TRUE - You want Palm OS Resource Editor to generate a C header file based on the XRD file contents.
FALSE - You do not want Palm OS Resource Editor to generate a C header file.
<PREFS_HEADER_FILE> quoted_text
</PREFS_HEADER_FILE>
quoted_text - Optional file name of the header file to generate. If absent, the name of the XRD file is used, with an .h extension.
<VARIABLE_TEMPLATE> quoted_text
</VARIABLE_TEMPLATE>
quoted_text - Optional string template to use to generate symbol names based on the contents of the resource.
Resource Elements
Include any of the resource elements defined in this chapter. See "Resource Element Reference" for more information about additional resource elements.

End Tag

</PALMOS_RESOURCE_FILE>

Example


<PALMOS_RESOURCE_FILE> 
	<COMMENT_TEXT> 
		"AllResTypes.xrd\n" 
	</COMMENT_TEXT> 
	<DATABASE_HEADER> 
		<DB_NAME> "Starter" </DB_NAME> 
		<DB_FLAG_RESET> FALSE </DB_FLAG_RESET> 
		<DB_FLAG_BACKUP> FALSE </DB_FLAG_BACKUP> 
		<DB_FLAG_HIDDEN> FALSE </DB_FLAG_HIDDEN> 
		<DB_FLAG_COPY_PROTECT> FALSE </DB_FLAG_COPY_PROTECT> 
		<DB_VERSION> 2 </DB_VERSION> 
		<DB_MOD_NUM> 0 </DB_MOD_NUM> 
		<DB_TYPE> 'appl' </DB_TYPE> 
		<DB_CREATOR> 'aTrK' </DB_CREATOR> 
		<DB_UNIQUE_ID> 0x00000000 </DB_UNIQUE_ID> 
		<DB_APP_INFO>  </DB_APP_INFO> 
		<DB_SORT_INFO>  </DB_SORT_INFO> 
	</DATABASE_HEADER> 
	... 
	... 
</PALMOS_RESOURCE_FILE> 

Resource Element Categories ^TOP^

To help you browse through the types of resource elements available, this section collects the resource elements into categories.

For an alphabetical listing of the resource elements, see "Resource Element Reference."

Application Resource Types ^TOP^

This section lists the Palm OS application resource types.

Table 3.1  Application Resource Types

Resource Element

Described in Section

Application Default Category

"Application Default Category Resource"

Application Extended Preferences

"Application Extended Preferences Resource"

Application Icon Bitmap

"Application Icon Bitmap Resource"

Application Icon Name

"Application Icon Name Resource"

Application Info Strings

"Application Information Strings Resource"

Application Launch Preferences

"Application Launch Preferences Resource"

Application Preferences

"Application Preferences Resource"

Application Version

"Application Version Resource"

Data Resource Types ^TOP^

This section lists the resource types that define data resources.

Table 3.2  Data Resource Types

Resource Element

Described in Section

Byte Integer List

"Byte Integer List Resource"

DWord Integer List

"DWord Integer List Resource"

Raw

"Raw Resource"

Soft Constant

"Soft Constant Resource"

String

"String Resource"

String List

"String List Resource"

Word Integer List

"Word Integer List Resource"

User Interface Types ^TOP^

This section lists the resource types that can be used to define an application's user interface.

Table 3.3  User Interface Resource Types

Resource Element Reference ^TOP^

The following section lists the resource elements alphabetically. For a categorized list of XRD resources, see "Resource Element Categories."

Alert Resource
Application Default Category Resource
Application Extended Preferences Resource
Application Icon Bitmap Resource
Application Icon Name Resource
Application Information Strings Resource
Application Launch Preferences Resource
Application Preferences Resource
Application Version Resource
Bitmap Resource
Byte Integer List Resource
Code Signing Security Certificate Resource
Code Signing Security Signature Resource
Color Table Resource
DWord Integer List Resource
Extended Font Resource
Font Resource
Form Resource
Form Navigation Resource
Graphic Family Resource
Menu Bar Resource
MIDI Resource
Overlay Resource
Raw Resource
Schema Database Resource
Soft Constant Resource
String List Resource
String Resource
TrueType Font Resource
Wave Sound Resource
Window Constraints Resource
Word Integer List Resource

Alert Resource ^TOP^

Purpose

Use the alert resource to define an alert dialog.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'Talt'
  • Palm OS 5: 'aalt'
  • Palm OS 6: 'Talt'

Start Tag

<ALERT_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<ALERT_TYPE> enum </ALERT_TYPE>
The ALERT_TYPE element may be specified as one of the following enumeration values:
INFORMATION_ALERT
Use for alert dialogs when the user should be aware of the information, but the information does not indicate potential problems at a later time.
CONFIRMATION_ALERT
Use for alert dialogs when the user must acknowledge the alert before continuing.
WARNING_ALERT
Use for alert dialogs when the application is initiating an irreversible action.
ERROR_ALERT
Use for alert dialogs that indicate an error has developed that cannot be reversed.
<HELP_ID> resource_id </HELP_ID>
Specifies the resource ID of the help text that appears when the user taps the Help icon in an alert.
Entering an ID of 0 means that the alert does not have help text.
<DEFAULT_BUTTON> integer </DEFAULT_BUTTON>
Specifies the button index number of the form's default button. Palm OS software simulates the tapping of this button when the form is dismissed.
<TITLE> quoted_text </TITLE>
Specifies the title of the alert, which appears at the top of the alert dialog.
<MESSAGE> quoted_text </MESSAGE>
Specifies the text that appears in the body of the alert.
<BUTTONS> button_text </BUTTONS>
Specifies one or more <TEXT> resource elements that each define the text string for a button.

End Tag

</ALERT_RESOURCE>

Example


<ALERT_RESOURCE RESOURCE_ID="1000"> 
	<ALERT_TYPE> WARNING_ALERT </ALERT_TYPE> 
	<HELP_ID> 0 </HELP_ID> 
	<DEFAULT_BUTTON> 2 </DEFAULT_BUTTON> 
	<TITLE> "Remove Category" </TITLE> 
	<MESSAGE> "Delete category name and all records?" 
	</MESSAGE> 
	<BUTTONS> 
		<TEXT> "Records" </TEXT> 
		<TEXT> "Name Only" </TEXT> 
		<TEXT> "Cancel" </TEXT> 
	</BUTTONS> 
</ALERT_RESOURCE> 

Application Default Category Resource ^TOP^

Purpose

Use the application default category resource to specify a default category for an application.

Target Format

Format generated by PalmRC:

  • All OS targets: 'taic'

Start Tag

<APP_DEFAULT_CATEGORY_RESOURCE RESOURCE_ID="resource_id">
resource_id - The resource identifier 1000 is generally used for the application default category resource.

Child Elements

<TEXT> quoted_text </TEXT>
Specifies the default category for the application.
You should specify only one default category for the application. PalmSource recommends that you use one of the default categories provided by Palm OS (Games, Main, System, or Utilities) rather than creating your own category.

End Tag

</APP_DEFAULT_CATEGORY_RESOURCE>

Example


<APP_DEFAULT_CATEGORY_RESOURCE RESOURCE_ID="1000"> 
	<TEXT> "Games" </TEXT> 
</APP_DEFAULT_CATEGORY_RESOURCE> 

Application Extended Preferences Resource ^TOP^

Purpose

Use the application extended preferences resource to specify version information of this resource and overlay information about the application.

If you are compiling for an OS target prior to Palm OS Cobalt and you need to disable overlays for an application or a shared library, you can use this resource. However, for Palm OS Cobalt and later, you should use the application launch preferences resource instead. See "Application Launch Preferences Resource".

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'xprf'
  • Palm OS 5: 'axpf'
  • Palm OS 6: 'xprf'

Start Tag

<APP_EXTENDED_PREFS_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<VERSION> integer </VERSION>
Indicates the extended preferences version. For Palm OS Cobalt, use the integer value 1.
<NO_OVERLAY> boolean </NO_OVERLAY>
TRUE - Indicates application has no overlay.
FALSE - Indicates application has an overlay.
<RUNTIME_WIDTH_CALCS> boolean
</RUNTIME_WIDTH_CALCS>
TRUE - Indicates that the user interface object widths should be calculated at runtime.
FALSE - Indicates that the user interface object widths be set in the resource file.
Note: The RUNTIME_WIDTH_CALCS element is not supported by all versions of Palm OS.

End Tag

</APP_EXTENDED_PREFS_RESOURCE>

Example


<APP_EXTENDED_PREFS_RESOURCE RESOURCE_ID="1000"> 
	<VERSION> 1 </VERSION> 
	<NO_OVERLAY> FALSE </NO_OVERLAY> 
</APP_EXTENDED_PREFS_RESOURCE>  

Application Icon Bitmap Resource ^TOP^

Purpose

The application icon bitmap is used by the Palm OS Launcher to display the icon for an application.

The bitmap data format is the same as the bitmap resource. The bitmap stores a set of images which represent the same logical image in one or more image formats. For example, it may provide a monochrome (black-and-white) image, grayscale image, and/or color versions of the image.

A bitmap resource has one element named BITMAPS. The BITMAPS element should contain one or more BITMAP elements. The BITMAP elements must be defined in order of increasing bit-depth.

Usually, every element of the bitmap family should have the same logical dimensions specified in WIDTH and HEIGHT. The logical width and height are specified redundantly as elements of each BITMAP element. This design accurately reproduces the data stored in Palm OS bitmap structures.

Target Format

Format generated by PalmRC:

  • All OS targets: 'tAIB'

Start Tag

<APP_ICON_BITMAP_RESOURCE RESOURCE_ID="resource_id">
To define the large application icon resource, you should generally use the resource ID 1000.
To define the small application icon resource, you should generally use the resource ID 1001.

Child Elements

<BITMAPS> one or more BITMAP elements </BITMAPS>
The BITMAPS element consists of a collection of BITMAP elements.
<BITMAP> bitmap_defn </BITMAP>
bitmap_defn consists of the following elements:
<WIDTH> integer </WIDTH>
integer - For large application icons, the width is generally 22 at normal density, 33 at one-and-one-half density, and 44 at double density. For small application icons, the width is generally 15 at normal density, 22 at one-and-one-half density, and 30 at double density.
<HEIGHT> integer </HEIGHT>
integer - For large application icons, the height is generally 22 at normal density, 33 at one-and-one-half density, and 44 at double density. For small application icons, the height is generally 9 at normal density, 13 at one-and-one-half density, and 18 at double density.
<BIT_DEPTH> integer </BIT_DEPTH>
integer - Valid values: 1, 2, 4, 8, and 16.
<ROW_BYTES> integer </ROW_BYTES>
This element is optional. Normally, this should be omitted, in which case the correct bytes-per-row of image data is calculated based on the image depth and width. However, to accurately reproduce the data stored in Palm OS bitmap structures, this field may be explicitly defined.
<COMPRESSION> enum </COMPRESSION>
May be specified as enum values NONE, SCANLINE, RLE, PACKBITS, or BEST, as defined in CmnBitmapTypes.h. For more information about compression enum values, see Exploring Palm OS: User Interface.
<BITMAP_DATA> binary_data </BITMAP_DATA>
The image data of the bitmap may be specified using either a BITMAP_DATA element or a BITMAP_FILE element.
A BITMAP_DATA element specifies the raster image data inline in the XRD file. The image data is specified as binary data. The image data is the uncompressed raster data specified as rowBytes times numScanLines (rowBytes * numScanLines) bytes of data, where the scan lines are stored top to bottom.
<BITMAP_FILE> ext_file </BITMAP_FILE>
The image data of the bitmap may be specified using either a BITMAP_DATA element or a BITMAP_FILE element.
A BITMAP_FILE element specifies the image data as the quoted string path of an external image file, which must be in a supported image format such as BMP or PICT. The dimensions of the image in the image file must match exactly the dimensions specified by the BITMAP element.
Palm OS automatically converts the image in the image file via bit-depth conversion to the bit depth specified by the BITMAP element. For example, if you reference a 24-bit red-green-blue BMP file from a 1-bit bitmap, Palm OS automatically converts the image to black and white. Bit depth conversion maps each source pixel to the closest color available in the destination bit depth.
The actual algorithm used for color matching is subject to change. If your application is dependent on specific color use, then make sure you use all of the specific bit depths required rather than relying on automatic conversion.
When using external image files, you can store the image as a BMP file. For simplicity, you can use BITMAP_FILE paths that specify a path relative to the XRD file.
<BITMAP_DENSITY> enum </BITMAP_DENSITY>
This optional element allows you to specify multiple density bitmaps in a bitmap resource. Bitmap elements must be defined in ascending order of density, then in increasing order of bit depth for a given density.
72 - Normal (1X) density (also referred to single density). This is the default, if this element is omitted.
108 - 1.5X density (also referred to one-and-one-half density).
144 - Double (2X) density.
216 - Triple (3X) density.
The width and height values defined for each bitmap element must match the physical dimensions.
The normalized dimensions for all bitmap elements in a set must match. For example, if the width of a normal density bitmap element is 10, then the one-and-one-half density element(s) must have width 15, the double density element(s) must have width 20, and the triple density element(s) must have width 30.

End Tag

</APP_ICON_BITMAP_RESOURCE>

Example

This section includes examples of the following types of application icon bitmap resources:

Inline Bitmap Data

<APP_ICON_BITMAP_RESOURCE RESOURCE_ID="1000"> 
	<BITMAPS> 
		<BITMAP> 
			<WIDTH> 22 </WIDTH> 
			<HEIGHT> 22 </HEIGHT> 
			<BIT_DEPTH> 1 </BIT_DEPTH> 
			<ROW_BYTES> 4 </ROW_BYTES> 
			<COMPRESSION> NONE </COMPRESSION> 
			<BITMAP_DATA> 
				FF FF FF FF 
				80 00 00 01 
				80 00 00 01 
... 
			</BITMAP_DATA> 
		</BITMAP> 
	</BITMAPS> 
</APP_ICON_BITMAP_RESOURCE> 

Bitmap Data from External Image File

<APP_ICON_BITMAP_RESOURCE RESOURCE_ID="1000"> 
	<BITMAPS> 
		<BITMAP> 
			<WIDTH> 22 </WIDTH> 
			<HEIGHT> 22 </HEIGHT> 
			<BIT_DEPTH> 1 </BIT_DEPTH> 
			<COMPRESSION> NONE </COMPRESSION> 
			<BITMAP_FILE> "./Images/AppIconLarge_1.bmp"  
			</BITMAP_FILE> 
		</BITMAP> 
		<BITMAP> 
			<WIDTH> 22 </WIDTH> 
			<HEIGHT> 22 </HEIGHT> 
			<BIT_DEPTH> 2 </BIT_DEPTH> 
			<COMPRESSION> NONE </COMPRESSION> 
				<BITMAP_FILE> "./Images/AppIconLarge_2.bmp"  
				</BITMAP_FILE> 
		</BITMAP> 
	</BITMAPS> 
</APP_ICON_BITMAP_RESOURCE> 

High Density Bitmap Elements

<APP_ICON_BITMAP_RESOURCE RESOURCE_ID="1000"> 
 
	<BITMAPS> 
 
		<BITMAP> 
			<WIDTH> 22 </WIDTH> 
			<HEIGHT> 22 </HEIGHT> 
			<BIT_DEPTH> 1 </BIT_DEPTH> 
			<COMPRESSION> NONE </COMPRESSION> 
			<BITMAP_FILE> "./Images/AppIconLarge_1.bmp"  
			</BITMAP_FILE> 
		</BITMAP> 
 
		<BITMAP> 
			<WIDTH> 22 </WIDTH> 
			<HEIGHT> 22 </HEIGHT> 
			<BIT_DEPTH> 2 </BIT_DEPTH> 
			<COMPRESSION> NONE </COMPRESSION> 
			<BITMAP_FILE> "./Images/AppIconLarge_2.bmp"  
			</BITMAP_FILE> 
		</BITMAP> 
 
		<BITMAP> 
			<BITMAP_DENSITY> 144 </BITMAP_DENSITY> 
			<WIDTH> 44 </WIDTH> 
			<HEIGHT> 44 </HEIGHT> 
			<BIT_DEPTH> 1 </BIT_DEPTH> 
			<COMPRESSION> NONE </COMPRESSION> 
			<BITMAP_FILE> "./Images/AppIconLarge_X2_1.bmp"  
			</BITMAP_FILE> 
		</BITMAP> 
 
		<BITMAP> 
			<BITMAP_DENSITY> 144 </BITMAP_DENSITY> 
			<WIDTH> 44 </WIDTH> 
			<HEIGHT> 44 </HEIGHT> 
			<BIT_DEPTH> 2 </BIT_DEPTH> 
			<COMPRESSION> NONE </COMPRESSION> 
			<BITMAP_FILE> "./Images/AppIconLarge_X2_2.bmp"  
			</BITMAP_FILE> 
		</BITMAP> 
 
	</BITMAPS> 
</APP_ICON_BITMAP_RESOURCE> 

Application Icon Name Resource ^TOP^

Purpose

The application icon name resource stores a single string. Palm OS software displays the text in this resource under the application icon. If an application does not have this resource, the application's database name is used.

Target Format

Format generated by PalmRC:

  • All OS targets: 'tAIN'

Start Tag

<APP_ICON_NAME_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<TEXT> quoted_text </TEXT>
quoted_text - Specifies the text that Palm OS displays under the application icon. If an application does not have this resource, the application's filename is used. This text is a single string, limited to 31-characters long.

End Tag

</APP_ICON_NAME_RESOURCE>

Example


<APP_ICON_NAME_RESOURCE RESOURCE_ID="1000"> 
	<TEXT> "SuperApp" </TEXT> 
</APP_ICON_NAME_RESOURCE> 

Application Information Strings Resource ^TOP^

Purpose

The application information strings resource ("app info") stores a set of category strings. An app info string list resource is often used to hold the application's initial categories in the application's database.

Palm OS expects exactly 16 category strings, but this expectation is not enforced by the XML format or by PalmRC.

Target Format

Format generated by PalmRC:

  • All OS targets: 'tAIS'

Start Tag

<APP_INFO_STRINGS_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<STRINGS> text_elements </STRINGS>
The STRINGS element defines the category strings for the app info strings resource.

End Tag

</APP_INFO_STRINGS_RESOURCE>

Example


<APP_INFO_STRINGS_RESOURCE RESOURCE_ID="1000"> 
	<STRINGS> 
		<TEXT> "Unfiled" </TEXT> 
		<TEXT> "Business" </TEXT> 
	</STRINGS> 
</APP_INFO_STRINGS_RESOURCE> 

Application Launch Preferences Resource ^TOP^

Purpose

For Palm OS Cobalt, the application launch preference resource replaces the application preferences and application extended preferences resources. For more information about application launch preferences, see Exploring Palm OS: Programming Basics.

If you are compiling for an OS target prior to Palm OS Cobalt and you need to disable overlays for an application or a shared library, you will need to use the application extended preferences resource instead. See "Application Extended Preferences Resource".

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'alpf'

Start Tag

<APP_LAUNCH_PREFS_RESOURCE RESOURCE_ID="resource_id">
resource_id - In order to support the Global Find facility, make sure this resource ID value is 0. For more information about the Global Find facility, see Exploring Palm OS: Text and Localization.

Child Elements

<ALPF_VERSION> integer </ALPF_VERSION>
integer - Specifies the version of this resource. Use the integer 1 for Palm OS Cobalt.
<ALPF_BUILD_OS_VERSION> quoted_text
</ALPF_BUILD_OS_VERSION>
quoted_text - The version of Palm OS that is the target for this application. For Palm OS Cobalt, use '6.0.0.RELEASE.0' (with single quotes).
Note: The operating system does not currently use the value specified for this element. To prevent incompatibility with future releases of the operating system, you should specify the value '6.0.0.RELEASE.0' as described above.
<ALPF_MIN_OS_VERSION> quoted_text
</ALPF_MIN_OS_VERSION>
quoted_text - The minimum version of Palm OS required for this application. For Palm OS Cobalt, use '6.0.0.RELEASE.0' (with single quotes).
Note: The operating system does not currently use the value specified for this element. To prevent incompatibility with future releases of the operating system, you should specify the value '6.0.0.RELEASE.0' as described above.
Instead of checking the value specified by this XRD element, the operating system checks either:
  • The value specified in the application's SLD file for the OSVERSION keyword,
  • Or the value specified for the PSLib command line argument -OSversion, which overrides the OSVERSION keyword in the SLD file.
<ALPF_STACK_SIZE> integer </ALPF_STACK_SIZE>
integer - Specifies the stack space required by the application. To use the default size, use the integer 0.
Note: The operating system does not currently use the value specified for this element. To prevent incompatibility with future releases of the operating system, you should specify the integer value 0 as described above.
<ALPF_FLAGS> flags </ALPF_FLAGS>
The flags for ALPF_FLAGS are defined by the following child elements.
<ALPF_FLAG_NOTIFY_RESET> boolean
</ALPF_FLAG_NOTIFY_RESET>
TRUE - You want Palm OS to notify the application of a device reset.
FALSE - You do not want Palm OS to notify the application of a device reset.
<ALPF_FLAG_NOTIFY_FIND> boolean
</ALPF_FLAG_NOTIFY_FIND>
TRUE - You want Palm OS to notify the application of Find search.
FALSE - You do not want Palm OS to notify the application of a Find search.
For more information about the Global Find facility, see Exploring Palm OS: Text and Localization.
<ALPF_FLAG_NOTIFY_TIME_CHANGE> boolean
</ALPF_FLAG_NOTIFY_TIME_CHANGE>
TRUE - You want Palm OS to notify the application of a time change.
FALSE - You do not want Palm OS to notify the application of a time change.
<ALPF_FLAG_NOTIFY_INSTALL> boolean
</ALPF_FLAG_NOTIFY_INSTALL>
TRUE - You want Palm OS to notify the application of a new installation.
FALSE - You do not want Palm OS to notify the application of a new installation.
<ALPF_FLAG_NOTIFY_DB_CHANGE> boolean
</ALPF_FLAG_NOTIFY_DB_CHANGE>
TRUE - You want Palm OS to notify the application of a database change.
FALSE - You do not want Palm OS to notify the application of a database change.
<ALPF_FLAG_NO_OVERLAY> boolean
</ALPF_FLAG_NO_OVERLAY>
TRUE - This value tells Overlay Manager to ignore any defined overlays for this application when the application is launched.
FALSE - This value tells Overlay Manager to look for the defined overlays for this application when the application is launched.

End Tag

</APP_LAUNCH_PREFS_RESOURCE>

Example


<APP_LAUNCH_PREFS_RESOURCE RESOURCE_ID="1000"> 
	<ALPF_VERSION> 1 </ALPF_VERSION> 
	<ALPF_BUILD_OS_VERSION>  
		'6.0.0.RELEASE.0'  
	</ALPF_BUILD_OS_VERSION>  
	<ALPF_MIN_OS_VERSION>  
		'6.0.0.RELEASE.0'  
	</ALPF_MIN_OS_VERSION> 
	<ALPF_STACK_SIZE> 0 </ALPF_STACK_SIZE> 
	<ALPF_FLAGS> 
		<ALPF_FLAG_NOTIFY_RESET>  
			FALSE  
		</ALPF_FLAG_NOTIFY_RESET> 
		<ALPF_FLAG_NOTIFY_FIND>  
			FALSE  
		</ALPF_FLAG_NOTIFY_FIND> 
		<ALPF_FLAG_NOTIFY_TIME_CHANGE>  
			FALSE  
		</ALPF_FLAG_NOTIFY_TIME_CHANGE> 
		<ALPF_FLAG_NOTIFY_INSTALL>  
			FALSE  
		</ALPF_FLAG_NOTIFY_INSTALL> 
		<ALPF_FLAG_NOTIFY_DB_CHANGE>  
			FALSE  
		</ALPF_FLAG_NOTIFY_DB_CHANGE> 
		<ALPF_FLAG_NO_OVERLAY> 
			FALSE  
		</ALPF_FLAG_NO_OVERLAY> 
	</ALPF_FLAGS> 
</APP_LAUNCH_PREFS_RESOURCE> 

Application Preferences Resource ^TOP^

Purpose

The application preferences resource stores information used by the Palm OS. Use this resource if you are compiling for an OS target prior to Palm OS Cobalt. However, for Palm OS Cobalt and later, use the application launch preferences resource instead. See "Application Launch Preferences Resource."

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'pref'
  • Palm OS 5: 'aprf'
  • Palm OS 6: 'aprf'

Start Tag

<APP_PREFS_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<PRIORITY> integer </PRIORITY>
integer - Specifies the priority for the application.
<STACK_SIZE> integer </STACK_SIZE>
integer - Specifies the stack space for the application.
<MIN_HEAP_SPACE> integer </MIN_HEAP_SPACE>
integer - Specifies the minimum heap space for the application.

End Tag

</APP_PREFS_RESOURCE>

Example


<APP_PREFS_RESOURCE RESOURCE_ID="1000"> 
	<PRIORITY> 30 </PRIORITY> 
	<STACK_SIZE> 4096 </STACK_SIZE> 
	<MIN_HEAP_SPACE> 4096 </MIN_HEAP_SPACE> 
</APP_PREFS_RESOURCE> 

Application Version Resource ^TOP^

Purpose

The application version resource stores a single string. Palm OS uses this string to display version information about the application.

Target Format

Format generated by PalmRC:

  • All OS targets: 'tver'

Start Tag

<APP_VERSION_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<TEXT> quoted_text </TEXT>
quoted_text - Specifies the text that Palm OS displays as the version information for the application.

End Tag

</APP_VERSION_RESOURCE>

Example


<APP_VERSION_RESOURCE RESOURCE_ID="1000"> 
	<TEXT> "1.0" </TEXT> 
</APP_VERSION_RESOURCE> 

Bitmap Resource ^TOP^

Purpose

The bitmap resource may be used as a form bitmap object, or may be loaded and used with the Palm OS bitmap API.

The bitmap stores a set of images which represent the same logical image in one or more image formats. For example, it may provide a monochrome (black-and-white) image, a grayscale image, and/or color versions of the image.

The XML format is the same as the application icon bitmap resource.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'Tbmp'
  • Palm OS 5: 'abmp'
  • Palm OS 6: 'Tbmp'

Start Tag

<BITMAP_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<BITMAPS> one or more BITMAP elements </BITMAPS>
The BITMAPS element consists of a collection of BITMAP elements.
<BITMAP> bitmap_defn </BITMAP>
bitmap_defn consists of the following elements:
<BITMAP_DENSITY> enum </BITMAP_DENSITY>
This optional element allows you to specify multiple density bitmaps in a bitmap resource. Bitmap elements must be defined in ascending order of density, then in increasing order of bit depth for a given density.
72 - Normal (1X) density (also referred to as single density). This is the default, if this element is omitted.
108 - 1.5X density (also referred to as one-and-one half density).
144 - Double (2X) density.
216 - Triple (3X) density.
The width and height values defined for each bitmap element must match the physical dimensions.
The normalized dimensions for all bitmap elements in a set must match. For example, if the width of a normal density bitmap element is 10, then the one-and-one-half density element(s) must have width 15, and the double density element(s) must have width 20.
<WIDTH> integer </WIDTH>
integer - Specifies the width of the bitmap in standard coordinates.
<HEIGHT> integer </HEIGHT>
integer - Specifies the height of the bitmap in standard coordinates.
<BIT_DEPTH> integer </BIT_DEPTH>
integer - Valid values: 1, 2, 4, 8, and 16.
<ROW_BYTES> integer </ROW_BYTES>
This element is optional. Normally, this should be omitted, in which case the correct bytes-per-row of image data is calculated based on the image depth and width. However, to accurately reproduce the data stored in Palm OS bitmap structures, this field may be explicitly defined.
<BITMAP_COMPRESSION> enum
</BITMAP_COMPRESSION>
May be specified as enum values NONE, SCANLINE, RLE, PACKBITS, or BEST.
<HAS_TRANSPARENCY> boolean
</HAS_TRANSPARENCY>
TRUE - Indicates that the bitmap has a transparent color, specified using the TRANSPARENT_INDEX or TRANSPARENT_COLOR element.
FALSE - Indicates that the bitmap does not have a transparent color.
<TRANSPARENT_INDEX> integer
</TRANSPARENT_INDEX>
Specifies an index number for a color.
<TRANSPARENT_COLOR> color_value
</TRANSPARENT_COLOR>
Where color_value is either an index or a specific red/green/blue color value. To specify an index, use the following:
<INDEX> integer </INDEX>
Specifies an index number for a color.
To specify a color value, use the following:
<RED> integer </RED>
Specifies the amount of red in the color, in a range from 0x00 (no red) to 0xFF (maximum amount of red).
<GREEN> integer </GREEN>
Specifies the amount of green in the color, in a range from 0x00 (no green) to 0xFF (maximum amount of green).
<BLUE> integer </BLUE>
Specifies the amount of blue in the color, in a range from 0x00 (no blue) to 0xFF (maximum amount of blue).
<HAS_COLOR_TABLE> boolean </HAS_COLOR_TABLE>
TRUE - Indicates that the bitmap has a color table, specified by the COLOR_TABLE element. See "Color Table Resource" for more information.
FALSE - Indicates that the bitmap does not have a color table.
<BITMAP_DATA> binary_data </BITMAP_DATA>
The image data of the bitmap may be specified using either a BITMAP_DATA element or a BITMAP_FILE element.
A BITMAP_DATA element specifies the raster image data inline in the XRD file. The image data is specified as binary data. The image data is the uncompressed raster data specified as rowBytes times numScanLines (rowBytes * numScanLines) bytes of data, where the scan lines are stored top to bottom.
<BITMAP_FILE> ext_file </BITMAP_FILE>
The image data of the bitmap may be specified using either a BITMAP_DATA element or a BITMAP_FILE element.
A BITMAP_FILE element specifies the image data as the quoted string path of an external image file, which must be in a supported image format such as BMP or PICT. The dimensions of the image in the image file must match exactly the dimensions specified by the BITMAP element.
The image in the image file is automatically bit-depth converted to the bit depth specified by the BITMAP element. For example, if you reference a 24-bit red-green-blue BMP file from a 1-bit bitmap, the image is automatically converted to black and white. Bit depth conversion maps each source pixel to the closest color available in the destination bit depth.
The actual algorithm used for color matching is subject to change. If your application is dependent on specific color use, then make sure you use all of the specific bit depths required rather than relying on automatic conversion.
When using external image files, you can store the image as a BMP file. For simplicity, you can use BITMAP_FILE paths that specify a path relative to the XRD file.

End Tag

</BITMAP_RESOURCE>

Example


<BITMAP_RESOURCE RESOURCE_ID="2000"> 
	<BITMAPS> 
		<BITMAP> 
			<WIDTH> 148 </WIDTH> 
			<HEIGHT> 145 </HEIGHT> 
			<BIT_DEPTH> 1 </BIT_DEPTH> 
			<BITMAP_COMPRESSION> BEST </BITMAP_COMPRESSION> 
			<HAS_TRANSPARENCY> FALSE </HAS_TRANSPARENCY> 
			<HAS_COLOR_TABLE> FALSE </HAS_COLOR_TABLE> 
			<BITMAP_FILE> "./TestPicts/TestPict1.pict"  
			</BITMAP_FILE> 
		</BITMAP> 
	</BITMAPS> 
</BITMAP_RESOURCE> 

Byte Integer List Resource ^TOP^

Purpose

The byte integer list stores zero or more 8-bit unsigned integer numbers.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'BLST'
  • Palm OS 5: 'abyt'
  • Palm OS 6: 'abyt'

Start Tag

<BYTE_LIST_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<DEFAULT_ITEM> 0 </DEFAULT_ITEM>
Specifies the value of the default item.
<VALUES> value_elements </VALUES>
value_elements consists of one or more VALUE element descriptions.
<VALUE> integer </VALUE>

End Tag

</BYTE_LIST_RESOURCE>

Example


<BYTE_LIST_RESOURCE RESOURCE_ID="1000"> 
	<DEFAULT_ITEM> 0 </DEFAULT_ITEM> 
	<VALUES> 
		<VALUE> 0 </VALUE> 
		<VALUE> 0xFF </VALUE> 
	</VALUES> 
</BYTE_LIST_RESOURCE> 

Code Signing Security Certificate Resource ^TOP^

Purpose

This code signing security certificate resource represents a certificate to an application.


NOTE: This resource type is used for viewing decompiled resources only. It is not used for creating certificate resources. To create certificate resources, use the tool PRCCert.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'cert'

Start Tag

<CODE_CERT_RESOURCE RESOURCE_ID="resource_id">

End Tag

</CODE_CERT_RESOURCE>

Code Signing Security Signature Resource ^TOP^

Purpose

This code signing security signature resource represents a signature to an application.


NOTE: This resource type is used for viewing decompiled resources only. It is not used for creating certificate resources. To create signature resources, use the tool PRCSign.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'sign'

Start Tag

<CODE_SIGN_RESOURCE RESOURCE_ID="resource_id">

End Tag

</CODE_SIGN_RESOURCE>

Color Table Resource ^TOP^

Purpose

The color table is a list of RGB (red/green/blue) colors.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'tclt'
  • Palm OS 5: 'aclt'
  • Palm OS 6: 'tclt'

Start Tag

<COLOR_TABLE_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<COLOR_TABLE> color_elements </COLOR_TABLE>
color_elements consists of one or more COLOR element descriptions.
<COLOR> color_def </COLOR>
color_def consists of the following sub-elements:
<INDEX> integer </INDEX>
Specifies an index number for a color.
<RED> integer </RED>
Specifies the amount of red in the color, in a range from 0x00 (no red) to 0xFF (maximum amount of red).
<GREEN> integer </GREEN>
Specifies the amount of green in the color, in a range from 0x00 (no green) to 0xFF (maximum amount of green).
<BLUE> integer </BLUE>
Specifies the amount of blue in the color, in a range from 0x00 (no blue) to 0xFF (maximum amount of blue).

End Tag

</COLOR_TABLE_RESOURCE>

Example


<COLOR_TABLE_RESOURCE RESOURCE_ID="10002"> 
	<COLOR_TABLE> 
		<COLOR> 
			<INDEX> 0x00 </INDEX> 
			<RED> 0xFF </RED> 
			<GREEN> 0xFF </GREEN> 
			<BLUE> 0xFF </BLUE> 
		</COLOR> 
		<COLOR> 
			<INDEX> 0x01 </INDEX> 
			<RED> 0xAA </RED> 
			<GREEN> 0xAA </GREEN> 
			<BLUE> 0xAA </BLUE> 
		</COLOR> 
		<COLOR> 
			<INDEX> 0x02 </INDEX> 
			<RED> 0x55 </RED> 
			<GREEN> 0x55 </GREEN> 
			<BLUE> 0x55 </BLUE> 
		</COLOR> 
		<COLOR> 
			<INDEX> 0x03 </INDEX> 
			<RED> 0x00 </RED> 
			<GREEN> 0x00 </GREEN> 
			<BLUE> 0x00 </BLUE> 
		</COLOR> 
	</COLOR_TABLE> 
</COLOR_TABLE_RESOURCE> 

DWord Integer List Resource ^TOP^

Purpose

The dword integer list stores zero or more 32-bit unsigned integer numbers.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'DLST'
  • Palm OS 5: 'adwd'
  • Palm OS 6: 'adwd'

Start Tag

<DWORD_LIST_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<DEFAULT_ITEM> integer </DEFAULT_ITEM>
Specifies the value of the default item.
<VALUES> value_elements </VALUES>
value_elements consists of one or more VALUE element descriptions.
<VALUE> integer </VALUE>

End Tag

</DWORD_LIST_RESOURCE>

Example


<DWORD_LIST_RESOURCE RESOURCE_ID="1000"> 
	<DEFAULT_ITEM> 0 </DEFAULT_ITEM> 
	<VALUES> 
		<VALUE> 0 </VALUE> 
		<VALUE> 0xFFFFFFFF </VALUE> 
	</VALUES> 
</DWORD_LIST_RESOURCE> 

Extended Font Resource ^TOP^

Purpose

The extended font resource.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'nfnt'
  • Palm OS 5: 'afnx'
  • Palm OS 6: 'nfnt'

Start Tag

<FONT_EXTENDED_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<FONT_TYPE> integer </FONT_TYPE>
integer - A hex value that identifies this font type.
<FONT_ASCENT> integer </FONT_ASCENT>
integer - A nonnegative integer specifying the pixel amount that this font extends above the baseline. (The font ascent plus the font descent equals the font height.)
<FONT_DESCENT> integer </FONT_DESCENT>
integer - A nonnegative integer specifying the pixel amount that this font extends below the baseline. (The font ascent plus the font descent equals the font height.)
<FONT_EXTENDED_ITEMS> font_extended_items
</FONT_EXTENDED_ITEMS>
where font_extended_items consists of one or more <FONT_EXTENDED_ITEM> elements.
<FONT_EXTENDED_ITEM> font_extened_item_defn
</FONT_EXTENDED_ITEM>
where each font_extened_item_defn consists of the following child elements:
<FONT_DENSITY> integer </FONT_DENSITY>
integer - The font density. Use 72 for a low density font, use 108 for one-and-one-half density font, and use 144 for a double density font.
<FONT_GLYPHS> font_glyph_items </FONT_GLYPHS>
where each font_glyph_item consists of the following child elements:
<FONT_GLYPH>
  <FONT_GLYPH_CODE> integer
  </FONT_GLYPH_CODE>
integer - A hex value that identifies this font glyph.
  <FONT_GLYPH_IMAGE> glyph_image
  </FONT_GLYPH_IMAGE>
glyph_image - Image data. Each row of the bitmap is specified as a quoted string. (The number of rows in the glyph must equal the font height.) See the example below for a sample glyph_image.
</FONT_GLYPH>
<FONT_MISSING_GLYPH>
  <FONT_GLYPH_IMAGE> glyph_image
  </FONT_GLYPH_IMAGE>
glyph_image - Image data for font items not specified by an integer hex value. Each row of the bitmap is specified as a quoted string. (The number of rows in the glyph must equal the font height.) See the example below for a sample glyph_image.
</FONT_MISSING_GLYPH>

End Tag

</FONT_EXTENDED_RESOURCE>

Example


<FONT_EXTENDED_RESOURCE RESOURCE_ID="1000"> 
	<FONT_TYPE> 0x9200 </FONT_TYPE> 
	<FONT_ASCENT> 8 </FONT_ASCENT> 
	<FONT_DESCENT> 0 </FONT_DESCENT> 
	<FONT_EXTENDED_ITEMS> 
		<FONT_EXTENDED_ITEM> 
			<FONT_DENSITY> 72 </FONT_DENSITY> 
			<FONT_GLYPHS> 
				<FONT_GLYPH> 
					<FONT_GLYPH_CODE> 0x0001 </FONT_GLYPH_CODE> 
					<FONT_GLYPH_IMAGE> 
						"..........." 
						".....#....." 
						"....###...." 
						"...#####..." 
						"..#######.." 
						".#########." 
						"###########" 
						"..........." 
					</FONT_GLYPH_IMAGE> 
				</FONT_GLYPH> 
				<FONT_GLYPH> 
					<FONT_GLYPH_CODE> 0x0002 </FONT_GLYPH_CODE> 
					<FONT_GLYPH_IMAGE> 
						"..........." 
						"###########" 
						".#########." 
						"..#######.." 
						"...#####..." 
						"....###...." 
						".....#....." 
						"..........." 
					</FONT_GLYPH_IMAGE> 
				</FONT_GLYPH> 
			</FONT_GLYPHS> 
			<FONT_MISSING_GLYPH> 
				<FONT_GLYPH_IMAGE> 
					"....." 
					"#####" 
					"#...#" 
					"#...#" 
					"#...#" 
					"#...#" 
					"#####" 
					"....." 
				</FONT_GLYPH_IMAGE> 
			</FONT_MISSING_GLYPH> 
		</FONT_EXTENDED_ITEM> 
		<FONT_EXTENDED_ITEM> 
			<FONT_DENSITY> 144 </FONT_DENSITY> 
			<FONT_GLYPHS> 
				<FONT_GLYPH> 
					<FONT_GLYPH_CODE> 0x0001 </FONT_GLYPH_CODE> 
					<FONT_GLYPH_IMAGE> 
						"......................" 
						"......................" 
						"......................" 
						"..........#..........." 
						".........###.........." 
						"........#####........." 
						".......#######........" 
						"......#########......." 
						".....###########......" 
						"....#############....." 
						"...###############...." 
						"..#################..." 
						".###################.." 
						"#####################." 
						"......................" 
						"......................" 
					</FONT_GLYPH_IMAGE> 
				</FONT_GLYPH> 
				<FONT_GLYPH> 
					<FONT_GLYPH_CODE> 0x0002 </FONT_GLYPH_CODE> 
					<FONT_GLYPH_IMAGE> 
						"......................" 
						"......................" 
						"#####################." 
						".###################.." 
						"..#################..." 
						"...###############...." 
						"....#############....." 
						".....###########......" 
						"......#########......." 
						".......#######........" 
						"........#####........." 
						".........###.........." 
						"..........#..........." 
						"......................" 
						"......................" 
						"......................" 
					</FONT_GLYPH_IMAGE> 
				</FONT_GLYPH> 
			</FONT_GLYPHS> 
			<FONT_MISSING_GLYPH> 
				<FONT_GLYPH_IMAGE> 
					".........." 
					".........." 
					"##########" 
					"##########" 
					"##......##" 
					"##......##" 
					"##......##" 
					"##......##" 
					"##......##" 
					"##......##" 
					"##......##" 
					"##......##" 
					"##########" 
					"##########" 
					".........." 
					".........." 
				</FONT_GLYPH_IMAGE> 
			</FONT_MISSING_GLYPH> 
		</FONT_EXTENDED_ITEM> 
	</FONT_EXTENDED_ITEMS> 
</FONT_EXTENDED_RESOURCE> 

Font Resource ^TOP^

Purpose

The font resource represents a bitmap font, specifying each glyph in the font as a bitmap.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'NFNT'
  • Palm OS 5: 'afnt'
  • Palm OS 6: 'NFNT'

Start Tag

<FONT_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<FONT_TYPE> integer </FONT_TYPE>
integer - A hex value that identifies this font type.
<FONT_ASCENT> integer </FONT_ASCENT>
integer - A nonnegative integer specifying the pixel amount that this font extends above the baseline. (The font ascent plus the font descent equals the font height.)
<FONT_DESCENT> integer </FONT_DESCENT>
integer - A nonnegative integer specifying the pixel amount that this font extends below the baseline. (The font ascent plus the font descent equals the font height.)
<FONT_GLYPHS> font_glyph_items </FONT_GLYPHS>
where each font_glyph_item consists of the following child elements:
<FONT_GLYPH>
<FONT_GLYPH_CODE> integer
</FONT_GLYPH_CODE>
integer - A hex value that identifies this font glyph.
<FONT_GLYPH_IMAGE> glyph_image
</FONT_GLYPH_IMAGE>
glyph_image - Image data. Each row of the bitmap is specified as a quoted string. (The number of rows in the glyph must equal the font height.) See the example below for a sample glyph_image.
</FONT_GLYPH>
<FONT_MISSING_GLYPH> font_missing_glyph_items
</FONT_MISSING_GLYPH>
where each font_missing_glyph_item consists of the following child elements:
<FONT_GLYPH_IMAGE> glyph_image
</FONT_GLYPH_IMAGE>
glyph_image - Image data for font items not specified by an integer hex value. Each row of the bitmap is specified as a quoted string. (The number of rows in the glyph must equal the font height.) See the example below for a sample glyph_image.

End Tag

</FONT_RESOURCE>

Example


<FONT_RESOURCE RESOURCE_ID="1000"> 
	<FONT_TYPE> 0x9000 </FONT_TYPE> 
	<FONT_ASCENT> 9 </FONT_ASCENT> 
	<FONT_DESCENT> 1 </FONT_DESCENT> 
	<FONT_GLYPHS> 
		<FONT_GLYPH> 
			<FONT_GLYPH_CODE> 0x0003 </FONT_GLYPH_CODE> 
			<FONT_GLYPH_IMAGE> 
				"....##....." 
				"...###....." 
				"..######.#." 
				".#######.#." 
				"########.#." 
				"########.#." 
				".#######.#." 
				"..######.#." 
				"...###....." 
				"....##....." 
			</FONT_GLYPH_IMAGE> 
		</FONT_GLYPH> 
		<FONT_GLYPH> 
			<FONT_GLYPH_CODE> 0x0004 </FONT_GLYPH_CODE> 
			<FONT_GLYPH_IMAGE> 
				"....##...." 
				"....###..." 
				"#.######.." 
				"#.#######." 
				"#.########" 
				"#.########" 
				"#.#######." 
				"#.######.." 
				"....###..." 
				"....##...." 
			</FONT_GLYPH_IMAGE> 
		</FONT_GLYPH> 
	</FONT_GLYPHS> 
	<FONT_MISSING_GLYPH> 
		<FONT_GLYPH_IMAGE> 
			"....." 
			"#####" 
			"#...#" 
			"#...#" 
			"#...#" 
			"#...#" 
			"#...#" 
			"#...#" 
			"#####" 
			"....." 
		</FONT_GLYPH_IMAGE> 
	</FONT_MISSING_GLYPH> 
</FONT_RESOURCE> 

Form Resource ^TOP^

Purpose

The form resource stores a form description which contains a window description and a list of form object descriptions (for example, user interface controls such as buttons and lists).

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'tFRM'
  • Palm OS 5: 'afrm'
  • Palm OS 6: 'tFRM'

Start Tag

<FORM_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<FORM_ID> resource_id </FORM_ID>
Specifies the identifier for the form. This must match the resource ID attribute on the FORM_RESOURCE tag.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form.
<USABLE> boolean </USABLE>
Specifies the visibility of the form, either visible or invisible.
TRUE - the form is displayed in the Palm OS application
FALSE - the form is not displayed.
<MODAL> boolean </MODAL>
Specifies how events outside of the form boundary are interpreted; that is, if a user must interact with the form before continuing with other tasks.
TRUE - the form does not respond to taps outside the form.
FALSE - the form does respond to taps outside the form.
<SAVE_BEHIND> boolean </SAVE_BEHIND>
Specifies how the area behind the form appears on the screen.
TRUE - Palm OS saves the area of the screen the form obscures; then restores the area when the form is hidden.
FALSE - Palm OS does not save the area of the screen the form obscures.

NOTE: The SAVE_BEHIND element is included for 68K application compatibility use. For ARM-native applications, you should never set the SAVE_BEHIND element's value to TRUE.
<HELP_ID> integer </HELP_ID>
Specifies the help text resource ID that appears when the user taps the Help icon in a modal form. (The help ID is only applicable if you specify TRUE for the MODAL element.)
<MENU_ID> integer </MENU_ID>
Specifies the resource ID of the menu bar associated with the form.
<DEFAULT_BUTTON> integer </DEFAULT_BUTTON>
Specifies the button index of the form's default button. Palm OS software simulates the tapping of this button when the form is dismissed.
<TITLE_ICON> boolean </TITLE_ICON>
Indicates whether this form has a title icon.
<TITLE_BAR_FOCUSABLE> boolean
</TITLE_BAR_FOCUSABLE>
Indicates whether the title bar can be used as a tab stop in the tab order for the Form Navigation resource. For more information, see "Form Navigation Resource."
<FORM_OBJECTS> form_objects </FORM_OBJECTS>
form_objects - One or more of the following form object descriptions.
FORM_TITLE
See "Form Title Object."
FORM_BUTTON
See "Form Button Object."
FORM_LABEL
See "Form Label Object."
FORM_CHECKBOX
See "Form Check Box Object."
FORM_FIELD
See "Form Field Object."
FORM_GRAPHIC_BUTTON
See "Form Graphic Button Object."
FORM_PUSH_BUTTON
See "Form Push Button Object."
FORM_GRAPHIC_PUSH_BUTTON
See "Form Graphic Push Button Object."
FORM_POPUP_TRIGGER
See "Form Pop-Up Trigger Object."
FORM_SELECTOR_TRIGGER
See "Form Selector Trigger Object."
FORM_REPEATING_BUTTON
See "Form Repeating Button Object."
FORM_GRAPHIC_REPEATING_BUTTON
See "Form Graphic Repeating Button Object."
FORM_SLIDER
See "Form Slider Object."
FORM_FEEDBACK_SLIDER
See "Form Feedback Slider Object."
FORM_LIST
See "Form List Object".
FORM_TABLE
See "Form Table Object."
FORM_BITMAP
See "Form Bitmap Object."
FORM_POPUP
See "Form Pop-Up Object."
FORM_GRAFFITI_STATE
See "Form Graffiti State Object."
FORM_GADGET
See "Form Gadget Object."
FORM_SCROLLBAR
See "Form Scroll Bar Object."

End Tag

</FORM_RESOURCE>

Example


<FORM_RESOURCE RESOURCE_ID="1100"> 
	<FORM_ID> 1100 </FORM_ID> 
	<BOUNDS> 
		<LEFT> 2 </LEFT> 
		<TOP> 2 </TOP> 
		<WIDTH> 156 </WIDTH> 
		<HEIGHT> 156 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<MODAL> TRUE </MODAL> 
	<SAVE_BEHIND> TRUE </SAVE_BEHIND> 
	<HELP_ID> 0 </HELP_ID> 
	<MENU_ID> 0 </MENU_ID> 
	<DEFAULT_BUTTON> 0 </DEFAULT_BUTTON> 
	<FORM_OBJECTS> 
		<FORM_TITLE> 
			<TEXT> "About Starter" </TEXT> 
		</FORM_TITLE> 
		<FORM_LABEL> 
			<ID> 1104 </ID> 
			<LOCATION> 
				<X> 50 </X> 
				<Y> 104 </Y> 
			</LOCATION> 
			<USABLE> TRUE </USABLE> 
			<FONT_ID> BOLD_FONT </FONT_ID> 
			<TEXT> "Version 1.0" </TEXT> 
		</FORM_LABEL> 
		<FORM_BUTTON> 
			<ID> 1105 </ID> 
			<BOUNDS> 
				<LEFT> 58 </LEFT> 
				<TOP> 133 </TOP> 
				<WIDTH> 40 </WIDTH> 
				<HEIGHT> 12 </HEIGHT> 
			</BOUNDS> 
			<USABLE> TRUE </USABLE> 
			<ENABLED> TRUE </ENABLED> 
			<TEXT> "OK" </TEXT> 
			<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
			<FONT_ID> STD_FONT </FONT_ID> 
			<BUTTON_FRAME> STANDARD_BUTTON_FRAME </BUTTON_FRAME> 
		</FORM_BUTTON> 
	</FORM_OBJECTS> 
</FORM_RESOURCE> 

Form Navigation Resource ^TOP^

Purpose

Used in one-handed navigation, the form navigation resource specifies relative position of the elements in a FORM_RESOURCE. To enable left-right navigation through the objects on a form, this resource indicates the tab order. To enable up-down navigation, this resource specifies, for each object, the object lying directly above and the object lying directly below.

You can create a form navigation resource for each form in the application.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: 'fnav'
  • Palm OS 6: 'fnav'

Start Tag

<FORM_NAVIGATION_RESOURCE RESOURCE_ID="resource_id">
resource_id - The resource ID value must match the Form Resource's ID value.

Child Elements

<VERSION>1</VERSION>
The only valid value for this element is the number 1.
<OBJECT_FOCUS> boolean </OBJECT_FOCUS>
Mutually exclusive value with the APP_FOCUS element. (If OBJECT_FOCUS is TRUE, then APP_FOCUS must be FALSE.)
If true, the form should open initially in object focus mode—that is, with the navigation highlight on one of its elements. Specify which element to highlight using the INITIAL_OBJECT_ID element.
<APP_FOCUS> boolean </APP_FOCUS>
Mutually exclusive value with the OBJECT_FOCUS element. (If APP_FOCUS is TRUE, then OBJECT_FOCUS must be FALSE.)
If true, the form should initially open in application focus mode—that is, with no navigation highlight.
<INITIAL_OBJECT_ID> resource_id
</INITIAL_OBJECT_ID>
resource_id - Must be either 0 or the ID of one of the objects in the form.
<JUMP_OBJECT_ID> resource_id </JUMP_OBJECT_ID>
resource_id - Must be either 0 or the ID of one of the objects in the form.
<BOTTOMLEFT_OBJECT_ID> resource_id
</BOTTOMLEFT_OBJECT_ID>
resource_id - Must be either 0 or the ID of one of the objects in the form.
<TITLE_BAR_FOCUSABLE> boolean
</TITLE_BAR_FOCUSABLE>
Indicates whether to allow the tab order to focus on the title bar for menu bar access.
<NAVIGATION_FORM_OBJECTS> nav_form_objects
</NAVIGATION_FORM_OBJECTS>
nav_form_objects consists of one or more NAVIGATION_FORM_OBJECT elements.
The order of the elements within the NAVIGATION_FORM_OBJECTS element dictates the tab order of the form.
<NAVIGATION_FORM_OBJECT>
Information about each navigatable element within a form. If there are no navigatable elements, the NAVIGATION_FORM_OBJECTS element can be empty.
<OBJECT_ID> integer </OBJECT_ID>
The ID of the form object for this position in the tab order. The ID should match an object in the form resource.
<ABOVE_OBJECT_ID> integer </ABOVE_OBJECT_ID>
The ID of the form object when the user presses the UP button. Valid values are any object ID in the form or 0.
<BELOW_OBJECT_ID> integer </BELOW_OBJECT_ID>
The ID of the form object when the user presses the DOWN button. Valid values are any object ID in the form or 0.
<SKIP_OBJECT> boolean </SKIP_OBJECT>
Indicates whether to skip the object in the tab order.
TRUE - Skip this object in the tab order.
FALSE - Include this object in the tab order.
<FORCE_INTERACTION> boolean
</FORCE_INTERACTION>
Used for multi-line edit fields. Sets the focus to the field.
<BIG_BUTTON> boolean </BIG_BUTTON>
Optional value for applications targeted for Handspring devices. Sets big mode for button controls.
</NAVIGATION_FORM_OBJECT>

End Tag

</FORM_NAVIGATION_RESOURCE>

Example


<FORM_NAVIGATION_RESOURCE RESOURCE_ID="1000"  
	COMMENT="An example of a form navigation resource"> 
 
	<VERSION>1</VERSION> 
	<OBJECT_FOCUS> TRUE </OBJECT_FOCUS> 
	<APP_FOCUS> FALSE </APP_FOCUS> 
	<INITIAL_OBJECT_ID> 0 </INITIAL_OBJECT_ID> 
	<JUMP_OBJECT_ID> 0 </JUMP_OBJECT_ID> 
	<BOTTOMLEFT_OBJECT_ID> 0 </BOTTOMLEFT_OBJECT_ID> 
	<TITLE_BAR_FOCUSABLE>TRUE</TITLE_BAR_FOCUSABLE> 
 
	<NAVIGATION_FORM_OBJECTS> 
 
		<NAVIGATION_FORM_OBJECT COMMENT="First object"> 
			<OBJECT_ID> 1001 </OBJECT_ID> 
			<ABOVE_OBJECT_ID> 0 </ABOVE_OBJECT_ID> 
			<BELOW_OBJECT_ID> 1002 </BELOW_OBJECT_ID> 
			<SKIP_OBJECT> TRUE </SKIP_OBJECT> 
			<FORCE_INTERACTION> TRUE </FORCE_INTERACTION> 
		</NAVIGATION_FORM_OBJECT> 
 
		<NAVIGATION_FORM_OBJECT COMMENT="Second object"> 
			<OBJECT_ID> 1002 </OBJECT_ID> 
			<ABOVE_OBJECT_ID> 1001 </ABOVE_OBJECT_ID> 
			<BELOW_OBJECT_ID> 0 </BELOW_OBJECT_ID> 
			<SKIP_OBJECT> TRUE </SKIP_OBJECT> 
			<FORCE_INTERACTION> TRUE </FORCE_INTERACTION> 
			<BIG_BUTTON> TRUE </BIG_BUTTON> 
		</NAVIGATION_FORM_OBJECT> 
 
	</NAVIGATION_FORM_OBJECTS>		 
 
</FORM_NAVIGATION_RESOURCE> 

Form Object Descriptions ^TOP^

Form resources can use any of the following form object descriptions, listed here in alphabetical order.

Form Bitmap Object
Form Button Object
Form Check Box Object
Form Feedback Slider Object
Form Field Object
Form Gadget Object
Form Graffiti State Object
Form Graphic Button Object
Form Graphic Push Button Object
Form Graphic Repeating Button Object
Form Label Object
Form List Object
Form Pop-Up Object
Form Pop-Up Trigger Object
Form Push Button Object
Form Repeating Button Object
Form Scroll Bar Object
Form Selector Trigger Object
Form Slider Object
Form Table Object
Form Title Object

Form Bitmap Object

Purpose

The form resource may have one or more bitmap objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_BITMAP>

Child Elements

<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<LOCATION> location_defn </LOCATION>
location_defn consists of the following child elements:
<X> integer </X>
Specifies the left origin (form-relative position of the left side of the object).
<Y> integer </Y>
Specifies the top origin (form-relative position of the top of the object).
<BITMAP_ID> integer </BITMAP_ID>

End Tag

</FORM_BITMAP>

Example


<FORM_BITMAP> 
	<USABLE> TRUE </USABLE> 
	<LOCATION> 
		<X> 23 </X> 
		<Y> 16 </Y> 
	</LOCATION> 
	<BITMAP_ID> 1000 </BITMAP_ID> 
</FORM_BITMAP> 

Form Button Object

Purpose

The form resource may have one or more button objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_BUTTON>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<TEXT> quoted_text </TEXT>
Specifies the text displayed inside the button.
<LEFT_ANCHOR> boolean </LEFT_ANCHOR>
Controls how the object resizes itself.
TRUE - the object's left bound is fixed.
FALSE - the object's right bound is fixed.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<BUTTON_FRAME> enum </BUTTON_FRAME>
The BUTTON_FRAME element is used to specify the frame used by the form object. The element may be specified as one of the following enum values:
NO_BUTTON_FRAME
STANDARD_BUTTON_FRAME
BOLD_BUTTON_FRAME
RECTANGLE_BUTTON_FRAME

End Tag

</FORM_BUTTON>

Example


<FORM_BUTTON> 
	<ID> 1002 </ID> 
	<BOUNDS> 
		<LEFT> 117 </LEFT> 
		<TOP> 80 </TOP> 
		<WIDTH> 36 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<TEXT> "Go" </TEXT> 
	<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
	<FONT_ID> STD_FONT </FONT_ID> 
	<BUTTON_FRAME> STANDARD_BUTTON_FRAME </BUTTON_FRAME> 
</FORM_BUTTON> 

Form Check Box Object

Purpose

The form resource may have one or more check box objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_CHECKBOX>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP>integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<TEXT> quoted_text </TEXT>
Specifies the text displayed to the right of the check box.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<GROUP_ID> integer </GROUP_ID>
Specifies a value that identifies a group of controls. To indicate that the object is not part of a group, specify the value 0.
Note: For check boxes, you should set this value to 0.
<SELECTED> boolean </SELECTED>
Specifies the initial selection state of the object.
TRUE - The object is initially selected.
FALSE - The object is initially not selected.

End Tag

</FORM_CHECKBOX>

Example


<FORM_CHECKBOX> 
	<ID> 1002 </ID> 
	<BOUNDS> 
		<LEFT> 56 </LEFT> 
		<TOP> 19 </TOP> 
		<WIDTH> 65 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<TEXT> "checkbox" </TEXT> 
	<FONT_ID> BOLD_FONT </FONT_ID> 
	<GROUP_ID> 0 </GROUP_ID> 
	<SELECTED> TRUE </SELECTED> 
</FORM_CHECKBOX> 

Form Feedback Slider Object

Purpose

The form resource may have one or more feedback slider objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_FEEDBACK_SLIDER>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<VALUE> integer </VALUE>
The initial value for the slider.
<MIN_VALUE> integer </MIN_VALUE>
The minimum value the slider can represent.
<MAX_VALUE> integer </MAX_VALUE>
The maximum value the slider can represent.
<PAGE_SIZE> integer </PAGE_SIZE>
The amount by which the slider thumb moves when the user taps to the thumb's right or left.
<THUMB_BITMAP_ID> integer </THUMB_BITMAP_ID>
The resource ID of the bitmap resource or bitmap family resource used to create the slider thumb. Use 0 to specify the default thumb bitmap.
<BACKGROUND_BITMAP_ID> integer
</BACKGROUND_BITMAP_ID>
The resource ID of the bitmap resource or bitmap family resource used to create the background for the slider. Use 0 to specify the default background bitmap.

End Tag

</FORM_FEEDBACK_SLIDER>

Example


<FORM_FEEDBACK_SLIDER> 
	<ID> 1802 </ID> 
	<BOUNDS> 
		<LEFT> 21 </LEFT> 
		<TOP> 14 </TOP> 
		<WIDTH> 114 </WIDTH> 
		<HEIGHT> 15 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<VALUE> 0 </VALUE> 
	<MIN_VALUE> 0 </MIN_VALUE> 
	<MAX_VALUE> 150 </MAX_VALUE> 
	<PAGE_SIZE> 10 </PAGE_SIZE> 
	<THUMB_BITMAP_ID> 4000 </THUMB_BITMAP_ID> 
	<BACKGROUND_BITMAP_ID> 4001 </BACKGROUND_BITMAP_ID> 
</FORM_FEEDBACK_SLIDER>  

Form Field Object

Purpose

The form resource may have one or more field objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_FIELD>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application.
FALSE - the object is not displayed.
<EDITABLE> boolean </EDITABLE>
Specifies whether the field can be changed by the user.
TRUE - the field is editable.
FALSE - the field is not editable. Note that noneditable fields don't accept user input, but they can be changed programmatically.
<SINGLE_LINE> boolean </SINGLE_LINE>
Specifies whether the field scrolls horizontally and accepts Return or Tab characters.
TRUE - the field does not scroll horizontally and it does not accept Return or Tab characters.
FALSE - the field does scroll horizontally and it does accept Return or Tab characters.
<DYNAMIC_SIZE> boolean </DYNAMIC_SIZE>
Specifies whether the field grows as the user enters more text.
TRUE - the field grows as the user enters more text.
FALSE - the field remains the same size as when it was originally created.
<UNDERLINE> enum </UNDERLINE>
The UNDERLINE element is used to specify the frame used by the form object. The element may be specified as one of the following enum values:
NO_UNDERLINE
GRAY_UNDERLINE
SOLID_UNDERLINE
COLOR_UNDERLINE
<JUSTIFICATION> enum </JUSTIFICATION>
Specifies the justification setting for the field.
LEFT_ALIGN
Text is aligned on the left. You should use LEFT_ALIGN for editable single-line text fields.
RIGHT_ALIGN
Text is aligned on the right. You should use RIGHT_ALIGN for single-line numeric fields or noneditable fields used as labels.
<AUTO_SHIFT> boolean </AUTO_SHIFT>
Specifies whether the auto-shift rules apply for this field.
TRUE - the auto-shift rules apply. You should use this setting for most editable fields.
FALSE - the auto-shift rules do not apply.
<HAS_SCROLLBAR> boolean </HAS_SCROLLBAR>
Specifies whether you want to associate a scroll bar with a multi-line field.
TRUE - you want a scroll bar for this field.
FALSE - you don't want a scroll bar for this field.
<NUMERIC> boolean </NUMERIC>
Specifies whether this field is limited to numeric input.
TRUE - the field will allow the user to enter numbers only (the characters 0 through 9). The associated separators are the thousands separator and the decimal character. The values of these two characters depend on the settings in the Formats preferences panel. Note that numeric fields do not allow plus signs.
FALSE - the field allows all character data.
<MAX_CHARS> integer </MAX_CHARS>
Specifies the maximum number of bytes that the user can enter into an editable field. Note that the number of bytes is not the same as the number of characters when multi-byte characters (for example, Japanese) are being used. This attribute has no effect on noneditable fields.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<MAX_VISIBLE_LINES> integer </MAX_VISIBLE_LINES>
Specifies the maximum number of lines visible for a multi-line entry field.

End Tag

</FORM_FIELD>

Example


<FORM_FIELD> 
	<ID> 1004 </ID> 
	<BOUNDS> 
		<LEFT> 4 </LEFT> 
		<TOP> 53 </TOP> 
		<WIDTH> 50 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<EDITABLE> TRUE </EDITABLE> 
	<SINGLE_LINE> FALSE </SINGLE_LINE> 
	<DYNAMIC_SIZE> FALSE </DYNAMIC_SIZE> 
	<UNDERLINE> GRAY_UNDERLINE </UNDERLINE> 
	<JUSTIFICATION> LEFT_ALIGN </JUSTIFICATION> 
	<AUTO_SHIFT> TRUE </AUTO_SHIFT> 
	<HAS_SCROLLBAR> FALSE </HAS_SCROLLBAR> 
	<NUMERIC> FALSE </NUMERIC> 
	<MAX_CHARS> 80 </MAX_CHARS> 
	<FONT_ID> LARGE_FONT </FONT_ID> 
	<MAX_VISIBLE_LINES> 0 </MAX_VISIBLE_LINES> 
</FORM_FIELD> 

Form Gadget Object

Purpose

The form resource may have one or more gadget objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_GADGET>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - The object is displayed in the Palm OS application.
FALSE - The object is not displayed.
<EXTENDED> boolean </EXTENDED>
Specifies whether the gadget is an extended gadget. If set, the gadget is an extended gadget.
TRUE - The gadget is an extended gadget. An extended gadget has the handler field defined in its FormGadgetType. For more information about extended gadgets, see the book Exploring Palm OS: User Interface.
FALSE - The gadget is a standard gadget compatible with all releases of Palm OS.
<VISIBLE> boolean </VISIBLE>
This value is set to TRUE when the gadget is drawn, and set to FALSE when the gadget is erased. FrmHideObject() sets this value to FALSE as well. You should set it explicitly in the gadget's callback function (if it has one) in response to a draw request.

End Tag

</FORM_GADGET>

Example


<FORM_GADGET> 
	<ID> 1207 </ID> 
	<BOUNDS> 
		<LEFT> 6 </LEFT> 
		<TOP> 70 </TOP> 
		<WIDTH> 16 </WIDTH> 
		<HEIGHT> 16 </HEIGHT> 
	</BOUNDS> 
	<USABLE> FALSE </USABLE> 
	<EXTENDED> TRUE </EXTENDED> 
	<VISIBLE> FALSE </VISIBLE> 
</FORM_GADGET> 

Form Graffiti State Object

Purpose

The form resource may have one graffiti state shift indicator object as items in the FORM_OBJECTS element.

Start Tag

<FORM_GRAFFITI_STATE>

Child Elements

<LOCATION> location_defn </LOCATION>
location_defn consists of the following child elements:
<X> integer </X>
Specifies the left origin (form-relative position of the left side of the object).
<Y> integer </Y>
Specifies the top origin (form-relative position of the top of the object).

End Tag

</FORM_GRAFFITI_STATE>

Example


<FORM_GRAFFITI_STATE> 
	<LOCATION> 
		<X> 146 </X> 
		<Y> 23 </Y> 
	</LOCATION> 
</FORM_GRAFFITI_STATE> 

Form Graphic Button Object

Purpose

The form resource may have one or more graphic button objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_GRAPHIC_BUTTON>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<LEFT_ANCHOR> boolean </LEFT_ANCHOR>
Controls how the object resizes itself.
TRUE - the object's left bound is fixed.
FALSE - the object's right bound is fixed.
<BUTTON_FRAME> enum </BUTTON_FRAME>
The BUTTON_FRAME element is used to specify the frame used by the form object. The element may be specified as one of the following enum values:
NO_BUTTON_FRAME
STANDARD_BUTTON_FRAME
BOLD_BUTTON_FRAME
RECTANGLE_BUTTON_FRAME
<BITMAP_ID> integer </BITMAP_ID>
Specifies the resource ID of the bitmap or bitmap family that draws the graphic on this button.
<SELECTED_BITMAP_ID> integer </SELECTED_BITMAP_ID>
Resource ID of the bitmap or bitmap family that draws the graphic when the button is selected. It is important to provide a different graphic for the selected bitmap on a color screen.

End Tag

</FORM_GRAPHIC_BUTTON>

Example


<FORM_GRAPHIC_BUTTON> 
	<ID> 1202 </ID> 
	<BOUNDS> 
		<LEFT> 8 </LEFT> 
		<TOP> 8 </TOP> 
		<WIDTH> 40 </WIDTH> 
		<HEIGHT> 40 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
	<BUTTON_FRAME> NO_BUTTON_FRAME </BUTTON_FRAME> 
	<BITMAP_ID> 1000 </BITMAP_ID> 
	<SELECTED_BITMAP_ID> 1001 </SELECTED_BITMAP_ID> 
</FORM_GRAPHIC_BUTTON> 

Form Graphic Push Button Object

Purpose

The form resource may have one or more graphic push button objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_GRAPHIC_PUSH_BUTTON>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<BITMAP_ID> integer </BITMAP_ID>
Specifies the resource ID of the bitmap or bitmap family that draws the graphic on this button.
<SELECTED_BITMAP_ID> integer </SELECTED_BITMAP_ID>
Resource ID of the bitmap or bitmap family that draws the graphic when the button is selected. It is important to provide a different graphic for the selected bitmap on a color screen.
<GROUP_ID> integer </GROUP_ID>
Specifies a value that identifies a group of controls. To indicate that the object is not part of a group, specify the value 0.

End Tag

</FORM_GRAPHIC_PUSH_BUTTON>

Example


<FORM_GRAPHIC_PUSH_BUTTON> 
	<ID> 1302 </ID> 
	<BOUNDS> 
		<LEFT> 17 </LEFT> 
		<TOP> 14 </TOP> 
		<WIDTH> 20 </WIDTH> 
		<HEIGHT> 20 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<BITMAP_ID> 2000 </BITMAP_ID> 
	<SELECTED_BITMAP_ID> 2001 </SELECTED_BITMAP_ID> 
	<GROUP_ID> 0 </GROUP_ID> 
</FORM_GRAPHIC_PUSH_BUTTON> 

Form Graphic Repeating Button Object

Purpose

The form resource may have one or more graphic repeating button objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_GRAPHIC_REPEATING_BUTTON>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<LEFT_ANCHOR> boolean </LEFT_ANCHOR>
Controls how the object resizes itself.
TRUE - the object's left bound is fixed.
FALSE - the object's right bound is fixed.
<BUTTON_FRAME> enum </BUTTON_FRAME>
The BUTTON_FRAME element is used to specify the frame used by the form object. The element may be specified as one of the following enum values:
NO_BUTTON_FRAME
STANDARD_BUTTON_FRAME
BOLD_BUTTON_FRAME
RECTANGLE_BUTTON_FRAME
<BITMAP_ID> integer </BITMAP_ID>
Specifies the resource ID of the bitmap or bitmap family that draws the graphic on this button.
<SELECTED_BITMAP_ID> integer </SELECTED_BITMAP_ID>
Resource ID of the bitmap or bitmap family that draws the graphic when the button is selected. It is important to provide a different graphic for the selected bitmap on a color screen.

End Tag

</FORM_GRAPHIC_REPEATING_BUTTON>

Example


<FORM_GRAPHIC_REPEATING_BUTTON> 
	<ID> 1402 </ID> 
	<BOUNDS> 
		<LEFT> 6 </LEFT> 
		<TOP> 7 </TOP> 
		<WIDTH> 30 </WIDTH> 
		<HEIGHT> 30 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
	<BUTTON_FRAME> NO_BUTTON_FRAME </BUTTON_FRAME> 
	<BITMAP_ID> 1000 </BITMAP_ID> 
	<SELECTED_BITMAP_ID> 1001 </SELECTED_BITMAP_ID> 
</FORM_GRAPHIC_REPEATING_BUTTON> 

Form Label Object

Purpose

The form resource may have one or more label objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_LABEL>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<LOCATION> location_defn </LOCATION>
location_defn consists of the following child elements:
<X> integer </X>
Specifies the left origin (form-relative position of the left side of the object).
<Y> integer </Y>
Specifies the top origin (form-relative position of the top of the object).
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - The object is displayed in the Palm OS application.
FALSE - The object is not displayed.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<TEXT> quoted_text </TEXT>
Specifies the text of the label.

End Tag

</FORM_LABEL>

Example


<FORM_LABEL> 
	<ID> 1104 </ID> 
	<LOCATION> 
		<X> 50 </X> 
		<Y> 104 </Y> 
	</LOCATION> 
	<USABLE> TRUE </USABLE> 
	<FONT_ID> BOLD_FONT </FONT_ID> 
	<TEXT> "Version 1.0" </TEXT> 
</FORM_LABEL> 

Form List Object

Purpose

The form resource may have one or more list objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_LIST>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<NUM_VIS_ITEMS> integer </NUM_VIS_ITEMS>
Specifies the number of items the list displays, generally one of these values:
13 - For a full screen pop-up list.
11 - For a full screen stand-alone list (modeless form).
10 - For a full screen stand-alone list (modal form).
0 - For the Categories pop-up list (the actual size is determined at runtime).
Set to the total number of items in your list if less than the specific numbers listed, or if you don't want the Categories pop-up list.
<LIST_ITEMS> text_elements </LIST_ITEMS>
Specifies the text for the items you want in the list. Leave this element out if you want to add list items programmatically.

End Tag

</FORM_LIST>

Example


<FORM_LIST> 
	<ID> 1013 </ID> 
	<BOUNDS> 
		<LEFT> 29 </LEFT> 
		<TOP> 96 </TOP> 
		<WIDTH> 30 </WIDTH> 
		<HEIGHT> 33 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<FONT_ID> STD_FONT </FONT_ID> 
	<NUM_VIS_ITEMS> 3 </NUM_VIS_ITEMS> 
	<LIST_ITEMS> 
		<TEXT> "Sun" </TEXT> 
		<TEXT> "Mon" </TEXT> 
		<TEXT> "Tue" </TEXT> 
	</LIST_ITEMS> 
</FORM_LIST> 

Form Pop-Up Object

Purpose

The form resource may have one or more pop-up objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_POPUP>

Child Elements

<CONTROL_ID> integer </CONTROL_ID>
The pop-up object's CONTROL_ID value matches the corresponding pop-up trigger's ID value. See "Form Pop-Up Trigger Object."
<LIST_ID> integer </LIST_ID>
The pop-up object's LIST_ID value matches the ID value for the list object that you want to pop-up. See "Form List Object."

End Tag

</FORM_POPUP>

Example


<FORM_POPUP> 
	<CONTROL_ID> 1314 </CONTROL_ID> 
	<LIST_ID> 1013 </LIST_ID> 
</FORM_POPUP> 

Form Pop-Up Trigger Object

Purpose

The form resource may have one or more pop-up trigger objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_POPUP_TRIGGER>

Child Elements

<ID> integer </ID>
Specifies the object identifier. The pop-up trigger's ID value matches the corresponding pop-up object's CONTROL_ID value. See "Form Pop-Up Object."
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<LEFT_ANCHOR> boolean </LEFT_ANCHOR>
Controls how the object resizes itself.
TRUE - the object's left bound is fixed.
FALSE - the object's right bound is fixed.
<TEXT> quoted_text </TEXT>
Specifies the text for the pop-up label. Usually, you leave this field blank and set the label programmatically.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT

End Tag

</FORM_POPUP_TRIGGER>

Example


<FORM_POPUP_TRIGGER> 
	<ID> 1314 </ID> 
	<BOUNDS> 
		<LEFT> 111 </LEFT> 
		<TOP> 61 </TOP> 
		<WIDTH> 42 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> FALSE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
	<TEXT> "Pop-up" </TEXT> 
	<FONT_ID> STD_FONT </FONT_ID> 
</FORM_POPUP_TRIGGER> 

Form Push Button Object

Purpose

The Form resource may have one or more push button objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_PUSH_BUTTON>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<TEXT> quoted_text </TEXT>
Specifies the text displayed inside the push button.
<FONT_ID> enum </FONT_ID>
Specifies the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<GROUP_ID> integer </GROUP_ID>
Specifies a value that identifies a group of controls. To indicate that the object is not part of a group, specify the value 0.

End Tag

</FORM_PUSH_BUTTON>

Example


<FORM_PUSH_BUTTON> 
	<ID> 1015 </ID> 
	<BOUNDS> 
		<LEFT> 71 </LEFT> 
		<TOP> 101 </TOP> 
		<WIDTH> 12 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<TEXT> "A" </TEXT> 
	<FONT_ID> STD_FONT </FONT_ID> 
	<GROUP_ID> 0 </GROUP_ID> 
</FORM_PUSH_BUTTON> 

Form Repeating Button Object

Purpose

The form resource may have one or more repeating button objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_REPEATING_BUTTON>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<LEFT_ANCHOR> boolean </LEFT_ANCHOR>
Controls how the object resizes itself.
TRUE - the object's left bound is fixed.
FALSE - the object's right bound is fixed.
<TEXT> quoted_text </TEXT>
Specifies the text that appears inside the repeating button. Use "\x01" to specify the scroll up button. Use "\x02" to specify the scroll down button.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT
<BUTTON_FRAME> enum </BUTTON_FRAME>
The BUTTON_FRAME element is used to specify the frame used by the form object. The element may be specified as one of the following enum values:
NO_BUTTON_FRAME
STANDARD_BUTTON_FRAME
BOLD_BUTTON_FRAME
RECTANGLE_BUTTON_FRAME

End Tag

</FORM_REPEATING_BUTTON>

Example


<FORM_REPEATING_BUTTON> 
	<ID> 1316 </ID> 
	<BOUNDS> 
		<LEFT> 118 </LEFT> 
		<TOP> 78 </TOP> 
		<WIDTH> 36 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> FALSE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<TEXT> "Rep" </TEXT> 
	<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
	<FONT_ID> STD_FONT </FONT_ID> 
	<BUTTON_FRAME> NO_BUTTON_FRAME </BUTTON_FRAME> 
</FORM_REPEATING_BUTTON>  

Form Scroll Bar Object

Purpose

The form resource may have one or more scroll bar objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_SCROLLBAR>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<VALUE> integer </VALUE>
The initial setting for the scroll bar.
<MIN_VALUE> integer </MIN_VALUE>
The minimum value the scroll bar can represent.
<MAX_VALUE> integer </MAX_VALUE>
The maximum value the scroll bar can represent.
<PAGE_SIZE> integer </PAGE_SIZE>
Number of lines to scroll at one time. This value is often not set until run time. It should be one less than the number of lines that can be displayed at one time to provide context. That is, if the field can display ten lines of text, the page jump value should be nine.

End Tag

</FORM_SCROLLBAR>

Example


<FORM_SCROLLBAR> 
	<ID> 1217 </ID> 
	<BOUNDS> 
		<LEFT> 147 </LEFT> 
		<TOP> 115 </TOP> 
		<WIDTH> 7 </WIDTH> 
		<HEIGHT> 40 </HEIGHT> 
	</BOUNDS> 
	<USABLE> FALSE </USABLE> 
	<VALUE> 33 </VALUE> 
	<MIN_VALUE> 0 </MIN_VALUE> 
	<MAX_VALUE> 100 </MAX_VALUE> 
	<PAGE_SIZE> 11 </PAGE_SIZE> 
</FORM_SCROLLBAR> 

Form Selector Trigger Object

Purpose

The form resource may have one or more selector trigger objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_SELECTOR_TRIGGER>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<LEFT_ANCHOR> boolean </LEFT_ANCHOR>
Controls how the object resizes itself.
TRUE - the object's left bound is fixed.
FALSE - the object's right bound is fixed.
<TEXT> quoted_text </TEXT>
Specifies the text for the initial value of the pop-up trigger. You can leave this element blank and specify the text at runtime.
<FONT_ID> enum </FONT_ID>
The FONT_ID element is used to specify the font used by the form object. The element may be specified as an integer value between 0 and 255, or as enum values listed below:
STD_FONT
BOLD_FONT
LARGE_FONT
SYMBOL_FONT
SYMBOL_11_FONT
SYMBOL_7_FONT
LED_FONT
LARGE_BOLD_FONT

End Tag

</FORM_SELECTOR_TRIGGER>

Example


<FORM_SELECTOR_TRIGGER> 
	<ID> 1018 </ID> 
	<BOUNDS> 
		<LEFT> 11 </LEFT> 
		<TOP> 135 </TOP> 
		<WIDTH> 39 </WIDTH> 
		<HEIGHT> 12 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<LEFT_ANCHOR> TRUE </LEFT_ANCHOR> 
	<TEXT> "Selector" </TEXT> 
	<FONT_ID> STD_FONT </FONT_ID> 
</FORM_SELECTOR_TRIGGER> 

Form Slider Object

Purpose

The form resource may have one or more slider objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_SLIDER>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<USABLE> boolean </USABLE>
Specifies the visibility of the object, either visible or invisible.
TRUE - the object is displayed in the Palm OS application
FALSE - the object is not displayed.
<ENABLED> boolean </ENABLED>
Specifies whether the object responds to user interface events.
TRUE - the object responds to user interface events.
FALSE - the object does not respond to user interface events.
<VALUE> integer </VALUE>
The initial setting for the slider.
<MIN_VALUE> integer </MIN_VALUE>
The minimum value the slider can represent.
<MAX_VALUE> integer </MAX_VALUE>
The maximum value the slider can represent.
<PAGE_SIZE> integer </PAGE_SIZE>
The amount by which the slider thumb moves when the user taps to the thumb's right or left.
<THUMB_BITMAP_ID> integer </THUMB_BITMAP_ID>
The resource ID of the bitmap resource or bitmap family resource used to create the slider thumb. Use 0 to specify the default thumb bitmap.
<BACKGROUND_BITMAP_ID> integer
</BACKGROUND_BITMAP_ID>
The resource ID of the bitmap resource or bitmap family resource used to create the background for the slider. Use 0 to specify the default background bitmap.

End Tag

</FORM_SLIDER>

Example


<FORM_SLIDER> 
	<ID> 1702 </ID> 
	<BOUNDS> 
		<LEFT> 24 </LEFT> 
		<TOP> 12 </TOP> 
		<WIDTH> 114 </WIDTH> 
		<HEIGHT> 15 </HEIGHT> 
	</BOUNDS> 
	<USABLE> TRUE </USABLE> 
	<ENABLED> TRUE </ENABLED> 
	<VALUE> 0 </VALUE> 
	<MIN_VALUE> 0 </MIN_VALUE> 
	<MAX_VALUE> 150 </MAX_VALUE> 
	<PAGE_SIZE> 10 </PAGE_SIZE> 
	<THUMB_BITMAP_ID> 4000 </THUMB_BITMAP_ID> 
	<BACKGROUND_BITMAP_ID> 4001 </BACKGROUND_BITMAP_ID> 
</FORM_SLIDER> 

Form Table Object

Purpose

The form resource may have one or more table objects as items in the FORM_OBJECTS element.

Start Tag

<FORM_TABLE>

Child Elements

<ID> integer </ID>
Specifies the object identifier.
<BOUNDS> bounds_defn </BOUNDS>
bounds_defn consists of the following child elements:
<LEFT> integer </LEFT>
Specifies, in standard coordinates, the left-most edge of the form object.
<TOP> integer </TOP>
Specifies, in standard coordinates, the top-most edge of the form object.
<WIDTH> integer </WIDTH>
Specifies, in standard coordinates, the width of the form object.
<HEIGHT> integer </HEIGHT>
Specifies, in standard coordinates, the height of the form object.
<EDITABLE> boolean </EDITABLE>
Specifies whether the user can modify the table.
TRUE - the user can modify the table.
FALSE - the user cannot modify the table.
<TABLE_COLUMNS> column_entries </TABLE_COLUMNS>
column_entries consists of a <COLUMN_WIDTH> element for each column in the table, which specify each column's width in standard coordinates. The sum of the widths must equal the table width.
The number of <COLUNM_WIDTH> elements determines the number of columns in the table.
<TABLE_ROWS> row_entries </TABLE_ROWS>
row_entries consists of a <ROW_HEIGHT> element for each row in the table, which specify the height in standard coordinates for each row.
The number of <ROW_HEIGHT> elements determines the number of rows in the table.

End Tag

</FORM_TABLE>

Example


<FORM_TABLE> 
	<ID> 1020 </ID> 
	<BOUNDS> 
		<LEFT> 99 </LEFT> 
		<TOP> 114 </TOP> 
		<WIDTH> 40 </WIDTH> 
		<HEIGHT> 40 </HEIGHT> 
	</BOUNDS> 
	<EDITABLE> TRUE </EDITABLE> 
	<TABLE_COLUMNS> 
		<COLUMN_WIDTH> 20 </COLUMN_WIDTH> 
		<COLUMN_WIDTH> 20 </COLUMN_WIDTH> 
	</TABLE_COLUMNS> 
	<TABLE_ROWS> 
		<ROW_HEIGHT> 11 </ROW_HEIGHT> 
		<ROW_HEIGHT> 11 </ROW_HEIGHT> 
		<ROW_HEIGHT> 11 </ROW_HEIGHT> 
	</TABLE_ROWS> 
</FORM_TABLE> 

Form Title Object

Purpose

The form resource's first item is usually a form title object in the FORM_OBJECTS element.

Start Tag

<FORM_TITLE>

Child Elements

<TEXT> quoted_text </TEXT>
Specifies the text for the form's title.

End Tag

</FORM_TITLE>

Example


<FORM_TITLE> 
	<TEXT> "Address Entry Details" </TEXT> 
</FORM_TITLE> 

Graphic Family Resource ^TOP^

Purpose

The Graphic Family resource concatenates image files in PNG format into one resource.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'Tbmp'

Start Tag

<GRAPHIC_FAMILY_RESOURCE RESOURCE_ID="resource_id" LOCALE="resource_id" OVERLAY_STATUS="resource_id">

Child Elements

<WIDTH> integer </WIDTH>
<WIDTH> integer </WIDTH>
integer - Specifies the width of the image in standard coordinates.
<HEIGHT> integer </HEIGHT>
integer - Specifies the height of the image in standard coordinates.
<IMAGES> one or more IMAGE elements </IMAGES>
The IMAGES element consists of a collection of IMAGE elements.
<IMAGE> image_defn </IMAGE>
image_defn consists of the following elements:
<DENSITY> enum </DENSITY>
This optional element allows you to specify multiple density images in a graphic family resource.
72 - Normal (1X) density (also referred to single density). This is the default, if this element is omitted.
108 - 1.5X density (also referred to as one-and-one half density).
144 - Double (2X) density.
216 - Triple (3X) density.
<GRAYSCALE> boolean </GRAYSCALE>
Indicates whether this is a grayscale image.
<DITHER> enum </DITHER>
OFF - Dithering is not used for this image.
ONLOAD - The image is dithered when loaded.
ONDRAW - The image is dithered when drawn.
<COLORSPACE> enum </COLORSPACE>
Specifies the colorspace used for this image. It is used only in conjunction with a GRAPHIC_FAMILY_DATA element.
<GRAPHIC_FAMILY_DATA> binary_data
</GRAPHIC_FAMILY_DATA>
The image data may be specified using either a GRAPHIC_FAMILY_DATA element or a GRAPHIC_FAMILY_FILE element.
A GRAPHIC_FAMILY_DATA element specifies the raster image data inline in the XRD file. The image data is specified as binary data. The image data is the uncompressed raster data specified as rowBytes times
numScanLines (rowBytes * numScanLines) bytes of data, where the scan lines are stored top to bottom.
<GRAPHIC_FAMILY_FILE> ext_file
</GRAPHIC_FAMILY_FILE>
The image data may be specified using either a GRAPHIC_FAMILY_DATA element or a GRAPHIC_FAMILY_FILE element.
A GRAPHIC_FAMILY_FILE element specifies the image data as the quoted string path of an external image file, which must be in a supported image format such as PNG. The dimensions of the image in the image file must match exactly the dimensions specified by the IMAGE element.
When using external image files, you can store the image as a PNG file, which is the only supported format at this time. For simplicity, you can use GRAPHIC_FAMILY_FILE paths that specify a path relative to the XRD file.

End Tag

</GRAPHIC_FAMILY_RESOURCE>

Example


<GRAPHIC_FAMILY_RESOURCE RESOURCE_ID="1000" COMMENT="January 
or All"> 
 
	<WIDTH> 225 </WIDTH> 
	<HEIGHT> 34 </HEIGHT> 
 
	<IMAGES> 
 
		<IMAGE> 
			<DENSITY>108</DENSITY> 
			<GRAPHIC_FAMILY_FILE>"QVGA_Cal_January.png" 
			</GRAPHIC_FAMILY_FILE> 
		</IMAGE> 
 
		<IMAGE> 
			<DENSITY>144</DENSITY> 
			<GRAPHIC_FAMILY_FILE>"HVGA_Cal_January.png" 
			</GRAPHIC_FAMILY_FILE> 
		</IMAGE> 
 
		<IMAGE> 
			<DENSITY>216</DENSITY> 
			<GRAPHIC_FAMILY_FILE>"VGA_Cal_January.png" 
			</GRAPHIC_FAMILY_FILE> 
		</IMAGE> 
 
	</IMAGES> 
 
</GRAPHIC_FAMILY_RESOURCE>  

Menu Bar Resource ^TOP^

Purpose

The menu bar stores a list of menus where each menu has a title and a list of menu items.

Note that the calculated bounds of the menu and menu title are explicitly specified in the BOUNDS and TITLE_BOUNDS elements. These elements are included to accurately reproduce the data stored in Palm OS menu structures.

Because PalmRC calculates the correct values for these elements when an XRD file is compiled, you should not specify these values, especially when working with localized text string. When creating a new resource, you may set these bounds to zero. Future revisions of the resource tools will treat these elements as optional, and they should not normally used.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'MBAR'
  • Palm OS 5: 'amnu'
  • Palm OS 6: 'MBAR'

Start Tag

<MENU_BAR_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<VISIBLE> boolean </VISIBLE>
TRUE - Indicates that the menu bar is visible.
FALSE - Indicates that the menu bar is not visible.
<MENUS> menu_elements </MENUS>
menu_elements
One or more MENU element descriptions.
<MENU> menu_decription </MENU>
menu_description consists of the following sub-elements:
<TITLE> quoted_text </TITLE>
Defines the menu text for the menu command.
<HIDDEN> boolean </HIDDEN>
TRUE - the menu is hidden.
FALSE - the menu is displayed.
<BOUNDS> bounds_defn </BOUNDS>
Because PalmRC calculates the correct values for these elements when an XRD file is compiled, you should not specify these values.
<LEFT> integer </LEFT> - Specifies, in standard coordinates, the left-most edge of the menu bounds (the "x" value).
<TOP> integer </TOP> - Specifies, in standard coordinates, the top-most edge of the menu bounds (the "y" value).
<WIDTH> integer </WIDTH> - Specifies, in standard coordinates, the width (the horizontal extent) for the menu bounds.
<HEIGHT> integer </HEIGHT> - Specifies, in standard coordinates, the height (the vertical extent) for the menu bounds.
<TITLE_BOUNDS> bounds_description
</TITLE_BOUNDS>
Because PalmRC calculates the correct values for these elements when an XRD file is compiled, you should not specify these values.
<LEFT> integer </LEFT> - Sets the horizontal origin for the menu title bounds (the "x" value).
<TOP> integer </TOP> - Sets the vertical origin for the menu title bounds (the "y" value).
<WIDTH> integer </WIDTH> - Sets the horizontal extent for the menu title bounds.
<HEIGHT> integer </HEIGHT> - Sets the vertical extent for the menu title bounds.
<MENU_ITEMS> menu_item_elements </MENU_ITEMS>
menu_item_elements - One or more MENU_ITEM element descriptions.
<MENU_ITEM> menu_item_description
</MENU_ITEM>
menu_item_description - Consists of the following sub-elements:
<ID> integer </ID> - The identifier for the menu item.
<TITLE> quoted_text </TITLE> - The menu item text.
<COMMAND> quoted_text </COMMAND> - The command shortcut for the menu item.
The menu command shortcut must be a single uppercase letter ('A' through 'Z').
<HIDDEN> boolean </HIDDEN>
TRUE
- The menu item is hidden.
FALSE - The menu item is displayed.

End Tag

</MENU_BAR_RESOURCE>

Example

The following example shows how to specify the standard Edit menu in your Palm OS application. Note the menu IDs for the specific menu items.

Undo
10000
Cut
10001
Copy
10002
Paste
10003
Select All
10004
Separator Line
10005
Keyboard
10006
Graffiti Help
10007

Listing 3.1  Palm OS standard Edit menu items


<MENU_BAR_RESOURCE RESOURCE_ID="1000">  
	<VISIBLE> TRUE </VISIBLE>  
	<MENUS>  
		<MENU>  
			<TITLE> "Edit" </TITLE>  
			<HIDDEN> FALSE </HIDDEN>  
			<BOUNDS>  
				<LEFT> 6 </LEFT>  
				<TOP> 14 </TOP>  
				<WIDTH> 100 </WIDTH>  
				<HEIGHT> 82 </HEIGHT>  
			</BOUNDS>  
			<TITLE_BOUNDS>  
				<LEFT> 4 </LEFT>  
				<TOP> 0 </TOP>  
				<WIDTH> 27 </WIDTH>  
				<HEIGHT> 12 </HEIGHT>  
			</TITLE_BOUNDS> 
			<MENU_ITEMS> 
				<MENU_ITEM> 
					<ID> 10000 </ID> 
					<TITLE> "Undo" </TITLE> 
					<COMMAND> "U" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10001 </ID> 
					<TITLE> "Cut" </TITLE> 
					<COMMAND> "X" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10002 </ID> 
					<TITLE> "Copy" </TITLE> 
					<COMMAND> "C" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10003 </ID> 
					<TITLE> "Paste" </TITLE> 
					<COMMAND> "P" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10004 </ID> 
					<TITLE> "Select All" </TITLE> 
					<COMMAND> "S" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10005 </ID> 
					<TITLE> "-" </TITLE> 
					<COMMAND> "" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10006 </ID> 
					<TITLE> "Keyboard" </TITLE> 
					<COMMAND> "K" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
				<MENU_ITEM> 
					<ID> 10007 </ID> 
					<TITLE> "Graffiti Help" </TITLE> 
					<COMMAND> "G" </COMMAND> 
					<HIDDEN> FALSE </HIDDEN> 
				</MENU_ITEM> 
			</MENU_ITEMS> 
		</MENU> 
	</MENUS> 
</MENU_BAR_RESOURCE>  

MIDI Resource ^TOP^

Purpose

The MIDI resource is used to define MIDI (Musical Instrument Digital Interface) data for your application.

A MIDI resource may be defined as binary data or external file data.

Target Format

Format generated by PalmRC:

  • All OS targets: 'MIDI'

Start Tag

<MIDI_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<MIDI_RAW_DATA> binary_data </MIDI_RAW_DATA>
Use this format to specify inline binary data.
<MIDI_FILE> ext_file </MIDI_FILE>
Use this format to specify external data contained in a file.

End Tag

</MIDI_RESOURCE>

Example

Inline Data

<MIDI_RESOURCE RESOURCE_ID="999"> 
	<MIDI_RAW_DATA> 
		4D 54 68 64 00 00 00 06 00 00 00 01 01 90 4D 54 
		72 6B 00 00 00 32 00 90 62 7F 4A 62 00 00 5F 7F 
		82 28 5F 00 81 14 62 7F 4A 62 00 00 5F 7F 82 28 
		5F 00 81 14 62 7F 4A 62 00 00 5F 7F 82 28 5F 00 
		85 1A 5F 01 00 FF 2F 00 
	</MIDI_RAW_DATA> 
</MIDI_RESOURCE> 

External File Data

	<MIDI_RESOURCE RESOURCE_ID="1999"> 
		<MIDI_FILE> "./TestMidi/twilight.mid" </MIDI_FILE> 
	</MIDI_RESOURCE> 

Overlay Resource ^TOP^

Purpose

The overlay resource is used to provide localized strings which are used by the Palm OS Overlay Manager.


NOTE: This resource type is used for viewing decompiled resources only. It is not used for creating overlay resources. To create overlay resources, use the tool hOverlay.

Target Format

Format generated by PalmRC:

  • All OS targets: 'ovly'

Start Tag

<OVERLAY_RESOURCE RESOURCE_ID="resource_id">

End Tag

</OVERLAY_RESOURCE>

Raw Resource ^TOP^

Purpose

The raw resource is used to represent any resource for which there is no logical resource description available, but the binary data is explicitly specified.

It is also used when extracting Palm OS code resources such as 'code' and 'data' to be stored in an XRD file.

The resource data may be specified inline as binary data using the RES_DATA element, or it may be specified in an external file using the DATA_FILE element.

Target Format

The source type for raw resources is specified with the RES_TYPE element, as described below.

Start Tag

<RAW_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<RES_TYPE> four_character_code </RES_TYPE>
Use this value to specify the resource type for the raw resource.
<RES_DATA> binary_data </RES_DATA>
Use this format to specify inline binary data.
<DATA_FILE> ext_file </DATA_FILE>
Use this format to specify external data contained in a file.

End Tag

</RAW_RESOURCE>

Example

Inline Data

<RAW_RESOURCE RESOURCE_ID="0"> 
	<RES_TYPE> 'code' </RES_TYPE> 
	<RES_DATA> 
		00 00 00 30 00 00 00 08 00 00 00 08 00 00 00 20 
		00 00 3F 3C 00 01 A9 F0 
	</RES_DATA> 
</RAW_RESOURCE> 

External Data

<RAW_RESOURCE RESOURCE_ID="65535"> 
	<RES_TYPE> 'XXXX' </RES_TYPE> 
	<DATA_FILE> "./TestData/xxxx.bin" </DATA_FILE> 
</RAW_RESOURCE> 

Schema Database Resource ^TOP^

Purpose

The schema database resource represents a "flattened" Palm OS schema database. For more information about defining and using schema databases, see Exploring Palm OS: Memory, Databases, and Files.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'scdb'

Start Tag

<SCHEMA_DATABASE_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<SDB_HEADER> schema_header </SDB_HEADER>
The schema_header contains the following elements:
<SDB_DB_NAME> quoted_text </SDB_DB_NAME>
quoted_text - The name for this database.
Databases in Palm OS Cobalt are uniquely identified by a combination of the database's name and its creator ID. Thus, database names need only be unique for a single creator ID: two databases with the same name can reside on a single handheld as long as their creator IDs differ.
<SDB_DB_USER_NAME> quoted_text </SDB_DB_USER_NAME>
quoted_text - The database's display name.
<SDB_DB_TYPE> four_character_code </SDB_DB_TYPE>
four_character_code - The database's type, specified when the database is created.
<SDB_DB_CREATOR> quoted_text </SDB_DB_CREATOR>
quoted_text - The database's creator, specified when the database is created.
<SDB_DB_VERSION> integer </SDB_DB_VERSION>
integer - The application-specific version number. The default version number is 0.
<SDB_SCHEMAS> schema_def </SDB_SCHEMAS>
The schema_def contains the following elements:
<SDB_SCHEMA_ID> resource_id </SDB_SCHEMA_ID>
resource_id - A 32-bit user-defined identifier. This ID must be unique for a given table.
<SDB_SCHEMA_NAME> quoted_text
</SDB_SCHEMA_NAME>
quoted_text - A user-defined name for the schema. This name can be up to 32 bytes in length, including the terminating null character.
This name must be a valid SQL identifier, as defined by Palm OS. Specifically, identifiers must start with either an uppercase letter ('A' through 'Z'), a lowercase letter ('a' through 'z'), or the underscore character ('_'). The remaining characters can be letters, numbers ('0' through '9'), or the underscore character.
<SDB_COLUMNS> one or more SDB_COLUMN elements
</SDB_COLUMNS>
<SDB_COLUMN> column_def <SDB_COLUMN>
The column_def contains the following elements:
<SDB_COLUMN_ID> resource_id
</SDB_COLUMN_ID>
resource_id - A 32-bit user-defined identifier. This ID must be unique for a given table.
<SDB_COLUMN_NAME> quoted_text
</SDB_COLUMN_NAME>
quoted_text - A user-defined name for the column. This name can be up to 32 bytes in length, including the terminating null character. The column name is stored in a single user-defined language encoding.
This name must be a valid SQL identifier, as defined by Palm OS. Specifically, identifiers must start with either an uppercase letter ('A' through 'Z'), a lowercase letter ('a' through 'z'), or the underscore character ('_'). The remaining characters can be letters, numbers ('0' through '9'), or the underscore character.
<SDB_COLUMN_ATTRIBUTES> column_attr_defn
</SDB_COLUMN_ATTRIBUTES>
where column_attr_defn consists of the following elements:
<SDB_COLUMN_ATTRIBUTE_NONSYNCABLE> boolean
</SDB_COLUMN_ATTRIBUTE_NONSYNCABLE>
boolean - Indicates whether the column data is to be synchronized.
<SDB_COLUMN_ATTRIBUTE_WRITEABLE> boolean </SDB_COLUMN_ATTRIBUTE_WRITEABLE>
boolean - Indicates whether the column data can be modified.
<SDB_COLUMN_TYPE> column_type
</SDB_COLUMN_TYPE>
column_type - The type of data contained within the database column, which is one of the following types: BOOLEAN, BLOB, CHAR, VARCHAR, INT8, INT16, INT32, UINT8, UINT16, UINT32.
<SDB_COLUMN_SIZE> integer
</SDB_COLUMN_SIZE>
integer - The maximum size, in bytes, for columns that contain variable-length strings, blobs, and vectors.
<SDB_COLUMN_PROPERTIES>
  <SDB_COLUMN_PROPERTY>
property_def
  </SDB_COLUMN_PROPERTY>
</SDB_COLUMN_PROPERTIES>
property_def allows you to define custom properties for a column, and contains the following elements:
<SDB_COLUMN_PROPERTY_ID> integer
</SDB_COLUMN_PROPERTY_ID>
integer - The identifier for the custom property. This identifier must be greater than 10, the value assigned for the schema database constant dbColumnPropertyUpperBound.
<SDB_COLUMN_PROPERTY_DATA> column_data
</SDB_COLUMN_PROPERTY_DATA>
column_data can be defined as either binary_data or as quoted_text. If you specify the column data as quoted_text, then the specified string is transformed into binary data and a terminating null character is appended.
<SDB_CATEGORIES> one or more SDB_CATEGORY elements </SDB_CATEGORIES>
<SDB_CATEGORY> category_def
</SDB_CATEGORY>
where category_def contains the following elements:
<SDB_CATEGORY_ID> integer
</SDB_CATEGORY_ID>
integer - The category ID value.
<SDB_CATEGORY_NAME> quoted_text
</SDB_CATEGORY_NAME>
quoted_text - The category name.
<SDB_CATEGORY_EDITABLE> boolean
</SDB_CATEGORY_EDITABLE>
boolean - Indicates whether the category information can be changed.
Note: If you specify categories using the SDB_CATEGORY elements, the first category must be defined with SDB_CATEGORY_ID set to 0, and SDB_CATEGORY_NAME set to "Unfiled", as shown in the example below.

		<SDB_CATEGORY>  
			<SDB_CATEGORY_ID> 0 </SDB_CATEGORY_ID> 
			<SDB_CATEGORY_NAME> "Unfiled" </SDB_CATEGORY_NAME> 
			<SDB_CATEGORY_EDITABLE> TRUE </SDB_CATEGORY_EDITABLE> 
		</SDB_CATEGORY> 

<SDB_RECORDS> one or more SDB_RECORD elements
</SDB_RECORDS>
<SDB_RECORD> record_def </SDB_RECORD>
where record_def contains the following elements:
<SDB_RECORD_ID> integer </SDB_RECORD_ID>
integer - A 32-bit user-defined identifier. This record ID must be an integer in the range 2048 through 8191, in increasing order (smallest first, largest last).
<SDB_SCHEMA_ID> integer </SDB_SCHEMA_ID>
integer - A 32-bit user-defined identifier.
<SDB_RECORD_ATTRIBUTES> attrib_def
</SDB_RECORD_ATTRIBUTES>
where attrib_def contains the following elements:
<SDB_RECORD_ATTRIBUTE_READONLY> boolean
</SDB_RECORD_ATTRIBUTE_READONLY>
boolean - Indicates whether this attribute can be changed.
<SDB_RECORD_ATTRIBUTE_SECRET> boolean
</SDB_RECORD_ATTRIBUTE_SECRET>
boolean - Indicates whether this attribute is hidden.
<SDB_RECORD_DATA> one or more SDB_RECORD_COLUMN_DATA elements
</SDB_RECORD_DATA>
<SDB_RECORD_COLUMN_DATA> column_data_def
</SDB_RECORD_COLUMN_DATA>
where column_data_def contains the following elements:
<SDB_COLUMN_ID> integer </SDB_COLUMN_ID>
integer - The column ID.
<SDB_RECORD_DATA_VALUE> quoted_text
</SDB_RECORD_DATA_VALUE>
quoted_text - The column data.
<SDB_RECORD_CATEGORIES> one or more SDB_CATEGORY_ID elements
</SDB_RECORD_CATEGORIES>
<SDB_CATEGORY_ID> integer </SDB_CATEGORY_ID>
integer - The category ID value.

End Tag

</SCHEMA_DATABASE_RESOURCE>

Example


<SCHEMA_DATABASE_RESOURCE RESOURCE_ID="1000"> 
	<SDB_HEADER> 
		<SDB_DB_NAME> "Resources" </SDB_DB_NAME> 
		<SDB_DB_USER_NAME> "Manager" </SDB_DB_USER_NAME> 
		<SDB_DB_TYPE> 'appl' </SDB_DB_TYPE> 
		<SDB_DB_CREATOR> 'mgra' </SDB_DB_CREATOR>
		<SDB_DB_VERSION> 3 </SDB_DB_VERSION> 
	</SDB_HEADER> 
	<SDB_SCHEMAS> 
		<SDB_SCHEMA> 
			<SDB_SCHEMA_ID> 1 </SDB_SCHEMA_ID> 
			<SDB_SCHEMA_NAME> "X" </SDB_SCHEMA_NAME> 
			<SDB_COLUMNS> 
				<SDB_COLUMN> 
					<SDB_COLUMN_ID> 2102 </SDB_COLUMN_ID> 
					<SDB_COLUMN_NAME> "Contact" </SDB_COLUMN_NAME> 
					<SDB_COLUMN_TYPE> VAR_CHAR </SDB_COLUMN_TYPE> 
					<SDB_COLUMN_SIZE> 32 </SDB_COLUMN_SIZE> 
				</SDB_COLUMN> 
			</SDB_COLUMNS> 
		</SDB_SCHEMA> 
	</SDB_SCHEMAS> 
	<SDB_CATEGORIES> 
		<SDB_CATEGORY>  
			<SDB_CATEGORY_ID> 0 </SDB_CATEGORY_ID> 
			<SDB_CATEGORY_NAME> "Unfiled" </SDB_CATEGORY_NAME> 
			<SDB_CATEGORY_EDITABLE> TRUE </SDB_CATEGORY_EDITABLE> 
		</SDB_CATEGORY> 
	</SDB_CATEGORIES> 
</SCHEMA_DATABASE_RESOURCE> 

Soft Constant Resource ^TOP^

Purpose

The soft constant stores a single 32-bit unsigned integer number.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'tint'
  • Palm OS 5: 'aint'
  • Palm OS 6: 'tint'

Start Tag

<SOFT_CONSTANT_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<VALUE> integer </VALUE>
The initial setting for the soft constant.

End Tag

</SOFT_CONSTANT_RESOURCE>

Example


<SOFT_CONSTANT_RESOURCE RESOURCE_ID="1000"> 
	<VALUE> 1000 </VALUE> 
</SOFT_CONSTANT_RESOURCE> 
 
<SOFT_CONSTANT_RESOURCE RESOURCE_ID="1001"> 
	<VALUE> 0x3E8 </VALUE> 
</SOFT_CONSTANT_RESOURCE> 

String List Resource ^TOP^

Purpose

The string list stores a prefix string, and zero or more additional strings.

Target Format

Format generated by PalmRC:

  • All OS targets: 'tSTL'

Start Tag

<STRING_LIST_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<PREFIX> quoted_text </PREFIX>
The PREFIX element defines the beginning string for the string list.
<STRINGS> text_elements </STRINGS>
The STRINGS elements define the alternative ending strings for the string list.

End Tag

</STRING_LIST_RESOURCE>

Example


<STRING_LIST_RESOURCE RESOURCE_ID="1000"> 
	<PREFIX> "The show " </PREFIX> 
	<STRINGS> 
		<TEXT> "never ends." </TEXT> 
		<TEXT> "is over." </TEXT> 
	</STRINGS > 
</STRING_LIST_RESOURCE>  

String Resource ^TOP^

Purpose

The string resource stores a single string.

Target Format

Format generated by PalmRC:

  • All OS targets: 'tSTR'

Start Tag

<STRING_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<TEXT> quoted_text </TEXT>

End Tag

</STRING_RESOURCE>

Example


<STRING_RESOURCE RESOURCE_ID="1000">  
	<TEXT> "Your string here." </TEXT>  
</STRING_RESOURCE>  

TrueType Font Resource ^TOP^

Purpose

The TrueType font resource defines a TrueType font. The TrueType font resource may be defined as binary data or external file data.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'fttf'

Start Tag

<TRUETYPE_FONT_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<TTFONT_RAW_DATA> binary_data </TTFONT_RAW_DATA>
Use this format to specify inline binary data. The binary data must be the same format stored in a TrueType font file (TTF file), as used in Microsoft Windows.
<TTFONT_FILE> ext_file </TTFONT_FILE>
ext_file - Use this format to specify the name of a TrueType font file (TTF file), as used in Microsoft Windows.

End Tag

</TRUETYPE_FONT_RESOURCE>

Example

Inline Data

<TRUETYPE_FONT_RESOURCE RESOURCE_ID="4142"> 
	<TTFONT_RAW_DATA> 
		00 01 00 00 00 11 01 00 00 04 00 10 4F 53 2F 32 
... 
		B8 00 0A 2B B8 00 00 2B 
	</TTFONT_RAW_DATA> 
</TRUETYPE_FONT_RESOURCE> 

External File Data

<TRUETYPE_FONT_RESOURCE RESOURCE_ID="1000">  
	<TTFONT_FILE> "./TestFonts/hotpizza.ttf" </TTFONT_FILE>  
</TRUETYPE_FONT_RESOURCE>  

Wave Sound Resource ^TOP^

Purpose

The wave sound resource is used to define wave sound data for your application. The wave sound resource may be defined as binary data or external file data.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: 'wave'
  • Palm OS 6: 'wave'

Start Tag

<WAVE_SOUND_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<WAVE_RAW_DATA> binary_data </WAVE_RAW_DATA>
Use this format to specify inline binary data.
<WAVE_FILE> ext_file </WAVE_FILE>
Use this format to specify external data contained in a file.

End Tag

</WAVE_SOUND_RESOURCE>

Example

Inline Data

<WAVE_SOUND_RESOURCE RESOURCE_ID="3000"> 
	<WAVE_RAW_DATA> 
		52 49 46 46 22 27 00 00 57 41 56 45 66 6D 74 20 
... 
		80 80 80 80 80 7B 79 81 7B 00 
	</WAVE_RAW_DATA> 
</WAVE_SOUND_RESOURCE> 

External File Data

<WAVE_SOUND_RESOURCE RESOURCE_ID="2000"> 
	<WAVE_FILE> "./TestWav/meow.wav" </WAVE_FILE> 
</WAVE_SOUND_RESOURCE> 

Window Constraints Resource ^TOP^

Purpose

The window constraints resource allows you to specify the creation size and resize constraints for your application window.

You can specify window constraints for update-based windows and transitional windows. For more information about window types and window constraints, see Exploring Palm OS: User Interface.

Target Format

Format generated by PalmRC:

  • Palm OS 4: Not applicable.
  • Palm OS 5: Not applicable.
  • Palm OS 6: 'frmb'

Start Tag

<WINDOW_CONSTRAINTS_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<VERSION> integer </VERSION>
integer - Indicates the window constraints version. For Palm OS Cobalt, use the integer value 1.
<WINDOW_CREATE_FLAGS> integer
</WINDOW_CREATE_FLAGS>
integer - Uses the values defined by the WinFlagsType enumeration. For example, to specify normal application window flags, set this value to 0x00000000. For more information, see the WinFlagsType description in the book Exploring Palm OS: User Interface.
<WINDOW_X_POS> integer </WINDOW_X_POS>
The position, given in standard coordinates, of the left side of the window.
<WINDOW_Y_POS> integer </WINDOW_Y_POS>
The position of the top of the window in standard coordinates.
<WINDOW_WIDTH_MIN> integer </WINDOW_WIDTH_MIN>
The minimum possible width of the window in standard coordinates.
<WINDOW_WIDTH_MAX> integer </WINDOW_WIDTH_MAX>
The maximum width of the window in standard coordinates.
<WINDOW_WIDTH_PREF> integer </WINDOW_WIDTH_PREF>
The preferred width of the window in standard coordinates.
<WINDOW_HEIGHT_MIN> integer </WINDOW_HEIGHT_MIN>
The minimum height that the window should ever be made in standard coordinates.
<WINDOW_HEIGHT_MAX> integer </WINDOW_HEIGHT_MAX>
The maximum height for the window in standard coordinates.
<WINDOW_HEIGHT_PREF> integer </WINDOW_HEIGHT_PREF>
The preferred height for this window in standard coordinates.

End Tag

</WINDOW_CONSTRAINTS_RESOURCE>

Comments

The special values SHRT_MIN and SHRT_MAX, which are defined in the Window.h header file, are not recognized by PalmRC. If you want to use these values in your window constraints resource, you need to specify the raw values rather than the constant names.

SHRT_MIN -32768
The system decides the value of this constraint.
SHRT_MAX 32767
Specifies a value that means "as large as possible."

Example


<WINDOW_CONSTRAINTS_RESOURCE RESOURCE_ID="2222"> 
	<VERSION> 1 </VERSION> 
	<WINDOW_CREATE_FLAGS> 0x00000007 </WINDOW_CREATE_FLAGS> 
	<WINDOW_X_POS> 10 </WINDOW_X_POS> 
	<WINDOW_Y_POS> 20 </WINDOW_Y_POS> 
	<WINDOW_WIDTH_MIN> 100 </WINDOW_WIDTH_MIN> 
	<WINDOW_WIDTH_MAX> 200 </WINDOW_WIDTH_MAX> 
	<WINDOW_WIDTH_PREF> 140 </WINDOW_WIDTH_PREF> 
	<WINDOW_HEIGHT_MIN> 110 </WINDOW_HEIGHT_MIN> 
	<WINDOW_HEIGHT_MAX> 180 </WINDOW_HEIGHT_MAX> 
	<WINDOW_HEIGHT_PREF> 120 </WINDOW_HEIGHT_PREF> 
</WINDOW_CONSTRAINTS_RESOURCE> 

Word Integer List Resource ^TOP^

Purpose

The word integer list stores 0 or more 16-bit unsigned integer numbers.

Note that unlike the byte integer list and dword integer list, the word integer list does not have a default item property.

Target Format

Format generated by PalmRC:

  • Palm OS 4: 'wrdl'
  • Palm OS 5: 'awrd'
  • Palm OS 6: 'awrd'

Start Tag

<WORD_LIST_RESOURCE RESOURCE_ID="resource_id">

Child Elements

<VALUES> value_elements </VALUES>
value_elements consists of one or more VALUE element descriptions.
<VALUE> integer </VALUE>

End Tag

</WORD_LIST_RESOURCE>

Example


<WORD_LIST_RESOURCE RESOURCE_ID="1000">  
	<VALUES>  
		<VALUE> 0 </VALUE>  
		<VALUE> 0xFFFF </VALUE>  
	</VALUES>  
</WORD_LIST_RESOURCE>