diff --git a/src/rufus.rc b/src/rufus.rc index e9482491..24fd875f 100644 --- a/src/rufus.rc +++ b/src/rufus.rc @@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDD_DIALOG DIALOGEX 12, 12, 206, 329 STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW -CAPTION "Rufus v1.4.2.369" +CAPTION "Rufus v1.4.2.370" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "Start",IDC_START,94,291,50,14 @@ -124,7 +124,7 @@ BEGIN ICON 32516,IDC_NOTIFICATION_ICON,6,6,20,20 LTEXT "",IDC_NOTIFICATION_TEXT,35,10,219,20 DEFPUSHBUTTON "No",IDNO,206,44,50,14 - PUSHBUTTON "More information",IDC_MORE_INFO,8,44,63,14,NOT WS_VISIBLE + PUSHBUTTON "More information",IDC_MORE_INFO,8,44,76,14,NOT WS_VISIBLE PUSHBUTTON "Yes",IDYES,154,44,50,14,NOT WS_VISIBLE END @@ -289,8 +289,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,4,2,369 - PRODUCTVERSION 1,4,2,369 + FILEVERSION 1,4,2,370 + PRODUCTVERSION 1,4,2,370 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -307,13 +307,13 @@ BEGIN BEGIN VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)" VALUE "FileDescription", "Rufus" - VALUE "FileVersion", "1.4.2.369" + VALUE "FileVersion", "1.4.2.370" VALUE "InternalName", "Rufus" VALUE "LegalCopyright", "© 2011-2014 Pete Batard (GPL v3)" VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html" VALUE "OriginalFilename", "rufus.exe" VALUE "ProductName", "Rufus" - VALUE "ProductVersion", "1.4.2.369" + VALUE "ProductVersion", "1.4.2.370" END END BLOCK "VarFileInfo" diff --git a/src/stdlg.c b/src/stdlg.c index e3597c56..5eda053a 100644 --- a/src/stdlg.c +++ b/src/stdlg.c @@ -1,7 +1,7 @@ /* * Rufus: The Reliable USB Formatting Utility * Standard Dialog Routines (Browse for folder, About, etc) - * Copyright © 2011-2013 Pete Batard + * Copyright © 2011-2014 Pete Batard * * Based on zadig_stdlg.c, part of libwdi: http://libwdi.akeo.ie * @@ -581,9 +581,32 @@ INT_PTR CALLBACK NotificationCallback(HWND hDlg, UINT message, WPARAM wParam, LP static LRESULT disabled[9] = { HTLEFT, HTRIGHT, HTTOP, HTBOTTOM, HTSIZE, HTTOPLEFT, HTTOPRIGHT, HTBOTTOMLEFT, HTBOTTOMRIGHT }; static HBRUSH white_brush, separator_brush; + // To use the system message font + NONCLIENTMETRICS ncm; + HFONT hDlgFont; switch (message) { case WM_INITDIALOG: + // Get the system message box font. See http://stackoverflow.com/a/6057761 + ncm.cbSize = sizeof(ncm); + // If we're compiling with the Vista SDK or later, the NONCLIENTMETRICS struct + // will be the wrong size for previous versions, so we need to adjust it. + #if defined(_MSC_VER) && (_MSC_VER >= 1500) && (WINVER >= 0x0600) + if (nWindowsVersion >= WINDOWS_VISTA) { + // In versions of Windows prior to Vista, the iPaddedBorderWidth member + // is not present, so we need to subtract its size from cbSize. + ncm.cbSize -= sizeof(ncm.iPaddedBorderWidth); + } + #endif + SystemParametersInfo(SPI_GETNONCLIENTMETRICS, ncm.cbSize, &ncm, 0); + hDlgFont = CreateFontIndirect(&(ncm.lfMessageFont)); + // Set the dialog to use the system message box font + SendMessage(hDlg, WM_SETFONT, (WPARAM)hDlgFont, MAKELPARAM(TRUE, 0)); + SendMessage(GetDlgItem(hDlg, IDC_NOTIFICATION_TEXT), WM_SETFONT, (WPARAM)hDlgFont, MAKELPARAM(TRUE, 0)); + SendMessage(GetDlgItem(hDlg, IDC_MORE_INFO), WM_SETFONT, (WPARAM)hDlgFont, MAKELPARAM(TRUE, 0)); + SendMessage(GetDlgItem(hDlg, IDYES), WM_SETFONT, (WPARAM)hDlgFont, MAKELPARAM(TRUE, 0)); + SendMessage(GetDlgItem(hDlg, IDNO), WM_SETFONT, (WPARAM)hDlgFont, MAKELPARAM(TRUE, 0)); + apply_localization(IDD_NOTIFICATION, hDlg); white_brush = CreateSolidBrush(WHITE); separator_brush = CreateSolidBrush(SEPARATOR_GREY);