93#define INITIAL_DELAY 500
94#define REPEAT_DELAY 50
122 *prcTopLeft = *prcBottomRight = rcWindow;
202 return infoPtr->
nPos;
223 return infoPtr->
clrBk;
253 int nPos = infoPtr->
nPos;
264 if (infoPtr->
nWidth < wndSize)
265 infoPtr->
nWidth = wndSize;
277 if (infoPtr->
nHeight < wndSize)
299 INT wndSize, childSize;
308 childSize = infoPtr->
nWidth;
316 TRACE(
"childSize = %d, wndSize = %d\n", childSize, wndSize);
317 if (childSize > wndSize)
318 scrollRange = childSize - wndSize + infoPtr->
nButtonSize;
333 RECT rcTopLeft, rcBottomRight;
342 if (infoPtr->
nPos > 0)
347 else if (!hideGrayBtns &&
PtInRect(&rcTopLeft,
pt))
352 if (scrollRange <= 0)
357 else if (infoPtr->
nPos < scrollRange)
362 else if (!hideGrayBtns &&
PtInRect(&rcBottomRight,
pt))
378 repaintBtns = (oldTLbtnState != infoPtr->
TLbtnState) ||
390 if ((scrollRange <= 0) || (newPos < 0))
392 else if (newPos > scrollRange)
393 infoPtr->
nPos = scrollRange;
395 infoPtr->
nPos = newPos;
399 if (infoPtr->
nPos != oldPos)
430 if (scrollRange <= 0)
448 infoPtr->
clrBk = clrBk;
541 TRACE(
"[%p] PGN_SCROLL returns iScroll=%d\n", infoPtr->
hwndSelf, nmpgScroll.iScroll);
543 if (nmpgScroll.iScroll > 0)
579 infoPtr = heap_alloc_zero (
sizeof(*infoPtr));
580 if (!infoPtr)
return -1;
601 FIXME(
"[%p] Drag and Drop style is not implemented yet.\n", infoPtr->
hwndSelf);
622 RECT rcChild, rcWindow;
668 RECT rcBottomRight, rcTopLeft;
693 RECT clientRect, rcTopLeft, rcBottomRight;
709 TRACE(
"PGB_TOPORLEFT\n");
714 TRACE(
"PGB_BOTTOMORRIGHT\n");
779 TRACE(
"[%p] draw btn (%s), Capture %s, style %08x\n",
781 (infoPtr->
bCapture) ?
"TRUE" :
"FALSE",
946 TRACE(
"[%p] TIMERID1: style=%08x, dir=%d\n",
1009 TRACE(
"(styletype=%lx, styleOld=0x%08x, styleNew=0x%08x)\n",
1118 if (!oldText)
return;
1128 CHAR *receiveBuffer;
1135 oldTextMax = textMax ? *textMax : 0;
1139 if (
mask && !(*
mask & requiredMask))
1146 if (oldTextMax < 0)
goto done;
1152 if (!sendBuffer)
goto done;
1162 if (*
text == oldText)
1166 if (!receiveBuffer)
goto done;
1521 case WM_STYLECHANGED:
1547 case WM_NOTIFYFORMAT:
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
static void * heap_realloc(void *mem, size_t len)
static const char * wine_dbgstr_rect(const RECT *prc)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
BOOL Str_SetPtrWtoA(LPSTR *lppDest, LPCWSTR lpSrc) DECLSPEC_HIDDEN
#define WideCharToMultiByte
#define MultiByteToWideChar
GLint GLint GLint GLint GLint x
GLuint GLuint GLsizei GLenum type
GLint GLint GLint GLint GLint GLint y
int WINAPI lstrlenA(LPCSTR lpString)
#define memcpy(s1, s2, n)
#define NM_RELEASEDCAPTURE
#define TVN_ENDLABELEDITA
#define TVN_ITEMEXPANDEDW
#define HDN_ITEMDBLCLICKA
#define PGM_GETBUTTONSTATE
#define TVN_ITEMEXPANDINGA
#define TVN_BEGINLABELEDITA
#define PGM_SETBUTTONSIZE
#define TBN_GETBUTTONINFOW
#define TVN_ITEMEXPANDEDA
#define LVN_INCREMENTALSEARCHA
#define HDN_ITEMCHANGINGA
#define LVN_BEGINLABELEDITA
#define LVN_INCREMENTALSEARCHW
#define CBEN_GETDISPINFOA
#define HDN_ITEMDBLCLICKW
#define LVN_ENDLABELEDITW
#define LVN_BEGINLABELEDITW
#define HDN_ITEMCHANGINGW
#define LVN_ENDLABELEDITA
#define TBN_GETBUTTONINFOA
#define HDN_DIVIDERDBLCLICKW
#define TVN_ITEMEXPANDINGW
#define TVN_BEGINLABELEDITW
#define CBEN_GETDISPINFOW
#define PGB_BOTTOMORRIGHT
#define HDN_DIVIDERDBLCLICKA
#define PGM_GETBUTTONSIZE
#define TVN_ENDLABELEDITW
char szText[CBEMAXSTRLEN]
WCHAR szText[CBEMAXSTRLEN]
char szText[CBEMAXSTRLEN]
WCHAR szText[CBEMAXSTRLEN]
BOOL WINAPI SetWindowOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
BOOL WINAPI OffsetWindowOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
HWND WINAPI SetCapture(_In_ HWND hWnd)
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
DWORD WINAPI GetSysColor(_In_ int)
BOOL WINAPI IsWindow(_In_opt_ HWND)
BOOL WINAPI RedrawWindow(_In_opt_ HWND, _In_opt_ LPCRECT, _In_opt_ HRGN, _In_ UINT)
#define GetWindowLongPtrW
HDC WINAPI GetWindowDC(_In_opt_ HWND)
BOOL WINAPI ReleaseCapture(void)
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
BOOL WINAPI DrawFrameControl(_In_ HDC, _Inout_ LPRECT, _In_ UINT, _In_ UINT)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
#define IS_INTRESOURCE(i)
ATOM WINAPI RegisterClassW(_In_ CONST WNDCLASSW *)
BOOL WINAPI GetCursorPos(_Out_ LPPOINT)
HDC WINAPI GetDCEx(_In_opt_ HWND, _In_opt_ HRGN, _In_ DWORD)
HWND WINAPI GetCapture(void)
HCURSOR WINAPI LoadCursorW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
int WINAPI MapWindowPoints(_In_opt_ HWND hWndFrom, _In_opt_ HWND hWndTo, _Inout_updates_(cPoints) LPPOINT lpPoints, _In_ UINT cPoints)
BOOL WINAPI ClientToScreen(_In_ HWND, _Inout_ LPPOINT)
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)
BOOL WINAPI PtInRect(_In_ LPCRECT, _In_ POINT)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
HWND WINAPI GetParent(_In_ HWND)
HWND WINAPI WindowFromPoint(_In_ POINT)
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI UnregisterClassW(_In_ LPCWSTR, HINSTANCE)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)
#define SetWindowLongPtrW
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI ScreenToClient(_In_ HWND, _Inout_ LPPOINT)
_In_opt_ PALLOCATE_FUNCTION _In_opt_ PFREE_FUNCTION Free