#include static Boolean mainFormEventHandler(EventType *event) { FormPtr formP; Boolean handled = false; switch (event->eType) { case frmOpenEvent: formP = FrmGetActiveForm(); FrmDrawForm(formP); handled = true; break; case ctlSelectEvent: SysSleep(false,false); break; default: break; } return handled; } static Boolean AppHandleEvent(EventType *event) { FormPtr formP; Boolean handled = false; switch (event->eType) { case frmLoadEvent: formP = FrmInitForm(event->data.frmLoad.formID); FrmSetActiveForm(formP); FrmSetEventHandler(formP, mainFormEventHandler); handled = true; break; default: break; } return handled; } UInt32 PilotMain(UInt16 cmd, void *cmdPBP, UInt16 launchFlags) { EventType event; FormPtr formP; Err err; Boolean handled = false; if(cmd != sysAppLaunchCmdNormalLaunch) return 0; FrmGotoForm(1000); do { EvtGetEvent(&event,evtWaitForever); SysHandleEvent(&event) || AppHandleEvent(&event) || FrmDispatchEvent(&event); } while (event.eType != appStopEvent); FrmCloseAllForms(); }