Convert MRULists to Unicode.
[wine/testsucceed.git] / dlls / user / bidi16.c
blob1f3b90d006dbd0d0dd436c21231cca6458ee43e1
1 /*
2 * Win16 BiDi functions
3 * Right now, most of these functions do nothing.
4 */
6 #include <string.h>
7 #include "winbase.h"
8 #include "wingdi.h"
9 #include "wine/winuser16.h"
10 #include "winerror.h"
11 #include "debugtools.h"
13 DEFAULT_DEBUG_CHANNEL(relay);
15 /***********************************************************************
16 * ChangeDialogTemplate (USER.905)
17 * FIXME: The prototypes of this function have not been found yet.
19 LONG WINAPI ChangeDialogTemplate16(void) { FIXME("stub (no prototype)\n"); return 0; }
21 /***********************************************************************
22 * BiDiMessageBoxEx (USER.910)
23 * FIXME: The prototypes of this function have not been found yet.
25 LONG WINAPI BiDiMessageBoxEx16(void) { FIXME("stub (no prototype)\n"); return 0; }
28 /******************************************************************************
29 * ChangeKeyboardCodePage [USER.924]
30 * Change the keyboard layouts to a new pair.
31 * If the language IDs are set to -1, the language is not to be changed.
33 DWORD WINAPI ChangeKeyboardCodePage16( UINT16 iLangLeft, UINT16 iLangRight )
35 FIXME( "( %hu, %hu ): stub\n", iLangLeft, iLangRight );
36 return 0;
40 /******************************************************************************
41 * ChangeKeyboardLanguage [USER.912]
42 * Change the keyboard layouts to a new pair.
44 * RETURNS
45 * The old keyboard layout pair.
47 DWORD WINAPI ChangeKeyboardLanguage16( UINT16 iLangLeft, UINT iLangRight )
49 FIXME( "( %hu, %hu ): stub\n", iLangLeft, iLangRight );
50 return 0;
54 /******************************************************************************
55 * CreateDialogIndirectParamML [USER.916]
57 HWND16 WINAPI CreateDialogIndirectParamML16( HINSTANCE16 hinstWnd,
58 const void * lpvDlgTmp,
59 HWND16 hwndOwner,
60 DLGPROC16 dlgProc,
61 LPARAM lParamInit,
62 UINT16 iCodePage, UINT16 iLang,
63 LPCSTR lpDlgName,
64 HINSTANCE16 hinstLoad )
66 FIXME( "( %04hx, %p, %04hx, %p, %08lx, %hu, %hu, %p, %04hx ): stub\n",
67 hinstWnd, lpvDlgTmp, hwndOwner, dlgProc, lParamInit,
68 iCodePage, iLang, lpDlgName, hinstLoad );
69 return 0;
73 /******************************************************************************
74 * DialogBoxIndirectParamML [USER.918]
76 HWND16 WINAPI DialogBoxIndirectParamML16( HINSTANCE16 hinstWnd,
77 HGLOBAL16 hglbDlgTemp,
78 HWND16 hwndOwner,
79 DLGPROC16 dlgprc,
80 LPARAM lParamInit,
81 UINT16 iCodePage, UINT16 iLang,
82 LPCSTR lpDlgName,
83 HINSTANCE16 hinstLoad )
85 FIXME( "( %04hx, %04hx, %04hx, %p, %08lx, %hu, %hu, %p, %04hx ): stub\n",
86 hinstWnd, hglbDlgTemp, hwndOwner, dlgprc, lParamInit,
87 iCodePage, iLang, lpDlgName, hinstLoad );
88 return 0;
93 /******************************************************************************
94 * FindLanguageResource [USER.923]
96 HRSRC16 WINAPI FindLanguageResource16( HINSTANCE16 hinst, LPCSTR lpRes,
97 LPCSTR lpResType, UINT16 iLang )
99 FIXME( "( %04hx, %p, %p, %hu ): stub\n", hinst, lpRes, lpResType, iLang );
100 return 0;
104 /******************************************************************************
105 * GetAppCodePage [USER.915]
106 * Returns the code page and language of the window
108 * RETURNS
109 * The low word contains the code page, the high word contains the resource language.
111 DWORD WINAPI GetAppCodePage16( HWND16 hwnd )
113 FIXME( "( %04hx ): stub\n", hwnd );
114 return 0;
118 /******************************************************************************
119 * GetBaseCodePage [USER.922]
120 * Returns the base code page and resource language.
121 * For example, Hebrew windows will return HebrewCodePage in the low word
122 * and English in the high word.
124 DWORD WINAPI GetBaseCodePage16( void )
126 FIXME( ": stub\n" );
127 return 0;
132 /******************************************************************************
133 * GetCodePageSystemFont [USER.913]
134 * Returns the stock font for the requested code page.
136 HFONT16 WINAPI GetCodePageSystemFont16( UINT16 iFont, UINT16 iCodePage )
138 FIXME( "( %hu, %hu ): stub\n", iFont, iCodePage );
139 return 0;
144 /******************************************************************************
145 * GetLanguageName [USER.907]
146 * Returns the name of one language in (possibly) a different language.
147 * Currently only handles language 0 (english).
149 * RETURNS
150 * Success: The number of bytes copied to the buffer, not including the null.
151 * Failure: 0
153 UINT WINAPI GetLanguageName16( UINT16 iLang, UINT16 iName,
154 LPSTR lpszName, UINT16 cbBuffer )
156 if ( (iLang == 0) && (iName == 0) ) {
157 if ( !lpszName || cbBuffer < 8 ) {
158 SetLastError( ERROR_INVALID_PARAMETER );
159 return 0;
161 strcpy( lpszName, "English" );
162 return 7;
165 FIXME( "( %hu, %hu, %p, %hu ): No BiDi16\n", iLang, iName, lpszName, cbBuffer );
166 return 0;
170 /******************************************************************************
171 * GetNumLanguages [USER.906]
172 * Returns the number of languages in the system.
174 UINT WINAPI GetNumLanguages16( void )
176 FIXME( ": No Bidi16\n" );
177 return 1;
182 /******************************************************************************
183 * GetProcessDefaultLayout [USER.1001]
185 * Gets the default layout for parentless windows.
186 * Right now, just returns 0 (left-to-right).
188 * RETURNS
189 * Success: Nonzero
190 * Failure: Zero
192 BOOL16 WINAPI GetProcessDefaultLayout16( DWORD *pdwDefaultLayout )
194 FIXME( "( %p ): no BiDi16\n", pdwDefaultLayout );
195 return GetProcessDefaultLayout( pdwDefaultLayout );
199 /******************************************************************************
200 * LoadLanguageString [USER.919]
201 * Loads a string for a specific language.
203 * RETURNS
204 * SUCCESS: The length of the string loaded.
205 * FAILURE: Zero.
207 UINT16 WINAPI LoadLanguageString16( HINSTANCE16 hinst, UINT16 id, UINT16 iLang,
208 LPSTR lpszText, INT16 nBytes )
210 FIXME( "( %04hx, %hu, %hu, %p, %hd ): stub\n", hinst, id, iLang, lpszText, nBytes );
211 return 0;
216 /******************************************************************************
217 * LoadSystemLanguageString [USER.902]
218 * Loads a string which is in one of the system language modules.
220 * RETURNS
221 * Success: The length of the string loaded
222 * Failure: Zero
224 UINT WINAPI LoadSystemLanguageString16( HINSTANCE16 hinstCaller, UINT16 id,
225 LPSTR lpszText, INT16 nBytes, UINT16 iLang )
227 FIXME( "( %04hx, %hu, %p, %hd, %hu ): stub\n", hinstCaller, id, lpszText, nBytes, iLang );
228 return 0;
232 /***********************************************************************
233 * MessageBoxEx [USER.930]
234 * The multilingual version of MessageBox.
236 INT16 WINAPI MessageBoxEx16( HWND16 hwndParent, LPCSTR lpszText,
237 LPCSTR lpszTitle, UINT16 fuStyle, UINT16 iLang )
239 FIXME( "( %04hx, %p, %p, %hu, %hu ): stub\n", hwndParent, lpszText, lpszTitle,
240 fuStyle, iLang );
241 return 0;
245 /***********************************************************************
246 * QueryCodePage [USER.914]
247 * Query code page specific data.
249 LRESULT WINAPI QueryCodePage16( UINT16 idxLang, UINT16 msg,
250 WPARAM16 wParam, LPARAM lParam )
252 FIXME( "( %hu, %hu, %04hx, %08lx ): stub\n", idxLang, msg, wParam, lParam );
253 return 0;
256 /***********************************************************************
257 * SetAppCodePage [USER.920]
258 * Set the code page and language of the window to new values.
260 * RETURNS
261 * The low word contains the old code page, the high word contains
262 * the old resource language.
264 DWORD WINAPI SetAppCodePage16( HWND16 hwnd, UINT16 iCodePage, UINT16 iLang,
265 UINT16 fRedraw )
267 FIXME( "( %04hx, %hu, %hu, %hu ): stub\n", hwnd, iCodePage, iLang, fRedraw );
268 return 0;
271 /***********************************************************************
272 * SetDlgItemTextEx [USER.911]
273 * Sets the title or text of a control in a dialog box.
274 * Currently only works for language 0 (english)
276 void WINAPI SetDlgItemTextEx16( HWND16 hwnd, INT16 id,
277 LPCSTR lpszText, UINT16 iLang )
279 FIXME( "( %04hx, %hd, %p, %hu ): stub\n", hwnd, id, lpszText, iLang );
282 /******************************************************************************
283 * SetProcessDefaultLayout [USER.1000]
285 * Sets the default layout for parentless windows.
286 * Right now, only accepts 0 (left-to-right).
288 * RETURNS
289 * Success: Nonzero
290 * Failure: Zero
292 BOOL16 WINAPI SetProcessDefaultLayout16( DWORD dwDefaultLayout )
294 FIXME( "( %08lx ): No BiDi16\n", dwDefaultLayout );
295 return SetProcessDefaultLayout( dwDefaultLayout );
298 /******************************************************************************
299 * SetWindowTextEx [USER.909]
300 * Sets the given window's title to the specified text in the specified language.
302 void WINAPI SetWindowTextEx16( HWND16 hwnd, LPCSTR lpsz, UINT16 iLang )
304 FIXME( "( %04hx, %p, %hu ): stub\n", hwnd, lpsz, iLang );