aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Library/ml_devices/backBuffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Plugins/Library/ml_devices/backBuffer.h')
-rw-r--r--Src/Plugins/Library/ml_devices/backBuffer.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/Src/Plugins/Library/ml_devices/backBuffer.h b/Src/Plugins/Library/ml_devices/backBuffer.h
new file mode 100644
index 00000000..6a0031f8
--- /dev/null
+++ b/Src/Plugins/Library/ml_devices/backBuffer.h
@@ -0,0 +1,64 @@
+#ifndef _NULLSOFT_WINAMP_ML_DEVICES_BACK_BUFFER_HEADER
+#define _NULLSOFT_WINAMP_ML_DEVICES_BACK_BUFFER_HEADER
+
+typedef struct BackBuffer
+{
+ HBITMAP bitmap;
+ HWND hwnd;
+ HDC hdc;
+ HBITMAP previous;
+} BackBuffer;
+
+BOOL
+BackBuffer_Initialize(BackBuffer *self, HWND hwnd);
+
+void
+BackBuffer_Uninitialize(BackBuffer *self);
+
+BOOL
+BackBuffer_EnsureSize(BackBuffer *self,
+ long width,
+ long height);
+
+BOOL
+BackBuffer_EnsureSizeEx(BackBuffer *self,
+ long width,
+ long height,
+ long allocWidth,
+ long allocHeight);
+
+HDC
+BackBuffer_GetDC(BackBuffer *self);
+
+BOOL
+BackBuffer_Copy(BackBuffer *self,
+ HDC hdc,
+ long x,
+ long y,
+ long width,
+ long height);
+
+void
+BackBuffer_Reset(BackBuffer *self);
+
+BOOL
+BackBuffer_DrawText(BackBuffer *self,
+ HDC hdc,
+ const wchar_t *string,
+ int length,
+ RECT *rect,
+ unsigned int format);
+
+BOOL
+BackBuffer_DrawTextEx(BackBuffer *self,
+ HDC hdc,
+ const wchar_t *string,
+ int length,
+ RECT *rect,
+ unsigned int format,
+ HFONT font,
+ COLORREF backColor,
+ COLORREF textColor,
+ int backMode);
+
+#endif //_NULLSOFT_WINAMP_ML_DEVICES_BACK_BUFFER_HEADER \ No newline at end of file