Reverted latest changes.
[reactos.git] / reactos / lib / user32 / windows / prop.c
1 /*
2 * ReactOS kernel
3 * Copyright (C) 1998, 1999, 2000, 2001 ReactOS Team
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19 /* $Id: prop.c,v 1.4 2002/09/08 10:23:12 chorns Exp $
20 *
21 * PROJECT: ReactOS user32.dll
22 * FILE: lib/user32/windows/input.c
23 * PURPOSE: Input
24 * PROGRAMMER: Casper S. Hornstrup (chorns@users.sourceforge.net)
25 * UPDATE HISTORY:
26 * 09-05-2001 CSH Created
27 */
28
29 /* INCLUDES ******************************************************************/
30
31 #include <windows.h>
32 #include <user32.h>
33 #include <debug.h>
34
35
36 /* FUNCTIONS *****************************************************************/
37
38 int STDCALL
39 EnumPropsA(HWND hWnd, PROPENUMPROC lpEnumFunc)
40 {
41 return 0;
42 }
43
44 int STDCALL
45 EnumPropsExA(HWND hWnd, PROPENUMPROCEX lpEnumFunc, LPARAM lParam)
46 {
47 return 0;
48 }
49
50 int STDCALL
51 EnumPropsExW(HWND hWnd, PROPENUMPROCEX lpEnumFunc, LPARAM lParam)
52 {
53 return 0;
54 }
55
56 int STDCALL
57 EnumPropsW(HWND hWnd, PROPENUMPROC lpEnumFunc)
58 {
59 return 0;
60 }
61
62 HANDLE STDCALL
63 GetPropA(HWND hWnd, LPCSTR lpString)
64 {
65 PWSTR lpWString;
66 HANDLE Ret;
67 if (HIWORD(lpString))
68 {
69 lpWString = User32ConvertString(lpString);
70 if (lpWString == NULL)
71 {
72 return(FALSE);
73 }
74 Ret = GetPropW(hWnd, lpWString);
75 User32FreeString(lpWString);
76 }
77 else
78 {
79 Ret = GetPropW(hWnd, lpString);
80 }
81 return(Ret);
82 }
83
84 HANDLE STDCALL
85 GetPropW(HWND hWnd, LPCWSTR lpString)
86 {
87 ATOM Atom;
88 if (HIWORD(lpString))
89 {
90 Atom = GlobalFindAtomW(lpString);
91 }
92 else
93 {
94 Atom = LOWORD(lpString);
95 }
96 return(NtUserGetProp(hWnd, Atom));
97 }
98
99 HANDLE STDCALL
100 RemovePropA(HWND hWnd, LPCSTR lpString)
101 {
102 PWSTR lpWString;
103 HANDLE Ret;
104
105 if (HIWORD(lpString))
106 {
107 lpWString = User32ConvertString(lpString);
108 if (lpWString == NULL)
109 {
110 return(FALSE);
111 }
112 Ret = RemovePropW(hWnd, lpWString);
113 User32FreeString(lpWString);
114 }
115 else
116 {
117 Ret = RemovePropW(hWnd, lpWString);
118 }
119 return(Ret);
120 }
121
122 HANDLE STDCALL
123 RemovePropW(HWND hWnd,
124 LPCWSTR lpString)
125 {
126 ATOM Atom;
127 if (HIWORD(lpString))
128 {
129 Atom = GlobalFindAtomW(lpString);
130 }
131 else
132 {
133 Atom = LOWORD(lpString);
134 }
135 return(NtUserRemoveProp(hWnd, Atom));
136 }
137
138 WINBOOL STDCALL
139 SetPropA(HWND hWnd, LPCSTR lpString, HANDLE hData)
140 {
141 PWSTR lpWString;
142 BOOL Ret;
143
144 if (HIWORD(lpString))
145 {
146 lpWString = User32ConvertString(lpString);
147 if (lpWString == NULL)
148 {
149 return(FALSE);
150 }
151 Ret = SetPropW(hWnd, lpWString, hData);
152 User32FreeString(lpWString);
153 }
154 else
155 {
156 Ret = SetPropW(hWnd, lpString, hData);
157 }
158 return(Ret);
159 }
160
161 WINBOOL STDCALL
162 SetPropW(HWND hWnd, LPCWSTR lpString, HANDLE hData)
163 {
164 ATOM Atom;
165 if (HIWORD(lpString))
166 {
167 Atom = GlobalFindAtomW(lpString);
168 }
169 else
170 {
171 Atom = LOWORD(lpString);
172 }
173
174 return(NtUserSetProp(hWnd, Atom, hData));
175 }