From aeaf91e298839d6fcb2b60df81c4ef985ae267e4 Mon Sep 17 00:00:00 2001 From: lededev <30518126+lededev@users.noreply.github.com> Date: Tue, 19 Nov 2024 11:59:29 +0800 Subject: [PATCH] Delay icon loading and create grayscale version --- Src/Merge2.rc | 1 - Src/TitleBarHelper.cpp | 63 +++++++++++++++++++++++++++++++++++++++-- Src/TitleBarHelper.h | 2 ++ Src/res/Merge_gray.ico | Bin 68117 -> 0 bytes Src/resource.h | 1 - 5 files changed, 63 insertions(+), 4 deletions(-) delete mode 100644 Src/res/Merge_gray.ico diff --git a/Src/Merge2.rc b/Src/Merge2.rc index 9842a22a0ab..4341f171801 100644 --- a/Src/Merge2.rc +++ b/Src/Merge2.rc @@ -12,7 +12,6 @@ // remains consistent on all systems. IDR_MAINFRAME ICON "res\\Merge.ico" -IDR_MAINFRAME_ICON_GRAY ICON "res\\Merge_gray.ico" IDR_MERGEPROJECT ICON "res\\MergeProject.ico" IDR_MERGEDOCTYPE ICON "res\\MergeDoc.ico" IDR_DIRDOCTYPE ICON "res\\MergeDir.ico" diff --git a/Src/TitleBarHelper.cpp b/Src/TitleBarHelper.cpp index cb67986a87e..495ccebc986 100644 --- a/Src/TitleBarHelper.cpp +++ b/Src/TitleBarHelper.cpp @@ -23,14 +23,14 @@ CTitleBarHelper::CTitleBarHelper() , m_bMouseTracking(false) , m_nTrackingButton(-1) , m_nHitTest(HTNOWHERE) + , m_icon(nullptr) + , m_icon_gray(nullptr) { } void CTitleBarHelper::Init(CWnd *pWnd) { m_pWnd = pWnd; - m_icon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); - m_icon_gray = AfxGetApp()->LoadIcon(IDR_MAINFRAME_ICON_GRAY); } int CTitleBarHelper::GetTopMargin() const @@ -40,6 +40,7 @@ int CTitleBarHelper::GetTopMargin() const void CTitleBarHelper::DrawIcon(CWnd* pWnd, CDC& dc, bool active) { + DelayLoadIcon(pWnd); HICON hIcon = active ? m_icon : m_icon_gray; if (hIcon == nullptr) return; @@ -334,3 +335,61 @@ void CTitleBarHelper::ReloadAccentColor() { CAccentColor::Get().Reload(); } + +HICON CTitleBarHelper::CreateGrayIcon(HICON hIcon) +{ + ICONINFO iconInfo; + GetIconInfo(hIcon, &iconInfo); + + BITMAP bitmap; + GetObject(iconInfo.hbmColor, sizeof(BITMAP), &bitmap); + const int width = bitmap.bmWidth; + const int height = bitmap.bmHeight; + const int pixsize = width * height; + + BITMAPINFO bmi; + ZeroMemory(&bmi, sizeof(BITMAPINFO)); + bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER); + bmi.bmiHeader.biWidth = width; + bmi.bmiHeader.biHeight = height; + bmi.bmiHeader.biPlanes = 1; + bmi.bmiHeader.biBitCount = 32; + bmi.bmiHeader.biCompression = BI_RGB; + + RGBQUAD* pixels = new RGBQUAD[pixsize]; + HDC hdc = GetDC(NULL); + GetDIBits(hdc, iconInfo.hbmColor, 0, height, pixels, &bmi, DIB_RGB_COLORS); + + for (int i = 0; i < pixsize; i++) + { + BYTE gray = (BYTE)(0.3 * pixels[i].rgbRed + 0.59 * pixels[i].rgbGreen + 0.11 * pixels[i].rgbBlue); + pixels[i].rgbRed = gray; + pixels[i].rgbGreen = gray; + pixels[i].rgbBlue = gray; + } + + HBITMAP hbmGray = CreateCompatibleBitmap(hdc, width, height); + SetDIBits(hdc, hbmGray, 0, height, pixels, &bmi, DIB_RGB_COLORS); + + ICONINFO grayIconInfo = iconInfo; + grayIconInfo.hbmColor = hbmGray; + HICON hGrayIcon = CreateIconIndirect(&grayIconInfo); + + DeleteObject(iconInfo.hbmColor); + DeleteObject(iconInfo.hbmMask); + DeleteObject(hbmGray); + ReleaseDC(NULL, hdc); + delete[] pixels; + + return hGrayIcon; +} + +void CTitleBarHelper::DelayLoadIcon(CWnd* pWnd) +{ + if (m_icon && m_icon_gray) + return; + m_icon = (HICON)pWnd->SendMessage(WM_GETICON, ICON_SMALL2, 0); + if (m_icon == nullptr) + m_icon = (HICON)GetClassLongPtr(pWnd->m_hWnd, GCLP_HICONSM); + m_icon_gray = (m_icon == nullptr) ? nullptr : CreateGrayIcon(m_icon); +} diff --git a/Src/TitleBarHelper.h b/Src/TitleBarHelper.h index 845a4556418..f29ee4c94fb 100644 --- a/Src/TitleBarHelper.h +++ b/Src/TitleBarHelper.h @@ -41,6 +41,8 @@ class CTitleBarHelper { void ShowSysMenu(CPoint point); COLORREF GetIntermediateColor(COLORREF a, COLORREF b, float ratio); + HICON CreateGrayIcon(HICON hIcon); + void DelayLoadIcon(CWnd* pWnd); CWnd* m_pWnd; CSize m_size; diff --git a/Src/res/Merge_gray.ico b/Src/res/Merge_gray.ico deleted file mode 100644 index 5597ad0ebba0820faf820ec4e570586986f28978..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68117 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 X20xPi(a}Wy0O0w4(#rM|f9wAMCN0cR diff --git a/Src/resource.h b/Src/resource.h index b0f9faeb289..5d52556a341 100644 --- a/Src/resource.h +++ b/Src/resource.h @@ -30,7 +30,6 @@ #define IDR_POPUP_PLUGIN_COMMAND_LINE_MENU 126 #define IDR_POPUP_PLUGIN_ADD_MENU 127 #define IDR_POPUP_DIRVIEW_COMPAREMETHOD 128 -#define IDR_MAINFRAME_ICON_GRAY 129 #define IDD_ABOUTBOX 200 #define IDD_OPEN 202 #define IDD_SAVECLOSING 203