52 (rgbBtnText == black && rgbBtnFace == white) ||
53 (rgbBtnText == white && rgbBtnFace == black));
194CUIFTheme::GetThemeSysColor(
INT iColorId)
202CUIFTheme::GetThemeSysSize(
int iSizeId)
210CUIFTheme::SetActiveTheme(
LPCWSTR pszClassList,
INT iPartId,
INT iStateId)
232 m_rc = { 0, 0, 0, 0 };
365 SetFontToThis(
hFont);
460void CUIFObject::DetachWndObj()
635 case 1:
return new(
cicNoThrow) CUIFSchemeOff10(1);
636 case 2:
return new(
cicNoThrow) CUIFSchemeOff10(2);
637 case 3:
return new(
cicNoThrow) CUIFSchemeOff10(3);
689CUIFSchemeDef::GetCtrlFaceOffset(
DWORD dwUnknownFlags,
DWORD dwDrawFlags,
LPSIZE pSize)
752CUIFSchemeDef::DrawCtrlEdge(
755 DWORD dwUnknownFlags,
800CUIFSchemeDef::DrawCtrlText(
877 bBrushCreated =
TRUE;
1164 RECT rc = { 0, 0, bm.bmWidth, bm.bmHeight };
1477CUIFWindow::Initialize()
1487 wcx.
cbSize =
sizeof(wcx);
1520 return CUIFObject::Initialize();
1568CUIFWindow::GetWndStyle()
1588CUIFWindow::GetWndStyleEx()
1613void CUIFWindow::Show(
BOOL bVisible)
1655CUIFWindow::SetCapture(
BOOL bSet)
1713 CUIFObject::SetRect(&
Rect);
1717CUIFWindow::ClientRectToWindowRect(
LPRECT lpRect)
1727 style = GetWndStyle();
1728 exstyle = GetWndStyleEx();
1734CUIFWindow::GetWindowFrameSize(
LPSIZE pSize)
1736 RECT rc = { 0, 0, 0, 0 };
1738 ClientRectToWindowRect(&rc);
1744CUIFWindow::OnAnimationEnd()
1850 case WM_THEMECHANGED:
1889 OnMouseOutFromWindow(pt2.
x, pt2.
y);
1949 case WM_NOTIFYFORMAT:
1951 case WM_DISPLAYCHANGE:
2024 return ::SystemParametersInfo(SPI_GETWORKAREA, 0, prcWorkArea, 0);
2026 prcWorkArea->
left = prcWorkArea->
top = 0;
2110 CUIFObject::PaintObject(hMemDC,
prc);
2153 CUIFObject::RemoveUIObj(pRemove);
2168 if (!pFound || OnSetCursor(
uMsg,
pt.x,
pt.y))
2179 pFound->OnMouseMove(
pt.x,
pt.y);
2182 pFound->OnLButtonDown(
pt.x,
pt.y);
2185 pFound->OnLButtonUp(
pt.x,
pt.y);
2188 pFound->OnRButtonDown(
pt.x,
pt.y);
2191 pFound->OnRButtonUp(
pt.x,
pt.y);
2194 pFound->OnMButtonDown(
pt.x,
pt.y);
2197 pFound->OnMButtonUp(
pt.x,
pt.y);
2268CUIFShadow::Initialize()
2271 return CUIFWindow::Initialize();
2275CUIFShadow::GetWndStyleEx()
2277 DWORD exstyle = CUIFWindow::GetWndStyleEx();
2284CUIFShadow::OnPaint(
HDC hDC)
2320CUIFShadow::Show(
BOOL bVisible)
2376 if (nDelayTime == -1)
2377 return ::GetDoubleClickTime() / 5;
2383 if (nDelayTime == -1)
2390 if (nDelayTime == -1)
2391 return ::GetDoubleClickTime();
2504 RECT rcText = { 0, 0, 0, 0 };
2524 ClientRectToWindowRect(&rc);
2549 cyCursor = bm.bmHeight;
2552 cyCursor = bm.bmHeight / 2;
2577 pRect->
top =
Point.
y + cyCursor - yHotspot;
2595 if (pRect->
top < rcMonitor.
top)
2597 pRect->
top = rcMonitor.
top;
2795 2 + bPressed, 2 + bPressed,
2803 (
width - 16) / 2 + bPressed,
2804 (
height - 16) / 2 + bPressed,
2858 xText +
prc->
left + bPressed + 1, yText +
prc->
top + bPressed + 1,
2894 pSize->
cx = bm.bmWidth;
2895 pSize->
cy = bm.bmHeight;
2925 INT tmp = pSize->
cx;
2926 pSize->
cx = pSize->
cy;
2955 bNotInObject = !PtInObject(
pt);
2966 bNotInObject = !PtInObject(
pt);
3016CUIFButton::OnPaintNoTheme(
HDC hDC)
3062void CUIFButton::SetStatus(
UINT uStatus)
3116 DWORD dwDrawFlags = 0;
3130CUIFButton2::OnPaintTheme(
HDC hDC)
3137CUIFButton2::OnPaintNoTheme(
HDC hDC)
3159 INT cxText = 0, cyText = 0, cxContent = 0, cyContent = 0;
3160 INT cxyBorders, cxButton, cyButton;
3180 cxyBorders = ((cyText && cyContent) ? 2 : 0);
3182 cxButton = cxContent;
3183 cyButton = cyText + cyContent + cxyBorders;
3184 if (cxText > cxContent)
3189 cxyBorders = ((cxText && cxContent) ? 2 : 0);
3191 cxButton = cxText + cxContent + cxyBorders;
3192 cyButton = cyContent;
3193 if (cyText > cyButton)
3214 SIZE offsetSize = { 0, 0 };
3215 DWORD dwDrawFlags = MakeDrawFlag();
3216 m_pScheme->GetCtrlFaceOffset(((m_style & 0x200) ? 0xA5 : 0x54),
3221 RECT rcImage, rcText;
3226 rcImage.
right = rcImage.
left + cxContent;
3237 rcImage.
bottom = rcImage.
top + cyContent;
3246 m_pScheme->m_bMirroring =
TRUE;
3248 m_pScheme->DrawCtrlBkgd(
hdcMem,
3250 ((m_style & 0x200) ? 0xA5 : 0x54),
3252 if (m_pszButtonText)
3254 m_pScheme->DrawCtrlText(
hdcMem, &rcText, m_pszButtonText, -1, dwDrawFlags,
3258 if (m_ButtonIcon.m_hIcon)
3259 m_pScheme->DrawCtrlIcon(
hdcMem, &rcImage, m_ButtonIcon.m_hIcon, dwDrawFlags, &m_IconSize);
3260 else if (m_hbmButton1)
3261 m_pScheme->DrawCtrlBitmap(
hdcMem, &rcImage, m_hbmButton1, m_hbmButton2, dwDrawFlags);
3264 m_pScheme->m_bMirroring =
FALSE;
3266 m_pScheme->DrawCtrlEdge(
hdcMem,
3268 ((m_style & 0x200) ? 0xA5 : 0x54),
3327CUIFGripper::OnPaintTheme(
HDC hDC)
3350CUIFGripper::OnPaintNoTheme(
HDC hDC)
3397 0, 0, 0, 0,
L"Marlett");
3409CUIFToolbarMenuButton::OnLButtonUp(
LONG x,
LONG y)
3411 CUIFButton::OnLButtonUp(
x,
y);
3435CUIFToolbarButtonElement::GetToolTip()
3443CUIFToolbarButtonElement::OnLButtonUp(
LONG x,
LONG y)
3445 CUIFButton::OnLButtonUp(
x,
y);
3453CUIFToolbarButtonElement::OnRButtonUp(
LONG x,
LONG y)
3467 DWORD dwToolbarButtonFlags,
3531CUIFToolbarButton::ClearWndObj()
3538 CUIFObject::ClearWndObj();
3542CUIFToolbarButton::DetachWndObj()
3549 CUIFObject::DetachWndObj();
3563CUIFToolbarButton::GetToolTip()
3565 return CUIFObject::GetToolTip();
3569CUIFToolbarButton::SetActiveTheme(
LPCWSTR pszClassList,
INT iPartId,
INT iStateId)
3590 CUIFObject::SetRect(
prc);
3608CUIFToolbarButton::SetToolTip(
LPCWSTR pszToolTip)
3610 CUIFObject::SetToolTip(pszToolTip);
3727CUIFWndFrame::OnPaintTheme(
HDC hDC)
3756CUIFWndFrame::OnPaintNoTheme(
HDC hDC)
3764 else if ( (
m_style & 0xF) == 2 )
3818CUIFBalloonButton::OnPaint(
HDC hDC)
3957CUIFBalloonWindow::Initialize()
3959 CUIFWindow::Initialize();
3975CUIFBalloonWindow::OnCreate(
HWND hWnd)
3982CUIFBalloonWindow::OnDestroy(
HWND hWnd)
4027CUIFBalloonWindow::OnPaint(
HDC hDC)
4063 RECT rc = { 0, 0, 0, 0 };
4064 if (!((
IDOK <= nCommandId) && (nCommandId <=
IDNO)))
4071 pButton->Initialize();
4083 case IDOK: pszText =
L"OK";
break;
4084 case IDCANCEL: pszText =
L"Cancel";
break;
4085 case IDABORT: pszText =
L"&Abort";
break;
4086 case IDRETRY: pszText =
L"&Retry";
break;
4087 case IDIGNORE: pszText =
L"&Ignore";
break;
4088 case IDYES: pszText =
L"&Yes";
break;
4089 default: pszText =
L"&No";
break;
4143 Points[0].
y = Points[2].
y = Points[3].
y =
y;
4154 Points[0].
x = Points[3].
x =
x;
4191 if (
pObject->m_nObjectID == nObjectID)
4226 pSize->
cx = 16 *
tm.tmAveCharWidth;
4227 pSize->
cy =
tm.tmHeight + 10;
4260 if (pszText ==
NULL)
4320 rcMargin.
left = xLeft + iButton * (
size.cx * 3 / 2);
4325 UIObject->SetRect(&rcMargin);
4326 UIObject->Show(
TRUE);
4414 for (iItem = 0; iItem < cItems; )
4422 if (iItem == cItems)
4443 for (iItem = cItems - 1; iItem >= 0; )
4479 CUIFWindow::HandleMouseMsg(
uMsg,
x,
y);
4516 RECT rcItem = { 0, 0, 0, 0 };
4526 pItem->SetRect(&rcItem);
4527 rcItem.
top += cyItem;
4533 cxMax = rcItem.
right;
4558 rcItem.
left -= cxMax;
4599 if (
x > rc.
right - cxMax)
4620 DWORD dwFlags = (bMenuFade ? 0x80000 : dwFlags2) | 0x40000;
4621 if (!AnimateWnd(200,
dwFlags))
4661CUIFMenu::ModalMessageLoop()
4727 if (!((
'A' <= vKey && vKey <=
'Z') || (
'0' <= vKey && vKey <=
'9')))
4779 NONCLIENTMETRICS ncm = {
sizeof(ncm) };
4785 LONG lfHeight = ncm.lfMenuFont.lfHeight;
4787 lfHeight = -lfHeight;
4788 height = (ncm.iMenuHeight + lfHeight) / 2;
4792 0, 0, 0, 0,
L"Marlett");
4810 if (pOldItem == pItem)
4815 pOldItem->CallOnPaint();
4829 UINT nSelectedID = -1;
4855CUIFMenu::UninitShow()
4927 const WCHAR *pch0 = pszText;
4929 for (ich1 = 0; *pch0 && *pch0 !=
L'\t'; ++ich1, ++pch0)
4931 if (*pch0 ==
L'&' && *++pch0 !=
L'&')
4951 for (ich2 = 0; *pch0; ++ich2)
4965CUIFMenuItem::InitMenuExtent()
5028 if (
width > bm.bmWidth)
5031 xLeft += (
width - bm.bmWidth) / 2;
5033 if (
height > bm.bmHeight)
5036 yTop += (
height - bm.bmHeight) / 2;
5070 SIZE PrePrefixSize, PostPrefixSize;
5077 rc.
left = xText + PrePrefixSize.
cx + !bHeadPrefix;
5078 rc.
right = xText + PostPrefixSize.
cx;
5079 rc.
top = (yText + PostPrefixSize.
cy) - 1;
5080 rc.
bottom = yText + PostPrefixSize.
cy;
5113CUIFMenuItem::OnPaint(
HDC hDC)
5122CUIFMenuItem::OnPaintO10(
HDC hDC)
5196CUIFMenuItem::OnPaintDef(
HDC hDC)
5261CUIFMenuItem::OnTimer()
5291CUIFMenuItemSeparator::InitMenuExtent()
5298CUIFMenuItemSeparator::OnPaintDef(
HDC hDC)
5312CUIFMenuItemSeparator::OnPaintO10(
HDC hDC)
5370 return (rc.
left <= 0) && (rc.
top <= 0) &&
5385 pSize->
cx = bm.bmWidth;
5386 pSize->
cy = bm.bmHeight;
5423 pColorTable->InitColor();
5424 pColorTable->InitBrush();
5430 pColorTable->InitColor();
5431 pColorTable->InitBrush();
static HWND CreateWnd(HINSTANCE hinst, PLARGE_STRING clsName, PLARGE_STRING clsVer, PLARGE_STRING wndName)
static unsigned char bytes[4]
BOOL Move(DWORD dwLen, PBYTE &pData, DWORD &dwSize)
static LRESULT OnNotify(HWND hWnd, LPARAM lParam)
static VOID OnTimer(IN HWND hwndDlg, IN PSYS_SHUTDOWN_PARAMS pShutdownParams)
#define UlongToHandle(ul)
void cicUpdateUIFSys(void)
HBITMAP cicMirrorBitmap(HBITMAP hBitmap, HBRUSH hbrBack)
STDMETHODIMP_(void) CUIFObject
@unimplemented
void cicUpdateUIFScheme(void)
void cicDrawMaskBmpOnDC(HDC hDC, LPCRECT prc, HBITMAP hbmp, HBITMAP hbmpMask)
HBITMAP cicCreateDisabledBitmap(LPCRECT prc, HBITMAP hbmMask, HBRUSH hbr1, HBRUSH hbr2, BOOL bPressed)
BOOL cicGetIconBitmaps(HICON hIcon, HBITMAP *hbm1, HBITMAP *hbm2, const SIZE *pSize)
void cicInitUIFScheme(void)
HBRUSH cicCreateDitherBrush(VOID)
CUIFScheme * cicCreateUIFScheme(DWORD type)
@unimplemented
BOOL cicIsFullScreenSize(HWND hWnd)
HBITMAP cicCreateShadowMaskBmp(LPRECT prc, HBITMAP hbm1, HBITMAP hbm2, HBRUSH hbr1, HBRUSH hbr2)
void cicGetScreenRect(POINT pt, LPRECT prc)
HBITMAP cicCreateMaskBmp(LPCRECT prc, HBITMAP hbm1, HBITMAP hbm2, HBRUSH hbr, COLORREF rgbColor, COLORREF rgbBack)
void cicGetWorkAreaRect(POINT pt, LPRECT prc)
HBITMAP cicChangeBitmapColor(LPCRECT prc, HBITMAP hbm, COLORREF rgbBack, COLORREF rgbFore)
void cicDoneUIFScheme(void)
BOOL cicGetIconSize(HICON hIcon, LPSIZE pSize)
void cicInitUIFUtil(void)
void cicDoneUIFUtil(void)
HBITMAP cicConvertBlackBKGBitmap(LPCRECT prc, HBITMAP hbm1, HBITMAP hbm2, HBRUSH hBrush)
decltype(&GetThemeFont) FN_GetThemeFont
void cicUpdateUIFSys(void)
decltype(&GetThemeBackgroundContentRect) FN_GetThemeBackgroundContentRect
decltype(&GetThemeColor) FN_GetThemeColor
HBITMAP cicMirrorBitmap(HBITMAP hBitmap, HBRUSH hbrBack)
void cicUpdateUIFScheme(void)
decltype(&OpenThemeData) FN_OpenThemeData
HBITMAP cicCreateDisabledBitmap(LPCRECT prc, HBITMAP hbmMask, HBRUSH hbr1, HBRUSH hbr2, BOOL bPressed)
@ UIF_BALLOON_WINDOW_YESNO
@ UIF_BALLOON_WINDOW_TYPE_MASK
BOOL cicGetIconBitmaps(HICON hIcon, HBITMAP *hbm1, HBITMAP *hbm2, const SIZE *pSize)
decltype(&GetThemeSysColor) FN_GetThemeSysColor
decltype(&DrawThemeBackground) FN_DrawThemeBackground
HBRUSH cicCreateDitherBrush(VOID)
decltype(&GetThemeTextExtent) FN_GetThemeTextExtent
CUIFScheme * cicCreateUIFScheme(DWORD type)
@unimplemented
decltype(&CloseThemeData) FN_CloseThemeData
decltype(&DrawThemeParentBackground) FN_DrawThemeParentBackground
HBITMAP cicCreateMaskBmp(LPCRECT prc, HBITMAP hbm1, HBITMAP hbm2, HBRUSH hbr, COLORREF rgbColor, COLORREF rgbBack)
decltype(&GetThemeMargins) FN_GetThemeMargins
@ UIF_BUTTON_V_ALIGN_BOTTOM
@ UIF_BUTTON_V_ALIGN_MIDDLE
@ UIF_BUTTON_V_ALIGN_MASK
@ UIF_BUTTON_H_ALIGN_CENTER
@ UIF_BUTTON_H_ALIGN_RIGHT
@ UIF_BUTTON_H_ALIGN_MASK
@ UIF_WINDOW_ENABLETHEMED
BOOL cicGetIconSize(HICON hIcon, LPSIZE pSize)
decltype(&DrawThemeIcon) FN_DrawThemeIcon
decltype(&GetThemeBackgroundExtent) FN_GetThemeBackgroundExtent
decltype(&GetThemePartSize) FN_GetThemePartSize
decltype(&GetThemeSysSize) FN_GetThemeSysSize
decltype(&DrawThemeText) FN_DrawThemeText
decltype(&DrawThemeEdge) FN_DrawThemeEdge
void GetButtonSize(LPSIZE pSize)
void AddButton(UINT nCommandId)
COLORREF GetBalloonBkColor()
void SetTargetPos(POINT ptTarget)
void SetExcludeRect(LPCRECT prcExclude)
CUIFBalloonButton * FindButton(UINT nCommandID)
void SetText(LPCWSTR pszText)
void SendNotification(WPARAM wParam)
~CUIFBalloonWindow() override
void PaintMessageProc(HDC hDC, LPRECT prc, LPCWSTR pszText)
void AdjustPos()
@unimplemented
COLORREF GetBalloonTextColor()
HRGN CreateRegion(LPCRECT prc)
void GetMargin(LPRECT prcMargin)
CUIFObject * FindUIObject(UINT nObjectID)
void PaintFrameProc(HDC hDC, LPCRECT prc)
BOOL SetDIB(LONG cx, LONG cy, WORD cPlanes, WORD cBitCount)
static CUIFBitmapDC * s_phdcDst
void Uninit(BOOL bKeep=FALSE)
static BOOL s_fInitBitmapDCs
static CUIFBitmapDC * s_phdcSrc
CUIFBitmapDC(BOOL bMemory)
static CUIFBitmapDC * s_phdcMask
BOOL SetBitmap(HBITMAP hBitmap)
HBRUSH GetBrush(INT iColor)
COLORREF GetColor(INT iColor) const
HBRUSH GetBrush(INT iColor)
CUIFGripper(CUIFObject *pParent, LPCRECT prc, DWORD style)
HIMAGELIST GetImageList(BOOL bMirror)
BOOL Add(CUIFObject *pObject)
BOOL Remove(CUIFObject *pObject)
void SetScheme(CUIFScheme *scheme)
CUIFObject * ObjectFromPoint(POINT pt)
friend class CUIFBalloonWindow
CUIFObject(CUIFObject *pParent, DWORD nObjectID, LPCRECT prc, DWORD style)
@unimplemented
CUIFObjectArray m_ObjectArray
void StartTimer(WPARAM wParam)
LRESULT NotifyCommand(WPARAM wParam, LPARAM lParam)
LPCRECT HBITMAP HBITMAP hbm2
LPCRECT LPCWSTR INT cchText
LPCRECT DWORD dwUnknownFlags
static CUIFColorTableSys * s_pColorTableSys
LPCRECT LPCWSTR INT DWORD BOOL bRight
static CUIFColorTableOff10 * s_pColorTableOff10
void InitShadow()
@unimplemented
void OnOwnerWndMoved(BOOL bDoSize)
COLORREF m_rgbShadowColor
CUIFWindow * m_pShadowOwner
void InitSettings()
@unimplemented
static CUIFSystemInfo * s_pSystemInfo
STDMETHOD() DrawThemeParentBackground(HWND hwnd, HDC hDC, LPRECT prc)
static FN_GetThemeFont s_fnGetThemeFont
static FN_GetThemeSysSize s_fnGetThemeSysSize
STDMETHOD() DrawThemeBackground(HDC hDC, int iStateId, LPCRECT pRect, LPCRECT pClipRect)
STDMETHOD() GetThemeFont(HDC hDC, int iStateId, int iPropId, LOGFONTW *pFont)
STDMETHOD() GetThemeBackgroundExtent(HDC hDC, int iStateId, LPCRECT pContentRect, LPRECT pExtentRect)
STDMETHOD() GetThemeColor(int iStateId, int iPropId, COLORREF *pColor)
static FN_GetThemeMargins s_fnGetThemeMargins
STDMETHOD() GetThemeMargins(HDC hDC, int iStateId, int iPropId, LPRECT prc, MARGINS *pMargins)
HRESULT InternalOpenThemeData(HWND hWnd)
STDMETHOD() DrawThemeText(HDC hDC, int iStateId, LPCWSTR pszText, int cchText, DWORD dwTextFlags, DWORD dwTextFlags2, LPCRECT pRect)
static FN_DrawThemeIcon s_fnDrawThemeIcon
static FN_GetThemePartSize s_fnGetThemePartSize
STDMETHOD() DrawThemeIcon(HDC hDC, int iStateId, LPCRECT pRect, HIMAGELIST himl, int iImageIndex)
static FN_DrawThemeBackground s_fnDrawThemeBackground
STDMETHOD() DrawThemeEdge(HDC hDC, int iStateId, LPCRECT pDestRect, UINT uEdge, UINT uFlags, LPRECT pContentRect)
STDMETHOD() GetThemePartSize(HDC hDC, int iStateId, LPRECT prc, THEMESIZE eSize, SIZE *psz)
STDMETHOD() GetThemeTextExtent(HDC hDC, int iStateId, LPCWSTR pszText, int cchCharCount, DWORD dwTextFlags, LPCRECT pBoundingRect, LPRECT pExtentRect)
static FN_GetThemeBackgroundExtent s_fnGetThemeBackgroundExtent
STDMETHOD() GetThemeBackgroundContentRect(HDC hDC, int iStateId, LPCRECT pBoundingRect, LPRECT pContentRect)
static FN_GetThemeTextExtent s_fnGetThemeTextExtent
static FN_DrawThemeParentBackground s_fnDrawThemeParentBackground
static FN_GetThemeSysColor s_fnGetThemeSysColor
static FN_OpenThemeData s_fnOpenThemeData
static HINSTANCE s_hUXTHEME
static FN_DrawThemeEdge s_fnDrawThemeEdge
static FN_GetThemeBackgroundContentRect s_fnGetThemeBackgroundContentRect
HRESULT EnsureThemeData(HWND hWnd)
static FN_DrawThemeText s_fnDrawThemeText
static FN_GetThemeColor s_fnGetThemeColor
static FN_CloseThemeData s_fnCloseThemeData
static LRESULT CALLBACK WindowProcedure(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
UINT WPARAM LPARAM lParam
void SetObjectPointed(CUIFObject *pPointed, POINT pt)
void SetCaptureObject(CUIFObject *pCaptured)
void SetBehindModal(CUIFWindow *pBehindModal)
static CUIFWindow * GetThis(HWND hWnd)
void SetTimerObject(CUIFObject *pTimerObject, UINT uElapse)
CUIFWindow * m_pBehindModal
BOOL GetWorkArea(LPCRECT prcWnd, LPRECT prcWorkArea)
void AdjustWindowPosition()
CUIFObject * m_pTimerObject
static void SetThis(HWND hWnd, LONG_PTR dwNewLong)
DWORD HitTest(LONG x, LONG y)
void GetFrameSize(LPSIZE pSize)
CUIFWndFrame(CUIFObject *pParent, LPCRECT prc, DWORD style)
BOOL Add(const T_ITEM &item)
INT WINAPI ImageList_ReplaceIcon(HIMAGELIST himl, INT nIndex, HICON hIcon)
BOOL WINAPI ImageList_Destroy(HIMAGELIST himl)
HIMAGELIST WINAPI ImageList_Create(INT cx, INT cy, UINT flags, INT cInitial, INT cGrow)
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)
__kernel_ptrdiff_t ptrdiff_t
DWORD WINAPI SetLayout(_In_ HDC hdc, _In_ DWORD dwLayout)
GLint GLint GLint GLint GLint x
GLuint GLuint GLsizei GLenum type
GLint GLint GLint GLint GLint GLint y
GLint GLint GLsizei GLsizei height
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
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
_Out_opt_ PICONINFO IconInfo
static VOID OnKeyDown(PMAP infoPtr, WPARAM wParam, LPARAM lParam)
static VOID SetFont(PMAP infoPtr, LPWSTR lpFontName)
static VOID OnPaint(PMAP infoPtr, WPARAM wParam)
static DWORD DWORD void LPSTR DWORD cch
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
HMONITOR WINAPI MonitorFromPoint(POINT, DWORD)
HMONITOR WINAPI MonitorFromRect(LPCRECT, DWORD)
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
INT WINAPI DrawTextW(HDC hdc, LPCWSTR str, INT count, LPRECT rect, UINT flags)
_Out_opt_ int _Out_opt_ int * cy
ULONG dwOSVersionInfoSize
BITMAPINFOHEADER bmiHeader
TW_UINT32 TW_UINT16 TW_UINT16 MSG
static LRESULT OnDestroy(HWND hWnd, WPARAM wParam, LPARAM lParam)
static LRESULT OnActivate(HWND hWnd, WPARAM wParam, LPARAM lParam)
HBITMAP WINAPI CreateDIBSection(HDC hDC, CONST BITMAPINFO *BitmapInfo, UINT Usage, VOID **Bits, HANDLE hSection, DWORD dwOffset)
BOOL WINAPI AnimateWindow(HWND hwnd, DWORD dwTime, DWORD dwFlags)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
HBRUSH WINAPI CreateBrushIndirect(_In_ const LOGBRUSH *plb)
HGDIOBJ WINAPI GetStockObject(_In_ int)
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)
COLORREF WINAPI GetTextColor(_In_ HDC)
BOOL WINAPI FrameRgn(_In_ HDC, _In_ HRGN, _In_ HBRUSH, _In_ int, _In_ int)
HRGN WINAPI CreatePolygonRgn(_In_reads_(cPoint) const POINT *pptl, _In_ int cPoint, _In_ int iMode)
HRGN WINAPI CreateRoundRectRgn(_In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI MoveToEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
BOOL WINAPI SetViewportOrgEx(_In_ HDC, _In_ int, _In_ int, _Out_opt_ LPPOINT)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
int WINAPI CombineRgn(_In_opt_ HRGN hrgnDest, _In_opt_ HRGN hrgnSrc1, _In_opt_ HRGN hrgnSrc2, _In_ int fnCombineMode)
HCURSOR WINAPI GetCursor(void)
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)
HFONT WINAPI CreateFontW(_In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ LPCWSTR)
HBITMAP WINAPI CreateCompatibleBitmap(_In_ HDC hdc, _In_ INT cx, _In_ INT cy)
int WINAPI FillRgn(_In_ HDC, _In_ HRGN, _In_ HBRUSH)
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)
int WINAPI SetBkMode(_In_ HDC, _In_ int)
COLORREF WINAPI SetTextColor(_In_ HDC, _In_ COLORREF)
BOOL WINAPI RoundRect(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int, _In_ int)
HBRUSH WINAPI CreateSolidBrush(_In_ COLORREF)
BOOL WINAPI DeleteDC(_In_ HDC)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
#define CreateFontIndirect
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)
static INT_PTR CALLBACK OnSettingChange(HWND hWnd, WPARAM wParam, LPARAM lParam)
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)
int WINAPI FrameRect(_In_ HDC, _In_ LPCRECT, _In_ HBRUSH)
#define HCF_HIGHCONTRASTON
#define COLOR_INACTIVECAPTIONTEXT
BOOL WINAPI TranslateMessage(_In_ const MSG *)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
#define COLOR_WINDOWFRAME
BOOL WINAPI GetIconInfo(_In_ HICON, _Out_ PICONINFO)
#define WM_WINDOWPOSCHANGING
SHORT WINAPI VkKeyScanA(_In_ CHAR)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
int WINAPI SetWindowRgn(_In_ HWND, _In_opt_ HRGN, _In_ BOOL)
HBRUSH WINAPI GetSysColorBrush(_In_ int)
#define IS_INTRESOURCE(i)
#define COLOR_ACTIVECAPTION
BOOL WINAPI GetCursorPos(_Out_ LPPOINT)
BOOL WINAPI AdjustWindowRectEx(_Inout_ LPRECT, _In_ DWORD, _In_ BOOL, _In_ DWORD)
#define COLOR_INACTIVECAPTION
#define SW_SHOWNOACTIVATE
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
#define WM_SYSCOLORCHANGE
BOOL WINAPI ClientToScreen(_In_ HWND, _Inout_ LPPOINT)
UINT WINAPI GetDoubleClickTime(void)
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)
BOOL WINAPI DrawEdge(_In_ HDC, _Inout_ LPRECT, _In_ UINT, _In_ UINT)
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
BOOL WINAPI DrawIconEx(_In_ HDC, _In_ int, _In_ int, _In_ HICON, _In_ int, _In_ int, _In_ UINT, _In_opt_ HBRUSH, _In_ UINT)
BOOL WINAPI IntersectRect(_Out_ LPRECT, _In_ LPCRECT, _In_ LPCRECT)
#define COLOR_ACTIVEBORDER
#define COLOR_HIGHLIGHTTEXT
HDC WINAPI GetDC(_In_opt_ HWND)
HWND WINAPI WindowFromPoint(_In_ POINT)
#define SWP_NOOWNERZORDER
struct tagMONITORINFO MONITORINFO
BOOL WINAPI SystemParametersInfoA(_In_ UINT uiAction, _In_ UINT uiParam, _Inout_opt_ PVOID pvParam, _In_ UINT fWinIni)
struct _WNDCLASSEXW WNDCLASSEXW
BOOL WINAPI OffsetRect(_Inout_ LPRECT, _In_ int, _In_ int)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)
#define SystemParametersInfo
BOOL WINAPI InflateRect(_Inout_ LPRECT, _In_ int, _In_ int)
#define COLOR_BTNHIGHLIGHT
#define COLOR_CAPTIONTEXT
#define WM_WINDOWPOSCHANGED
SHORT WINAPI VkKeyScanW(_In_ WCHAR)
BOOL WINAPI IsWindowVisible(_In_ HWND)
BOOL WINAPI DestroyWindow(_In_ HWND)
int WINAPI GetSystemMetrics(_In_ int)
BOOL WINAPI MoveWindow(_In_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ BOOL)
SHORT WINAPI GetKeyState(_In_ int)
BOOL WINAPI SetRect(_Out_ LPRECT, _In_ int, _In_ int, _In_ int, _In_ int)
BOOL WINAPI ScreenToClient(_In_ HWND, _Inout_ LPPOINT)
OSVERSIONINFOA OSVERSIONINFO