Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_PLUGINCOMMON_WIN32_ICONTOOLS_H__
00020 #define __CS_PLUGINCOMMON_WIN32_ICONTOOLS_H__
00021
00026 #include "csextern_win.h"
00027 #include "csutil/ref.h"
00028
00029 struct iImage;
00030 struct _ICONINFO;
00031
00032 namespace CS
00033 {
00034 namespace Platform
00035 {
00036 namespace Win32
00037 {
00041 class IconTools
00042 {
00043 protected:
00044 static CS_CSPLUGINCOMMON_WIN_EXPORT HICON LoadStockIconSize (uintptr_t id, int desiredSize);
00045 public:
00047
00066 static inline HICON LoadStockIconSize (LPCSTR id, int desiredSize)
00067 { return LoadStockIconSize (uintptr_t (id), desiredSize); }
00068 static inline HICON LoadStockIconSize (LPCWSTR id, int desiredSize)
00069 { return LoadStockIconSize (uintptr_t (id), desiredSize); }
00071
00077 static csPtr<iImage> CS_CSPLUGINCOMMON_WIN_EXPORT IconToImage (HICON icon);
00090 static HICON CS_CSPLUGINCOMMON_WIN_EXPORT IconFromImage (iImage* image,
00091 const _ICONINFO* iconTemplate = 0);
00092 };
00093 }
00094 }
00095 }
00096
00097 #endif // __CS_PLUGINCOMMON_WIN32_ICONTOOLS_H__