#ifndef _ICONEDIT_H_
#define _ICONEDIT_H_
#include <windows.h>
#pragma message("Disable pointer truncation")
#pragma warning(disable : 4311)
#pragma warning(disable : 4244)
#pragma warning(disable : 4312)
class IconEdit
{
public:
IconEdit(HWND hParent, LPRECT pCoord, UINT uUniqueID=0);
IconEdit(HWND hParent, UINT nIDEdit);
~IconEdit();
public:
HWND getSafeHwnd() { return m_hWndEdit; }
VOID setIcon(UINT, int format=32);
VOID setIcon(HICON);
private:
VOID prepareWnd();
VOID subClassEdit();
VOID createEmbededStatic();
LRESULT __stdcall EditProc(HWND, UINT, WPARAM, LPARAM);
static LRESULT __stdcall Global_EditProc(HWND, UINT, WPARAM, LPARAM);
private:
HWND m_hWndParent;
HWND m_hWndEdit;
HWND m_hWndStatic;
RECT m_rcCoord;
HICON m_hIcon;
WNDPROC m_pOldProcEdit;
bool m_bEditDyn;
};
#endif