home *** CD-ROM | disk | FTP | other *** search
-
-
- Boolean gDone, wneAvail;
- SysEnvRec theSysEnv;
- GDHandle gMainDev;
- EventRecord gTheEvent;
- MenuHandle gAppleMenu, gFileMenu, gEditMenu;
- CWindowPtr gPictureWindow = 0L;
- RGBColor myWhite, myBlack, myRed, myBlue, myYellow, myGreen, myOrange, myGray, myDkBlue;
- Handle gSolvedSndH;
-
- main()
- {
- short tics;
-
- MaxApplZone();
- ToolBoxInit();
- GetDateTime((unsigned long *)&randSeed);
- DrawMenuBar();
- WindowInit();
- LoadSounds();
- InitColors();
- gDone = FALSE;
- wneAvail = FALSE;
- SysEnvirons(1, &theSysEnv);
- if (theSysEnv.machineType >= 1) {
- if (NGetTrapAddress(0xA860, 1) != 0xA89F)
- wneAvail = TRUE;
- } /* if */
- while (!gDone) {
- HandleEvent();
- } /* while */
- ExitAppl();
-
- } /* main () */
-
- HandleEvent()
- {
- char theChar;
-
- if (!wneAvail) {
- GetNextEvent(everyEvent, &gTheEvent);
- SystemTask();
- } /* if */
- else
- WaitNextEvent(everyEvent, &gTheEvent, 0L, 0L);
-
- switch (gTheEvent.what) {
- case mouseDown:
- HandleMouseDown();
- break;
- case keyDown:
- case autoKey:
- theChar = gTheEvent.message & charCodeMask;
- if ((gTheEvent.modifiers & cmdKey) != 0)
- HandleMenuChoice(MenuKey(theChar));
- break;
- case updateEvt:
- case nullEvent:
- case mouseUp:
- case keyUp:
- case diskEvt:
- case activateEvt:
- case networkEvt:
- case driverEvt:
- case app1Evt:
- case app2Evt:
- case app3Evt:
- break;
- case app4Evt:
- default:
- break;
- } /* switch */
-
- } /* HandleEvent() */
-
- HandleMouseDown()
- {
- WindowPtr whichWindow;
- short int thePart;
- long int menuChoice, windSize;
-
- thePart = FindWindow(gTheEvent.where, &whichWindow);
- switch (thePart) {
- case inMenuBar:
- menuChoice = MenuSelect(gTheEvent.where);
- HandleMenuChoice(menuChoice);
- break;
- case inSysWindow:
- SystemClick(&gTheEvent, whichWindow);
- break;
- case inDrag:
- break;
- case inGoAway:
- break;
- case inContent:
- case inGrow:
- case inZoomIn:
- case inZoomOut:
- default:
- break;
- } /* switch */
-
- } /* HandleMouseDown() */
-
- HandleMenuChoice(menuChoice)
- long int menuChoice;
- {
- int theMenu;
- int theItem;
-
- if (menuChoice != 0) {
- theMenu = HiWord(menuChoice);
- theItem = LoWord(menuChoice);
- switch (theMenu) {
- case 500:
- HandleAppleChoice(theItem);
- break;
- case 501:
- HandleFileChoice(theItem);
- break;
- } /* switch */
- HiliteMenu(0);
- } /* if */
-
- } /* HandleMenuChoice() */
-
-
- HandleAppleChoice(theItem)
- int theItem;
- {
- Str255 accName;
- int accNumber;
- GrafPtr savePort;
-
- switch (theItem) {
- case 1:
- break;
- default:
- GetPort(&savePort);
- GetItem(gAppleMenu, theItem, accName);
- accNumber = OpenDeskAcc(accName);
- SetPort(savePort);
- break;
- } /* switch */
-
- } /* HandleAppleChoice() */
-
- HandleFileChoice(theItem)
- int theItem;
- {
- GrafPtr savePort;
-
- switch (theItem) {
- case 1:
- DisableItem(gAppleMenu, 1);
- DisableItem(gFileMenu, theItem);
- GetPort(&savePort);
- SetPort((GrafPtr)gPictureWindow);
- ShowWindow((WindowPtr)gPictureWindow);
- rinth();
- EnableItem(gFileMenu, theItem);
- EnableItem(gAppleMenu, 1);
- break;
- case 2:
- gDone = TRUE;
- break;
- } /* switch */
-
- } /* HandleFileChoice() */
-