202#define SEPARATOR_WIDTH 8
204#define BOTTOM_BORDER 2
205#define DDARROW_WIDTH 11
206#define ARROW_HEIGHT 3
207#define INSERTMARK_WIDTH 2
229#define NONLIST_NOTEXT_OFFSET 2
231#define TOOLBAR_NOWHERE (-1)
234#define TBSTYLE_EX_ALL (TBSTYLE_EX_DRAWDDARROWS | \
235 TBSTYLE_EX_VERTICAL | \
236 TBSTYLE_EX_MIXEDBUTTONS | \
237 TBSTYLE_EX_DOUBLEBUFFER | \
238 TBSTYLE_EX_HIDECLIPPEDBUTTONS)
241#define COMMON_STYLES (CCS_TOP|CCS_NOMOVEY|CCS_BOTTOM|CCS_NORESIZE| \
242 CCS_NOPARENTALIGN|CCS_ADJUSTABLE|CCS_NODIVIDER|CCS_VERT)
244#define GETIBITMAP(infoPtr, i) (infoPtr->iVersion >= 5 ? LOWORD(i) : i)
245#define GETHIMLID(infoPtr, i) (infoPtr->iVersion >= 5 ? HIWORD(i) : 0)
246#define GETDEFIMAGELIST(infoPtr, id) TOOLBAR_GetImageList(infoPtr->himlDef, infoPtr->cimlDef, id)
247#define GETHOTIMAGELIST(infoPtr, id) TOOLBAR_GetImageList(infoPtr->himlHot, infoPtr->cimlHot, id)
248#define GETDISIMAGELIST(infoPtr, id) TOOLBAR_GetImageList(infoPtr->himlDis, infoPtr->cimlDis, id)
272 return infoPtr->szBarPadding.cy;
315 TRACE(
"TBBUTTON: id %d, bitmap=%d, state=%02x, style=%02x, data=%p, stringid=%p (%s)\n", tbb->
idCommand,
324 TRACE(
"button %d id %d, bitmap=%d, state=%02x, style=%02x, data=%08lx, stringid=0x%08lx\n",
328 TRACE(
"button %d id %d, hot=%s, row=%d, rect=(%s)\n",
341 TRACE(
"toolbar %p at line %d, exStyle=%08x, buttons=%d, bitmaps=%d, strings=%d, style=%08x\n",
345 TRACE(
"toolbar %p at line %d, himlInt=%p, himlDef=%p, himlHot=%p, himlDis=%p, redrawable=%s\n",
403 FIXME(
"[%p] TBSTYLE_REGISTERDROP not implemented\n", infoPtr->
hwndSelf);
418 (infoPtr->
bUnicode) ?
"via Unicode" :
"via ANSI");
440 memset(&nmgd, 0,
sizeof(nmgd));
450 TRACE(
"TBN_GETDISPINFO returned bitmap id %d, mask=%08x, nNumBitmaps=%d\n",
499 WARN(
"bitmap for ID %d, index %d is not valid, number of bitmaps in imagelist: %d\n",
507 ERR(
"TBN_GETDISPINFO returned invalid index %d\n",
525 FIXME(
"Shouldn't reach here\n");
529 TRACE(
"no image list\n");
648 DWORD dwDTFlags = TOOLBAR_GetButtonDTFlags(infoPtr, btnPtr);
660 DWORD dwDTFlags2 = 0;
667 dwDTFlags2 = DTT_GRAYED;
676 DrawThemeText(theme,
hdc, partId, stateId, lpText, -1, dwDTFlags, dwDTFlags2, rcText);
749 HDC hdcMask, hdcImage;
758 RGB(0xff, 0xff, 0xff),
RGB(0,0,0), draw_flags);
830 draw_desaturated =
TRUE;
865 TRACE(
"drawing index=%d, himl=%p, left=%d, top=%d, offset=%d\n",
873 else if (draw_desaturated)
878 imldp.
cbSize =
sizeof(imldp);
909 BOOL pressed_look = !non_interactive_state &&
939 BOOL pressed = bDropDownPressed ||
978 BOOL drawSepDropDownArrow = hasDropDownArrow &&
980 RECT rc, rcArrow, rcBitmap, rcText;
986 DWORD dwItemCustDraw;
1018 FIXME(
"Draw some kind of separator: fsStyle=%x\n",
1027 if (hasDropDownArrow)
1036 if (drawSepDropDownArrow)
1039 rcArrow.left =
right;
1060 rcBitmap.left += ((rc.right - rc.left) - infoPtr->
nBitmapWidth) / 2;
1064 rcBitmap.top += infoPtr->themeMargins.cyTopHeight;
1067 TRACE(
"iBitmap=%d, start=(%d,%d) w=%d, h=%d\n",
1068 btnPtr->
iBitmap, rcBitmap.left, rcBitmap.top,
1128 dwItemCustDraw = ntfret & 0xffff;
1129 dwItemCDFlag = ntfret & 0xffff0000;
1154 if (hasDropDownArrow)
1193 if (drawSepDropDownArrow)
1228 TOOLBAR_DrawImage(infoPtr, btnPtr, rcBitmap.left, rcBitmap.top, &tbcd, dwItemCDFlag);
1230 if (hasDropDownArrow && !drawSepDropDownArrow)
1277 RECT rcTemp, rcClient;
1280 DWORD dwBaseCustDraw;
1306 dwBaseCustDraw = ntfret & 0xffff;
1335 rcInsertMark.
top = rcButton.
top;
1382 if(lpText !=
NULL) {
1400 TRACE(
"string size %d x %d!\n", lpSize->
cx, lpSize->
cy);
1432 lpSize->
cy =
tm.tmHeight;
1440 if (sz.
cx > lpSize->
cx)
1442 if (sz.
cy > lpSize->
cy)
1450 TRACE(
"max string size %d x %d\n", lpSize->
cx, lpSize->
cy);
1490 bButtonWrap =
FALSE;
1492 TRACE(
"start ButtonWidth=%d, BitmapWidth=%d, width=%d, nIndent=%d\n",
1498 btnPtr[
i].
fsState &= ~TBSTATE_WRAP;
1503 if (btnPtr[
i].
cx > 0)
1506 else if ((btnPtr[
i].fsStyle &
BTNS_SEP) &&
1523 TRACE(
"wrap point 1 btn %d style %02x\n",
i, btnPtr[
i].fsStyle);
1527 bButtonWrap =
FALSE;
1542 while( ( ((btnPtr[
i].fsStyle &
BTNS_SEP) &&
1545 i < infoPtr->nNumButtons )
1551 if( bFound && i < infoPtr->nNumButtons )
1554 TRACE(
"wrap point 2 btn %d style %02x, x=%d, cx=%d\n",
1555 i, btnPtr[
i].fsStyle,
x,
cx);
1558 bButtonWrap =
FALSE;
1573 TRACE(
"wrap point 3 btn %d style %02x, x=%d, cx=%d\n",
1574 i, btnPtr[
i].fsStyle,
x,
cx);
1577 bButtonWrap =
FALSE;
1594 TRACE(
"wrap point 4 btn %d style %02x, x=%d, cx=%d\n",
1595 i, btnPtr[
i].fsStyle,
x,
cx);
1606 TRACE(
"wrap point 5 btn %d style %02x, x=%d, cx=%d\n",
1607 i, btnPtr[
i].fsStyle,
x,
cx);
1611 bButtonWrap =
FALSE;
1617 TRACE(
"wrap point 6 btn %d style %02x, x=%d, cx=%d\n",
1618 i, btnPtr[
i].fsStyle,
x,
cx);
1734 BOOL bHasBitmap,
BOOL bValidImageList)
1744 if (bValidImageList)
1762 if (sizeString.
cx > 0)
1775 if (sizeString.
cy > 0)
1776 sizeButton.
cy += 1 + sizeString.
cy;
1790 sizeButton.
cx += infoPtr->themeMargins.cxLeftWidth + infoPtr->themeMargins.cxRightWidth;
1791 sizeButton.
cy += infoPtr->themeMargins.cyTopHeight + infoPtr->themeMargins.cyBottomHeight;
1811 SIZE sizeString, sizeButton;
1819 validImageList =
TRUE;
1850 nRows = nSepRows = 0;
1879 cx = (btnPtr->
cx > 0) ? btnPtr->
cx :
1938 TRACE(
"button %d style=%x, bWrap=%d, nRows=%d, nSepRows=%d, btnrow=%d, (%d,%d)-(%d,%d)\n",
1946 y +=
cy + infoPtr->szSpacing.cy;
1953 y +=
cy + ( (btnPtr->
cx > 0 ) ?
1957 y +=
cy + infoPtr->szSpacing.cy;
1975 x +=
cx + infoPtr->szSpacing.cx;
2004 TRACE(
" ON SEPARATOR %d\n",
i);
2010 TRACE(
" ON BUTTON %d\n",
i);
2018 TRACE(
" NOWHERE\n");
2027 INT nOldButtons, nNewButtons, iButton;
2034 nNewButtons = nOldButtons + nAddButtons;
2042 for (iButton = 0; iButton < nAddButtons; iButton++) {
2084 if (CommandIsIndex) {
2085 TRACE(
"command is really index command=%d\n", idCommand);
2092 TRACE(
"command=%d index=%d\n", idCommand,
i);
2096 TRACE(
"no index found for command=%d\n", idCommand);
2107 if ((nIndex < 0) || (nIndex > infoPtr->
nNumButtons))
2111 btnPtr = &infoPtr->
buttons[nIndex];
2118 nRunIndex = nIndex - 1;
2119 while (nRunIndex >= 0) {
2120 btnPtr = &infoPtr->
buttons[nRunIndex];
2131 nRunIndex = nIndex + 1;
2132 while (nRunIndex < infoPtr->nNumButtons) {
2133 btnPtr = &infoPtr->
buttons[nRunIndex];
2190 ti.cbSize =
sizeof(
ti);
2206 ti.cbSize =
sizeof(
ti);
2271 TRACE(
"index from %d, index to %d\n", nIndexFrom, nIndexTo);
2273 if (nIndexFrom == nIndexTo)
2278 nmtb.
iItem = nIndexFrom;
2299 if (nIndexTo >= (
count - 2))
2315 TRACE(
"Add: nIndexAvail %d, nIndexTo %d\n", nIndexAvail, nIndexTo);
2319 nmtb.
iItem = nIndexAvail;
2330 if (nIndexAvail != 0)
2334 if (nIndexAvail ==
count-1)
2400 if (nCurrentItem >= (nCount - 1))
return FALSE;
2408 if ((nCurrentItem >= 0) && (nCurrentItem < (nCount - 1)))
2416 if (nCurrentItem < 0)
2435 if ((nIndexTo >= 0) && (nIndexTo < (nCount - 1)))
2477 if ((nCurrentItem >= 0) && (nCurrentItem < nCount))
2485 if (nCurrentItem < 0)
2504 if ((nIndexTo >= 0) && (nIndexTo < nCount))
2547 infoPtr = custInfo->tbInfo;
2550 nmtb.
iItem = custInfo->tbInfo->nNumButtons;
2560 TRACE(
"TBNRF_HIDEHELP requested\n");
2565 for (
i = 0;
i < custInfo->tbInfo->nNumButtons;
i++)
2607 TRACE(
"WM_INITDIALOG style: %x iItem(%d) idCommand(%d) iString(%ld) %s\n",
2619 btnInfo->bVirtual =
FALSE;
2620 btnInfo->bRemovable =
TRUE;
2654 btnInfo->bVirtual =
TRUE;
2655 btnInfo->bRemovable =
FALSE;
2716 else if (
index == 0)
2822 if (btnInfo ==
NULL)
2824 FIXME(
"btnInfo invalid\n");
2844 rcButton = lpdis->
rcItem;
2847 rcButton.
right = rcButton.
left + custInfo->tbInfo->nBitmapWidth + 6;
2942 nAdded = nCountAfter - nCountBefore;
2943 if (
bitmap->nButtons == 0)
2946 }
else if (nAdded > (
INT)
bitmap->nButtons) {
2947 TRACE(
"Added more images than wParam: Previous image number %i added %i while wParam %i. Images in list %i\n",
2948 nCountBefore, nAdded,
bitmap->nButtons, nCountAfter);
2964 if (himlDef ==
NULL || himlDef != infoPtr->
himlInt)
2971 TRACE(
"Update icon size: %dx%d -> %dx%d\n",
3003 switch (lpAddBmp->
nID)
3034 WARN(
"unknown bitmap id, %ld\n", lpAddBmp->
nID);
3038 TRACE (
"adding %d internal bitmaps\n",
info.nButtons);
3041 if (lpAddBmp->
nID & 1)
3059 TRACE(
"adding %d bitmaps\n",
info.nButtons);
3074 TRACE (
"creating default image list\n");
3086 WARN(
"No default image list available\n");
3107 TRACE(
"adding %d buttons (unicode=%d)\n", nAddButtons, fUnicode);
3116#define MAX_RESOURCE_STRING_LENGTH 512
3130 TRACE(
"adding string from resource\n");
3138 TRACE(
"string not found in resources\n");
3146 if (
len == 0 ||
len == 1)
3149 TRACE(
"delimiter: 0x%x\n", *szString);
3155 if (next_delim + 1 >= szString +
len)
3175 TRACE(
"adding string(s) from array\n");
3211 TRACE(
"adding string(s) from array\n");
3246 RECT window_rect, parent_rect;
3258 x = parent_rect.
left;
3259 y = parent_rect.
top;
3268 y = window_rect.top;
3329 btnPtr = &infoPtr->
buttons[nIndex];
3355 btnPtr = &infoPtr->
buttons[nIndex];
3365 if (nOldIndex == nIndex)
3367 if (nOldIndex != -1)
3375 if (nOldIndex != -1)
3400 custInfo.
tbInfo = infoPtr;
3422 if ((nIndex < 0) || (nIndex >= infoPtr->
nNumButtons))
3425 memset(&nmtb, 0,
sizeof(nmtb));
3439 TRACE(
" simple delete\n");
3447 TRACE(
"complex delete [nIndex=%d]\n", nIndex);
3456 if (nIndex < infoPtr->nNumButtons) {
3487 btnPtr = &infoPtr->
buttons[nIndex];
3541 if ((nIndex < 0) || (nIndex >= infoPtr->
nNumButtons))
3544 btnPtr = &infoPtr->
buttons[nIndex];
3565 if (lpTbInfo ==
NULL)
3574 WARN(
"Invalid button size\n");
3582 btnPtr = &infoPtr->
buttons[nIndex];
3608 }
else if (!bUnicode || lpTbInfo->
pszText)
3641 if (lpStr)
lstrcpyW (lpStr, lpText);
3703 TRACE(
"hwnd = %p, lptbim = %p\n", infoPtr->
hwndSelf, lptbim);
3705 *lptbim = infoPtr->
tbim;
3725 btnPtr = &infoPtr->
buttons[nIndex];
3726 if ((nIndex < 0) || (nIndex >= infoPtr->
nNumButtons))
3752 TRACE(
"maximum size %d x %d\n",
3763 if (pMetrics ==
NULL || pMetrics->
cbSize !=
sizeof(*pMetrics))
3774 pMetrics->
cxBarPad = infoPtr->szBarPadding.cx;
3775 pMetrics->
cyBarPad = infoPtr->szBarPadding.cy;
3805 btnPtr = &infoPtr->
buttons[nIndex];
3806 if ((nIndex < 0) || (nIndex >= infoPtr->
nNumButtons))
3824 return infoPtr->
nRows;
3867 TRACE(
"%s hwnd=%p\n",
3894 btnPtr = &infoPtr->
buttons[nIndex];
3900 btnPtr->
fsState &= ~TBSTATE_HIDDEN;
3902 if (oldState != btnPtr->
fsState) {
3929 btnPtr = &infoPtr->
buttons[nIndex];
3935 btnPtr->
fsState &= ~TBSTATE_INDETERMINATE;
3937 if(oldState != btnPtr->
fsState)
3959 }
else if (nIndex < 0)
3962 TRACE(
"inserting button index=%d\n", nIndex);
3965 TRACE(
"adjust index=%d\n", nIndex);
4068 WCHAR wszAccel[] = {
'&',wAccel,0};
4071 TRACE(
"hwnd = %p, wAccel = %x(%s), pIDButton = %p\n",
4088 if ((lpszStr[0] ==
'&') && (lpszStr[1] ==
'&'))
4093 if (!
wcsnicmp(lpszStr, wszAccel, iLen))
4113 TRACE(
"hwnd = %p, Id = %d, fMark = 0%d\n", infoPtr->
hwndSelf,
Id, fMark);
4119 btnPtr = &infoPtr->
buttons[nIndex];
4125 btnPtr->
fsState &= ~TBSTATE_MARKED;
4127 if(oldState != btnPtr->
fsState)
4141 else if (*
pIndex == nIndex)
4148 else if (*
pIndex == nIndex)
4161 TRACE(
"hwnd=%p, Id=%d, nMoveIndex=%d\n", infoPtr->
hwndSelf,
Id, nMoveIndex);
4164 if ((nIndex == -1) || (nMoveIndex < 0))
4173 if (nIndex < nMoveIndex)
4175 nCount = nMoveIndex - nIndex;
4184 else if (nIndex > nMoveIndex)
4186 nCount = nIndex - nMoveIndex;
4215 btnPtr = &infoPtr->
buttons[nIndex];
4221 btnPtr->
fsState &= ~TBSTATE_PRESSED;
4223 if(oldState != btnPtr->
fsState)
4235 int i = 0, nOldButtons = 0,
pos = 0;
4236 int nOldBitmaps, nNewBitmaps = 0;
4239 TRACE(
"hInstOld %p nIDOld %lx hInstNew %p nIDNew %lx nButtons %x\n",
4245 FIXME(
"changing standard bitmaps not implemented\n");
4249 FIXME(
"resources not in the current module not implemented\n");
4254 TRACE(
"tbimapinfo %d hInstOld %p nIDOld %x\n",
i, tbi->
hInst, tbi->
nID);
4262 TRACE(
"tbimapinfo changed %d hInstOld %p nIDOld %x\n",
i, tbi->
hInst, tbi->
nID);
4268 if (nOldButtons == 0)
4270 WARN(
"No hinst/bitmap found! hInst %p nID %lx\n", lpReplace->
hInstOld, lpReplace->
nIDOld);
4287 for (
i =
pos + nOldBitmaps - 1;
i >=
pos;
i--)
4299 TRACE(
" pos %d %d old bitmaps replaced by %d new ones.\n",
4300 pos, nOldBitmaps, nNewBitmaps);
4318 memset( &save, 0,
sizeof(save) );
4395 memset(&nmtbr, 0,
sizeof(nmtbr));
4479 if (
idx == -1)
continue;
4487 memset( &bi, 0,
sizeof(bi) );
4520 if (lpSave ==
NULL)
return 0;
4537 if (lpSave ==
NULL)
return 0;
4546 if (!pszValueName)
goto exit;
4555 Free (pszValueName);
4567 TRACE(
"hwnd=%p, bAnchor = %s\n", infoPtr->
hwndSelf, bAnchor ?
"TRUE" :
"FALSE");
4587 FIXME(
"wParam is %ld. Perhaps image list index?\n",
wParam);
4596 TRACE(
"%d buttons, undoc change to bitmap size : %d-%d -> %d-%d\n",
4614 if ((himlDef == infoPtr->
himlInt) &&
4644 btnPtr = &infoPtr->
buttons[nIndex];
4652 btnPtr->
cx = lptbbi->
cx;
4662 oldBtnRect = btnPtr->
rect;
4680 if ((
cx < 0) || (
cy < 0))
4699 if (
cx == 0)
cx = 24;
4700 if (
cy == 0)
cy = 22;
4730 TRACE(
"matches current width, min=%d, max=%d, no recalc\n",
4742 TRACE(
"number of buttons %d, cx=%d, cy=%d, recalcing\n",
4756 if ((nIndex < 0) || (nIndex >= infoPtr->
nNumButtons))
4763 FIXME(
"change tool tip\n");
4821 FIXME(
"Unknown Toolbar Extended Style 0x%08x. Please report.\n",
4874 nmhotitem.
idOld = oldBtnPtr->idCommand;
4879 nmhotitem.
idOld = 0;
4884 btnPtr = &infoPtr->
buttons[nHit];
4890 nmhotitem.
idNew = 0;
4898 oldBtnPtr->bHot =
FALSE;
4918 TRACE(
"hwnd = %p, nHotItem = %d\n", infoPtr->
hwndSelf, nHotItem);
4931 if (nOldHotItem < 0)
4970 TRACE(
"hwnd %p, new himl=%p, id = %d, count=%d, bitmap w=%d, h=%d\n",
4988 if(infoPtr->
nIndent != nIndent)
5010 if ((lptbim->
iButton == -1) ||
5014 infoPtr->
tbim = *lptbim;
5019 ERR(
"Invalid button index %d\n", lptbim->
iButton);
5052 if (pMetrics ==
NULL || pMetrics->
cbSize !=
sizeof(*pMetrics))
5064 infoPtr->szBarPadding.cx = pMetrics->
cxBarPad;
5065 infoPtr->szBarPadding.cy = pMetrics->
cyBarPad;
5102 TRACE(
"cx=%d, cy=%d\n",
5118 return (
LRESULT)hwndOldNotify;
5130 TRACE(
"Setting rows to %d (%d)\n", rows, bLarger);
5132 if(infoPtr->
nRows != rows)
5159 btnPtr[
i].
fsState &= ~TBSTATE_WRAP;
5167 if (seps)
FIXME(
"Separators unhandled\n");
5174 if (bLarger && idealWrap > 1)
5176 int resRows = (infoPtr->
nNumButtons + (idealWrap-1)) / idealWrap;
5177 int moreRows = (infoPtr->
nNumButtons + (idealWrap-2)) / (idealWrap-1);
5179 if (resRows < rows && moreRows > rows)
5182 TRACE(
"Changing idealWrap due to bLarger (now %d)\n", idealWrap);
5186 curColumn = curRow = 0;
5188 TRACE(
"Trying to wrap at %d (%d,%d,%d)\n", idealWrap,
5205 if (curColumn > (idealWrap-1)) {
5211 TRACE(
"Result - %d rows\n", curRow + 1);
5252 btnPtr = &infoPtr->
buttons[nIndex];
5276 for (
i = 0;
i <
info->nNumButtons;
i++)
5318 TRACE(
"hwnd=%p, hwndTooltip=%p\n", infoPtr->
hwndSelf, hwndTooltip);
5330 TRACE(
"%s hwnd=%p\n",
5355 TRACE(
"new colors Hl=%x Shd=%x, old colors Hl=%x Shd=%x\n",
5373 if (iOldVersion == 6)
5397 TRACE(
"hwnd=%p, iString=%d, buffersize=%d, string=%p\n", infoPtr->
hwndSelf, iString, buffersize,
str);
5399 if (iString < infoPtr->nNumStrings)
5407 WARN(
"String index %d out of range (largest is %d)\n", iString, infoPtr->
nNumStrings - 1);
5422 if (iString < infoPtr->nNumStrings)
5436 WARN(
"String index %d out of range (largest is %d)\n", iString, infoPtr->
nNumStrings - 1);
5444 FIXME(
"hwnd=%p, wParam=0x%08lx, size.cx=%d, size.cy=%d stub\n",
hwnd,
wParam, pSize->
cx, pSize->
cy);
5456 TRACE(
"old item=%d, new item=%d, flags=%08x\n",
5459 if (nHotItem < 0 || nHotItem > infoPtr->
nNumButtons)
5467 return (nOldHotItem < 0) ? -1 : (
LRESULT)nOldHotItem;
5475 TRACE(
"hwnd=%p iListGap=%d\n", infoPtr->
hwndSelf, iListGap);
5508 TRACE(
"wParam %ld, lParam 0x%08lx -> 0x%08x 0x%08x\n",
5513 if (lpsize->
cx == -1) {
5537 TRACE(
"set to -> 0x%08x 0x%08x\n",
5538 lpsize->
cx, lpsize->
cy);
5638 DWORD dwEraseCustDraw = 0;
5649 dwEraseCustDraw = ntfret & 0xffff;
5652 switch (dwEraseCustDraw)
5659 FIXME(
"[%p] response %d not handled to NM_CUSTOMDRAW (CDDS_PREERASE)\n",
5688 dwEraseCustDraw = ntfret & 0xffff;
5689 switch (dwEraseCustDraw)
5696 FIXME(
"[%p] response %d not handled to NM_CUSTOMDRAW (CDDS_POSTERASE)\n",
5720 if ((nNewHotItem + iDirection < 0) ||
5721 (nNewHotItem + iDirection >= infoPtr->
nNumButtons))
5732 nNewHotItem += iDirection;
5808 BOOL bDragKeyPressed;
5828 btnPtr = &infoPtr->
buttons[nHit];
5850 arrowRect = btnPtr->
rect;
5869 memset(&nmtb, 0,
sizeof(nmtb));
5873 TRACE(
"TBN_DROPDOWN responded with %ld\n",
res);
5881 btnPtr->
fsState &= ~TBSTATE_PRESSED;
5917 memset(&nmtb, 0,
sizeof(nmtb));
5997 memset(&tbb, 0,
sizeof(tbb));
6033 btnPtr->
fsState &= ~TBSTATE_PRESSED;
6039 if ((nOldIndex != nHit) &&
6046 btnPtr->
fsState &= ~TBSTATE_CHECKED;
6052 if (nOldIndex != -1)
6068 memset(&nmtb, 0,
sizeof(nmtb));
6156 btnPtr->
fsState &= ~TBSTATE_PRESSED;
6190 btnPtr->
fsState &= ~TBSTATE_PRESSED;
6270 btnPtr->
fsState &= ~TBSTATE_PRESSED;
6330 infoPtr->
cxMin = -1;
6331 infoPtr->
cxMax = -1;
6356 infoPtr->szSpacing.cx = 0;
6357 infoPtr->szSpacing.cy = 0;
6358 memset(&infoPtr->themeMargins, 0 ,
sizeof(infoPtr->themeMargins));
6446 wszBuffer[0] =
'\0';
6557 TRACE(
"TTN_GETDISPINFOW - got string %s\n",
debugstr_w(lpnmtdi->lpszText));
6562 if (lpnmtdi->lpszText && *lpnmtdi->lpszText)
6616 switch (lpnmh->
code)
6624 TRACE(
"processed PGN_CALCSIZE, returning horz size = %d\n",
6629 TRACE(
"processed PGN_CALCSIZE, returning vert size = %d\n",
6641 TRACE(
"processed PGN_SCROLL, returning scroll=%d, dir=%d\n",
6650 FIXME(
"TTN_GETDISPINFOA - should not be received; please report\n");
6673 ERR(
"wrong response to WM_NOTIFYFORMAT (%ld), assuming ANSI\n",
6750 TRACE(
"set to %s\n",
6751 (
wParam) ?
"TRUE" :
"FALSE");
6756 return (oldredraw) ? 1 : 0;
6763 TRACE(
"sizing toolbar\n");
6768 DWORD min_x, max_x, min_y, max_y;
6794 SetRect(&delta_width, min_x, 0, max_x, min_y);
6795 SetRect(&delta_height, 0, min_y, max_x, max_y);
6839 memset(&infoPtr->themeMargins, 0 ,
sizeof(infoPtr->themeMargins));
6858 TRACE(
"hwnd=%p msg=%x wparam=%lx lparam=%lx\n",
7225 case WM_NOTIFYFORMAT:
7244 case WM_STYLECHANGED:
7249 case WM_THEMECHANGED:
7271 ERR(
"unknown msg %04x wp=%08lx lp=%08lx\n",
7313TOOLBARv6_Register (
void)
7330TOOLBARv6_Unregister (
void)
7376 for (
i = 0;
i < *cies;
i++)
7394 for (
i = 0;
i < cies;
i++)
7396 if (pies[
i]->
id ==
id)
7414 himlDef = pie->
himl;
static const char * wine_dbgstr_rect(const RECT *prc)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
PVOID ReAlloc(IN DWORD dwFlags, IN PVOID lpMem, IN SIZE_T dwBytes)
PVOID Alloc(IN DWORD dwFlags, IN SIZE_T dwBytes)
#define RegCloseKey(hKey)
INT Str_GetPtrWtoA(LPCWSTR lpSrc, LPSTR lpDest, INT nMaxLen) DECLSPEC_HIDDEN
BOOL COMCTL32_IsReflectedMessage(UINT uMsg) DECLSPEC_HIDDEN
#define IDC_AVAILBTN_LBOX
#define IDC_TOOLBARBTN_LBOX
BOOL Str_SetPtrAtoW(LPWSTR *lppDest, LPCSTR lpSrc) DECLSPEC_HIDDEN
void COMCTL32_DrawInsertMark(HDC hDC, const RECT *lpRect, COLORREF clrInsertMark, BOOL bHorizontal) DECLSPEC_HIDDEN
void COMCTL32_EnsureBitmapSize(HBITMAP *pBitmap, int cxMinWidth, int cyMinHeight, COLORREF crBackground) DECLSPEC_HIDDEN
VOID COMCTL32_RefreshSysColors(void) DECLSPEC_HIDDEN
INT WINAPI Str_GetPtrW(LPCWSTR, LPWSTR, INT)
COMCTL32_SysColor comctl32_color
BOOL WINAPI _TrackMouseEvent(TRACKMOUSEEVENT *ptme)
HBITMAP WINAPI CreateMappedBitmap(HINSTANCE hInstance, INT_PTR idBitmap, UINT wFlags, LPCOLORMAP lpColorMap, INT iNumMaps)
HBRUSH COMCTL32_hPattern55AABrush
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegSetValueExW(_In_ HKEY hKey, _In_ LPCWSTR lpValueName, _In_ DWORD Reserved, _In_ DWORD dwType, _In_ CONST BYTE *lpData, _In_ DWORD cbData)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
LONG WINAPI RegCreateKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
BOOL WINAPI ImageList_SetIconSize(HIMAGELIST himl, INT cx, INT cy)
BOOL WINAPI ImageList_Draw(HIMAGELIST himl, INT i, HDC hdc, INT x, INT y, UINT fStyle)
BOOL WINAPI ImageList_Remove(HIMAGELIST himl, INT i)
BOOL WINAPI ImageList_GetImageInfo(HIMAGELIST himl, INT i, IMAGEINFO *pImageInfo)
BOOL WINAPI ImageList_DrawIndirect(IMAGELISTDRAWPARAMS *pimldp)
BOOL WINAPI ImageList_Destroy(HIMAGELIST himl)
BOOL WINAPI ImageList_DrawEx(HIMAGELIST himl, INT i, HDC hdc, INT x, INT y, INT dx, INT dy, COLORREF rgbBk, COLORREF rgbFg, UINT fStyle)
INT WINAPI ImageList_GetImageCount(HIMAGELIST himl)
INT WINAPI ImageList_AddMasked(HIMAGELIST himl, HBITMAP hBitmap, COLORREF clrMask)
HIMAGELIST WINAPI ImageList_Create(INT cx, INT cy, UINT flags, INT cInitial, INT cGrow)
BOOL WINAPI ImageList_SetImageCount(HIMAGELIST himl, UINT iImageCount)
BOOL WINAPI ImageList_GetIconSize(HIMAGELIST himl, INT *cx, INT *cy)
BOOL WINAPI Str_SetPtrW(LPWSTR *lppDest, LPCWSTR lpSrc)
#define WideCharToMultiByte
#define MultiByteToWideChar
HRSRC WINAPI FindResourceW(HINSTANCE hModule, LPCWSTR name, LPCWSTR type)
#define IS_INTRESOURCE(x)
_ACRTIMP size_t __cdecl strlen(const char *)
HRESULT WINAPI DrawThemeBackground(HTHEME hTheme, HDC hdc, int iPartId, int iStateId, const RECT *pRect, const RECT *pClipRect)
HRESULT WINAPI DrawThemeText(HTHEME hTheme, HDC hdc, int iPartId, int iStateId, LPCWSTR pszText, int iCharCount, DWORD dwTextFlags, DWORD dwTextFlags2, const RECT *pRect)
HRESULT WINAPI GetThemeMargins(HTHEME hTheme, HDC hdc, int iPartId, int iStateId, int iPropId, RECT *prc, MARGINS *pMargins)
HRESULT WINAPI GetThemeColor(HTHEME hTheme, int iPartId, int iStateId, int iPropId, COLORREF *pColor)
HTHEME WINAPI GetWindowTheme(HWND hwnd)
HRESULT WINAPI CloseThemeData(HTHEME hTheme)
HTHEME WINAPI OpenThemeData(HWND hwnd, LPCWSTR pszClassList)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
BOOL WINAPI MakeDragList(HWND hwndLB)
VOID WINAPI DrawInsert(HWND hwndParent, HWND hwndLB, INT nItem)
INT WINAPI LBItemFromPt(HWND hwndLB, POINT pt, BOOL bAutoScroll)
static VOID BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Height *Stride) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Stride)
#define wrap(journal, var)
GLint GLint GLint GLint GLint x
GLuint GLuint GLsizei count
GLint GLint GLsizei GLsizei height
GLint GLint GLint GLint GLint GLint y
GLint GLint GLsizei width
GLdouble GLdouble GLdouble GLdouble top
GLenum GLuint GLenum GLsizei const GLchar * buf
GLenum const GLfloat * params
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
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 GLint GLint j
#define memcpy(s1, s2, n)
#define memmove(s1, s2, n)
#define ERROR_FILE_NOT_FOUND
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static HTHEME(WINAPI *pOpenThemeDataEx)(HWND
_Out_ PULONG _Out_ PULONG pIndex
INT WINAPI DrawTextW(HDC hdc, LPCWSTR str, INT count, LPRECT rect, UINT flags)
#define TB_GETUNICODEFORMAT
#define NM_RELEASEDCAPTURE
#define CDDS_ITEMPOSTPAINT
_Out_opt_ int _Out_opt_ int * cy
#define TB_GETBUTTONINFOA
#define TB_SETEXTENDEDSTYLE
#define IDB_VIEW_LARGE_COLOR
#define CDRF_NOTIFYPOSTERASE
#define TB_ISBUTTONPRESSED
#define TBSTATE_INDETERMINATE
#define TB_GETINSERTMARKCOLOR
#define CDDS_ITEMPREPAINT
#define IDB_HIST_LARGE_COLOR
#define LPSTR_TEXTCALLBACKW
#define TBN_TOOLBARCHANGE
#define TBSTYLE_EX_DRAWDDARROWS
#define TB_GETBUTTONTEXTW
#define CDRF_NOTIFYITEMDRAW
#define TBN_HOTITEMCHANGE
#define TB_GETBUTTONINFOW
#define CDIS_INDETERMINATE
struct tagTOOLINFOW TTTOOLINFOW
#define TB_GETDISABLEDIMAGELIST
#define IDB_HIST_SMALL_COLOR
#define TBSTYLE_EX_MIXEDBUTTONS
#define IDB_VIEW_SMALL_COLOR
#define TB_BUTTONSTRUCTSIZE
#define TB_SETUNICODEFORMAT
#define TB_GETANCHORHIGHLIGHT
#define CCM_SETCOLORSCHEME
#define TB_SETDISABLEDIMAGELIST
#define NM_TOOLTIPSCREATED
#define CDRF_NOTIFYPOSTPAINT
#define TBN_GETBUTTONINFOW
#define IDB_STD_LARGE_COLOR
#define TB_ISBUTTONINDETERMINATE
#define TBN_INITCUSTOMIZE
#define TBSTYLE_EX_HIDECLIPPEDBUTTONS
#define TB_SETBUTTONINFOW
#define TB_SETBOUNDINGSIZE
#define TB_SETANCHORHIGHLIGHT
#define TBCDRF_NOBACKGROUND
#define TBSTYLE_TRANSPARENT
#define TB_GETEXTENDEDSTYLE
#define TOOLBARCLASSNAMEW
#define TBMF_BUTTONSPACING
#define TBN_GETBUTTONINFOA
#define CCM_GETCOLORSCHEME
#define TBSTYLE_REGISTERDROP
#define TB_SETDRAWTEXTFLAGS
struct _TBBUTTON TBBUTTON
#define TB_GETBITMAPFLAGS
#define TB_ISBUTTONHIGHLIGHTED
struct tagTRACKMOUSEEVENT TRACKMOUSEEVENT
struct NMPGSCROLL * LPNMPGSCROLL
#define TBDDRET_TREATPRESSED
#define TB_GETHOTIMAGELIST
#define CCS_NOPARENTALIGN
#define TBCDRF_HILITEHOTTRACK
#define TB_MAPACCELERATORW
#define TBSTYLE_CUSTOMERASE
#define TBSTYLE_EX_VERTICAL
#define TB_SETHOTIMAGELIST
#define TB_SETBUTTONWIDTH
#define TB_GETBUTTONTEXTA
#define TB_SETINSERTMARKCOLOR
#define TB_ISBUTTONCHECKED
#define TB_ISBUTTONHIDDEN
#define TB_SETMAXTEXTROWS
#define TB_ISBUTTONENABLED
#define TB_COMMANDTOINDEX
struct NMPGCALCSIZE * LPNMPGCALCSIZE
#define TB_SETBUTTONINFOA
#define TBN_DELETINGBUTTON
#define BTNS_WHOLEDROPDOWN
#define IDB_STD_SMALL_COLOR
#define TB_MAPACCELERATORA
#define TB_GETIMAGELISTCOUNT
_In_opt_ LPCSTR pszSubKey
struct tagDRAWITEMSTRUCT * LPDRAWITEMSTRUCT
HWND WINAPI SetCapture(_In_ HWND hWnd)
HWND WINAPI ChildWindowFromPoint(_In_ HWND, _In_ POINT)
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
BOOL WINAPI IsWindow(_In_opt_ HWND)
BOOL WINAPI RedrawWindow(_In_opt_ HWND, _In_opt_ LPCRECT, _In_opt_ HRGN, _In_ UINT)
#define GetWindowLongPtrW
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
BOOL WINAPI ReleaseCapture(void)
DWORD WINAPI GetMessagePos(void)
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WM_CAPTURECHANGED
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
HBRUSH WINAPI GetSysColorBrush(_In_ int)
LONG WINAPI SetWindowLongW(_In_ HWND, _In_ int, _In_ LONG)
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
#define LR_CREATEDIBSECTION
ATOM WINAPI RegisterClassW(_In_ CONST WNDCLASSW *)
HANDLE WINAPI LoadImageW(_In_opt_ HINSTANCE hInst, _In_ LPCWSTR name, _In_ UINT type, _In_ int cx, _In_ int cy, _In_ UINT fuLoad)
BOOL WINAPI GetCursorPos(_Out_ LPPOINT)
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
HDC WINAPI GetDCEx(_In_opt_ HWND, _In_opt_ HRGN, _In_ DWORD)
#define SPI_GETICONTITLELOGFONT
#define WM_SYSCOLORCHANGE
HCURSOR WINAPI LoadCursorW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
HANDLE WINAPI CopyImage(_In_ HANDLE, _In_ UINT, _In_ int, _In_ int, _In_ UINT)
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)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
LRESULT WINAPI SendDlgItemMessageW(_In_ HWND, _In_ int, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI PtInRect(_In_ LPCRECT, _In_ POINT)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
BOOL WINAPI DrawEdge(_In_ HDC, _Inout_ LPRECT, _In_ UINT, _In_ UINT)
HWND WINAPI SetFocus(_In_opt_ HWND)
BOOL WINAPI PeekMessageW(_Out_ LPMSG, _In_opt_ HWND, _In_ UINT, _In_ UINT, _In_ UINT)
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
BOOL WINAPI IntersectRect(_Out_ LPRECT, _In_ LPCRECT, _In_ LPCRECT)
BOOL WINAPI UpdateWindow(_In_ HWND)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
HDC WINAPI GetDC(_In_opt_ HWND)
LONG WINAPI GetMessageTime(void)
BOOL WINAPI SystemParametersInfoW(_In_ UINT uiAction, _In_ UINT uiParam, _Inout_opt_ PVOID pvParam, _In_ UINT fWinIni)
BOOL WINAPI SetRectEmpty(_Out_ LPRECT)
HWND WINAPI GetParent(_In_ HWND)
_In_ int _Inout_ LPRECT lprc
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
int WINAPI GetDlgCtrlID(_In_ HWND)
BOOL WINAPI UnregisterClassW(_In_ LPCWSTR, HINSTANCE)
BOOL WINAPI DrawFocusRect(_In_ HDC, _In_ LPCRECT)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
#define MAKEINTRESOURCEW(i)
HBITMAP WINAPI LoadBitmapW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
#define SetWindowLongPtrW
BOOL WINAPI InflateRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI DestroyWindow(_In_ HWND)
BOOL WINAPI EqualRect(_In_ LPCRECT, _In_ LPCRECT)
int WINAPI GetSystemMetrics(_In_ int)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
SHORT WINAPI GetKeyState(_In_ int)
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)
INT_PTR WINAPI DialogBoxParamW(_In_opt_ HINSTANCE, _In_ LPCWSTR, _In_opt_ HWND, _In_opt_ DLGPROC, _In_ LPARAM)
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
BOOL WINAPI ScreenToClient(_In_ HWND, _Inout_ LPPOINT)
COLORREF clrHighlightText
COLORREF clrTextHighlight
COLORREF clrHighlightHotTrack
SYMCRYPT_MAGIC_FIELD SYMCRYPT_ASYM_ALIGN union @5328 ti
TW_UINT32 TW_UINT16 TW_UINT16 MSG
#define TMT_CONTENTMARGINS
_In_ WDFCOLLECTION _In_ ULONG Index
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
BOOL WINAPI GetTextMetricsW(_In_ HDC, _Out_ LPTEXTMETRICW)
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)
int WINAPI GetDeviceCaps(_In_opt_ HDC, _In_ int)
COLORREF WINAPI SetBkColor(_In_ HDC, _In_ COLORREF)
BOOL WINAPI SetWindowOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
BOOL WINAPI RectVisible(_In_ HDC, _In_ LPCRECT)
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)
BOOL WINAPI ExtTextOutW(_In_ HDC hdc, _In_ int x, _In_ int y, _In_ UINT options, _In_opt_ const RECT *lprect, _In_reads_opt_(c) LPCWSTR lpString, _In_ UINT c, _In_reads_opt_(c) const INT *lpDx)
BOOL WINAPI OffsetWindowOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
BOOL WINAPI PatBlt(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD)
HBITMAP WINAPI CreateCompatibleBitmap(_In_ HDC hdc, _In_ INT cx, _In_ INT cy)
BOOL WINAPI Rectangle(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int)
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)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
BOOL WINAPI LineTo(_In_ HDC, _In_ int, _In_ int)
BOOL WINAPI GetTextExtentPoint32W(_In_ HDC hdc, _In_reads_(c) LPCWSTR lpString, _In_ int c, _Out_ LPSIZE psizl)
_In_opt_ PALLOCATE_FUNCTION _In_opt_ PFREE_FUNCTION Free