I was just packing this up to send to someone and figured I'd post it 
to the forum.  It's a utility routine to use Palm Reporter and POSE's 
Trace support to dump events to the Reporter display.

Put a call to

        TraceEvent(eventP);

  at the top of your form event handler if you're having trouble 
tracking down what's wrong.


void TraceEvent(EventPtr eventP);

void TraceEvent(EventPtr eventP) {
        switch (eventP->eType) {
                case nilEvent:
                        HostTraceOutputTL(appErrorClass, "nilEvent");
                        break;
                case penDownEvent:
                        HostTraceOutputTL(appErrorClass, "penDownEvent");
                        break;
                case penUpEvent:
                        HostTraceOutputTL(appErrorClass, "penUpEvent");
                        break;
                case penMoveEvent:
                        HostTraceOutputTL(appErrorClass, "penMoveEvent");
                        break;
                case keyDownEvent:
                        HostTraceOutputTL(appErrorClass, "keyDownEvent");
                        break;
                case winEnterEvent:
                        HostTraceOutputTL(appErrorClass, "winEnterEvent");
                        break;
                case winExitEvent:
                        HostTraceOutputTL(appErrorClass, "winExitEvent");
                        break;
                case ctlEnterEvent:
                        HostTraceOutputTL(appErrorClass, 
"ctlEnterEvent %d", eventP->data.ctlEnter.controlID);
                        break;
                case ctlExitEvent:
                        HostTraceOutputTL(appErrorClass, 
"ctlExitEvent %d", eventP->data.ctlEnter.controlID);
                        break;
                case ctlSelectEvent:
                        HostTraceOutputTL(appErrorClass, 
"ctlSelectEvent %d", eventP->data.ctlSelect.controlID);
                        break;
                case ctlRepeatEvent:
                        HostTraceOutputTL(appErrorClass, 
"ctlRepeatEvent %d", eventP->data.ctlRepeat.controlID);
                        break;
                case lstEnterEvent:
                        HostTraceOutputTL(appErrorClass, 
"lstEnterEvent %d", eventP->data.lstEnter.listID);
                        break;
                case lstSelectEvent:
                        HostTraceOutputTL(appErrorClass, 
"lstSelectEvent %d", eventP->data.lstSelect.listID);
                        break;
                case lstExitEvent:
                        HostTraceOutputTL(appErrorClass, 
"lstExitEvent %d", eventP->data.lstExit.listID);
                        break;
                case popSelectEvent:
                        HostTraceOutputTL(appErrorClass, 
"popSelectEvent control %d list %d", 
eventP->data.popSelect.controlID, eventP->data.popSelect.listID);
                        break;
                case fldEnterEvent:
                        HostTraceOutputTL(appErrorClass, "fldEnterEvent");
                        break;
                case fldHeightChangedEvent:
                        HostTraceOutputTL(appErrorClass, 
"fldHeightChangedEvent");
                        break;
                case fldChangedEvent:
                        HostTraceOutputTL(appErrorClass, "fldChangedEvent");
                        break;
                case tblEnterEvent:
                        HostTraceOutputTL(appErrorClass, 
"tblEnterEvent %d", eventP->data.tblEnter.tableID);
                        break;
                case tblSelectEvent:
                        HostTraceOutputTL(appErrorClass, 
"tblSelectEvent %d", eventP->data.tblSelect.tableID);
                        break;
                case daySelectEvent:
                        HostTraceOutputTL(appErrorClass, "daySelectEvent");
                        break;
                case menuEvent:
                        HostTraceOutputTL(appErrorClass, "menuEvent 
%d", eventP->data.menu.itemID);
                        break;
                case appStopEvent:
                        HostTraceOutputTL(appErrorClass, "appStopEvent");
                        break;
                case frmLoadEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmLoadEvent %d", eventP->data.frmLoad.formID);
                        break;
                case frmOpenEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmOpenEvent %d", eventP->data.frmOpen.formID);
                        break;
                case frmGotoEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmGotoEvent %d", eventP->data.frmGoto.formID);
                        break;
                case frmUpdateEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmUpdateEvent %d %d", eventP->data.frmUpdate.formID, 
eventP->data.frmUpdate.updateCode);
                        break;
                case frmSaveEvent:
                        HostTraceOutputTL(appErrorClass, "frmSaveEvent");
                        break;
                case frmCloseEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmCloseEvent %d", eventP->data.frmClose.formID);
                        break;
                case frmTitleEnterEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmTitleEnterEvent %d", eventP->data.frmTitleEnter.formID);
                        break;
                case frmTitleSelectEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmTitleSelectEvent %d", eventP->data.frmTitleSelect.formID);
                        break;
                case tblExitEvent:
                        HostTraceOutputTL(appErrorClass, "tblExitEvent");
                        break;
                case sclEnterEvent:
                        HostTraceOutputTL(appErrorClass, "sclEnterEvent");
                        break;
                case sclExitEvent:
                        HostTraceOutputTL(appErrorClass, "sclExitEvent");
                        break;
                case sclRepeatEvent:
                        HostTraceOutputTL(appErrorClass, "sclRepeatEvent");
                        break;
                case tsmConfirmEvent:
                        HostTraceOutputTL(appErrorClass, "tsmConfirmEvent");
                        break;
                case tsmFepButtonEvent:
                        HostTraceOutputTL(appErrorClass, "tsmFepButtonEvent");
                        break;
                case tsmFepModeEvent:
                        HostTraceOutputTL(appErrorClass, "tsmFepModeEvent");
                        break;
                case menuCmdBarOpenEvent:
                        HostTraceOutputTL(appErrorClass, 
"menuCmdBarOpenEvent");
                        break;
                case menuOpenEvent:
                        HostTraceOutputTL(appErrorClass, 
"menuOpenEvent %d", eventP->data.menuOpen.menuRscID);
                        break;
                case menuCloseEvent:
                        HostTraceOutputTL(appErrorClass, "menuCloseEvent");
                        break;
                case frmGadgetEnterEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmGadgetEnterEvent %d", eventP->data.gadgetEnter.gadgetID);
                        break;
                case frmGadgetMiscEvent:
                        HostTraceOutputTL(appErrorClass, 
"frmGadgetMiscEvent %d", eventP->data.gadgetMisc.gadgetID);
                        break;
                case firstINetLibEvent:
                        HostTraceOutputTL(appErrorClass, "firstINetLibEvent");
                        break;
                case firstWebLibEvent:
                        HostTraceOutputTL(appErrorClass, "firstWebLibEvent");
                        break;
                default:
                    if ((eventP->eType >= firstUserEvent) && 
(eventP->eType <= lastUserEvent))
                        HostTraceOutputTL(appErrorClass, 
"programmer-defined event %d", eventP->eType);
                        else
                        HostTraceOutputTL(appErrorClass, "unknown 
event %d", eventP->eType);
        }
}



----
Hal Mueller                [EMAIL PROTECTED]
Mobile Geographics LLC     http://www.mobilegeographics.com/
Seattle, Washington        (206) 297-9575
Get CelestNav 2.2.2! http://www.mobilegeographics.com/celestnav/ 

 

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

Reply via email to