mirror of
https://github.com/chibicitiberiu/rainmeter-studio.git
synced 2024-02-24 04:33:31 +00:00
Prepare canvas for rendering to bitmap only
This commit is contained in:
parent
7691a3c326
commit
800c49e3f9
@ -69,6 +69,7 @@ public:
|
|||||||
// matched by a corresponding call to ReleaseDC(). While in the Gdiplus context, non-const
|
// matched by a corresponding call to ReleaseDC(). While in the Gdiplus context, non-const
|
||||||
// member functions of this class must not be called.
|
// member functions of this class must not be called.
|
||||||
virtual HDC GetDC() = 0;
|
virtual HDC GetDC() = 0;
|
||||||
|
virtual HBITMAP GetBitmap() = 0;
|
||||||
virtual void ReleaseDC(HDC dc) = 0;
|
virtual void ReleaseDC(HDC dc) = 0;
|
||||||
|
|
||||||
// The Create* functions allocate objects specific to this Canvas object.
|
// The Create* functions allocate objects specific to this Canvas object.
|
||||||
|
@ -210,6 +210,13 @@ HDC CanvasD2D::GetDC()
|
|||||||
return dcMemory;
|
return dcMemory;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HBITMAP CanvasD2D::GetBitmap()
|
||||||
|
{
|
||||||
|
EndTargetDraw();
|
||||||
|
|
||||||
|
return m_Bitmap.GetHandle();
|
||||||
|
}
|
||||||
|
|
||||||
void CanvasD2D::ReleaseDC(HDC dc)
|
void CanvasD2D::ReleaseDC(HDC dc)
|
||||||
{
|
{
|
||||||
DeleteDC(dc);
|
DeleteDC(dc);
|
||||||
|
@ -51,6 +51,7 @@ public:
|
|||||||
virtual void EndGdiplusContext() override;
|
virtual void EndGdiplusContext() override;
|
||||||
|
|
||||||
virtual HDC GetDC() override;
|
virtual HDC GetDC() override;
|
||||||
|
virtual HBITMAP GetBitmap() override;
|
||||||
virtual void ReleaseDC(HDC dc) override;
|
virtual void ReleaseDC(HDC dc) override;
|
||||||
|
|
||||||
virtual FontCollection* CreateFontCollection() override { return new FontCollectionD2D(); }
|
virtual FontCollection* CreateFontCollection() override { return new FontCollectionD2D(); }
|
||||||
|
@ -99,6 +99,12 @@ HDC CanvasGDIP::GetDC()
|
|||||||
return dcMemory;
|
return dcMemory;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HBITMAP CanvasGDIP::GetBitmap()
|
||||||
|
{
|
||||||
|
return m_DIBSection;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void CanvasGDIP::ReleaseDC(HDC dc)
|
void CanvasGDIP::ReleaseDC(HDC dc)
|
||||||
{
|
{
|
||||||
DeleteDC(dc);
|
DeleteDC(dc);
|
||||||
|
@ -42,6 +42,7 @@ public:
|
|||||||
virtual void EndGdiplusContext() override;
|
virtual void EndGdiplusContext() override;
|
||||||
|
|
||||||
virtual HDC GetDC() override;
|
virtual HDC GetDC() override;
|
||||||
|
virtual HBITMAP GetBitmap() override;
|
||||||
virtual void ReleaseDC(HDC dc) override;
|
virtual void ReleaseDC(HDC dc) override;
|
||||||
|
|
||||||
virtual FontCollection* CreateFontCollection() override { return new FontCollectionGDIP(); }
|
virtual FontCollection* CreateFontCollection() override { return new FontCollectionGDIP(); }
|
||||||
|
Loading…
Reference in New Issue
Block a user