source: trunk/src/shell32/ordinal.cpp@ 972

Last change on this file since 972 was 972, checked in by sandervl, 26 years ago

Import lstrncmpiA from kernel32

File size: 6.9 KB
Line 
1/* $Id: ordinal.cpp,v 1.4 1999-09-18 15:57:51 sandervl Exp $ */
2
3/*
4 * Win32 SHELL32 for OS/2
5 * Copyright 1997 Marcus Meissner
6 * Copyright 1988 Patrick Haller (adapted for win32os2)
7 * Project Odin Software License can be found in LICENSE.TXT
8 *
9 */
10
11
12/*****************************************************************************
13 * Includes *
14 *****************************************************************************/
15
16#include <os2win.h>
17#include <shellapi.h>
18#include <winreg.h>
19
20#include <stdarg.h>
21//#include <builtin.h>
22#include <stdio.h>
23#include <stdlib.h>
24#include <string.h>
25#include <wchar.h>
26#include <wcstr.h>
27
28#include <misc.h>
29#include <unicode.h>
30#include <winnls.h>
31
32#include "shell32.h"
33
34
35/*****************************************************************************
36 * Types & Defines *
37 *****************************************************************************/
38
39
40/*************************************************************************
41 * SHELL32_16 [SHELL32.16]
42 * find_lastitem_in_itemidlist()
43 */
44LPSHITEMID WIN32API ILFindLastID(LPITEMIDLIST iil)
45{
46 LPSHITEMID lastsii,
47 sii;
48
49 dprintf(("SHELL32: ILFindLastID (%08xh)\n",
50 iil));
51
52 if (!iil)
53 return NULL;
54
55 sii = &(iil->mkid);
56 lastsii = sii;
57
58 while (sii->cb)
59 {
60 lastsii = sii;
61 sii = (LPSHITEMID)(((char*)sii)+sii->cb);
62 }
63
64 return lastsii;
65}
66
67
68/*************************************************************************
69 * SHELL32_71 [SHELL32.71]
70 * returns internal shell values in the passed pointers
71 */
72BOOL WIN32API Shell_GetImageList(LPDWORD x,
73 LPDWORD y)
74{
75 dprintf(("SHELL32: Shell_GetImageList (%08xh, %08xh) not implemented.\n",
76 x,
77 y));
78
79 return TRUE;
80}
81
82
83/*************************************************************************
84 * SHELL32_72 [SHELL32.72]
85 * dunno. something with icons
86 */
87void WIN32API Shell_GetCachedImageIndex(LPSTR x,
88 DWORD y,
89 DWORD z)
90{
91 dprintf (("SHELL32: Shell_GetCachedImageIndex (%08xh, %08xh, %08xh) not implemented.\n",
92 x,
93 y,
94 z));
95}
96
97
98/*************************************************************************
99 * SHELL32_89 [SHELL32.89]
100 */
101DWORD WIN32API SHCloneSpecialIDList(DWORD x1,
102 DWORD x2,
103 DWORD x3)
104{
105 dprintf(("SHELL32: SHCloneSpecialIDList (%08xh, %08xh, %08xh) not implemented.\n",
106 x1,
107 x2,
108 x3));
109
110 return 0;
111}
112
113
114/*************************************************************************
115 * SHELL32_119 [SHELL32.119]
116 * unknown
117 */
118BOOL WIN32API IsLFNDrive(LPVOID x)
119{
120 dprintf(("SHELL32: IsLFNDrive (%08xh) not implemented.\n",
121 x));
122
123 return TRUE;
124}
125
126
127/*************************************************************************
128 * SHELL32_77 [SHELL32.77]
129 */
130DWORD WIN32API SHMapPIDLToSystemImageListIndex(DWORD x,
131 DWORD y,
132 DWORD z)
133{
134 dprintf(("SHELL32: SHMapPIDLToSystemImageListIndex (%08xh, %08xh, %08xh) not implemented.\n",
135 x,
136 y,
137 z));
138
139 return 0;
140}
141
142
143/*************************************************************************
144 * SHELL32_152 [SHELL32.152]
145 * itemlist_length
146 */
147DWORD WIN32API ILGetSize(LPITEMIDLIST iil)
148{
149 LPSHITEMID si;
150 DWORD len;
151
152 dprintf(("SHELL32: ILGetSize (%08xh)\n",
153 iil));
154
155
156 si = &(iil->mkid);
157 len = 2;
158
159 while (si->cb)
160 {
161 len += si->cb;
162 si = (LPSHITEMID)(((char*)si)+si->cb);
163 }
164
165 return len;
166}
167
168
169
170/*************************************************************************
171 * SHELL32_18 [SHELL32.18]
172 * copy_itemidlist()
173 */
174LPITEMIDLIST WIN32API ILClone(LPITEMIDLIST iil)
175{
176 DWORD len;
177 LPITEMIDLIST newiil;
178
179 dprintf(("SHELL32: ILClone(%08xh)\n",
180 iil));
181
182
183 len = ILGetSize(iil);
184 newiil = (LPITEMIDLIST)SHAlloc(len);
185 memcpy(newiil,
186 iil,
187 len);
188
189 return newiil;
190}
191
192
193/*************************************************************************
194 * SHELL32_25 [SHELL32.25]
195 * merge_itemidlist()
196 */
197LPITEMIDLIST WIN32API ILCombine(LPITEMIDLIST iil1,
198 LPITEMIDLIST iil2)
199{
200 DWORD len1,len2;
201 LPITEMIDLIST newiil;
202
203 dprintf(("SHELL32: ILCombine(%08xh, %08xh)\n",
204 iil1,
205 iil2));
206
207
208 len1 = ILGetSize(iil1)-2;
209 len2 = ILGetSize(iil2);
210 newiil = (LPITEMIDLIST)SHAlloc(len1+len2);
211
212 memcpy(newiil,
213 iil1,
214 len1);
215
216 memcpy(((char*)newiil)+len1,
217 iil2,
218 len2);
219
220 return newiil;
221}
222
223
224/*************************************************************************
225 * SHELL32_155 [SHELL32.155]
226 * free_check_ptr - frees memory (if not NULL) allocated by SHMalloc allocator
227 */
228DWORD WIN32API ILFree(LPVOID x)
229{
230 dprintf(("SHELL32: ILFree (%08xh)\n",
231 x));
232
233 if (!x)
234 return 0;
235
236 return SHFree(x);
237}
238
239
240/*************************************************************************
241 * SHELL32_85 [SHELL32.85]
242 * unknown
243 */
244DWORD WIN32API OpenRegStream(DWORD x1,
245 DWORD x2,
246 DWORD x3,
247 DWORD x4)
248{
249 dprintf(("SHELL32: OpenRegStream (%08x, %08xh, %08xh, %08xh) not implemented.\n",
250 x1,
251 x2,
252 x3,
253 x4));
254
255 return 0;
256}
257
258
259/*****************************************************************************
260 * Name :
261 * Purpose :
262 * Parameters:
263 * Variables :
264 * Result :
265 * Remark : SHELL32.162
266 * Status : UNTESTED UNKNOWN STUB
267 *
268 * Author : Patrick Haller [Tue, 1998/06/15 03:00]
269 *****************************************************************************/
270
271DWORD WIN32API SHSimpleIDListFromPathAW(DWORD x1)
272{
273 dprintf(("SHELL32: .162 (%08xh) not implemented.\n",
274 x1));
275
276 return (0);
277}
278
279
280/*****************************************************************************
281 * Name :
282 * Purpose :
283 * Parameters:
284 * Variables :
285 * Result :
286 * Remark : SHELL32.102
287 * Status : UNTESTED UNKNOWN STUB
288 *
289 * Author : Patrick Haller [Tue, 1998/06/15 03:00]
290 *****************************************************************************/
291
292DWORD WIN32API SHCoCreateInstance(DWORD x1,
293 DWORD x2,
294 DWORD x3,
295 DWORD x4,
296 DWORD x5)
297{
298 dprintf(("SHELL32: SHCoCreateInstance (%08xh, %08xh, %08xh, %08xh, %08xh) not implemented.\n",
299 x1,
300 x2,
301 x3,
302 x4,
303 x5));
304
305 return (0);
306}
Note: See TracBrowser for help on using the repository browser.