source: trunk/src/user32/winprop.cpp@ 3485

Last change on this file since 3485 was 3209, checked in by sandervl, 25 years ago

replaced writelog calls

File size: 5.6 KB
Line 
1/* $Id: winprop.cpp,v 1.8 2000-03-23 23:06:54 sandervl Exp $ */
2/*
3 * Win32 Property apis for OS/2
4 *
5 *
6 * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 *
9 * Project Odin Software License can be found in LICENSE.TXT
10 *
11 */
12#include <user32.h>
13#include <misc.h>
14#include "win32wbase.h"
15
16#define DBG_LOCALLOG DBG_winprop
17#include "dbglocal.h"
18
19//******************************************************************************
20//******************************************************************************
21int WIN32API EnumPropsA(HWND hwnd, PROPENUMPROCA arg2)
22{
23 dprintf(("USER32: EnumPropsA DOES NOT WORK\n"));
24 //calling convention problems
25 return 0;
26// return O32_EnumProps(hwnd, (PROPENUMPROC_O32)arg2);
27}
28//******************************************************************************
29//******************************************************************************
30int WIN32API EnumPropsExA( HWND hwnd, PROPENUMPROCEXA arg2, LPARAM arg3)
31{
32 dprintf(("USER32: EnumPropsExA DOES NOT WORK\n"));
33 //calling convention problems
34 return 0;
35// return O32_EnumPropsEx(hwnd, arg2, (PROPENUMPROCEX_O32)arg3);
36}
37//******************************************************************************
38//******************************************************************************
39int WIN32API EnumPropsExW( HWND hwnd, PROPENUMPROCEXW arg2, LPARAM arg3)
40{
41 dprintf(("USER32: EnumPropsExW DOES NOT WORK\n"));
42 // NOTE: This will not work as is (needs UNICODE support)
43 //calling convention problems
44 return 0;
45// return O32_EnumPropsEx(hwnd, arg2, arg3);
46}
47//******************************************************************************
48//******************************************************************************
49int WIN32API EnumPropsW( HWND hwnd, PROPENUMPROCW arg2)
50{
51 dprintf(("USER32: EnumPropsW DOES NOT WORK\n"));
52 // NOTE: This will not work as is (needs UNICODE support)
53 //calling convention problems
54 return 0;
55// return O32_EnumProps(hwnd, arg2);
56}
57//******************************************************************************
58//******************************************************************************
59HANDLE WIN32API GetPropA(HWND hwnd, LPCSTR arg2)
60{
61 Win32BaseWindow *window;
62 HANDLE rc;
63
64 window = Win32BaseWindow::GetWindowFromHandle(hwnd);
65 if(!window) {
66 dprintf(("GetPropA, window %x not found", hwnd));
67 SetLastError(ERROR_INVALID_WINDOW_HANDLE);
68 return 0;
69 }
70 rc = O32_GetProp(window->getOS2WindowHandle(), arg2);
71 if(HIWORD(arg2) != 0)
72 dprintf2(("USER32: GetPropA %s returned %x\n", arg2, rc));
73 else dprintf2(("USER32: GetPropA %X returned %x\n", arg2, rc));
74 return rc;
75}
76//******************************************************************************
77//******************************************************************************
78HANDLE WIN32API GetPropW(HWND hwnd, LPCWSTR arg2)
79{
80 BOOL handle;
81 char *astring;
82
83 if(HIWORD(arg2) != 0)
84 astring = UnicodeToAsciiString((LPWSTR)arg2);
85 else astring = (char *)arg2;
86
87 handle = GetPropA(hwnd, (LPCSTR)astring);
88 if(HIWORD(astring) != 0)
89 FreeAsciiString(astring);
90
91 return(handle);
92}
93//******************************************************************************
94//******************************************************************************
95HANDLE WIN32API RemovePropA( HWND hwnd, LPCSTR arg2)
96{
97 Win32BaseWindow *window;
98
99 window = Win32BaseWindow::GetWindowFromHandle(hwnd);
100 if(!window) {
101 dprintf(("RemovePropA, window %x not found", hwnd));
102 SetLastError(ERROR_INVALID_WINDOW_HANDLE);
103 return 0;
104 }
105 if(HIWORD(arg2) != 0)
106 dprintf2(("USER32: RemovePropA %s\n", arg2));
107 else dprintf2(("USER32: RemovePropA %X\n", arg2));
108 return O32_RemoveProp(window->getOS2WindowHandle(), arg2);
109}
110//******************************************************************************
111//******************************************************************************
112HANDLE WIN32API RemovePropW( HWND hwnd, LPCWSTR arg2)
113{
114 char *astring;
115 HANDLE rc;
116
117 if(HIWORD(arg2) != 0)
118 astring = UnicodeToAsciiString((LPWSTR)arg2);
119 else astring = (char *)arg2;
120
121 rc = RemovePropA(hwnd, astring);
122
123 if(HIWORD(astring) != 0)
124 FreeAsciiString(astring);
125 return rc;
126}
127//******************************************************************************
128//******************************************************************************
129BOOL WIN32API SetPropA( HWND hwnd, LPCSTR arg2, HANDLE arg3)
130{
131 Win32BaseWindow *window;
132
133 window = Win32BaseWindow::GetWindowFromHandle(hwnd);
134 if(!window) {
135 dprintf(("SetPropA, window %x not found", hwnd));
136 SetLastError(ERROR_INVALID_WINDOW_HANDLE);
137 return 0;
138 }
139 if(HIWORD(arg2) != 0)
140 dprintf2(("USER32: SetPropA %s to %x\n", arg2, arg3));
141 else dprintf2(("USER32: SetPropA %X to %x\n", arg2, arg3));
142 return O32_SetProp(window->getOS2WindowHandle(), arg2, arg3);
143}
144//******************************************************************************
145//******************************************************************************
146BOOL WIN32API SetPropW(HWND hwnd, LPCWSTR arg2, HANDLE arg3)
147{
148 BOOL rc;
149 char *astring;
150
151 if(HIWORD(arg2) != 0)
152 astring = UnicodeToAsciiString((LPWSTR)arg2);
153 else astring = (char *)arg2;
154
155 rc = SetPropA(hwnd, astring, arg3);
156 if(HIWORD(astring) != 0)
157 FreeAsciiString(astring);
158
159 return(rc);
160}
161//******************************************************************************
162//******************************************************************************
Note: See TracBrowser for help on using the repository browser.