83#define RBInnerSoft RBInnerNormal
84#define RBOuterSoft RBOuterNormal
123 signed char InnerI, OuterI;
124 HPEN InnerPen, OuterPen;
141 spx = spy = epx = epy = 0;
200 spx = epx + SmallDiam;
202 spy = epy - SmallDiam;
209 spx = epx + SmallDiam;
211 spy = epy + SmallDiam;
226 epx = spx + SmallDiam;
228 epy = spy - SmallDiam;
248 Points[0].
x = spx-add;
250 Points[1].
x = rc->
left;
251 Points[1].
y = rc->
top;
253 Points[2].
y = epy-1-add;
254 Points[3] = Points[2];
260 Points[0].
x = spx-add;
262 Points[1].
x = rc->
left;
265 Points[2].
y = epy+1+add;
266 Points[3] = Points[2];
276 Points[0].
y = epy+1+add;
277 Points[1].
x = rc->
right-1;
278 Points[1].
y = rc->
top+add;
279 Points[2].
x = rc->
right-1;
281 Points[3].
x = spx+add;
288 Points[0].
x = epx+1+add;
290 Points[1].
x = rc->
right-1;
291 Points[1].
y = rc->
top;
292 Points[2].
x = rc->
right-1;
293 Points[2].
y = rc->
bottom-1-add;
295 Points[3].
y = spy-add;
305 Points[1].
x = rc->
right-1;
306 Points[1].
y = rc->
top;
307 Points[2].
x = rc->
right-1;
308 Points[2].
y = rc->
bottom-1-add;
309 Points[3].
x = spx+add;
310 Points[3].
y = spy-add;
320 Points[1].
x = rc->
left;
321 Points[1].
y = rc->
top+add;
322 Points[2].
x = epx-1-add;
323 Points[2].
y = epy+1+add;
324 Points[3] = Points[2];
431 signed char LTInnerI, LTOuterI;
432 signed char RBInnerI, RBOuterI;
433 HBRUSH lti_brush, lto_brush, rbi_brush, rbo_brush;
435 int lbi_offset = 0, lti_offset = 0, rti_offset = 0, rbi_offset = 0;
576 dst->bottom =
dst->top + SmallDiam;
581 dst->right =
dst->left + SmallDiam;
662 TCHAR OutRight, OutLeft, InRight, InLeft, Center;
670 X =
r->left + (
Width - Shorter) / 2;
671 Y =
r->top + (
Height - Shorter) / 2;
779 switch(uState & 0x1f)
801 ERR(
"Invalid button state=0x%04x\n", uState);
833 ERR(
"Invalid caption; flags=0x%04x\n",
uFlags);
936 ERR(
"Invalid scroll; flags=0x%04x\n",
uFlags);
1013 ERR(
"Invalid menu; flags=0x%04x\n",
uFlags);
1069 HBRUSH OldBrush =
NULL;
1084 if ((nCount == -1) && (! lpOutputFunc))
1097 if (! nWidth || ! nHeight)
1109 if (! nWidth) nWidth =
s.cx;
1110 if (! nHeight) nHeight =
s.cy;
1133 success = lpOutputFunc(MemDC, lpData, nCount);
1135 if ((nCount == -1) && (!
success))
1152 PatBlt(MemDC, 0, 0, nWidth, nHeight, 0x000A0329);
1242 HBRUSH hbsave, hbrtmp = 0;
1304 ERR(
"Invalid opcode: %u\n", opcode);
1371 tmp =
PatBlt(memdc, 0, 0,
cx,
cy, 0x00FA0089);
1442 if (!(uState & DFCS_TRANSPARENT))
1486 ERR(
"Got exception in hooked DrawFrameControl!\n");
1512 int nCount,
int X,
int Y,
int nWidth,
int nHeight)
1522 int nCount,
int X,
int Y,
int nWidth,
int nHeight)
1564 FLASHWINFO FlashWndInfo;
1566 FlashWndInfo.cbSize =
sizeof(FLASHWINFO);
1567 FlashWndInfo.hwnd =
hWnd;
1568 FlashWndInfo.dwFlags = !
bInvert ? 0 : (FLASHW_TRAY | FLASHW_CAPTION);
1569 FlashWndInfo.uCount = 1;
1570 FlashWndInfo.dwTimeout = 0;
1582 HBRUSH prevhbr =
NULL;
1588 if (hbr <= (HBRUSH)(COLOR_MENUBAR + 1))
1592 if (prevhbr ==
NULL)
1640 return IntDrawState(
hDC, hBrush, lpOutputFunc, lData, wData,
x,
y,
cx,
cy, fuFlags,
FALSE);
1650 return IntDrawState(
hDC, hBrush, lpOutputFunc, lData, wData,
x,
y,
cx,
cy, fuFlags,
TRUE);
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static const signed char LTOuterNormal[]
static const signed char LTRBInnerMono[]
static const signed char RBOuterNormal[]
static const signed char LTRBOuterMono[]
static const signed char LTInnerNormal[]
static const signed char RBInnerNormal[]
static BOOL get_icon_size(HICON handle, SIZE *size)
static void cleanup(void)
static const signed char LTOuterSoft[]
static const signed char LTRBInnerFlat[]
static const signed char LTRBOuterFlat[]
static const signed char LTInnerSoft[]
static VOID BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Delta)
DWORD WINAPI GetLayout(_In_ HDC hdc)
DWORD WINAPI SetLayout(_In_ HDC hdc, _In_ DWORD dwLayout)
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
GLdouble GLdouble GLdouble r
GLint GLint GLsizei width
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL NTAPI NtUserFlashWindowEx(IN PFLASHWINFO pfwi)
BOOL NTAPI NtUserSystemParametersInfo(UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni)
#define EXCEPTION_EXECUTE_HANDLER
int WINAPI lstrlenA(LPCSTR lpString)
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
INT WINAPI DrawTextW(HDC hdc, LPCWSTR str, INT count, LPRECT rect, UINT flags)
BOOL Polygon(CONST PPOINT UnsafePoints, int Count, int polyFillMode)
_Out_opt_ int _Out_opt_ int * cy
#define _SEH2_EXCEPT(...)
void fill_rect(int x, int y, int cx, int cy, int colour, int opcode=0xc)
WCHAR lfFaceName[LF_FACESIZE]
DRAWFRAMECONTROL DrawFrameControl
#define DFCS_MENUARROWDOWN
BOOL FASTCALL EndUserApiHook(VOID)
BOOL FASTCALL BeginIfHookedUserApiHook(VOID)
_In_ HFONT _Out_ PUINT _Out_ PUINT Width
_In_ HFONT _Out_ PUINT Height
static __inline void LoadUserApiHook()
COLORREF WINAPI SetDCPenColor(_In_ HDC hdc, _In_ COLORREF crColor)
COLORREF WINAPI SetDCBrushColor(_In_ HDC hdc, _In_ COLORREF crColor)
void FASTCALL UITOOLS_DrawCheckedRect(HDC dc, LPRECT rect)
int FASTCALL UITOOLS_MakeSquareRect(LPRECT src, LPRECT dst)
BOOL FASTCALL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
BOOL FASTCALL UITOOLS95_DrawFrameButton(HDC hdc, LPRECT rc, UINT uState)
BOOL WINAPI DrawFrameControl(HDC hDC, LPRECT rc, UINT uType, UINT uState)
BOOL FASTCALL IntDrawDiagEdge(HDC hdc, LPRECT rc, UINT uType, UINT uFlags)
BOOL FASTCALL UITOOLS95_DFC_ButtonPush(HDC dc, LPRECT r, UINT uFlags)
BOOL FASTCALL UITOOLS95_DrawFrameScroll(HDC dc, LPRECT r, UINT uFlags)
BOOL FASTCALL UITOOLS95_DrawFrameCaption(HDC dc, LPRECT r, UINT uFlags)
BOOL FASTCALL IntDrawRectEdge(HDC hdc, LPRECT rc, UINT uType, UINT uFlags)
BOOL FASTCALL UITOOLS95_DFC_ButtonCheckRadio(HDC dc, LPRECT r, UINT uFlags, BOOL Radio)
BOOL WINAPI DrawFocusRect(HDC hdc, CONST RECT *rect)
BOOL WINAPI RealDrawFrameControl(HDC hDC, LPRECT rc, UINT uType, UINT uState)
BOOL WINAPI DrawStateA(HDC hDC, HBRUSH hBrush, DRAWSTATEPROC lpOutputFunc, LPARAM lData, WPARAM wData, int x, int y, int cx, int cy, UINT fuFlags)
static BOOL IntDrawState(HDC hdc, HBRUSH hbr, DRAWSTATEPROC func, LPARAM lp, WPARAM wp, INT x, INT y, INT cx, INT cy, UINT flags, BOOL unicode)
BOOL WINAPI GrayStringW(HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight)
static BOOL PAINTING_DrawStateJam(HDC hdc, UINT opcode, DRAWSTATEPROC func, LPARAM lp, WPARAM wp, LPRECT rc, UINT dtflags, BOOL unicode)
HBRUSH WINAPI GetSysColorBrush(int nIndex)
BOOL WINAPI IntGrayString(HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight, BOOL unicode)
BOOL WINAPI InvertRect(HDC hDC, CONST RECT *lprc)
BOOL WINAPI GrayStringA(HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight)
BOOL WINAPI DrawStateW(HDC hDC, HBRUSH hBrush, DRAWSTATEPROC lpOutputFunc, LPARAM lData, WPARAM wData, int x, int y, int cx, int cy, UINT fuFlags)
BOOL WINAPI FlashWindow(HWND hWnd, BOOL bInvert)
INT WINAPI DrawTextA(HDC hdc, LPCSTR str, INT count, LPRECT rect, UINT flags)
#define success(from, fromstr, to, tostr)
int WINAPI GetBkMode(_In_ HDC)
HGDIOBJ WINAPI GetStockObject(_In_ int)
int WINAPI GetObjectW(_In_ HANDLE h, _In_ int c, _Out_writes_bytes_opt_(c) LPVOID pv)
HBITMAP WINAPI CreateBitmap(_In_ INT cx, _In_ INT cy, _In_ UINT cPlanes, _In_ UINT cBitsPerPel, _In_opt_ const VOID *pvBits)
BOOL WINAPI Ellipse(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int)
BOOL WINAPI OffsetViewportOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
COLORREF WINAPI SetBkColor(_In_ HDC, _In_ COLORREF)
COLORREF WINAPI GetTextColor(_In_ HDC)
BOOL WINAPI TextOutA(_In_ HDC hdc, _In_ int x, _In_ int y, _In_reads_(c) LPCSTR lpString, _In_ int c)
HGDIOBJ WINAPI GetCurrentObject(_In_ HDC, _In_ UINT)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI MoveToEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
int WINAPI GetMapMode(_In_ HDC)
BOOL WINAPI PatBlt(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD)
BOOL WINAPI TextOutW(_In_ HDC hdc, _In_ int x, _In_ int y, _In_reads_(c) LPCWSTR lpString, _In_ int c)
int WINAPI FillRect(HDC, LPCRECT, HBRUSH)
HFONT WINAPI CreateFontIndirectW(_In_ const LOGFONTW *)
int WINAPI SetBkMode(_In_ HDC, _In_ int)
COLORREF WINAPI SetTextColor(_In_ HDC, _In_ COLORREF)
BOOL WINAPI DeleteDC(_In_ HDC)
#define CreateFontIndirect
BOOL WINAPI LineTo(_In_ HDC, _In_ int, _In_ int)
BOOL WINAPI GetTextExtentPoint32A(_In_ HDC hdc, _In_reads_(c) LPCSTR lpString, _In_ int c, _Out_ LPSIZE psizl)
BOOL WINAPI GetTextExtentPoint32W(_In_ HDC hdc, _In_reads_(c) LPCWSTR lpString, _In_ int c, _Out_ LPSIZE psizl)
#define NONANTIALIASED_QUALITY
DWORD WINAPI GetSysColor(_In_ int)
int WINAPI FrameRect(_In_ HDC, _In_ LPCRECT, _In_ HBRUSH)
BOOL(CALLBACK * GRAYSTRINGPROC)(HDC, LPARAM, int)
#define COLOR_WINDOWFRAME
#define DFCS_SCROLLSIZEGRIPRIGHT
#define DFCS_CAPTIONCLOSE
#define BF_DIAGONAL_ENDTOPRIGHT
#define DFCS_SCROLLSIZEGRIP
BOOL WINAPI IsRectEmpty(_In_ LPCRECT)
#define DFCS_BUTTON3STATE
#define DFCS_MENUARROWRIGHT
BOOL WINAPI DrawEdge(_In_ HDC, _Inout_ LPRECT, _In_ UINT, _In_ UINT)
#define DFCS_CAPTIONRESTORE
BOOL WINAPI DrawIconEx(_In_ HDC, _In_ int, _In_ int, _In_ HICON, _In_ int, _In_ int, _In_ UINT, _In_opt_ HBRUSH, _In_ UINT)
#define DFCS_BUTTONRADIOMASK
#define BF_DIAGONAL_ENDBOTTOMLEFT
#define DFCS_BUTTONRADIOIMAGE
#define DFCS_SCROLLCOMBOBOX
#define BF_DIAGONAL_ENDBOTTOMRIGHT
_In_ int _Inout_ LPRECT lprc
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI InflateRect(_Inout_ LPRECT, _In_ int, _In_ int)
#define COLOR_BTNHIGHLIGHT
BOOL(CALLBACK * DRAWSTATEPROC)(HDC, LPARAM, WPARAM, int, int)
#define BF_DIAGONAL_ENDTOPLEFT
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)