00001 #ifndef _GDI_LEAK_H_
00002 #define _GDI_LEAK_H_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #if 0 && defined(WIN32)
00031 #define GDI_LEAK_DETECT 1
00032
00033
00034 #define BeginPaint(hwnd, lpPaint) Lgi_BeginPaint(__FILE__, __LINE__, hwnd, lpPaint)
00035 #define CreateBrushIndirect(lplb) Lgi_CreateBrushIndirect(__FILE__, __LINE__, lplb)
00036 #define CreateCompatibleDC(hdc) Lgi_CreateCompatibleDC(__FILE__, __LINE__, hdc)
00037 #define CreateDIBPatternBrush(dib, col) Lgi_CreateDIBPatternBrush(__FILE__, __LINE__, dib, col)
00038 #define CreateDIBPatternBrushPt(dib, use) Lgi_CreateDIBPatternBrushPt(__FILE__, __LINE__, dib, use)
00039 #define CreateFontA(a, b, c, d, e, f, g, h, j, i, k, l, m, n) Lgi_CreateFont(__FILE__, __LINE__, a, b, c, d, e, f, g, h, j, i, k, l, m, n)
00040 #define CreateFontIndirectA(f) Lgi_CreateFontIndirect(__FILE__, __LINE__, f)
00041 #define CreateHatchBrush(a, b) Lgi_CreateHatchBrush(__FILE__, __LINE__, a, b)
00042 #define CreatePatternBrush(a) Lgi_CreatePatternBrush(__FILE__, __LINE__, a)
00043 #define CreatePen(a, b, c) Lgi_CreatePen(__FILE__, __LINE__, a, b, c)
00044 #define CreatePenIndirect(a) Lgi_CreatePenIndirect(__FILE__, __LINE__, a)
00045 #define CreateSolidBrush(a) Lgi_CreateSolidBrush(__FILE__, __LINE__, a)
00046 #define DeleteDC(a) Lgi_DeleteDC(__FILE__, __LINE__, a)
00047 #define DeleteObject(a) Lgi_DeleteObject(__FILE__, __LINE__, a)
00048 #define EndPaint(a, b) Lgi_EndPaint(__FILE__, __LINE__, a, b)
00049 #define ExtCreatePen(a, b, c, d, e) Lgi_ExtCreatePen(__FILE__, __LINE__, a, b, c, d, e)
00050 #define GetDC(a) Lgi_GetDC(__FILE__, __LINE__, a)
00051 #define GetWindowDC(a) Lgi_GetWindowDC(__FILE__, __LINE__, a)
00052 #define ReleaseDC(a, b) Lgi_ReleaseDC(__FILE__, __LINE__, a, b)
00053 #define SelectObject(a, b) Lgi_SelectObject(__FILE__, __LINE__, a, b)
00054 #define CreateDIBSection(a, b, c, e, f, g) Lgi_CreateDIBSection(__FILE__, __LINE__, a, b, c, e, f, g)
00055 #define CreateRectRgn(a, b, c, d) Lgi_CreateRectRgn(__FILE__, __LINE__, a, b, c, d)
00056 #define CreatePalette(a) Lgi_CreatePalette(__FILE__, __LINE__, a)
00057
00058
00059 LgiFunc HDC Lgi_BeginPaint(char *File, int Line, HWND hWnd, LPPAINTSTRUCT lpPaint);
00060 LgiFunc HBRUSH Lgi_CreateBrushIndirect(char *File, int Line, CONST LOGBRUSH *LogBrush);
00061 LgiFunc HDC Lgi_CreateCompatibleDC(char *File, int Line, HDC hdc);
00062 LgiFunc HBRUSH Lgi_CreateDIBPatternBrush(char *File, int Line, HGLOBAL hglbDIBPacked, UINT fuColorSpec);
00063 LgiFunc HBRUSH Lgi_CreateDIBPatternBrushPt(char *File, int Line, CONST VOID *lpPackedDIB, UINT iUsage);
00064 LgiFunc HFONT Lgi_CreateFont
00065 (
00066 char *File,
00067 int Line,
00068 int nHeight,
00069 int nWidth,
00070 int nEscapement,
00071 int nOrientation,
00072 int fnWeight,
00073 DWORD fdwItalic,
00074 DWORD fdwUnderline,
00075 DWORD fdwStrikeOut,
00076 DWORD fdwCharSet,
00077 DWORD fdwOutputPrecision,
00078 DWORD fdwClipPrecision,
00079 DWORD fdwQuality,
00080 DWORD fdwPitchAndFamily,
00081 LPCTSTR lpszFace
00082 );
00083 LgiFunc HFONT Lgi_CreateFontIndirect(char *File, int Line, CONST LOGFONT *lplf);
00084 LgiFunc HBRUSH Lgi_CreateHatchBrush(char *File, int Line, int fnStyle, COLORREF clrref);
00085 LgiFunc HBRUSH Lgi_CreatePatternBrush(char *File, int Line, HBITMAP hbmp);
00086 LgiFunc HPEN Lgi_CreatePen(char *File, int Line, int fnPenStyle, int nWidth, COLORREF crColor);
00087 LgiFunc HPEN Lgi_CreatePenIndirect(char *File, int Line, CONST LOGPEN *lplgpn);
00088 LgiFunc HBRUSH Lgi_CreateSolidBrush(char *File, int Line, COLORREF crColor);
00089 LgiFunc BOOL Lgi_DeleteDC(char *File, int Line, HDC hdc);
00090 LgiFunc BOOL Lgi_DeleteObject(char *File, int Line, HGDIOBJ hObject);
00091 LgiFunc BOOL Lgi_EndPaint(char *File, int Line, HWND hWnd, CONST PAINTSTRUCT *lpPaint);
00092 LgiFunc HPEN Lgi_ExtCreatePen(char *File, int Line, DWORD dwPenStyle, DWORD dwWidth, CONST LOGBRUSH *lplb, DWORD dwStyleCount, CONST DWORD *lpStyle);
00093 LgiFunc HDC Lgi_GetDC(char *File, int Line, HWND hWnd);
00094 LgiFunc HDC Lgi_GetWindowDC(char *File, int Line, HWND hWnd);
00095 LgiFunc int Lgi_ReleaseDC(char *File, int Line, HWND hWnd, HDC hDC);
00096 LgiFunc HGDIOBJ Lgi_SelectObject(char *File, int Line, HDC hdc, HGDIOBJ hgdiobj);
00097 LgiFunc HBITMAP Lgi_CreateDIBSection(char *File, int Line, HDC hdc, CONST BITMAPINFO *pbmi, UINT iUsage, VOID **ppvBits, HANDLE hSection, DWORD dwOffset);
00098 LgiFunc HRGN Lgi_CreateRectRgn(char *File, int Line, int a, int b, int c, int d);
00099 LgiFunc HPALETTE Lgi_CreatePalette(char *File, int Line, CONST LOGPALETTE *lplgpl);
00100
00101 #endif
00102
00103 #endif