From b46e53e27b111c25b1db8f6c8b0122d05b5ea1a0 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Tue, 7 Feb 2006 04:38:51 +0000 Subject: [PATCH] make dialogs localizable adjust control to fit longer text --- stepmania/src/StepMania-net2003.vcproj | 9 ++ .../src/arch/Dialog/DialogDriver_Win32.cpp | 14 +- stepmania/src/archutils/Win32/Crash.cpp | 6 +- stepmania/src/archutils/Win32/DialogUtil.cpp | 2 +- .../src/archutils/Win32/WindowsResources.h | 7 +- .../src/archutils/Win32/WindowsResources.rc | 136 ++++++++---------- 6 files changed, 87 insertions(+), 87 deletions(-) diff --git a/stepmania/src/StepMania-net2003.vcproj b/stepmania/src/StepMania-net2003.vcproj index bd24ea19d4..62de881365 100644 --- a/stepmania/src/StepMania-net2003.vcproj +++ b/stepmania/src/StepMania-net2003.vcproj @@ -1602,6 +1602,12 @@ cl /Zl /nologo /c verstub.cpp /Fo"$(IntDir)"\ + + + + @@ -3021,6 +3027,9 @@ cl /Zl /nologo /c verstub.cpp /Fo"$(IntDir)"\ + + diff --git a/stepmania/src/arch/Dialog/DialogDriver_Win32.cpp b/stepmania/src/arch/Dialog/DialogDriver_Win32.cpp index bfb7e3577a..5a7b561837 100644 --- a/stepmania/src/arch/Dialog/DialogDriver_Win32.cpp +++ b/stepmania/src/arch/Dialog/DialogDriver_Win32.cpp @@ -14,6 +14,7 @@ #include "archutils/win32/WindowsResources.h" #include "archutils/win32/GraphicsWindow.h" #endif +#include "archutils/win32/DialogUtil.h" static bool g_bHush; static RString g_sMessage; @@ -29,22 +30,24 @@ static BOOL CALLBACK OKWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lPara // Disable the parent window, like a modal MessageBox does. EnableWindow( GetParent(hWnd), FALSE ); + DialogUtil::LocalizeDialogAndContents( hWnd ); + // Hide or display "Don't show this message." g_bHush = false; HWND hHushButton = GetDlgItem( hWnd, IDC_HUSH ); - int iStyle = GetWindowLong( hHushButton, GWL_STYLE ); + int iStyle = GetWindowLong( hHushButton, GWL_STYLE ); if( g_bAllowHush ) iStyle |= WS_VISIBLE; else iStyle &= ~WS_VISIBLE; - SetWindowLong( hHushButton, GWL_STYLE, iStyle ); + SetWindowLong( hHushButton, GWL_STYLE, iStyle ); // Set static text. RString sMessage = g_sMessage; sMessage.Replace( "\n", "\r\n" ); SetWindowText( GetDlgItem(hWnd, IDC_MESSAGE), sMessage ); - + // Focus is on any of the controls in the dialog by default. // I'm not sure why. Set focus to the button manually. -Chris SetFocus( GetDlgItem(hWnd, IDOK) ); @@ -118,6 +121,9 @@ static BOOL CALLBACK ErrorWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lP RString sMessage = g_sErrorString; sMessage.Replace( "\n", "\r\n" ); SetWindowText( GetDlgItem(hWnd, IDC_EDIT_ERROR), sMessage ); + + DialogUtil::LocalizeDialogAndContents( hWnd ); + DialogUtil::SetHeaderFont( hWnd, IDC_STATIC_HEADER_TEXT ); } break; case WM_COMMAND: @@ -171,6 +177,8 @@ void DialogDriver_Win32::Error( RString sError, RString sID ) // throw up a pretty error dialog AppInstance handle; DialogBox( handle.Get(), MAKEINTRESOURCE(IDD_ERROR_DIALOG), NULL, ErrorWndProc ); +#else + ::MessageBox( ::GetHwnd(), ConvertUTF8ToACP(sError).c_str(), ConvertUTF8ToACP(::GetWindowTitle()).c_str(), MB_OK ); #endif } diff --git a/stepmania/src/archutils/Win32/Crash.cpp b/stepmania/src/archutils/Win32/Crash.cpp index 952612c025..f7861522ba 100644 --- a/stepmania/src/archutils/Win32/Crash.cpp +++ b/stepmania/src/archutils/Win32/Crash.cpp @@ -12,7 +12,7 @@ #include "archutils/Win32/WindowsResources.h" #include "crash.h" #include "ProductInfo.h" - +#include "archutils/win32/DialogUtil.h" #include "RageLog.h" /* for RageLog::GetAdditionalLog and Flush */ #include "RageThreads.h" /* for GetCheckpointLogs */ #include "PrefsManager.h" /* for g_bAutoRestart */ @@ -877,7 +877,11 @@ BOOL APIENTRY CrashDlgProc(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam) HWND hwndReason = GetDlgItem(hDlg, IDC_STATIC_BOMBREASON); if (hFontMono) + { SendMessage(hwndList, WM_SETFONT, (WPARAM)hFontMono, MAKELPARAM(TRUE, 0)); + SendMessage(hwndReason, WM_SETFONT, (WPARAM)hFontMono, MAKELPARAM(TRUE, 0)); + } + DialogUtil::SetHeaderFont( hDlg, IDC_STATIC_HEADER_TEXT ); ReportReason( hwndReason, NULL, &g_CrashInfo ); s_bHaveCallstack = ReportCallStack( hwndList, NULL, g_CrashInfo.m_BacktracePointers ); diff --git a/stepmania/src/archutils/Win32/DialogUtil.cpp b/stepmania/src/archutils/Win32/DialogUtil.cpp index c32b283522..6dd09e53a2 100644 --- a/stepmania/src/archutils/Win32/DialogUtil.cpp +++ b/stepmania/src/archutils/Win32/DialogUtil.cpp @@ -62,7 +62,7 @@ void DialogUtil::LocalizeDialogAndContents( HWND hdlg ) { ::GetWindowText( hdlg, szTemp, ARRAYSIZE(szTemp) ); RString s = szTemp; - sGroup = "Tools-"+s; + sGroup = "Dialog-"+s; s = THEME->GetString( sGroup, s ); ::SetWindowText( hdlg, ConvertUTF8ToACP(s).c_str() ); } diff --git a/stepmania/src/archutils/Win32/WindowsResources.h b/stepmania/src/archutils/Win32/WindowsResources.h index 4eb874d2eb..1fb5cf28c0 100644 --- a/stepmania/src/archutils/Win32/WindowsResources.h +++ b/stepmania/src/archutils/Win32/WindowsResources.h @@ -1,5 +1,5 @@ //{{NO_DEPENDENCIES}} -// Microsoft Developer Studio generated include file. +// Microsoft Visual C++ generated include file. // Used by WindowsResources.rc // #define IDC_CRASH_SAVE 16 @@ -7,7 +7,6 @@ #define IDD_LOADING_DIALOG 116 #define BITMAP_LOADING 117 #define IDD_OK 118 -#define IDD_DRIVER 119 #define IDD_DISASM_CRASH 120 #define BITMAP_CRASH 121 #define BITMAP_ERROR 129 @@ -35,9 +34,11 @@ #define IDC_MESSAGE 1017 #define IDC_CHECK2 1019 #define IDC_SPLASH 1020 +#define IDC_STATIC_HEADER_TEXT 1021 #define IDC_ASMBOX 1133 #define IDC_REGDUMP 1283 #define IDC_STATIC_BOMBREASON 1284 +#define IDC_STATIC_BOMBREASON2 1285 #define IDC_CALL_STACK 1310 #define IDM_EXIT 40003 @@ -47,7 +48,7 @@ #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 132 #define _APS_NEXT_COMMAND_VALUE 40009 -#define _APS_NEXT_CONTROL_VALUE 1021 +#define _APS_NEXT_CONTROL_VALUE 1022 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif diff --git a/stepmania/src/archutils/Win32/WindowsResources.rc b/stepmania/src/archutils/Win32/WindowsResources.rc index b979d43a2e..0c25776dd0 100644 --- a/stepmania/src/archutils/Win32/WindowsResources.rc +++ b/stepmania/src/archutils/Win32/WindowsResources.rc @@ -1,4 +1,4 @@ -//Microsoft Developer Studio generated resource script. +// Microsoft Visual C++ generated resource script. // #include "WindowsResources.h" @@ -26,24 +26,25 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US // Dialog // -IDD_ERROR_DIALOG DIALOG DISCARDABLE 0, 0, 332, 234 -STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION -CAPTION "Error" -FONT 8, "MS Sans Serif" +IDD_ERROR_DIALOG DIALOGEX 0, 0, 332, 234 +STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION +CAPTION "Fatal Error" +FONT 8, "MS Sans Serif", 0, 0, 0x0 BEGIN DEFPUSHBUTTON "Close",IDOK,265,215,60,15 - EDITTEXT IDC_EDIT_ERROR,5,80,320,130,ES_MULTILINE | ES_READONLY | + EDITTEXT IDC_EDIT_ERROR,5,59,320,151,ES_MULTILINE | ES_READONLY | WS_VSCROLL | NOT WS_TABSTOP PUSHBUTTON "View Log",IDC_BUTTON_VIEW_LOG,8,215,74,15 - PUSHBUTTON "Report the Error",IDC_BUTTON_REPORT,90,215,76,15 + PUSHBUTTON "Report Error",IDC_BUTTON_REPORT,90,215,76,15 PUSHBUTTON "Restart Game",IDC_BUTTON_RESTART,175,215,80,15 CONTROL 131,IDC_STATIC,"Static",SS_BITMAP,0,0,332,38 - LTEXT "Sorry! A fatal error has occurred.\r\n\r\nSpecific details about the error may be shown in the box below:", - IDC_STATIC,7,46,298,28 + LTEXT "Specific details about the error are shown in the box below:", + IDC_STATIC,7,45,319,11 + LTEXT "Fatal Error",IDC_STATIC_HEADER_TEXT,5,5,249,23 END -IDD_LOADING_DIALOG DIALOG DISCARDABLE 0, 0, 312, 82 -STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE +IDD_LOADING_DIALOG DIALOG 0, 0, 312, 82 +STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE FONT 8, "MS Sans Serif" BEGIN CTEXT "line1",IDC_STATIC_MESSAGE1,0,41,310,10,SS_NOPREFIX | @@ -55,53 +56,41 @@ BEGIN CONTROL "",IDC_SPLASH,"Static",SS_BITMAP,0,0,310,25 END -IDD_DISASM_CRASH DIALOG DISCARDABLE 0, 0, 399, 151 -STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION -CAPTION "Error" -FONT 8, "MS Sans Serif" +IDD_DISASM_CRASH DIALOGEX 0, 0, 332, 210 +STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION +CAPTION "Program Crash" +FONT 8, "MS Sans Serif", 0, 0, 0x0 BEGIN - CONTROL 131,IDC_STATIC,"Static",SS_BITMAP,1,0,332,38 - CONTROL 131,IDC_STATIC,"Static",SS_BITMAP,66,0,332,38 - PUSHBUTTON "&View crash dump",IDC_CRASH_SAVE,1,135,70,15 - PUSHBUTTON "View &Log",IDC_VIEW_LOG,75,135,70,15 - PUSHBUTTON "Report the &Error",IDC_BUTTON_REPORT,210,135,76,15 - PUSHBUTTON "&Close",IDC_BUTTON_CLOSE,348,135,50,15 - PUSHBUTTON "&Restart",IDC_BUTTON_RESTART,348,118,50,15 - LISTBOX IDC_CALL_STACK,7,76,391,38,LBS_NOINTEGRALHEIGHT | + CONTROL 131,IDC_STATIC,"Static",SS_BITMAP,0,0,332,38 + PUSHBUTTON "&View Crash Info",IDC_CRASH_SAVE,29,169,94,15 + PUSHBUTTON "View &Log",IDC_VIEW_LOG,128,169,63,15 + PUSHBUTTON "Report the &Error",IDC_BUTTON_REPORT,196,169,89,15 + PUSHBUTTON "&Close",IDC_BUTTON_CLOSE,278,191,50,15 + PUSHBUTTON "&Restart Game",IDC_BUTTON_RESTART,193,191,78,15 + LISTBOX IDC_CALL_STACK,6,96,316,65,LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP - LTEXT "crash reason: programmer needs good whack on head", - IDC_STATIC_BOMBREASON,8,120,219,8 - LTEXT "A fatal error has occurred. Diagnostic information has been saved to a file called ""crashinfo.txt"" in the game program directory. Hit ""View crash dump"" to view it. Please include this file in all bug reports.", - IDC_STATIC,8,41,382,19 - LTEXT "Estimated call stack",IDC_STATIC,7,64,64,8 + LTEXT "A crash has occurred. Diagnostic information has been saved to a file called ""crashinfo.txt"" in the game program directory.", + IDC_STATIC,8,41,312,19 + LTEXT "Estimated call stack",IDC_STATIC,6,85,155,10 + LTEXT "Program Crash",IDC_STATIC_HEADER_TEXT,6,5,276,22 + LTEXT "Crash reason:",IDC_STATIC,7,64,219,8 + CTEXT "crash reason here",IDC_STATIC_BOMBREASON,6,72,322,11 END -IDD_OK DIALOG DISCARDABLE 0, 0, 318, 87 -STYLE DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION +IDD_OK DIALOGEX 0, 0, 336, 98 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | + WS_CAPTION CAPTION "Prompt" -FONT 8, "MS Shell Dlg" +FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN - DEFPUSHBUTTON "OK",IDOK,131,66,50,14 - CONTROL "&Don't display this message",IDC_HUSH,"Button", - BS_AUTOCHECKBOX | WS_TABSTOP,211,67,100,10 - EDITTEXT IDC_MESSAGE,7,7,304,55,ES_CENTER | ES_MULTILINE | + DEFPUSHBUTTON "OK",IDOK,143,77,50,14 + CONTROL "&Don't display this message again",IDC_HUSH,"Button", + BS_AUTOCHECKBOX | WS_TABSTOP,7,63,181,10 + EDITTEXT IDC_MESSAGE,7,7,322,55,ES_CENTER | ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | WS_VSCROLL END -IDD_DRIVER DIALOGEX 0, 0, 286, 125 -STYLE DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | - WS_SYSMENU -CAPTION "Outdated Drivers" -FONT 8, "MS Shell Dlg", 400, 0, 0x1 -BEGIN - DEFPUSHBUTTON "Download new drivers",IDOK,37,104,82,14 - PUSHBUTTON "Play anyway",IDCANCEL,125,104,50,14 - CTEXT "Static",IDC_MESSAGE,7,34,272,29 - CONTROL "&Don't display this message",IDC_HUSH,"Button", - BS_AUTOCHECKBOX | WS_TABSTOP,183,108,96,10 -END - ///////////////////////////////////////////////////////////////////////////// // @@ -109,7 +98,7 @@ END // #ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO MOVEABLE PURE +GUIDELINES DESIGNINFO BEGIN IDD_LOADING_DIALOG, DIALOG BEGIN @@ -121,26 +110,18 @@ BEGIN IDD_DISASM_CRASH, DIALOG BEGIN - LEFTMARGIN, 1 - RIGHTMARGIN, 398 - VERTGUIDE, 286 - BOTTOMMARGIN, 150 + RIGHTMARGIN, 328 + VERTGUIDE, 6 + BOTTOMMARGIN, 206 + HORZGUIDE, 169 END IDD_OK, DIALOG BEGIN LEFTMARGIN, 7 - RIGHTMARGIN, 311 + RIGHTMARGIN, 329 TOPMARGIN, 7 - BOTTOMMARGIN, 80 - END - - IDD_DRIVER, DIALOG - BEGIN - LEFTMARGIN, 7 - RIGHTMARGIN, 279 - TOPMARGIN, 7 - BOTTOMMARGIN, 118 + BOTTOMMARGIN, 91 END END #endif // APSTUDIO_INVOKED @@ -152,18 +133,18 @@ END // TEXTINCLUDE // -1 TEXTINCLUDE MOVEABLE PURE +1 TEXTINCLUDE BEGIN "WindowsResources.h\0" END -2 TEXTINCLUDE MOVEABLE PURE +2 TEXTINCLUDE BEGIN "#include ""afxres.h""\r\n" "\0" END -3 TEXTINCLUDE MOVEABLE PURE +3 TEXTINCLUDE BEGIN "\r\n" "\0" @@ -179,9 +160,8 @@ END // Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. -IDI_ICON ICON DISCARDABLE "StepMania.ICO" +IDI_ICON ICON "StepMania.ICO" -#ifndef _MAC ///////////////////////////////////////////////////////////////////////////// // // Version @@ -204,14 +184,14 @@ BEGIN BEGIN BLOCK "040904b0" BEGIN - VALUE "CompanyName", "http://www.stepmania.com\0" - VALUE "FileDescription", "StepMania\0" - VALUE "FileVersion", "1, 0, 0, 1\0" - VALUE "InternalName", "StepMania\0" - VALUE "LegalCopyright", "Copyright © 2001-2002\0" - VALUE "OriginalFilename", "StepMania.exe\0" - VALUE "ProductName", " StepMania\0" - VALUE "ProductVersion", "1, 0, 0, 1\0" + VALUE "CompanyName", "http://www.stepmania.com" + VALUE "FileDescription", "StepMania" + VALUE "FileVersion", "1, 0, 0, 1" + VALUE "InternalName", "StepMania" + VALUE "LegalCopyright", "Copyright © 2001-2002" + VALUE "OriginalFilename", "StepMania.exe" + VALUE "ProductName", " StepMania" + VALUE "ProductVersion", "1, 0, 0, 1" END END BLOCK "VarFileInfo" @@ -220,15 +200,13 @@ BEGIN END END -#endif // !_MAC - ///////////////////////////////////////////////////////////////////////////// // // Bitmap // -IDB_HEADER BITMAP DISCARDABLE "header.bmp" +IDB_HEADER BITMAP "header.bmp" #endif // English (U.S.) resources /////////////////////////////////////////////////////////////////////////////