Diff for /np2/win9x/dialog/d_about.cpp between versions 1.5 and 1.14

version 1.5, 2003/11/07 20:07:58 version 1.14, 2007/10/26 14:38:34
Line 1 Line 1
 #include        "compiler.h"  #include        "compiler.h"
 #include        "resource.h"  #include        "resource.h"
 #include        "np2.h"  #include        "np2.h"
   #include        "oemtext.h"
 #include        "np2class.h"  #include        "np2class.h"
 #include        "np2info.h"  
 #include        "dialog.h"  #include        "dialog.h"
 #include        "dialogs.h"  #include        "dialogs.h"
 #include        "np2ver.h"  #include        "np2ver.h"
 #include        "pccore.h"  #include        "pccore.h"
   #include        "np2info.h"
   
   
 static  SIZE    aboutsize;  static  SIZE    s_szAbout;
   
 static const char str_np2title[] = "Neko Project II  ";  
 static const char np2infostr[] =                                                                        \  
                                                 "CPU: !CPU !CLOCK\r\n"                                          \  
                                                 "MEM: !MEM1\r\n"                                                        \  
                                                 "GDC: !GDC\r\n"                                                         \  
                                                 "TEXT: !TEXT\r\n"                                                       \  
                                                 "GRPH: !GRPH\r\n"                                                       \  
                                                 "SOUND: !EXSND\r\n"                                                     \  
                                                 "\r\n"                                                                          \  
                                                 "BIOS: !BIOS\r\n"                                                       \  
                                                 "RHYTHM: !RHYTHM\r\n"                                           \  
                                                 "\r\n"                                                                          \  
                                                 "SCREEN: !DISP";  
   
   static const OEMCHAR str_np2title[] = OEMTEXT(PROJECTNAME) \
                                                                                   OEMTEXT(PROJECTSUBNAME) \
                                                                                   OEMTEXT("  ");
   static const OEMCHAR np2infostr[] = OEMTEXT("CPU: %CPU% %CLOCK%\nMEM: %MEM1%\nGDC: %GDC%\n     %GDC2%\nTEXT: %TEXT%\nGRPH: %GRPH%\nSOUND: %EXSND%\n\nBIOS: %BIOS%\nRHYTHM: %RHYTHM%\n\nSCREEN: %DISP%");
   
 static void about_init(HWND hWnd) {  
   
         char    work[128];  static void onInitDialog(HWND hWnd)
   {
           OEMCHAR szWork[128];
         RECT    rect;          RECT    rect;
           RECT    rectMore;
           RECT    rectInfo;
           int             nHeight;
         POINT   pt;          POINT   pt;
         RECT    parent;  #if defined(OSLANG_UTF8)
           TCHAR   szWork2[128];
   #endif  // defined(OSLANG_UTF8)
   
         milstr_ncpy(work, str_np2title, sizeof(work));          milstr_ncpy(szWork, str_np2title, NELEMENTS(szWork));
         milstr_ncat(work, np2version, sizeof(work));          milstr_ncat(szWork, np2version, NELEMENTS(szWork));
 #if defined(NP2VER_WIN9X)  #if defined(NP2VER_WIN9X)
         milstr_ncat(work, NP2VER_WIN9X, sizeof(work));          milstr_ncat(szWork, NP2VER_WIN9X, NELEMENTS(szWork));
   #endif
   #if defined(OSLANG_UTF8)
           oemtotchar(szWork2, NELEMENTS(szWork2), szWork, -1);
           SetDlgItemText(hWnd, IDC_NP2VER, szWork2);
   #else
           SetDlgItemText(hWnd, IDC_NP2VER, szWork);
 #endif  #endif
         SetDlgItemText(hWnd, IDC_NP2VER, work);  
         GetWindowRect(hWnd, &rect);          GetWindowRect(hWnd, &rect);
         aboutsize.cx = rect.right - rect.left;          s_szAbout.cx = rect.right - rect.left;
         aboutsize.cy = rect.bottom - rect.top;          s_szAbout.cy = rect.bottom - rect.top;
         pt.x = 0;  
         pt.y = 0;          if ((dlgs_getitemrect(hWnd, IDC_MORE, &rectMore)) &&
         ClientToScreen(GetParent(hWnd), &pt);                  (dlgs_getitemrect(hWnd, IDC_NP2INFO, &rectInfo)))
         GetClientRect(GetParent(hWnd), &parent);          {
         np2class_move(hWnd,                  nHeight = s_szAbout.cy - (rectInfo.bottom - rectMore.bottom);
                                         pt.x + ((parent.right - parent.left - aboutsize.cx) / 2),                  GetClientRect(GetParent(hWnd), &rect);
                                         pt.y + ((parent.bottom - parent.top - aboutsize.cy) / 2),                  pt.x = (rect.right - rect.left - s_szAbout.cx) / 2;
                                         aboutsize.cx, 84);                  pt.y = (rect.bottom - rect.top - s_szAbout.cy) / 2;
                   ClientToScreen(GetParent(hWnd), &pt);
                   np2class_move(hWnd, pt.x, pt.y, s_szAbout.cx, nHeight);
           }
   
         SetFocus(GetDlgItem(hWnd, IDOK));          SetFocus(GetDlgItem(hWnd, IDOK));
 }  }
   
 static void about_more(HWND hWnd) {  static void onMore(HWND hWnd)
   {
         char    infostr[1024];          OEMCHAR szInfo[1024];
         RECT    rect;          RECT    rect;
   #if defined(OSLANG_UTF8)
         np2info(infostr, np2infostr, sizeof(infostr));          TCHAR   szInfo2[1024];
         SetDlgItemText(hWnd, IDC_NP2INFO, infostr);  #endif  // defined(OSLANG_UTF8)
   
           np2info(szInfo, np2infostr, NELEMENTS(szInfo), NULL);
   #if defined(OSLANG_UTF8)
           oemtotchar(szInfo2, NELEMENTS(szInfo2), szInfo, -1);
           SetDlgItemText(hWnd, IDC_NP2INFO, szInfo2);
   #else
           SetDlgItemText(hWnd, IDC_NP2INFO, szInfo);
   #endif
         EnableWindow(GetDlgItem(hWnd, IDC_MORE), FALSE);          EnableWindow(GetDlgItem(hWnd, IDC_MORE), FALSE);
         GetWindowRect(hWnd, &rect);          GetWindowRect(hWnd, &rect);
         np2class_move(hWnd, rect.left, rect.top, aboutsize.cx, aboutsize.cy);          np2class_move(hWnd, rect.left, rect.top, s_szAbout.cx, s_szAbout.cy);
         SetFocus(GetDlgItem(hWnd, IDOK));          SetFocus(GetDlgItem(hWnd, IDOK));
 }  }
   
 LRESULT CALLBACK AboutDialogProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) {  LRESULT CALLBACK AboutDialogProc(HWND hWnd, UINT uMsg,
                                                                                                   WPARAM wParam, LPARAM lParam)
         switch (msg) {  {
           switch(uMsg)
           {
                 case WM_INITDIALOG:                  case WM_INITDIALOG:
                         about_init(hWnd);                          onInitDialog(hWnd);
                         return(FALSE);                          break;
   
                 case WM_COMMAND:                  case WM_COMMAND:
                         switch (LOWORD(wp)) {                          switch (LOWORD(wParam))
                           {
                                 case IDOK:                                  case IDOK:
                                         EndDialog(hWnd, IDOK);                                          EndDialog(hWnd, IDOK);
                                         break;                                          return TRUE;
   
                                 case IDC_MORE:                                  case IDC_MORE:
                                         about_more(hWnd);                                          onMore(hWnd);
                                         break;                                          break;
   
                                 default:  
                                         return(FALSE);  
                         }                          }
                         break;                          break;
   
                 case WM_CLOSE:                  case WM_CLOSE:
                         PostMessage(hWnd, WM_COMMAND, IDOK, 0);                          PostMessage(hWnd, WM_COMMAND, IDOK, 0);
                         break;                          break;
   
                 default:  
                         return(FALSE);  
         }          }
         return(TRUE);          return FALSE;
 }  }
   

Removed from v.1.5  
changed lines
  Added in v.1.14


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