Changeset 10097 for trunk/src/comctl32/comctl32undoc.c
- Timestamp:
- May 15, 2003, 4:25:14 PM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/comctl32/comctl32undoc.c
r9424 r10097 34 34 #endif 35 35 36 #include "config.h" 37 #include "wine/port.h" 38 36 39 #include <string.h> 37 40 #include <stdlib.h> /* atoi */ … … 39 42 #include <limits.h> 40 43 44 #define NONAMELESSUNION 45 #define NONAMELESSSTRUCT 41 46 #include "commctrl.h" 42 47 #include "objbase.h" … … 74 79 typedef HRESULT (CALLBACK *DPALOADPROC)(LPLOADDATA,IStream*,LPARAM); 75 80 #endif 76 77 INT __cdecl _wtoi(LPWSTR string);78 81 79 82 /************************************************************************** … … 283 286 } 284 287 nResult = (pfnCompare)(*pWork1, *pWork2, lParam); 285 TRACE("compare result=%d, dpa1.cnt=%d, dpa2.cnt=%d\n", 288 TRACE("compare result=%d, dpa1.cnt=%d, dpa2.cnt=%d\n", 286 289 nResult, nIndex, nCount); 287 290 … … 522 525 VOID MRU_SaveChanged( LPWINEMRULIST mp ) 523 526 { 524 INT i, err;527 UINT i, err; 525 528 HKEY newkey; 526 529 WCHAR realname[2]; … … 532 535 533 536 /* open the sub key */ 534 if ((err = RegOpenKeyExW( mp->extview.hKey, mp->extview.lpszSubKey, 537 if ((err = RegOpenKeyExW( mp->extview.hKey, mp->extview.lpszSubKey, 535 538 0, KEY_WRITE, &newkey))) { 536 539 /* not present - what to do ??? */ … … 552 555 if (mp->wineFlags & WMRUF_CHANGED) { 553 556 mp->wineFlags &= ~WMRUF_CHANGED; 554 err = RegSetValueExA(newkey, "MRUList", 0, REG_SZ, 557 err = RegSetValueExA(newkey, "MRUList", 0, REG_SZ, 555 558 mp->realMRU, strlen(mp->realMRU) + 1); 556 559 if (err) { … … 565 568 witem->itemFlag &= ~WMRUIF_CHANGED; 566 569 realname[0] = 'a' + i; 567 err = RegSetValueExW(newkey, realname, 0, 568 (mp->extview.dwFlags & MRUF_BINARY_LIST) ? 570 err = RegSetValueExW(newkey, realname, 0, 571 (mp->extview.dwFlags & MRUF_BINARY_LIST) ? 569 572 REG_BINARY : REG_SZ, 570 573 &witem->datastart, witem->size); … … 590 593 { 591 594 LPWINEMRULIST mp = (LPWINEMRULIST)hMRUList; 592 INT i;595 UINT i; 593 596 594 597 TRACE("\n"); … … 611 614 /************************************************************************** 612 615 * FindMRUData [COMCTL32.169] 613 * 616 * 614 617 * Searches binary list for item that matches lpData of length cbData. 615 618 * Returns position in list order 0 -> MRU and if lpRegNum != NULL then value … … 629 632 { 630 633 LPWINEMRULIST mp = (LPWINEMRULIST)hList; 631 INT i, ret;634 UINT i, ret; 632 635 LPSTR dataA = NULL; 633 636 … … 646 649 for(i=0; i<mp->cursize; i++) { 647 650 if (mp->extview.dwFlags & MRUF_BINARY_LIST) { 648 if (!mp->extview.lpfnCompare(lpData, &mp->array[i]->datastart, 651 if (!mp->extview.lpfnCompare(lpData, &mp->array[i]->datastart, 649 652 cbData)) 650 653 break; … … 679 682 *lpRegNum = 'a' + i; 680 683 681 TRACE("(% 08x, %p, %ld, %p) returning %d\n",684 TRACE("(%p, %p, %ld, %p) returning %d\n", 682 685 hList, lpData, cbData, lpRegNum, ret); 683 686 … … 688 691 /************************************************************************** 689 692 * AddMRUData [COMCTL32.167] 690 * 693 * 691 694 * Add item to MRU binary list. If item already exists in list then it is 692 695 * simply moved up to the top of the list and not added again. If list is … … 728 731 729 732 /* Allocate space for new item and move in the data */ 730 mp->array[replace] = witem = (LPWINEMRUITEM)COMCTL32_Alloc(cbData + 733 mp->array[replace] = witem = (LPWINEMRUITEM)COMCTL32_Alloc(cbData + 731 734 sizeof(WINEMRUITEM)); 732 735 witem->itemFlag |= WMRUIF_CHANGED; … … 740 743 } 741 744 mp->realMRU[0] = replace + 'a'; 742 TRACE("(% 08x, %p, %ld) adding data, /%c/ now most current\n",745 TRACE("(%p, %p, %ld) adding data, /%c/ now most current\n", 743 746 hList, lpData, cbData, replace+'a'); 744 747 ret = replace; … … 754 757 /************************************************************************** 755 758 * AddMRUStringW [COMCTL32.401] 756 * 759 * 757 760 * Add item to MRU string list. If item already exists in list them it is 758 761 * simply moved up to the top of the list and not added again. If list is … … 770 773 AddMRUStringW(HANDLE hList, LPCWSTR lpszString) 771 774 { 772 FIXME("(% 08x, %s) empty stub!\n", hList, debugstr_w(lpszString));775 FIXME("(%p, %s) empty stub!\n", hList, debugstr_w(lpszString)); 773 776 774 777 return 0; … … 781 784 AddMRUStringA(HANDLE hList, LPCSTR lpszString) 782 785 { 783 FIXME("(% 08x, %s) empty stub!\n", hList, debugstr_a(lpszString));786 FIXME("(%p, %s) empty stub!\n", hList, debugstr_a(lpszString)); 784 787 785 788 return 0; … … 801 804 DelMRUString(HANDLE hList, INT nItemPos) 802 805 { 803 FIXME("(% 08x, %d): stub\n", hList, nItemPos);806 FIXME("(%p, %d): stub\n", hList, nItemPos); 804 807 return TRUE; 805 808 } … … 817 820 /************************************************************************** 818 821 * FindMRUStringA [COMCTL32.155] 819 * 822 * 820 823 * Searches string list for item that matches lpszString. 821 824 * Returns position in list order 0 -> MRU and if lpRegNum != NULL then value … … 848 851 HANDLE CreateMRUListLazy_common(LPWINEMRULIST mp) 849 852 { 850 INT i, err;853 UINT i, err; 851 854 HKEY newkey; 852 855 DWORD datasize, dwdisp; … … 868 871 869 872 /* open the sub key */ 870 if ((err = RegCreateKeyExW( mp->extview.hKey, mp->extview.lpszSubKey, 873 if ((err = RegCreateKeyExW( mp->extview.hKey, mp->extview.lpszSubKey, 871 874 0, 872 875 emptyW, 873 REG_OPTION_NON_VOLATILE, 876 REG_OPTION_NON_VOLATILE, 874 877 KEY_READ | KEY_WRITE, 875 878 0, … … 887 890 if (newkey) { 888 891 datasize = mp->extview.nMaxItems + 1; 889 if((err=RegQueryValueExA( newkey, "MRUList", 0, &type, mp->realMRU, 892 if((err=RegQueryValueExA( newkey, "MRUList", 0, &type, mp->realMRU, 890 893 &datasize))) { 891 894 /* not present - set size to 1 (will become 0 later) */ … … 907 910 ERR("Key %s not found 1\n", debugstr_w(realname)); 908 911 } 909 mp->array[i] = witem = (LPWINEMRUITEM)COMCTL32_Alloc(datasize + 912 mp->array[i] = witem = (LPWINEMRUITEM)COMCTL32_Alloc(datasize + 910 913 sizeof(WINEMRUITEM)); 911 914 witem->size = datasize; 912 if(RegQueryValueExW( newkey, realname, 0, &type, 915 if(RegQueryValueExW( newkey, realname, 0, &type, 913 916 &witem->datastart, &datasize)) { 914 917 /* not present - what to do ??? */ … … 949 952 mp->isUnicode = TRUE; 950 953 951 return CreateMRUListLazy_common(mp); 954 return CreateMRUListLazy_common(mp); 952 955 } 953 956 … … 1018 1021 * of list returns -1. 1019 1022 * If lpBuffer == NULL or nItemPos is -ve return value is no. of items in 1020 * the list. 1023 * the list. 1021 1024 */ 1022 1025 INT WINAPI EnumMRUListW(HANDLE hList, INT nItemPos, LPVOID lpBuffer, … … 1033 1036 TRACE("nItemPos=%d, desired=%d\n", nItemPos, desired); 1034 1037 witem = mp->array[desired]; 1035 datasize = min( witem->size, nBufferSize ); 1038 datasize = min( witem->size, nBufferSize ); 1036 1039 memcpy( lpBuffer, &witem->datastart, datasize); 1037 TRACE("(% 08x, %d, %p, %ld): returning len=%d\n",1040 TRACE("(%p, %d, %p, %ld): returning len=%d\n", 1038 1041 hList, nItemPos, lpBuffer, nBufferSize, datasize); 1039 1042 return datasize; … … 1042 1045 /************************************************************************** 1043 1046 * EnumMRUListA [COMCTL32.154] 1044 * 1047 * 1045 1048 */ 1046 1049 INT WINAPI EnumMRUListA(HANDLE hList, INT nItemPos, LPVOID lpBuffer, … … 1059 1062 witem = mp->array[desired]; 1060 1063 if(mp->extview.dwFlags & MRUF_BINARY_LIST) { 1061 datasize = min( witem->size, nBufferSize ); 1064 datasize = min( witem->size, nBufferSize ); 1062 1065 memcpy( lpBuffer, &witem->datastart, datasize); 1063 1066 } else { … … 1068 1071 lpBuffer, datasize, NULL, NULL); 1069 1072 } 1070 TRACE("(% 08x, %d, %p, %ld): returning len=%d\n",1073 TRACE("(%p, %d, %p, %ld): returning len=%d\n", 1071 1074 hList, nItemPos, lpBuffer, nBufferSize, datasize); 1072 1075 return datasize; 1073 1076 } 1074 1077 1075 1078 1076 1079 /************************************************************************** … … 1128 1131 { 1129 1132 TRACE("(%p %p)\n", lppDest, lpSrc); 1130 1133 1131 1134 if (lpSrc) { 1132 1135 LPSTR ptr = COMCTL32_ReAlloc (*lppDest, strlen (lpSrc) + 1); … … 1201 1204 { 1202 1205 TRACE("(%p %p)\n", lppDest, lpSrc); 1203 1206 1204 1207 if (lpSrc) { 1205 1208 INT len = strlenW (lpSrc) + 1; … … 1373 1376 1374 1377 /************************************************************************** 1375 * DSA_GetItem [COMCTL32.322] 1378 * DSA_GetItem [COMCTL32.322] 1376 1379 * 1377 1380 * PARAMS … … 1391 1394 1392 1395 TRACE("(%p %d %p)\n", hdsa, nIndex, pDest); 1393 1396 1394 1397 if (!hdsa) 1395 1398 return FALSE; … … 1405 1408 1406 1409 /************************************************************************** 1407 * DSA_GetItemPtr [COMCTL32.323] 1410 * DSA_GetItemPtr [COMCTL32.323] 1408 1411 * 1409 1412 * Retrieves a pointer to the specified item. … … 1431 1434 1432 1435 pSrc = (char *) hdsa->pData + (hdsa->nItemSize * nIndex); 1433 1436 1434 1437 TRACE("-- ret=%p\n", pSrc); 1435 1438 … … 1439 1442 1440 1443 /************************************************************************** 1441 * DSA_SetItem [COMCTL32.325] 1444 * DSA_SetItem [COMCTL32.325] 1442 1445 * 1443 1446 * Sets the contents of an item in the array. … … 1458 1461 INT nSize, nNewItems; 1459 1462 LPVOID pDest, lpTemp; 1460 1463 1461 1464 TRACE("(%p %d %p)\n", hdsa, nIndex, pSrc); 1462 1465 1463 1466 if ((!hdsa) || nIndex < 0) 1464 1467 return FALSE; 1465 1468 1466 1469 if (hdsa->nItemCount <= nIndex) { 1467 1470 /* within the old array */ … … 1483 1486 hdsa->nItemCount = nIndex + 1; 1484 1487 hdsa->pData = lpTemp; 1485 } 1488 } 1486 1489 } 1487 1490 … … 1497 1500 1498 1501 /************************************************************************** 1499 * DSA_InsertItem [COMCTL32.324] 1502 * DSA_InsertItem [COMCTL32.324] 1500 1503 * 1501 1504 * PARAMS … … 1514 1517 INT nNewItems, nSize; 1515 1518 LPVOID lpTemp, lpDest; 1516 1519 1517 1520 TRACE("(%p %d %p)\n", hdsa, nIndex, pSrc); 1518 1521 … … 1534 1537 1535 1538 hdsa->nMaxCount = nNewItems; 1536 hdsa->pData = lpTemp; 1539 hdsa->pData = lpTemp; 1537 1540 } 1538 1541 … … 1559 1562 1560 1563 /************************************************************************** 1561 * DSA_DeleteItem [COMCTL32.326] 1564 * DSA_DeleteItem [COMCTL32.326] 1562 1565 * 1563 1566 * PARAMS … … 1575 1578 LPVOID lpDest,lpSrc; 1576 1579 INT nSize; 1577 1580 1578 1581 TRACE("(%p %d)\n", hdsa, nIndex); 1579 1582 … … 1592 1595 memmove (lpDest, lpSrc, nSize); 1593 1596 } 1594 1597 1595 1598 hdsa->nItemCount--; 1596 1599 1597 1600 /* free memory ? */ 1598 1601 if ((hdsa->nMaxCount - hdsa->nItemCount) >= hdsa->nGrow) { … … 1629 1632 TRACE("(%p)\n", hdsa); 1630 1633 1631 if (!hdsa) 1634 if (!hdsa) 1632 1635 return FALSE; 1633 1636 if (hdsa->pData && (!COMCTL32_Free (hdsa->pData))) … … 1815 1818 1816 1819 LPVOID WINAPI 1817 DPA_GetPtr (const HDPA hdpa, INT i)1818 { 1819 TRACE("(%p %d)\n", hdpa, i);1820 DPA_GetPtr (const HDPA hdpa, INT nIndex) 1821 { 1822 TRACE("(%p %d)\n", hdpa, nIndex); 1820 1823 1821 1824 if (!hdpa) … … 1825 1828 return NULL; 1826 1829 } 1827 if (( i < 0) || (i>= hdpa->nItemCount)) {1828 WARN("not enough pointers in array (%d vs %d).\n", i,hdpa->nItemCount);1830 if ((nIndex < 0) || (nIndex >= hdpa->nItemCount)) { 1831 WARN("not enough pointers in array (%d vs %d).\n",nIndex,hdpa->nItemCount); 1829 1832 return NULL; 1830 1833 } 1831 1834 1832 TRACE("-- %p\n", hdpa->ptrs[ i]);1833 1834 return hdpa->ptrs[ i];1835 TRACE("-- %p\n", hdpa->ptrs[nIndex]); 1836 1837 return hdpa->ptrs[nIndex]; 1835 1838 } 1836 1839 … … 1885 1888 DPA_InsertPtr (const HDPA hdpa, INT i, LPVOID p) 1886 1889 { 1887 INT nNewItems, nSize, nIndex = 0;1888 LPVOID *lpTemp, *lpDest;1889 1890 1890 TRACE("(%p %d %p)\n", hdpa, i, p); 1891 1891 1892 if ((!hdpa) || (i < 0)) 1893 return -1; 1894 1895 if (!hdpa->ptrs) { 1896 hdpa->ptrs = 1897 (LPVOID*)HeapAlloc (hdpa->hHeap, HEAP_ZERO_MEMORY, 1898 2 * hdpa->nGrow * sizeof(LPVOID)); 1899 if (!hdpa->ptrs) 1900 return -1; 1901 hdpa->nMaxCount = hdpa->nGrow * 2; 1902 nIndex = 0; 1903 } 1904 else { 1905 if (hdpa->nItemCount >= hdpa->nMaxCount) { 1906 TRACE("-- resizing\n"); 1907 nNewItems = hdpa->nMaxCount + hdpa->nGrow; 1908 nSize = nNewItems * sizeof(LPVOID); 1909 1910 lpTemp = (LPVOID*)HeapReAlloc (hdpa->hHeap, HEAP_ZERO_MEMORY, 1911 hdpa->ptrs, nSize); 1912 if (!lpTemp) 1913 return -1; 1914 hdpa->nMaxCount = nNewItems; 1915 hdpa->ptrs = lpTemp; 1916 } 1917 1918 if (i >= hdpa->nItemCount) { 1919 nIndex = hdpa->nItemCount; 1920 TRACE("-- appending at %d\n", nIndex); 1921 } 1922 else { 1923 TRACE("-- inserting at %d\n", i); 1924 lpTemp = hdpa->ptrs + i; 1925 lpDest = lpTemp + 1; 1926 nSize = (hdpa->nItemCount - i) * sizeof(LPVOID); 1927 TRACE("-- move dest=%p src=%p size=%x\n", 1928 lpDest, lpTemp, nSize); 1929 memmove (lpDest, lpTemp, nSize); 1930 nIndex = i; 1931 } 1932 } 1933 1934 /* insert item */ 1935 hdpa->nItemCount++; 1936 hdpa->ptrs[nIndex] = p; 1937 1938 return nIndex; 1939 } 1940 1892 if (!hdpa || i < 0) return -1; 1893 1894 if (i >= 0x7fff) 1895 i = hdpa->nItemCount; 1896 1897 if (i >= hdpa->nItemCount) 1898 return DPA_SetPtr(hdpa, i, p) ? i : -1; 1899 1900 /* create empty spot at the end */ 1901 if (!DPA_SetPtr(hdpa, hdpa->nItemCount, 0)) return -1; 1902 memmove (hdpa->ptrs + i + 1, hdpa->ptrs + i, (hdpa->nItemCount - i - 1) * sizeof(LPVOID)); 1903 hdpa->ptrs[i] = p; 1904 return i; 1905 } 1941 1906 1942 1907 /************************************************************************** … … 1959 1924 { 1960 1925 LPVOID *lpTemp; 1961 1926 1962 1927 TRACE("(%p %d %p)\n", hdpa, i, p); 1963 1928 1964 if ( (!hdpa) || i < 0)1929 if (!hdpa || i < 0 || i > 0x7fff) 1965 1930 return FALSE; 1966 1931 1967 1932 if (hdpa->nItemCount <= i) { 1968 1933 /* within the old array */ 1969 if (hdpa->nMaxCount > i) { 1970 /* within the allocated space, set a new boundary */ 1971 hdpa->nItemCount = i+1; 1972 } 1973 else { 1934 if (hdpa->nMaxCount <= i) { 1974 1935 /* resize the block of memory */ 1975 1936 INT nNewItems = … … 1977 1938 INT nSize = nNewItems * sizeof(LPVOID); 1978 1939 1979 lpTemp = (LPVOID*)HeapReAlloc (hdpa->hHeap, HEAP_ZERO_MEMORY, 1980 hdpa->ptrs, nSize); 1940 if (hdpa->ptrs) 1941 lpTemp = (LPVOID*)HeapReAlloc (hdpa->hHeap, HEAP_ZERO_MEMORY, hdpa->ptrs, nSize); 1942 else 1943 lpTemp = (LPVOID*)HeapAlloc (hdpa->hHeap, HEAP_ZERO_MEMORY, nSize); 1944 1981 1945 if (!lpTemp) 1982 1946 return FALSE; 1983 1947 1984 hdpa->nItemCount = nNewItems; 1985 hdpa->ptrs = lpTemp; 1986 } 1948 hdpa->nMaxCount = nNewItems; 1949 hdpa->ptrs = lpTemp; 1950 } 1951 hdpa->nItemCount = i+1; 1987 1952 } 1988 1953 … … 2013 1978 LPVOID *lpDest, *lpSrc, lpTemp = NULL; 2014 1979 INT nSize; 2015 1980 2016 1981 TRACE("(%p %d)\n", hdpa, i); 2017 1982 … … 2030 1995 memmove (lpDest, lpSrc, nSize); 2031 1996 } 2032 1997 2033 1998 hdpa->nItemCount --; 2034 1999 2035 2000 /* free memory ?*/ 2036 2001 if ((hdpa->nMaxCount - hdpa->nItemCount) >= hdpa->nGrow) { … … 2043 2008 2044 2009 hdpa->nMaxCount = nNewItems; 2045 hdpa->ptrs = (LPVOID*)lpDest; 2010 hdpa->ptrs = (LPVOID*)lpDest; 2046 2011 } 2047 2012 … … 2068 2033 TRACE("(%p)\n", hdpa); 2069 2034 2070 if (!hdpa) 2035 if (!hdpa) 2071 2036 return FALSE; 2072 2037 … … 2107 2072 2108 2073 TRACE("l=%i r=%i\n", l, r); 2109 2074 2110 2075 if (l==r) /* one element is always sorted */ 2111 2076 return; … … 2120 2085 2121 2086 /* join the two sides */ 2122 while( (l<=m) && (m<r) ) 2087 while( (l<=m) && (m<r) ) 2123 2088 { 2124 2089 if(pfnCompare(lpPtrs[l],lpPtrs[m+1],lParam)>0) … … 2238 2203 2239 2204 TRACE("linear search\n"); 2240 2205 2241 2206 nIndex = (nStart == -1)? 0 : nStart; 2242 2207 lpPtr = hdpa->ptrs; … … 2273 2238 HDPA hdpa; 2274 2239 2275 TRACE("(%d 0x%x)\n", nGrow, hHeap);2240 TRACE("(%d %p)\n", nGrow, hHeap); 2276 2241 2277 2242 if (hHeap) … … 2321 2286 UINT idFrom = 0; 2322 2287 2323 TRACE("( 0x%04x 0x%04x%d %p 0x%08lx)\n",2288 TRACE("(%p %p %d %p 0x%08lx)\n", 2324 2289 lpNotify->hwndFrom, lpNotify->hwndTo, uCode, lpHdr, 2325 2290 lpNotify->dwParam5); … … 2328 2293 return 0; 2329 2294 2330 if (lpNotify->hwndFrom == -1) {2295 if (lpNotify->hwndFrom == (HWND)-1) { 2331 2296 lpNmh = lpHdr; 2332 2297 idFrom = lpHdr->idFrom; … … 2374 2339 NOTIFYDATA notify; 2375 2340 2376 TRACE("( 0x%04x 0x%04x%d %p)\n",2341 TRACE("(%p %p %d %p)\n", 2377 2342 hwndTo, hwndFrom, uCode, lpHdr); 2378 2343 … … 2408 2373 HWND hwndNotify; 2409 2374 2410 TRACE("( 0x%04x 0x%04x%d %p 0x%08lx)\n",2375 TRACE("(%p %p %d %p 0x%08lx)\n", 2411 2376 hwndFrom, hwndTo, uCode, lpHdr, dwParam5); 2412 2377 … … 2473 2438 } 2474 2439 2475 2476 2440 /************************************************************************** 2477 2441 * StrToIntA [COMCTL32.357] Converts a string to a signed integer. … … 2485 2449 2486 2450 /************************************************************************** 2451 * StrStrIW [COMCTL32.363] 2452 */ 2453 2454 LPWSTR WINAPI 2455 COMCTL32_StrStrIW (LPCWSTR lpStr1, LPCWSTR lpStr2) 2456 { 2457 INT len1, len2, i; 2458 WCHAR first; 2459 2460 if (*lpStr2 == 0) 2461 return ((LPWSTR)lpStr1); 2462 len1 = 0; 2463 while (lpStr1[len1] != 0) ++len1; 2464 len2 = 0; 2465 while (lpStr2[len2] != 0) ++len2; 2466 if (len2 == 0) 2467 return ((LPWSTR)(lpStr1 + len1)); 2468 first = tolowerW (*lpStr2); 2469 while (len1 >= len2) { 2470 if (tolowerW (*lpStr1) == first) { 2471 for (i = 1; i < len2; ++i) 2472 if (tolowerW (lpStr1[i]) != tolowerW(lpStr2[i])) 2473 break; 2474 if (i >= len2) 2475 return ((LPWSTR)lpStr1); 2476 } 2477 ++lpStr1; --len1; 2478 } 2479 return (NULL); 2480 } 2481 2482 /************************************************************************** 2487 2483 * StrToIntW [COMCTL32.365] Converts a wide char string to a signed integer. 2488 2484 */ … … 2491 2487 COMCTL32_StrToIntW (LPWSTR lpString) 2492 2488 { 2493 return _wtoi(lpString);2489 return atoiW(lpString); 2494 2490 } 2495 2491 … … 2503 2499 * hdpa [I] handle to the dynamic pointer array 2504 2500 * enumProc [I] 2505 * lParam [I] 2501 * lParam [I] 2506 2502 * 2507 2503 * RETURNS … … 2684 2680 if (dbcs && lpStart[1] != HIBYTE(wMatch)) continue; 2685 2681 lpGotIt = lpStart; 2686 } 2682 } 2687 2683 return (LPSTR)lpGotIt; 2688 2684 } … … 2738 2734 if( strchrW(lpSet, *(WORD*)lpLoop)) 2739 2735 return (INT)(lpLoop-lpStr); 2740 2736 2741 2737 return (INT)(lpLoop-lpStr); 2742 2738 } 2743 2739 2744 2740 /************************************************************************** 2745 * @ [COMCTL32.41 0]2741 * @ [COMCTL32.415] 2746 2742 * 2747 2743 * FIXME: What's this supposed to do? … … 2749 2745 */ 2750 2746 2751 BOOL WINAPI COMCTL32_410( HWND hw, DWORD b, DWORD c, DWORD d) {2752 2753 FIXME("(%x, %lx, %lx, %lx): stub!\n", hw, b, c, d);2754 2755 return TRUE;2756 }2757 2758 /**************************************************************************2759 * @ [COMCTL32.411]2760 *2761 * FIXME: What's this supposed to do?2762 * Parameter 1 is an HWND, you're on your own for the rest.2763 */2764 2765 BOOL WINAPI COMCTL32_411( HWND hw, DWORD b, DWORD c) {2766 2767 FIXME("(%x, %lx, %lx): stub!\n", hw, b, c);2768 2769 return TRUE;2770 }2771 2772 /**************************************************************************2773 * @ [COMCTL32.412]2774 *2775 * FIXME: What's this supposed to do?2776 * Parameter 1 is an HWND, you're on your own for the rest.2777 */2778 2779 BOOL WINAPI COMCTL32_412( HWND hwnd, DWORD b, DWORD c)2780 {2781 FIXME("(%x, %lx, %lx): stub!\n", hwnd, b, c);2782 2783 if (IsWindow (hwnd) == FALSE)2784 return FALSE;2785 2786 if (b == 0)2787 return FALSE;2788 2789 2790 return TRUE;2791 }2792 2793 /**************************************************************************2794 * @ [COMCTL32.413]2795 *2796 * FIXME: What's this supposed to do?2797 * Parameter 1 is an HWND, you're on your own for the rest.2798 */2799 2800 BOOL WINAPI COMCTL32_413( HWND hw, DWORD b, DWORD c, DWORD d) {2801 2802 FIXME("(%x, %lx, %lx, %lx): stub!\n", hw, b, c, d);2803 2804 return TRUE;2805 }2806 2807 2808 /**************************************************************************2809 * @ [COMCTL32.415]2810 *2811 * FIXME: What's this supposed to do?2812 * Parameter 1 is an HWND, you're on your own for the rest.2813 */2814 2815 2747 BOOL WINAPI COMCTL32_415( HWND hwnd, DWORD b, DWORD c, DWORD d, DWORD e) 2816 2748 { 2817 2749 2818 FIXME("(% x, %lx, %lx, %lx, %lx): stub!\n", hwnd, b, c, d, e);2750 FIXME("(%p, %lx, %lx, %lx, %lx): stub!\n", hwnd, b, c, d, e); 2819 2751 2820 2752 return TRUE;
Note:
See TracChangeset
for help on using the changeset viewer.