Diff for /np2/macosx/np2.cpp between versions 1.33 and 1.35

version 1.33, 2003/11/08 17:54:26 version 1.35, 2003/11/12 19:06:33
Line 38 Line 38
 #include        "macalert.h"  #include        "macalert.h"
 #include        "np2opening.h"  #include        "np2opening.h"
 #include        "toolwin.h"  #include        "toolwin.h"
   #include        "aboutdlg.h"
   
 #include        <QuickTime/QuickTime.h>  #include        <QuickTime/QuickTime.h>
 #define USE_RESUME  #define USE_RESUME
Line 52 Line 53
 static  UINT            framecnt = 0;  static  UINT            framecnt = 0;
 static  UINT            waitcnt = 0;  static  UINT            waitcnt = 0;
 static  UINT            framemax = 1;  static  UINT            framemax = 1;
         BYTE            scrnmode;          BYTE            scrnmode = 0;
   
   
 #define DRAG_THRESHOLD          5  #define DRAG_THRESHOLD          5
Line 138  static void MenuBarInit(void) { Line 139  static void MenuBarInit(void) {
         InsertMenu(GetMenu(IDM_SOUND), -1);          InsertMenu(GetMenu(IDM_SOUND), -1);
         InsertMenu(GetMenu(IDM_MEMORY), -1);          InsertMenu(GetMenu(IDM_MEMORY), -1);
     ChangeMenuAttributes(GetMenuRef(IDM_EDIT), kMenuAttrAutoDisable, 0);      ChangeMenuAttributes(GetMenuRef(IDM_EDIT), kMenuAttrAutoDisable, 0);
       DisableAllMenuItems(GetMenuHandle(IDM_EDIT));
     SetMenuItemModifiers(GetMenuRef(IDM_FDD2), IDM_FDD2OPEN, kMenuOptionModifier);      SetMenuItemModifiers(GetMenuRef(IDM_FDD2), IDM_FDD2OPEN, kMenuOptionModifier);
     SetMenuItemModifiers(GetMenuRef(IDM_FDD2), IDM_FDD2EJECT, kMenuOptionModifier);      SetMenuItemModifiers(GetMenuRef(IDM_FDD2), IDM_FDD2EJECT, kMenuOptionModifier);
     SetMenuItemModifiers(GetMenuRef(IDM_SASI2), IDM_SASI2OPEN, kMenuOptionModifier);      SetMenuItemModifiers(GetMenuRef(IDM_SASI2), IDM_SASI2OPEN, kMenuOptionModifier);
Line 530  static void HandleMenuChoice(long wParam Line 532  static void HandleMenuChoice(long wParam
             menu_setmsrapid(np2cfg.MOUSERAPID ^ 1);              menu_setmsrapid(np2cfg.MOUSERAPID ^ 1);
             update |= SYS_UPDATECFG;              update |= SYS_UPDATECFG;
             break;              break;
           case IDM_RECORDING:
               menu_setrecording(false);
               break;
   
   
                 case IDM_I286SAVE:                  case IDM_I286SAVE:
                         debugsub_status();                          debugsub_status();
                         break;                          break;
               
         case IDM_RECORDING:          case IDM_NP2HELP:
             menu_setrecording(false);              {
                   ICInstance inst;
                   long start, fin;
                   const char      urlStr[] = "http://retropc.net/tk800/np2x/help.html";
   
                   ICStart(&inst, 'SMil');
                   start = 0;
                   fin = strlen(urlStr);
                   ICLaunchURL(inst, "\p", urlStr, strlen(urlStr), &start, &fin);
                   ICStop(inst);
               }
             break;              break;
   
                 default:                  default:
Line 674  int main(int argc, char *argv[]) { Line 690  int main(int argc, char *argv[]) {
         menu_setdispclk(np2oscfg.DISPCLK);          menu_setdispclk(np2oscfg.DISPCLK);
         menu_setbtnrapid(np2cfg.BTN_RAPID);          menu_setbtnrapid(np2cfg.BTN_RAPID);
         menu_setbtnmode(np2cfg.BTN_MODE);          menu_setbtnmode(np2cfg.BTN_MODE);
       if (np2oscfg.I286SAVE) {
           AppendMenuItemTextWithCFString(GetMenuRef(IDM_OTHER), CFCopyLocalizedString(CFSTR("i286 save"),"i286"), kMenuItemAttrIconDisabled, NULL,NULL);
       }
   
         scrnmode = 0;          scrnmng_initialize();
         if (scrnmng_create(scrnmode) != SUCCESS) {          if (scrnmng_create(scrnmode) != SUCCESS) {
                 TRACETERM();                  TRACETERM();
                 macossub_term();                  macossub_term();
Line 711  int main(int argc, char *argv[]) { Line 730  int main(int argc, char *argv[]) {
         flagload(np2resume);          flagload(np2resume);
     }      }
 #endif  #endif
       if (np2oscfg.toolwin) {
           toolwin_open();
       }
   
     theTarget = GetEventDispatcherTarget();      theTarget = GetEventDispatcherTarget();
           
Line 851  static pascal OSStatus np2appevent (Even Line 873  static pascal OSStatus np2appevent (Even
                   
     switch (eventClass)      switch (eventClass)
     {      {
           case kEventClassCommand:
               if (GetEventKind(event)==kEventCommandProcess) {
                   HICommand       cmd;
                   GetEventParameter(event, kEventParamDirectObject, typeHICommand, NULL, sizeof(HICommand), NULL, &cmd);
                   if (cmd.commandID == kHICommandAppHelp) {
                       ICInstance inst;
                       long start, fin;
                       const char  urlStr[] = "http://retropc.net/tk800/np2x/help.html";
   
                       ICStart(&inst, 'SMil');
                       start = 0;
                       fin = strlen(urlStr);
                       ICLaunchURL(inst, "\p", urlStr, strlen(urlStr), &start, &fin);
                       ICStop(inst);
                   }
               }
               break;
   
         case kEventClassAppleEvent:            case kEventClassAppleEvent:  
             if (whatHappened == kEventAppleEvent) {              if (whatHappened == kEventAppleEvent) {
                 AEProcessAppleEvent(&eve);                  AEProcessAppleEvent(&eve);
Line 998  static pascal OSStatus np2windowevent(Ev Line 1038  static pascal OSStatus np2windowevent(Ev
 }  }
   
 static const EventTypeSpec appEventList[] = {  static const EventTypeSpec appEventList[] = {
                   {kEventClassCommand,    kEventCommandProcess },
                                 {kEventClassAppleEvent, kEventAppleEvent},                                  {kEventClassAppleEvent, kEventAppleEvent},
                                 {kEventClassMouse,              kEventMouseDown},                                  {kEventClassMouse,              kEventMouseDown},
 #if defined(NP2GCC)  #if defined(NP2GCC)
Line 1031  static void setUpCarbonEvent(void) { Line 1072  static void setUpCarbonEvent(void) {
                                                                 windEventList, 0, NULL);                                                                  windEventList, 0, NULL);
 }  }
   
   static short    backupwidth=0, backupheight=0;
   
 static bool setupMainWindow(void) {  static bool setupMainWindow(void) {
 #if defined(NP2GCC)  #if defined(NP2GCC)
     OSStatus    err;      OSStatus    err;
Line 1059  static bool setupMainWindow(void) { Line 1102  static bool setupMainWindow(void) {
         }          }
         SizeWindow(hWndMain, 640, 400, TRUE);          SizeWindow(hWndMain, 640, 400, TRUE);
 #endif  #endif
         scrnmng_initialize();  
     setUpCarbonEvent();      setUpCarbonEvent();
       if (backupwidth) scrnmng_setwidth(0, backupwidth);
       if (backupheight) scrnmng_setheight(0, backupheight);
         ShowWindow(hWndMain);          ShowWindow(hWndMain);
     return(true);      return(true);
 }  }
Line 1068  static bool setupMainWindow(void) { Line 1113  static bool setupMainWindow(void) {
 static void toggleFullscreen(void) {  static void toggleFullscreen(void) {
     static Ptr  bkfullscreen;      static Ptr  bkfullscreen;
     static BYTE mouse = 0;      static BYTE mouse = 0;
       MenuRef     menu = GetMenuRef(IDM_SCREEN);
       Rect        bounds;
       short       w = 640, h = 480;
   
     soundmng_stop();      soundmng_stop();
     if (!scrnmode & SCRNMODE_FULLSCREEN) {      if (!(scrnmode & SCRNMODE_FULLSCREEN)) {
         RGBColor col = {0, 0, 0};          HandleMenuChoice(IDM_ROLNORMAL);
         short   w=640, h=480;          GetWindowBounds(hWndMain, kWindowContentRgn, &bounds);
           backupwidth = bounds.right - bounds.left;
           backupheight = bounds.bottom - bounds.top;
           toolwin_close();
         DisposeWindow(hWndMain);          DisposeWindow(hWndMain);
         BeginFullScreen(&bkfullscreen,0,&w,&h,&hWndMain,&col,(fullScreenAllowEvents | fullScreenDontChangeMenuBar));              BeginFullScreen(&bkfullscreen,0,&w,&h,&hWndMain,NULL,(fullScreenAllowEvents | fullScreenDontChangeMenuBar));    
           DisableMenuItem(menu, IDM_ROLNORMAL);
           DisableMenuItem(menu, IDM_ROLLEFT);
           DisableMenuItem(menu, IDM_ROLRIGHT);
         HideMenuBar();          HideMenuBar();
         setUpCarbonEvent();          setUpCarbonEvent();
         if (!np2oscfg.MOUSE_SW) {          if (!np2oscfg.MOUSE_SW) {
Line 1093  static void toggleFullscreen(void) { Line 1147  static void toggleFullscreen(void) {
             mouse_running(MOUSE_OFF);              mouse_running(MOUSE_OFF);
             menu_setmouse(0);              menu_setmouse(0);
         }          }
           EnableMenuItem(menu, IDM_ROLNORMAL);
           EnableMenuItem(menu, IDM_ROLLEFT);
           EnableMenuItem(menu, IDM_ROLRIGHT);
         ShowMenuBar();          ShowMenuBar();
           if (np2oscfg.toolwin) {
               toolwin_open();
           }
     }      }
     CheckMenuItem(GetMenuHandle(IDM_SCREEN), LoWord(IDM_FULLSCREEN), scrnmode & SCRNMODE_FULLSCREEN);      CheckMenuItem(GetMenuHandle(IDM_SCREEN), LoWord(IDM_FULLSCREEN), scrnmode & SCRNMODE_FULLSCREEN);
     soundmng_play();      soundmng_play();

Removed from v.1.33  
changed lines
  Added in v.1.35


RetroPC.NET-CVS <cvs@retropc.net>