MCPcopy Create free account
hub / github.com/DiscordMessenger/dm / HandleCustomDraw

Method HandleCustomDraw

src/windows/AutoComplete.cpp:492–528  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

490}
491
492LRESULT AutoComplete::HandleCustomDraw(HWND hWnd, NMLVCUSTOMDRAW* pInfo)
493{
494 switch (pInfo->nmcd.dwDrawStage)
495 {
496 case CDDS_PREPAINT:
497 return CDRF_NOTIFYITEMDRAW;
498
499 case CDDS_ITEMPREPAINT:
500 return CDRF_NOTIFYSUBITEMDRAW;
501
502 case CDDS_SUBITEM | CDDS_ITEMPREPAINT: {
503 HWND hList = m_listHwnd;
504
505 int idx = (int) pInfo->nmcd.dwItemSpec;
506 int sta = ListView_GetItemState(hList, idx, LVIS_SELECTED);
507
508 if (sta & LVIS_SELECTED) {
509 pInfo->clrTextBk = GetSysColor(COLOR_HIGHLIGHT);
510 pInfo->clrText = GetSysColor(COLOR_HIGHLIGHTTEXT);
511 }
512 else if (pInfo->iSubItem == COL_SUBNAME) {
513 pInfo->clrTextBk = GetSysColor(COLOR_WINDOW);
514 pInfo->clrText = GetSysColor(COLOR_GRAYTEXT);
515 }
516 else {
517 pInfo->clrTextBk = GetSysColor(COLOR_WINDOW);
518 pInfo->clrText = GetSysColor(COLOR_MENUTEXT);
519 }
520
521 return CDRF_NEWFONT;
522 }
523
524 default:DbgPrintW("Unhandled draw stage %d", pInfo->nmcd.dwDrawStage);
525 }
526
527 return CDRF_DODEFAULT;
528}
529
530LRESULT AutoComplete::HandleGetDispInfo(HWND hWnd, NMLVDISPINFO* pInfo)
531{

Callers 1

WndProcMethod · 0.45

Calls 1

DbgPrintWFunction · 0.85

Tested by

no test coverage detected