NOTE:  Be sure to read the "Avoiding Potential Pitfalls" and "Writing Robust Code" sections for information on the problems developers encounter most frequently.
sysAppLaunchCmdNormalLaunch
PrefGetAppPreferences
and
PrefSetAppPreferences
to save and restore preferences. This is important if your application returns to the last displayed view by default.Using the icon name is useful if you plan to localize your application.
DateFormatType
, found in DateTime.h
).enum formObjects {
    frmFieldObj,
    frmControlObj,
    frmListObj,
    frmTableObj,
    frmBitmapObj,
    frmLineObj,
    frmFrameObj,
    frmRectangleObj,
    frmLabelObj,
    frmTitleObj,
    frmPopupObj,
    frmGraffitiStateObj,
    frmGadgetObj};
    typedef enum formObjects FormObjectKind;
sysFileTApplication
for the executable's database and can be set to any value for other databases associated with an application.
http://www.palmos.com/dev/crid/cridsub.html
DmDeleteRecord
to remove all data from the record, not
DmRemoveRecord
to remove the record itself. That way, the desktop application can retrieve the information that the record is deleted the next time there is a HotSync. DmRemoveRecord
to completely remove the record.
DmSetDatabaseInfo
when creating a database to assign a version number to your application. Databases default to version 0 if the version isn't explicitly set.
DmDatabaseInfo
to check the database version at application start-up.NULL
(or low memory) NULL
. (If you can do better validation than that, so much the better.) Also check that pointers your code obtains from structures or other function calls are not NULL
. Consider adding to your debug build a #define
that overrides MemMove (and similar functions) with a version that validates the arguments passed to it.
NOTE:  Guidelines for implementing specific user-interface objects, such as information on the size of buttons or the font for labels, is provided in "Palm OS Resources" in the Palm OS SDK Reference. Also see the chapter "User Interface" in this book.
Formats
example application to make the pull-down menu available. If the application uses the common code, a Done button inserts itself if the panel was called from the application, not sequentially following another panel. sysAppLaunchCmdPanelCalledFromApp
and sysAppLaunchCmdReturnFromPanel
, which allow an application to let users change preferences without first selecting the launcher, then selecting the application again.
SysGraffitiReferenceDialog
.
Item (right-justified): Value(left-justified)
NOTE:  All developers are urged to include the rules listed below in their test plan. Applications that don't follow these rules may cause problems for other applications on the device.
NOTE:  If you provide shortcuts, make sure that each shortcut is unique among all commands available at that time.
Name | Palm OS Version |
---|---|
Pilot 10001 | 1.0 |
Pilot 5000a | 1.0 |
PalmPilota | 2.0 |
PalmPilot Professionala | 2.0 |
Palm III | 3.0 |
IBM Workpad | 2.0 or 3.0 |
Symbol SPT 1500 | 3.0 |
Qualcomm pdQ | 3.0 |
Palm IIIe | 3.1 |
Palm IIIx | 3.1 |
Palm V | 3.1 |
Palm VII | 3.2 |
Palm IIIc | 3.5 |
1 |
SysTraps.h
(or CoreTraps.h
on Palm OS 3.5 and higher) lists all of the system traps available. Traps are listed in the order in which they were introduced to the system, and comments in the file clearly mark where each operating system version begins.
NOTE:  If you want to compile an existing application with the Palm OS 3.5 SDK, note that some header file names have changed, and the names used for basic types have changed. For example, parameters previously declared asWord
are nowUInt16
orInt16
. To compile existing applications, you'll need to make these changes in your code or include the header filePalmOSCompatibility.h
. See the "Compatibility Guide" in the Palm OS SDK Reference for further details.
  |   |