Changeset 20649


Ignore:
Timestamp:
May 26, 2003, 4:02:55 PM (22 years ago)
Author:
sandervl
Message:

PF: Listview selection draw code was incomplete due to resync.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified tags/trunk/src/comctl32/listview.c

    r20636 r20649  
    35483548    LVITEMW lvItem;
    35493549
     3550#ifdef __WIN32OS2__
     3551    DWORD dwBkColor;
     3552    DWORD dwTextColor;
     3553    INT   iBkMode = -1;
     3554    INT nMixMode;
     3555#endif
     3556
    35503557    TRACE("(hdc=%p, nItem=%d, nSubItem=%d, pos=%s)\n", hdc, nItem, nSubItem, debugpoint(&pos));
    35513558
     
    36123619    /* Don't bother painting item being edited */
    36133620    if (infoPtr->hwndEdit && nItem == infoPtr->nEditLabelItem && nSubItem == 0) goto postpaint;
     3621
     3622#ifdef __WIN32OS2__
     3623    //This code never existed in Wine, was added by Patrick
     3624    if ((lvItem.state & LVIS_SELECTED) && (infoPtr->bFocus != FALSE))
     3625    {
     3626      /* set item colors */
     3627      dwBkColor = SetBkColor(hdc, GetSysColor(COLOR_HIGHLIGHT));
     3628      dwTextColor = SetTextColor(hdc, GetSysColor(COLOR_HIGHLIGHTTEXT));
     3629      /* set raster mode */
     3630      nMixMode = SetROP2(hdc, R2_XORPEN);
     3631    }
     3632    else if ((infoPtr->dwStyle & LVS_SHOWSELALWAYS) &&
     3633           (lvItem.state & LVIS_SELECTED) && (infoPtr->bFocus == FALSE))
     3634    {
     3635      dwBkColor = SetBkColor(hdc, GetSysColor(COLOR_3DFACE));
     3636      dwTextColor = SetTextColor(hdc, GetSysColor(COLOR_BTNTEXT));
     3637      /* set raster mode */
     3638      nMixMode = SetROP2(hdc, R2_COPYPEN);
     3639    }
     3640    else
     3641    {
     3642      /* set item colors */
     3643      if ( (infoPtr->clrTextBk == CLR_DEFAULT) || (infoPtr->clrTextBk == CLR_NONE) )
     3644      {
     3645        dwBkColor = GetBkColor(hdc);
     3646        iBkMode = SetBkMode(hdc, TRANSPARENT);
     3647      }
     3648      else
     3649      {
     3650        dwBkColor = SetBkColor(hdc, infoPtr->clrTextBk);
     3651        iBkMode = SetBkMode(hdc, OPAQUE);
     3652      }
     3653
     3654      dwTextColor = SetTextColor(hdc, infoPtr->clrText);
     3655      /* set raster mode */
     3656      nMixMode = SetROP2(hdc, R2_COPYPEN);
     3657    }
     3658#endif
    36143659
    36153660    /* draw the selection background, if we're drawing the main item */
     
    85198564}
    85208565
     8566#ifdef __WIN32OS2__
     8567#ifdef DEBUG
     8568void dprintfMsg(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
     8569{
     8570 char *msg = NULL;
     8571
     8572  switch (uMsg)
     8573  {
     8574  case LVM_APPROXIMATEVIEWRECT:
     8575      msg = "LVM_APPROXIMATEVIEWRECT";
     8576      break;
     8577  case LVM_ARRANGE:
     8578      msg = "LVM_ARRANGE";
     8579      break;
     8580  case LVM_CREATEDRAGIMAGE:
     8581      msg = "LVM_CREATEDRAGIMAGE";
     8582      break;
     8583  case LVM_DELETEALLITEMS:
     8584      msg = "LVM_DELETEALLITEMS";
     8585      break;
     8586  case LVM_DELETECOLUMN:
     8587      msg = "LVM_DELETECOLUMN";
     8588      break;
     8589  case LVM_DELETEITEM:
     8590      msg = "LVM_DELETEITEM";
     8591      break;
     8592  case LVM_EDITLABELW:
     8593      msg = "LVM_EDITLABELW";
     8594      break;
     8595  case LVM_EDITLABELA:
     8596      msg = "LVM_EDITLABELA";
     8597      break;
     8598  case LVM_ENSUREVISIBLE:
     8599      msg = "LVM_ENSUREVISIBLE";
     8600      break;
     8601  case LVM_FINDITEMA:
     8602      msg = "LVM_FINDITEMA";
     8603      break;
     8604  case LVM_GETBKCOLOR:
     8605      msg = "LVM_GETBKCOLOR";
     8606      break;
     8607  case LVM_GETBKIMAGEA:
     8608      msg = "LVM_GETBKIMAGEA";
     8609      break;
     8610  case LVM_GETBKIMAGEW:
     8611      msg = "LVM_GETBKIMAGEW";
     8612      break;
     8613  case LVM_GETCALLBACKMASK:
     8614      msg = "LVM_GETCALLBACKMASK";
     8615      break;
     8616  case LVM_GETCOLUMNA:
     8617      msg = "LVM_GETCOLUMNA";
     8618      break;
     8619  case LVM_GETCOLUMNW:
     8620      msg = "LVM_GETCOLUMNW";
     8621      break;
     8622  case LVM_GETCOLUMNORDERARRAY:
     8623      msg = "LVM_GETCOLUMNORDERARRAY";
     8624      break;
     8625  case LVM_GETCOLUMNWIDTH:
     8626      msg = "LVM_GETCOLUMNWIDTH";
     8627      break;
     8628  case LVM_GETCOUNTPERPAGE:
     8629      msg = "LVM_GETCOUNTPERPAGE";
     8630      break;
     8631  case LVM_GETEDITCONTROL:
     8632      msg = "LVM_GETEDITCONTROL";
     8633      break;
     8634  case LVM_GETEXTENDEDLISTVIEWSTYLE:
     8635      msg = "LVM_GETEXTENDEDLISTVIEWSTYLE";
     8636      break;
     8637  case LVM_GETHEADER:
     8638      msg = "LVM_GETHEADER";
     8639      break;
     8640  case LVM_GETHOTCURSOR:
     8641      msg = "LVM_GETHOTCURSOR";
     8642      break;
     8643  case LVM_GETHOTITEM:
     8644      msg = "LVM_GETHOTITEM";
     8645      break;
     8646  case LVM_GETHOVERTIME:
     8647      msg = "LVM_GETHOVERTIME";
     8648      break;
     8649  case LVM_GETIMAGELIST:
     8650      msg = "LVM_GETIMAGELIST";
     8651      break;
     8652  case LVM_GETISEARCHSTRINGA:
     8653      msg = "LVM_GETISEARCHSTRINGA";
     8654      break;
     8655  case LVM_GETISEARCHSTRINGW:
     8656      msg = "LVM_GETISEARCHSTRINGW";
     8657      break;
     8658  case LVM_GETITEMA:
     8659      msg = "LVM_GETITEMA";
     8660      break;
     8661  case LVM_GETITEMW:
     8662      msg = "LVM_GETITEMW";
     8663      break;
     8664  case LVM_GETITEMCOUNT:
     8665      msg = "LVM_GETITEMCOUNT";
     8666      break;
     8667  case LVM_GETITEMPOSITION:
     8668      msg = "LVM_GETITEMPOSITION";
     8669      break;
     8670  case LVM_GETITEMRECT:
     8671      msg = "LVM_GETITEMRECT";
     8672      break;
     8673  case LVM_GETITEMSPACING:
     8674      msg = "LVM_GETITEMSPACING";
     8675      break;
     8676  case LVM_GETITEMSTATE:
     8677      msg = "LVM_GETITEMSTATE";
     8678      break;
     8679  case LVM_GETITEMTEXTA:
     8680      msg = "LVM_GETITEMTEXTA";
     8681      break;
     8682  case LVM_GETITEMTEXTW:
     8683      msg = "LVM_GETITEMTEXTW";
     8684      break;
     8685  case LVM_GETNEXTITEM:
     8686      msg = "LVM_GETNEXTITEM";
     8687      break;
     8688  case LVM_GETNUMBEROFWORKAREAS:
     8689      msg = "LVM_GETNUMBEROFWORKAREAS";
     8690      break;
     8691  case LVM_GETORIGIN:
     8692      msg = "LVM_GETORIGIN";
     8693      break;
     8694  case LVM_GETSELECTEDCOUNT:
     8695      msg = "LVM_GETSELECTEDCOUNT";
     8696      break;
     8697  case LVM_GETSELECTIONMARK:
     8698      msg = "LVM_GETSELECTIONMARK";
     8699      break;
     8700  case LVM_GETSTRINGWIDTHA:
     8701      msg = "LVM_GETSTRINGWIDTHA";
     8702      break;
     8703  case LVM_GETSTRINGWIDTHW:
     8704      msg = "LVM_GETSTRINGWIDTHW";
     8705      break;
     8706  case LVM_GETSUBITEMRECT:
     8707      msg = "LVM_GETSUBITEMRECT";
     8708      break;
     8709  case LVM_GETTEXTBKCOLOR:
     8710      msg = "LVM_GETTEXTBKCOLOR";
     8711      break;
     8712  case LVM_GETTEXTCOLOR:
     8713      msg = "LVM_GETTEXTCOLOR";
     8714      break;
     8715  case LVM_GETTOOLTIPS:
     8716      msg = "LVM_GETTOOLTIPS";
     8717      break;
     8718  case LVM_GETTOPINDEX:
     8719      msg = "LVM_GETTOPINDEX";
     8720      break;
     8721  case LVM_GETVIEWRECT:
     8722      msg = "LVM_GETVIEWRECT";
     8723      break;
     8724  case LVM_GETWORKAREAS:
     8725      msg = "LVM_GETWORKAREAS";
     8726      break;
     8727  case LVM_HITTEST:
     8728      msg = "LVM_HITTEST";
     8729      break;
     8730  case LVM_INSERTCOLUMNA:
     8731      msg = "LVM_INSERTCOLUMNA";
     8732      break;
     8733  case LVM_INSERTCOLUMNW:
     8734      msg = "LVM_INSERTCOLUMNW";
     8735      break;
     8736  case LVM_INSERTITEMA:
     8737      msg = "LVM_INSERTITEMA";
     8738      break;
     8739  case LVM_INSERTITEMW:
     8740      msg = "LVM_INSERTITEMW";
     8741      break;
     8742  case LVM_REDRAWITEMS:
     8743      msg = "LVM_REDRAWITEMS";
     8744      break;
     8745  case LVM_SCROLL:
     8746      msg = "LVM_SCROLL";
     8747      break;
     8748  case LVM_SETBKCOLOR:
     8749      msg = "LVM_SETBKCOLOR";
     8750      break;
     8751  case LVM_SETBKIMAGEA:
     8752      msg = "LVM_SETBKIMAGEA";
     8753      break;
     8754  case LVM_SETBKIMAGEW:
     8755      msg = "LVM_SETBKIMAGEW";
     8756      break;
     8757  case LVM_SETCALLBACKMASK:
     8758      msg = "LVM_SETCALLBACKMASK";
     8759      break;
     8760  case LVM_SETCOLUMNA:
     8761      msg = "LVM_SETCOLUMNA";
     8762      break;
     8763  case LVM_SETCOLUMNW:
     8764      msg = "LVM_SETCOLUMNW";
     8765      break;
     8766  case LVM_SETCOLUMNORDERARRAY:
     8767      msg = "LVM_SETCOLUMNORDERARRAY";
     8768      break;
     8769  case LVM_SETCOLUMNWIDTH:
     8770      msg = "LVM_SETCOLUMNWIDTH";
     8771      break;
     8772  case LVM_SETEXTENDEDLISTVIEWSTYLE:
     8773      msg = "LVM_SETEXTENDEDLISTVIEWSTYLE";
     8774      break;
     8775  case LVM_SETHOTCURSOR:
     8776      msg = "LVM_SETHOTCURSOR";
     8777      break;
     8778  case LVM_SETHOTITEM:
     8779      msg = "LVM_SETHOTITEM";
     8780      break;
     8781  case LVM_SETHOVERTIME:
     8782      msg = "LVM_SETHOVERTIME";
     8783      break;
     8784  case LVM_SETICONSPACING:
     8785      msg = "LVM_SETICONSPACING";
     8786      break;
     8787  case LVM_SETIMAGELIST:
     8788      msg = "LVM_SETIMAGELIST";
     8789      break;
     8790  case LVM_SETITEMA:
     8791      msg = "LVM_SETITEMA";
     8792      break;
     8793  case LVM_SETITEMW:
     8794      msg = "LVM_SETITEMW";
     8795      break;
     8796  case LVM_SETITEMCOUNT:
     8797      msg = "LVM_SETITEMCOUNT";
     8798      break;
     8799  case LVM_SETITEMPOSITION:
     8800      msg = "LVM_SETITEMPOSITION";
     8801      break;
     8802  case LVM_SETITEMPOSITION32:
     8803      msg = "LVM_SETITEMPOSITION32";
     8804      break;
     8805  case LVM_SETITEMSTATE:
     8806      msg = "LVM_SETITEMSTATE";
     8807      break;
     8808  case LVM_SETITEMTEXTA:
     8809      msg = "LVM_SETITEMTEXTA";
     8810      break;
     8811  case LVM_SETITEMTEXTW:
     8812      msg = "LVM_SETITEMTEXTW";
     8813      break;
     8814  case LVM_SETSELECTIONMARK:
     8815      msg = "LVM_SETSELECTIONMARK";
     8816      break;
     8817  case LVM_SETTEXTBKCOLOR:
     8818      msg = "LVM_SETTEXTBKCOLOR";
     8819      break;
     8820  case LVM_SETTEXTCOLOR:
     8821      msg = "LVM_SETTEXTCOLOR";
     8822      break;
     8823  case LVM_SETTOOLTIPS:
     8824      msg = "LVM_SETTOOLTIPS";
     8825      break;
     8826  case LVM_SETWORKAREAS:
     8827      msg = "LVM_SETWORKAREAS";
     8828      break;
     8829  case LVM_SORTITEMS:
     8830      msg = "LVM_SORTITEMS";
     8831      break;
     8832  case LVM_SUBITEMHITTEST:
     8833      msg = "LVM_SUBITEMHITTEST";
     8834      break;
     8835  case LVM_UPDATE:
     8836      msg = "LVM_UPDATE";
     8837      break;
     8838  default:
     8839      return;
     8840  }
     8841  dprintf(("SysListView %x %s %x %x", hwnd, msg, wParam, lParam));
     8842}
     8843#endif
     8844#endif //__WIN32OS2__
     8845
    85218846/***
    85228847 * DESCRIPTION:
     
    85298854  LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO *)GetWindowLongW(hwnd, 0);
    85308855
     8856#if defined(DEBUG) && defined(__WIN32OS2__)
     8857  dprintfMsg(hwnd, uMsg, wParam, lParam);
     8858#else
    85318859  TRACE("(uMsg=%x wParam=%x lParam=%lx)\n", uMsg, wParam, lParam);
    8532 
     8860#endif
    85338861  if (!infoPtr && (uMsg != WM_CREATE))
    85348862    return DefWindowProcW(hwnd, uMsg, wParam, lParam);
Note: See TracChangeset for help on using the changeset viewer.