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

version 1.9, 2004/04/09 10:52:21 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        "dialog.h"  #include        "dialog.h"
 #include        "dialogs.h"  #include        "dialogs.h"
Line 9 Line 10
 #include        "np2info.h"  #include        "np2info.h"
   
   
 static  SIZE    aboutsize;  static  SIZE    s_szAbout;
   
 static const char str_np2title[] = "Neko Project II  ";  static const OEMCHAR str_np2title[] = OEMTEXT(PROJECTNAME) \
 static const char np2infostr[] =                                                                \                                                                                  OEMTEXT(PROJECTSUBNAME) \
                                                 "CPU: %CPU% %CLOCK%\n"                                  \                                                                                  OEMTEXT("  ");
                                                 "MEM: %MEM1%\n"                                                 \  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%");
                                                 "GDC: %GDC%\n"                                                  \  
                                                 "     %GDC2%\n"                                                 \  
                                                 "TEXT: %TEXT%\n"                                                \  static void onInitDialog(HWND hWnd)
                                                 "GRPH: %GRPH%\n"                                                \  {
                                                 "SOUND: %EXSND%\n"                                              \          OEMCHAR szWork[128];
                                                 "\n"                                                                    \          RECT    rect;
                                                 "BIOS: %BIOS%\n"                                                \          RECT    rectMore;
                                                 "RHYTHM: %RHYTHM%\n"                                    \          RECT    rectInfo;
                                                 "\n"                                                                    \          int             nHeight;
                                                 "SCREEN: %DISP%";  
   
   
 static void about_init(HWND hWnd) {  
   
         char    work[128];  
         RECT    rectwindow;  
         RECT    rectclient;  
         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, &rectwindow);          GetWindowRect(hWnd, &rect);
         GetClientRect(hWnd, &rectclient);          s_szAbout.cx = rect.right - rect.left;
         aboutsize.cx = rectwindow.right - rectwindow.left;          s_szAbout.cy = rect.bottom - rect.top;
         aboutsize.cy = rectwindow.bottom - rectwindow.top;  
         pt.x = 0;          if ((dlgs_getitemrect(hWnd, IDC_MORE, &rectMore)) &&
         pt.y = 0;                  (dlgs_getitemrect(hWnd, IDC_NP2INFO, &rectInfo)))
         ClientToScreen(GetParent(hWnd), &pt);          {
         GetClientRect(GetParent(hWnd), &parent);                  nHeight = s_szAbout.cy - (rectInfo.bottom - rectMore.bottom);
         np2class_move(hWnd,                  GetClientRect(GetParent(hWnd), &rect);
                                         pt.x + ((parent.right - parent.left - aboutsize.cx) / 2),                  pt.x = (rect.right - rect.left - s_szAbout.cx) / 2;
                                         pt.y + ((parent.bottom - parent.top - aboutsize.cy) / 2),                  pt.y = (rect.bottom - rect.top - s_szAbout.cy) / 2;
                                         aboutsize.cx,                  ClientToScreen(GetParent(hWnd), &pt);
                                         aboutsize.cy + 60 - (rectclient.bottom - rectclient.top));                  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), NULL);          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.9  
changed lines
  Added in v.1.14


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