Ignore:
Timestamp:
Apr 18, 2000, 6:04:55 PM (25 years ago)
Author:
cbratschi
Message:

* empty log message *

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/comctl32/listview.cpp

    r3415 r3420  
    1 /*$Id: listview.cpp,v 1.16 2000-04-17 17:04:12 cbratschi Exp $*/
     1/*$Id: listview.cpp,v 1.17 2000-04-18 16:02:37 cbratschi Exp $*/
    22/*
    33 * Listview control
     
    182182    if (nLast > nBottom) nLast = nBottom;
    183183
    184     Header_GetItemRect(infoPtr->hwndHeader,0,&rcHeader);
     184    HEADER_GetItemRect(infoPtr->hwndHeader,(WPARAM)0,(LPARAM)&rcHeader);
    185185    rcHeader.left += REPORT_MARGINX;
    186186    rcHeader.right = max(rcHeader.left,rcHeader.right-REPORT_MARGINX);
     
    374374    INT nNumOfItems = GETITEMCOUNT(infoPtr);
    375375
    376     infoPtr->maxScroll.x = nNumOfItems / nCountPerColumn;
     376    infoPtr->maxScroll.x = nNumOfItems/nCountPerColumn;
    377377    if (nNumOfItems % nCountPerColumn)
    378378      infoPtr->maxScroll.x++;
    379379
    380     infoPtr->lefttop.x = LISTVIEW_GetTopIndex(hwnd) / nCountPerColumn;
     380    infoPtr->lefttop.x = LISTVIEW_GetTopIndex(hwnd)/nCountPerColumn;
    381381    infoPtr->scrollPage.x = nCountPerRow;
    382382    infoPtr->scrollStep.x = infoPtr->nItemWidth;
     
    668668  {
    669669    /* calculate width of header */
    670     nHeaderItemCount = Header_GetItemCount(infoPtr->hwndHeader);
     670    nHeaderItemCount = HEADER_GetItemCount(infoPtr->hwndHeader);
    671671    for (i = 0; i < nHeaderItemCount; i++)
    672672    {
    673       if (Header_GetItemRect(infoPtr->hwndHeader, i, &rcHeaderItem))
     673      if (HEADER_GetItemRect(infoPtr->hwndHeader,(WPARAM)i,(LPARAM)&rcHeaderItem))
    674674      {
    675675        nItemWidth += (rcHeaderItem.right - rcHeaderItem.left);
     
    749749  {
    750750    /* calculate width of header */
    751     nHeaderItemCount = Header_GetItemCount(infoPtr->hwndHeader);
     751    nHeaderItemCount = HEADER_GetItemCount(infoPtr->hwndHeader);
    752752    for (i = 0; i < nHeaderItemCount; i++)
    753753    {
    754       if (Header_GetItemRect(infoPtr->hwndHeader, i, &rcHeaderItem) != 0)
     754      if (HEADER_GetItemRect(infoPtr->hwndHeader,(WPARAM)i,(LPARAM)&rcHeaderItem) != 0)
    755755      {
    756756        nItemWidth += (rcHeaderItem.right - rcHeaderItem.left);
     
    11341134
    11351135    nItem = nTop+(pt.y/infoPtr->nItemHeight)+
    1136             ((INT)(pt.x-infoPtr->lefttop.x*infoPtr->scrollStep.x)/infoPtr->nItemWidth)*nCountPerColumn;
     1136            ((INT)(pt.x/infoPtr->nItemWidth))*nCountPerColumn;
    11371137    if (nItem >= GETITEMCOUNT(infoPtr)) return -1;
    11381138
     
    18951895  LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO *)LISTVIEW_GetInfoPtr(hwnd);
    18961896  INT nDrawPosY = infoPtr->rcList.top;
    1897   INT nColumnCount = Header_GetItemCount(infoPtr->hwndHeader);
     1897  INT nColumnCount = HEADER_GetItemCount(infoPtr->hwndHeader);
    18981898  RECT rcItem,*rcHeader;
    18991899  INT  j,nItem,nLast,xOffset = infoPtr->lefttop.x*infoPtr->scrollStep.x;
     
    19201920  for (j = 0;j < nColumnCount;j++)
    19211921  {
    1922     Header_GetItemRect(infoPtr->hwndHeader,j,&rcHeader[j]);
     1922    HEADER_GetItemRect(infoPtr->hwndHeader,(WPARAM)j,(LPARAM)&rcHeader[j]);
    19231923    rcHeader[j].left += REPORT_MARGINX;
    19241924    rcHeader[j].right = max(rcHeader[j].left,rcHeader[j].right-REPORT_MARGINX);
     
    24992499  BOOL bResult = FALSE;
    25002500
    2501   if (Header_DeleteItem(infoPtr->hwndHeader, nColumn))
     2501  if (HEADER_DeleteItem(infoPtr->hwndHeader, nColumn))
    25022502  {
    25032503    bResult = LISTVIEW_RemoveColumn(infoPtr->hdpaItems, nColumn);
     
    33133313    }
    33143314
    3315     if (unicode)
    3316       bResult = Header_GetItemW(infoPtr->hwndHeader,nItem,&hdi);
    3317     else
    3318       bResult = Header_GetItemA(infoPtr->hwndHeader,nItem,(HDITEMW*)&hdi);
     3315    bResult = HEADER_GetItem(infoPtr->hwndHeader,(WPARAM)nItem,(LPARAM)&hdi,unicode);
    33193316    if (bResult)
    33203317    {
     
    33663363  LISTVIEW_INFO *infoPtr = (LISTVIEW_INFO *)LISTVIEW_GetInfoPtr(hwnd);
    33673364
    3368   return Header_GetOrderArray(infoPtr->hwndHeader,iCount,lpiArray);
     3365  return HEADER_GetOrderArray(infoPtr->hwndHeader,(WPARAM)iCount,(LPARAM)lpiArray);
    33693366}
    33703367
     
    33953392    ZeroMemory(&hdi,sizeof(HDITEMW));
    33963393    hdi.mask = HDI_WIDTH;
    3397     if (Header_GetItemW(infoPtr->hwndHeader, nColumn, &hdi))
     3394    if (HEADER_GetItem(infoPtr->hwndHeader,(WPARAM)nColumn,(LPARAM)&hdi,TRUE))
    33983395    {
    33993396      return hdi.cxy;
     
    35683565      {
    35693566        LISTVIEW_ITEMDATA *lpItemData = LISTVIEW_GetItemData(lpItem->hdpaSubItems,lpLVItem->iSubItem);
     3567
     3568        //add subitem if not present
     3569        if (!lpItemData && (lpLVItem->iSubItem > 0) && (lpLVItem->iSubItem < HEADER_GetItemCount(infoPtr->hwndHeader)))
     3570        {
     3571          INT nPosition;
     3572
     3573          lpItemData = (LISTVIEW_ITEMDATA*)COMCTL32_Alloc(sizeof(LISTVIEW_ITEMDATA));
     3574          ZeroMemory(lpItemData,sizeof(LISTVIEW_ITEMDATA));
     3575          lpItemData->pszText = LPSTR_TEXTCALLBACKW;
     3576          lpItemData->iImage = I_IMAGECALLBACK;
     3577          lpItemData->iSubItem = lpLVItem->iSubItem;
     3578          nPosition = LISTVIEW_FindInsertPosition(lpItem->hdpaSubItems,lpItemData->iSubItem);
     3579          DPA_InsertPtr(lpItem->hdpaSubItems,nPosition,lpItemData);
     3580        }
    35703581
    35713582        if (lpItemData)
     
    38643875  RECT rect;
    38653876
    3866   if (Header_GetItemRect(infoPtr->hwndHeader,nSubItem,&rect))
     3877  if (HEADER_GetItemRect(infoPtr->hwndHeader,(WPARAM)nSubItem,(LPARAM)&rect))
    38673878  {
    38683879    lpptPosition->x = rect.left+REPORT_MARGINX;
     
    42184229
    42194230  nSubItem = lprc->top;
    4220   if ((nSubItem < 0) || (nSubItem >= Header_GetItemCount(infoPtr->hwndHeader))) return FALSE;
     4231  if ((nSubItem < 0) || (nSubItem >= HEADER_GetItemCount(infoPtr->hwndHeader))) return FALSE;
    42214232  if (!LISTVIEW_GetSubItemPosition(hwnd,nItem,nSubItem,&ptItem)) return FALSE;
    42224233
     
    47494760  if (checkSubItems && (infoPtr->uView == LVS_REPORT))
    47504761  {
    4751     INT nColumnCount = Header_GetItemCount(infoPtr->hwndHeader);
     4762    INT nColumnCount = HEADER_GetItemCount(infoPtr->hwndHeader);
    47524763    INT xDiff = -infoPtr->lefttop.x*infoPtr->scrollStep.x;
    47534764
     
    47584769      RECT rcColumn;
    47594770
    4760       Header_GetItemRect(infoPtr->hwndHeader,x,&rcColumn);
     4771      HEADER_GetItemRect(infoPtr->hwndHeader,(WPARAM)x,(LPARAM)&rcColumn);
    47614772      rcItem.left = xDiff+REPORT_MARGINX+rcColumn.left;
    47624773      rcItem.right = xDiff+rcColumn.right-REPORT_MARGINX;
     
    48524863
    48534864    nItem = nTop+(lpHitTestInfo->pt.y/infoPtr->nItemHeight)+
    4854             ((INT)(lpHitTestInfo->pt.x-infoPtr->lefttop.x*infoPtr->scrollStep.x)/infoPtr->nItemWidth)*nCountPerColumn;
     4865            ((INT)(lpHitTestInfo->pt.x/infoPtr->nItemWidth))*nCountPerColumn;
    48554866    if (nItem >= GETITEMCOUNT(infoPtr)) return -1;
    48564867
     
    50415052
    50425053    /* insert item in header control */
    5043     if (unicode)
    5044       nNewColumn = Header_InsertItemW(infoPtr->hwndHeader,nColumn,&hdi);
    5045     else
    5046       nNewColumn = Header_InsertItemA(infoPtr->hwndHeader,nColumn,&hdi);
     5054    nNewColumn = HEADER_InsertItem(infoPtr->hwndHeader,(WPARAM)nColumn,(LPARAM)&hdi,unicode);
    50475055
    50485056    /* Need to reset the item width when inserting a new column */
     
    53965404
    53975405  if ((lpColumn != NULL) && (nColumn >= 0) &&
    5398       (nColumn < Header_GetItemCount(infoPtr->hwndHeader)))
     5406      (nColumn < HEADER_GetItemCount(infoPtr->hwndHeader)))
    53995407  {
    54005408    /* initialize memory */
     
    54085416      /* get current format first */
    54095417      hdiget.mask = HDI_FORMAT;
    5410       if (Header_GetItemW(infoPtr->hwndHeader, nColumn, &hdiget))
     5418      if (HEADER_GetItem(infoPtr->hwndHeader,(WPARAM)nColumn,(LPARAM)&hdiget,TRUE))
    54115419              /* preserve HDF_STRING if present */
    54125420              hdi.fmt = hdiget.fmt & HDF_STRING;
     
    54775485
    54785486    /* set header item attributes */
    5479     if (unicode)
    5480       bResult = Header_SetItemW(infoPtr->hwndHeader,nColumn,&hdi);
    5481     else
    5482       bResult = Header_SetItemA(infoPtr->hwndHeader,nColumn,(HDITEMA*)&hdi);
     5487    bResult = HEADER_SetItem(infoPtr->hwndHeader,(WPARAM)nColumn,(LPARAM)&hdi,unicode);
    54835488  }
    54845489
     
    55065511  BOOL rc,changed = FALSE;
    55075512
    5508   nHeaderItemCount = Header_GetItemCount(infoPtr->hwndHeader);
     5513  nHeaderItemCount = HEADER_GetItemCount(infoPtr->hwndHeader);
    55095514  if (iCount != nHeaderItemCount) return FALSE;
    55105515
    55115516  oldArray = (LPINT)COMCTL32_Alloc(nHeaderItemCount*sizeof(INT));
    5512   Header_GetOrderArray(infoPtr->hwndHeader,nHeaderItemCount,oldArray);
    5513   rc = Header_SetOrderArray(infoPtr->hwndHeader,iCount,lpiArray);
     5517  HEADER_GetOrderArray(infoPtr->hwndHeader,(WPARAM)nHeaderItemCount,(LPARAM)oldArray);
     5518  rc = HEADER_SetOrderArray(infoPtr->hwndHeader,(WPARAM)iCount,(LPARAM)lpiArray);
    55145519  if (rc)
    55155520  {
     
    55455550          lpItemData = LISTVIEW_GetItemData(lpItem->hdpaSubItems,diffList[y]);
    55465551          if (!lpItemData) continue;
     5552          lpItemData->iSubItem = y;
    55475553          DPA_InsertPtr(newDPA,newDPA->nItemCount,lpItemData);
    55485554        }
     
    56135619
    56145620    // call header to update the column change
    5615     lret = Header_SetItemW(infoPtr->hwndHeader, (WPARAM)iCol, (LPARAM)&hdi);
     5621    lret = HEADER_SetItem(infoPtr->hwndHeader,(WPARAM)iCol,(LPARAM)&hdi,TRUE);
    56165622
    56175623    infoPtr->nItemWidth = LISTVIEW_GetItemWidth(hwnd);
     
    58815887        {
    58825888          /* set subitem only if column is present */
    5883           if (Header_GetItemCount(infoPtr->hwndHeader) > lpLVItem->iSubItem)
     5889          if (HEADER_GetItemCount(infoPtr->hwndHeader) > lpLVItem->iSubItem)
    58845890          {
    58855891            lpItemData = (LISTVIEW_ITEMDATA*)COMCTL32_Alloc(sizeof(LISTVIEW_ITEMDATA));
     
    69646970  LVHITTESTINFO htInfo;
    69656971
    6966 //  TRACE("(hwnd=%x,key=%hu,X=%hu,Y=%hu)\n", hwnd, wKey, wPosX, wPosY);
    6967 
    69686972  /* send NM_DBLCLK notification */
    69696973  sendNotify(hwnd,NM_DBLCLK);
     
    75427546      hl.prc = &rcList;
    75437547      hl.pwpos = &wp;
    7544       Header_Layout(infoPtr->hwndHeader, &hl);
     7548      HEADER_Layout(infoPtr->hwndHeader,(WPARAM)0,(LPARAM)&hl);
    75457549      SetWindowPos(infoPtr->hwndHeader,hwnd,wp.x,wp.y,wp.cx,wp.cy,wp.flags);
    75467550      infoPtr->rcList.top = max(wp.cy,0);
     
    76107614      hl.prc = &rcList;
    76117615      hl.pwpos = &wp;
    7612       Header_Layout(infoPtr->hwndHeader, &hl);
     7616      HEADER_Layout(infoPtr->hwndHeader,(WPARAM)0,(LPARAM)&hl);
    76137617      SetWindowPos(infoPtr->hwndHeader, hwnd, wp.x, wp.y, wp.cx, wp.cy,
    76147618                   wp.flags);
Note: See TracChangeset for help on using the changeset viewer.