diff options
Diffstat (limited to 'src/apps/mplayerc/CGdiPlusBitmap.h')
-rw-r--r-- | src/apps/mplayerc/CGdiPlusBitmap.h | 234 |
1 files changed, 117 insertions, 117 deletions
diff --git a/src/apps/mplayerc/CGdiPlusBitmap.h b/src/apps/mplayerc/CGdiPlusBitmap.h index 37ed374b7..bf251e392 100644 --- a/src/apps/mplayerc/CGdiPlusBitmap.h +++ b/src/apps/mplayerc/CGdiPlusBitmap.h @@ -3,141 +3,141 @@ class CGdiPlusBitmap
{
public:
- Gdiplus::Bitmap* m_pBitmap;
+ Gdiplus::Bitmap* m_pBitmap;
public:
- CGdiPlusBitmap()
- {
- m_pBitmap = NULL;
- }
- CGdiPlusBitmap(LPCWSTR pFile)
- {
- m_pBitmap = NULL;
- Load(pFile);
- }
- virtual ~CGdiPlusBitmap()
- {
- Empty();
- }
-
- void Empty()
- {
- delete m_pBitmap;
- m_pBitmap = NULL;
- }
-
- bool Load(LPCWSTR pFile)
- {
- Empty();
- m_pBitmap = Gdiplus::Bitmap::FromFile(pFile);
- return m_pBitmap->GetLastStatus() == Gdiplus::Ok;
- }
-
- operator Gdiplus::Bitmap*() const
- {
- return m_pBitmap;
- }
+ CGdiPlusBitmap()
+ {
+ m_pBitmap = NULL;
+ }
+ CGdiPlusBitmap(LPCWSTR pFile)
+ {
+ m_pBitmap = NULL;
+ Load(pFile);
+ }
+ virtual ~CGdiPlusBitmap()
+ {
+ Empty();
+ }
+
+ void Empty()
+ {
+ delete m_pBitmap;
+ m_pBitmap = NULL;
+ }
+
+ bool Load(LPCWSTR pFile)
+ {
+ Empty();
+ m_pBitmap = Gdiplus::Bitmap::FromFile(pFile);
+ return m_pBitmap->GetLastStatus() == Gdiplus::Ok;
+ }
+
+ operator Gdiplus::Bitmap*() const
+ {
+ return m_pBitmap;
+ }
};
class CGdiPlusBitmapResource : public CGdiPlusBitmap
{
protected:
- HGLOBAL m_hBuffer;
+ HGLOBAL m_hBuffer;
public:
- CGdiPlusBitmapResource()
- {
- m_hBuffer = NULL;
- }
- CGdiPlusBitmapResource(LPCTSTR pName, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL)
- {
- m_hBuffer = NULL;
- Load(pName, pType, hInst);
- }
- CGdiPlusBitmapResource(UINT id, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL)
- {
- m_hBuffer = NULL;
- Load(id, pType, hInst);
- }
- CGdiPlusBitmapResource(UINT id, UINT type, HMODULE hInst = NULL)
- {
- m_hBuffer = NULL;
- Load(id, type, hInst);
- }
- virtual ~CGdiPlusBitmapResource()
- {
- Empty();
- }
-
- void Empty();
-
- bool Load(LPCTSTR pName, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL);
- bool Load(UINT id, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL)
- {
- return Load(MAKEINTRESOURCE(id), pType, hInst);
- }
- bool Load(UINT id, UINT type, HMODULE hInst = NULL)
- {
- return Load(MAKEINTRESOURCE(id), MAKEINTRESOURCE(type), hInst);
- }
+ CGdiPlusBitmapResource()
+ {
+ m_hBuffer = NULL;
+ }
+ CGdiPlusBitmapResource(LPCTSTR pName, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL)
+ {
+ m_hBuffer = NULL;
+ Load(pName, pType, hInst);
+ }
+ CGdiPlusBitmapResource(UINT id, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL)
+ {
+ m_hBuffer = NULL;
+ Load(id, pType, hInst);
+ }
+ CGdiPlusBitmapResource(UINT id, UINT type, HMODULE hInst = NULL)
+ {
+ m_hBuffer = NULL;
+ Load(id, type, hInst);
+ }
+ virtual ~CGdiPlusBitmapResource()
+ {
+ Empty();
+ }
+
+ void Empty();
+
+ bool Load(LPCTSTR pName, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL);
+ bool Load(UINT id, LPCTSTR pType = RT_RCDATA, HMODULE hInst = NULL)
+ {
+ return Load(MAKEINTRESOURCE(id), pType, hInst);
+ }
+ bool Load(UINT id, UINT type, HMODULE hInst = NULL)
+ {
+ return Load(MAKEINTRESOURCE(id), MAKEINTRESOURCE(type), hInst);
+ }
};
inline
void CGdiPlusBitmapResource::Empty()
{
- CGdiPlusBitmap::Empty();
- if (m_hBuffer)
- {
- ::GlobalUnlock(m_hBuffer);
- ::GlobalFree(m_hBuffer);
- m_hBuffer = NULL;
- }
+ CGdiPlusBitmap::Empty();
+ if (m_hBuffer)
+ {
+ ::GlobalUnlock(m_hBuffer);
+ ::GlobalFree(m_hBuffer);
+ m_hBuffer = NULL;
+ }
}
inline
bool CGdiPlusBitmapResource::Load(LPCTSTR pName, LPCTSTR pType, HMODULE hInst)
{
- Empty();
-
- HRSRC hResource = ::FindResource(hInst, pName, pType);
- if (!hResource)
- return false;
-
- DWORD imageSize = ::SizeofResource(hInst, hResource);
- if (!imageSize)
- return false;
-
- const void* pResourceData = ::LockResource(::LoadResource(hInst, hResource));
- if (!pResourceData)
- return false;
-
- m_hBuffer = ::GlobalAlloc(GMEM_MOVEABLE, imageSize);
- if (m_hBuffer)
- {
- void* pBuffer = ::GlobalLock(m_hBuffer);
- if (pBuffer)
- {
- CopyMemory(pBuffer, pResourceData, imageSize);
-
- IStream* pStream = NULL;
- if (::CreateStreamOnHGlobal(m_hBuffer, FALSE, &pStream) == S_OK)
- {
- m_pBitmap = Gdiplus::Bitmap::FromStream(pStream);
- pStream->Release();
- if (m_pBitmap)
- {
- if (m_pBitmap->GetLastStatus() == Gdiplus::Ok)
- return true;
-
- delete m_pBitmap;
- m_pBitmap = NULL;
- }
- }
- ::GlobalUnlock(m_hBuffer);
- }
- ::GlobalFree(m_hBuffer);
- m_hBuffer = NULL;
- }
- return false;
+ Empty();
+
+ HRSRC hResource = ::FindResource(hInst, pName, pType);
+ if (!hResource)
+ return false;
+
+ DWORD imageSize = ::SizeofResource(hInst, hResource);
+ if (!imageSize)
+ return false;
+
+ const void* pResourceData = ::LockResource(::LoadResource(hInst, hResource));
+ if (!pResourceData)
+ return false;
+
+ m_hBuffer = ::GlobalAlloc(GMEM_MOVEABLE, imageSize);
+ if (m_hBuffer)
+ {
+ void* pBuffer = ::GlobalLock(m_hBuffer);
+ if (pBuffer)
+ {
+ CopyMemory(pBuffer, pResourceData, imageSize);
+
+ IStream* pStream = NULL;
+ if (::CreateStreamOnHGlobal(m_hBuffer, FALSE, &pStream) == S_OK)
+ {
+ m_pBitmap = Gdiplus::Bitmap::FromStream(pStream);
+ pStream->Release();
+ if (m_pBitmap)
+ {
+ if (m_pBitmap->GetLastStatus() == Gdiplus::Ok)
+ return true;
+
+ delete m_pBitmap;
+ m_pBitmap = NULL;
+ }
+ }
+ ::GlobalUnlock(m_hBuffer);
+ }
+ ::GlobalFree(m_hBuffer);
+ m_hBuffer = NULL;
+ }
+ return false;
}
|