On Mon Sep 16 16:40:14 2024 +0000, Sergei Chernyadyev wrote:
Hmmm is it better to do it like this?
notify_data -> notify_data_icon -> image bitmap data -> second notify_data_icon -> another image bitmap data
where `notify_data_icon`:
struct notify_data_icon { /* data for the icon bitmap */ UINT width; UINT height; UINT planes; UINT bpp; };
and `notify_data` will look like that (without image related fields):
struct notify_data /* platform-independent format for NOTIFYICONDATA */ { LONG hWnd; UINT uID; UINT uFlags; UINT uCallbackMessage; WCHAR szTip[128]; DWORD dwState; DWORD dwStateMask; WCHAR szInfo[256]; union { UINT uTimeout; UINT uVersion; } u; WCHAR szInfoTitle[64]; DWORD dwInfoFlags; GUID guidItem;
I was thinking more like:
``` struct notify_data_icon { UINT width; UINT height; UINT planes; UINT bpp; };
struct notify_data /* platform-independent format for NOTIFYICONDATA */ { LONG hWnd; UINT uID; UINT uFlags; UINT uCallbackMessage; struct notify_data_icon icon; /* icon bitmap info */ WCHAR szTip[128]; DWORD dwState; DWORD dwStateMask; WCHAR szInfo[256]; union { UINT uTimeout; UINT uVersion; } u; WCHAR szInfoTitle[64]; DWORD dwInfoFlags; GUID guidItem; struct notify_data_icon balloon_icon; /* balloon icon bitmap info */ BYTE icon_data[]; /* data for the icon bitmap followed by balloon icon bitmap */ }; ```