Release 940518
[wine] / misc / shell.c
1 /*
2  *                              Shell Library Functions
3  */
4
5 #include <stdlib.h>
6 #include <stdio.h>
7 #include <string.h>
8 #include <unistd.h>
9 #include "windows.h"
10
11 typedef DWORD HKEY;
12 typedef FAR LONG *LPWORD;
13 DECLARE_HANDLE(HDROP);
14
15 extern HINSTANCE hSysRes;
16
17 /*************************************************************************
18  *                              RegOpenKey              [SHELL.1]
19  */
20 LONG RegOpenKey(HKEY k, LPCSTR s, HKEY FAR *p)
21 {
22         fprintf(stderr, "RegOpenKey : Empty Stub !!!\n");
23 }
24
25
26 /*************************************************************************
27  *                              RegCreateKey            [SHELL.2]
28  */
29 LONG RegCreateKey(HKEY k, LPCSTR s, HKEY FAR *p)
30 {
31         fprintf(stderr, "RegCreateKey : Empty Stub !!!\n");
32 }
33
34
35 /*************************************************************************
36  *                              RegCloseKey             [SHELL.3]
37  */
38 LONG RegCloseKey(HKEY k)
39 {
40         fprintf(stderr, "RegCloseKey : Empty Stub !!!\n");
41 }
42
43
44 /*************************************************************************
45  *                              RegDeleteKey            [SHELL.4]
46  */
47 LONG RegDeleteKey(HKEY k, LPCSTR s)
48 {
49         fprintf(stderr, "RegDeleteKey : Empty Stub !!!\n");
50 }
51
52
53 /*************************************************************************
54  *                              RegSetValue             [SHELL.5]
55  */
56 LONG RegSetValue(HKEY k, LPCSTR s1, DWORD dw, LPCSTR s2, DWORD dw2)
57 {
58         fprintf(stderr, "RegSetValue : Empty Stub !!!\n");
59 }
60
61
62 /*************************************************************************
63  *                              RegQueryValue           [SHELL.6]
64  */
65 LONG RegQueryValue(HKEY k, LPCSTR s, LPSTR s2, LONG FAR *p)
66 {
67         fprintf(stderr, "RegQueryValue : Empty Stub !!!\n");
68 }
69
70
71 /*************************************************************************
72  *                              RegEnumKey              [SHELL.7]
73  */
74 LONG RegEnumKey(HKEY k, DWORD dw, LPSTR s, DWORD dw2)
75 {
76         fprintf(stderr, "RegEnumKey : Empty Stub !!!\n");
77 }
78
79 /*************************************************************************
80  *                              DragAcceptFiles         [SHELL.9]
81  */
82 void DragAcceptFiles(HWND hWnd, BOOL b)
83 {
84         fprintf(stderr, "DragAcceptFiles : Empty Stub !!!\n");
85 }
86
87
88 /*************************************************************************
89  *                              DragQueryFile           [SHELL.11]
90  */
91 void DragQueryFile(HDROP h, UINT u, LPSTR u2, UINT u3)
92 {
93         fprintf(stderr, "DragQueryFile : Empty Stub !!!\n");
94
95 }
96
97
98 /*************************************************************************
99  *                              DragFinish              [SHELL.12]
100  */
101 void DragFinish(HDROP h)
102 {
103         fprintf(stderr, "DragFinish : Empty Stub !!!\n");
104
105 }
106
107
108 /*************************************************************************
109  *                              DragQueryPoint          [SHELL.13]
110  */
111 BOOL DragQueryPoint(HDROP h, POINT FAR *p)
112 {
113         fprintf(stderr, "DragQueryPoinyt : Empty Stub !!!\n");
114
115 }
116
117
118 /*************************************************************************
119  *                              ShellExecute            [SHELL.20]
120  */
121 HINSTANCE ShellExecute(HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters, LPCSTR lpDirectory, int iShowCmd)
122 {
123         fprintf(stderr, "ShellExecute : Empty Stub !!!\n");
124 }
125
126
127 /*************************************************************************
128  *                              FindExecutable          [SHELL.21]
129  */
130 HINSTANCE FindExecutable(LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult)
131 {
132         fprintf(stderr, "FindExecutable : Empty Stub !!!\n");
133
134 }
135
136 char AppName[256], AppMisc[256];
137 INT AboutDlgProc(HWND hWnd, WORD msg, WORD wParam, LONG lParam);
138
139 /*************************************************************************
140  *                              ShellAbout              [SHELL.22]
141  */
142 INT ShellAbout(HWND hWnd, LPCSTR szApp, LPCSTR szOtherStuff, HICON hIcon)
143 {
144         fprintf(stderr, "ShellAbout ! (%s, %s)\n", szApp, szOtherStuff);
145
146         strcpy(AppName, szApp);
147         strcpy(AppMisc, szOtherStuff);
148
149         return DialogBox(hSysRes, "SHELL_ABOUT_MSGBOX", hWnd, (FARPROC)AboutDlgProc);
150 }
151
152
153 /*************************************************************************
154  *                              AboutDlgProc            [SHELL.33]
155  */
156 INT AboutDlgProc(HWND hWnd, WORD msg, WORD wParam, LONG lParam)
157 {
158         char temp[256];
159
160         switch(msg) {
161         case WM_INITDIALOG:
162                 sprintf(temp, "About %s", AppName);
163                 SetWindowText(hWnd, temp);
164                 SetDlgItemText(hWnd, 100, AppMisc);
165                 break;
166
167         case WM_COMMAND:
168                 switch (wParam) {
169                 case IDOK:
170                         EndDialog(hWnd, TRUE);
171                         return TRUE;
172                 }
173         }
174         return FALSE;
175 }
176
177 /*************************************************************************
178  *                              ExtractIcon             [SHELL.34]
179  */
180 HICON ExtractIcon(HINSTANCE hInst, LPCSTR lpszExeFileName, UINT nIconIndex)
181 {
182         fprintf(stderr, "ExtractIcon : Empty Stub !!!\n");
183
184 }
185
186
187 /*************************************************************************
188  *                              ExtractAssociatedIcon   [SHELL.36]
189  */
190 HICON ExtractAssociatedIcon(HINSTANCE hInst,LPSTR lpIconPath, LPWORD lpiIcon)
191 {
192         fprintf(stderr, "ExtractAssociatedIcon : Empty Stub !!!\n");
193 }
194
195 /*************************************************************************
196  *                              RegisterShellHook       [SHELL.102]
197  */
198 int RegisterShellHook(void *ptr) 
199 {
200         fprintf(stderr, "RegisterShellHook : Empty Stub !!!\n");
201 }
202
203
204 /*************************************************************************
205  *                              ShellHookProc           [SHELL.103]
206  */
207 int ShellHookProc(void) 
208 {
209         fprintf(stderr, "ShellHookProc : Empty Stub !!!\n");
210 }