Examples
There are other communications between the Palm OS and your application that you might want to handle in your code. Particular events, or overall access might be important for you to control. In any case, here are events some applications want to handle:
A particular pen-down event
The input of a graffiti character
How to take over the hard buttons for your own use within your application
How to take over the entire device and not allow any other applications to run
Let’s take a look at the code required to handle each of these instances.
Handling a Pen-Down Event
Normally, you will not handle
pen-down
events directly, but instead handle higher-level events like
ctlSelectEvent. However, occasionally,
applications will want to be on the lookout for a
penDown event. An example is the Address Book:
tapping and releasing on the display of an address in the display
view switches to the edit view.
The source code to the Address Book is part of the Palm OS 3.5 SDK.
The RecordViewHandleEvent in
Address.c from that example contains the
following case:
case penDownEvent:
handled = RecordViewHandlePen(event);
break;
RecordViewHandlePen handles
penDown events in the display-only view of the
record (see Example 5-15).
Example 5-15. RecordViewHandlePen in the Address Book source
static Boolean RecordViewHandlePen (EventType * event) { Boolean handled = false; FormPtr frm; RectangleType r; Int16 x, y; Boolean penDown; // If the user taps in the RecordViewDisplay take her to the Edit View. ...