https://git.reactos.org/?p=reactos.git;a=commitdiff;h=cc99d3ad5ffe06d351024e...
commit cc99d3ad5ffe06d351024e207d5f0b39ec9ef30d Author: Stanislav Motylkov x86corez@gmail.com AuthorDate: Sat Mar 23 20:53:01 2019 +0300 Commit: Hermès BÉLUSCA - MAÏTO hermes.belusca-maito@reactos.org CommitDate: Sat Mar 23 19:11:28 2019 +0100
[SHELL32] Add line bar to About dialog for consistence
Addendum to f9d2931. CORE-15215 --- dll/win32/shell32/bitmap_res.rc | 1 + dll/win32/shell32/res/bitmaps/line.bmp | Bin 0 -> 6254 bytes dll/win32/shell32/shresdef.h | 1 + dll/win32/shell32/wine/shell32_main.c | 19 ++++++++++++++----- 4 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/dll/win32/shell32/bitmap_res.rc b/dll/win32/shell32/bitmap_res.rc index f267eb74b1..80dfa6f0ed 100644 --- a/dll/win32/shell32/bitmap_res.rc +++ b/dll/win32/shell32/bitmap_res.rc @@ -1,4 +1,5 @@ IDB_REACTOS BITMAP "res/bitmaps/reactos.bmp" +IDB_LINEBAR BITMAP "res/bitmaps/line.bmp"
IDB_SHELL_IEXPLORE_LG BITMAP "res/bitmaps/204.bmp" IDB_SHELL_IEXPLORE_LG_HOT BITMAP "res/bitmaps/205.bmp" diff --git a/dll/win32/shell32/res/bitmaps/line.bmp b/dll/win32/shell32/res/bitmaps/line.bmp new file mode 100644 index 0000000000..08717d3cbe Binary files /dev/null and b/dll/win32/shell32/res/bitmaps/line.bmp differ diff --git a/dll/win32/shell32/shresdef.h b/dll/win32/shell32/shresdef.h index 0a8cb724ac..9f7d6747cf 100644 --- a/dll/win32/shell32/shresdef.h +++ b/dll/win32/shell32/shresdef.h @@ -27,6 +27,7 @@
/* Bitmaps */ #define IDB_REACTOS 131 +#define IDB_LINEBAR 138 #define IDB_SHELL_IEXPLORE_LG 204 #define IDB_SHELL_IEXPLORE_LG_HOT 205 #define IDB_SHELL_IEXPLORE_SM 206 diff --git a/dll/win32/shell32/wine/shell32_main.c b/dll/win32/shell32/wine/shell32_main.c index 5b9ca5eae8..4ae3ea0d50 100644 --- a/dll/win32/shell32/wine/shell32_main.c +++ b/dll/win32/shell32/wine/shell32_main.c @@ -1132,8 +1132,8 @@ INT_PTR CALLBACK AboutAuthorsDlgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM static INT_PTR CALLBACK AboutDlgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) { static DWORD cxLogoBmp; - static DWORD cyLogoBmp; - static HBITMAP hLogoBmp; + static DWORD cyLogoBmp, cyLineBmp; + static HBITMAP hLogoBmp, hLineBmp; static HWND hWndAuthors;
switch(msg) @@ -1153,8 +1153,9 @@ static INT_PTR CALLBACK AboutDlgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM
// Preload the ROS bitmap hLogoBmp = (HBITMAP)LoadImage(shell32_hInstance, MAKEINTRESOURCE(IDB_REACTOS), IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR); + hLineBmp = (HBITMAP)LoadImage(shell32_hInstance, MAKEINTRESOURCE(IDB_LINEBAR), IMAGE_BITMAP, 0, 0, LR_DEFAULTCOLOR);
- if(hLogoBmp) + if(hLogoBmp && hLineBmp) { BITMAP bmpLogo;
@@ -1162,6 +1163,9 @@ static INT_PTR CALLBACK AboutDlgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM
cxLogoBmp = bmpLogo.bmWidth; cyLogoBmp = bmpLogo.bmHeight; + + GetObject( hLineBmp, sizeof(BITMAP), &bmpLogo ); + cyLineBmp = bmpLogo.bmHeight; }
// Set App-specific stuff (icon, app name, szOtherStuff string) @@ -1258,20 +1262,25 @@ static INT_PTR CALLBACK AboutDlgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM
case WM_PAINT: { - if(hLogoBmp) + if(hLogoBmp && hLineBmp) { PAINTSTRUCT ps; HDC hdc; HDC hdcMem; + HGDIOBJ hOldObj;
hdc = BeginPaint(hWnd, &ps); hdcMem = CreateCompatibleDC(hdc);
if(hdcMem) { - SelectObject(hdcMem, hLogoBmp); + hOldObj = SelectObject(hdcMem, hLogoBmp); BitBlt(hdc, 0, 0, cxLogoBmp, cyLogoBmp, hdcMem, 0, 0, SRCCOPY);
+ SelectObject(hdcMem, hLineBmp); + BitBlt(hdc, 0, cyLogoBmp, cxLogoBmp, cyLineBmp, hdcMem, 0, 0, SRCCOPY); + + SelectObject(hdcMem, hOldObj); DeleteDC(hdcMem); }