Now attaching imported DLLs of a winelib executable.
[wine.git] / misc / bidi16.c
blobee211ca94a71da8adb15685e3ea223dc5a6511f1
1 /*
2 * Win16 BiDi functions
3 * Right now, most of these functions do nothing.
4 */
6 #include "windef.h"
7 #include "debugtools.h"
8 #include "windows.h"
10 DEFAULT_DEBUG_CHANNEL(relay)
12 LONG WINAPI RawTextOut16(void) { FIXME("stub (no prototype)\n"); return 0; }
13 LONG WINAPI RawExtTextOut16(void) { FIXME("stub (no prototype)\n"); return 0; }
14 LONG WINAPI RawGetTextExtent16(HDC16 hdc, LPCSTR lpszString, INT16 cbString ) {
15 FIXME("(%04hx, %p, %hd): stub\n", hdc, lpszString, cbString);
16 return 0;
18 LONG WINAPI BiDiLayout16(void) { FIXME("stub (no prototype)\n"); return 0; }
19 LONG WINAPI BiDiCreateTabString16(void) { FIXME("stub (no prototype)\n"); return 0; }
20 LONG WINAPI BiDiGlyphOut16(void) { FIXME("stub (no prototype)\n"); return 0; }
21 LONG WINAPI BiDiGetStringExtent16(void) { FIXME("stub (no prototype)\n"); return 0; }
22 LONG WINAPI BiDiDeleteString16(void) { FIXME("stub (no prototype)\n"); return 0; }
23 LONG WINAPI BiDiSetDefaults16(void) { FIXME("stub (no prototype)\n"); return 0; }
24 LONG WINAPI BiDiGetDefaults16(void) { FIXME("stub (no prototype)\n"); return 0; }
25 LONG WINAPI BiDiShape16(void) { FIXME("stub (no prototype)\n"); return 0; }
26 LONG WINAPI BiDiFontComplement16(void) { FIXME("stub (no prototype)\n"); return 0; }
27 LONG WINAPI BiDiSetKashida16(void) { FIXME("stub (no prototype)\n"); return 0; }
28 LONG WINAPI BiDiKExtTextOut16(void) { FIXME("stub (no prototype)\n"); return 0; }
29 LONG WINAPI BiDiShapeEx16(void) { FIXME("stub (no prototype)\n"); return 0; }
30 LONG WINAPI BiDiCreateStringEx16(void) { FIXME("stub (no prototype)\n"); return 0; }
31 LONG WINAPI GetTextExtentRtoL16(void) { FIXME("stub (no prototype)\n"); return 0; }
32 LONG WINAPI GetHDCCharSet16(void) { FIXME("stub (no prototype)\n"); return 0; }
33 LONG WINAPI BiDiLayoutEx16(void) { FIXME("stub (no prototype)\n"); return 0; }
35 /* the prototypes of these functions have not been found yet */
36 LONG WINAPI ChangeDialogTemplate16(void) { FIXME("stub (no prototype)\n"); return 0; }
37 LONG WINAPI BiDiMessageBoxEx16(void) { FIXME("stub (no prototype)\n"); return 0; }
40 /******************************************************************************
41 * ChangeKeyboardCodePage16 [USER.924]
42 * Change the keyboard layouts to a new pair.
43 * If the language IDs are set to -1, the language is not to be changed.
45 DWORD WINAPI ChangeKeyboardCodePage16( UINT16 iLangLeft, UINT16 iLangRight )
47 FIXME( "( %hu, %hu ): stub\n", iLangLeft, iLangRight );
48 return 0;
52 /******************************************************************************
53 * ChangeKeyboardLanguage16 [USER.912]
54 * Change the keyboard layouts to a new pair.
56 * RETURNS
57 * The old keyboard layout pair.
59 DWORD WINAPI ChangeKeyboardLanguage16( UINT16 iLangLeft, UINT iLangRight )
61 FIXME( "( %hu, %hu ): stub\n", iLangLeft, iLangRight );
62 return 0;
66 /******************************************************************************
67 * CreateDialogIndirectParamML16 [USER.916]
69 HWND16 WINAPI CreateDialogIndirectParamML16( HINSTANCE16 hinstWnd,
70 const void * lpvDlgTmp,
71 HWND16 hwndOwner,
72 DLGPROC16 dlgProc,
73 LPARAM lParamInit,
74 UINT16 iCodePage, UINT16 iLang,
75 LPCSTR lpDlgName,
76 HINSTANCE16 hinstLoad )
78 FIXME( "( %04hx, %p, %04hx, %p, %08lx, %hu, %hu, %p, %04hx ): stub\n",
79 hinstWnd, lpvDlgTmp, hwndOwner, dlgProc, lParamInit,
80 iCodePage, iLang, lpDlgName, hinstLoad );
81 return 0;
85 /******************************************************************************
86 * DialogBoxIndirectParamML16 [USER.916]
88 HWND16 WINAPI DialogBoxIndirectParamML16( HINSTANCE16 hinstWnd,
89 HGLOBAL16 hglbDlgTemp,
90 HWND16 hwndOwner,
91 DLGPROC16 dlgprc,
92 LPARAM lParamInit,
93 UINT16 iCodePage, UINT16 iLang,
94 LPCSTR lpDlgName,
95 HINSTANCE16 hinstLoad )
97 FIXME( "( %04hx, %04hx, %04hx, %p, %08lx, %hu, %hu, %p, %04hx ): stub\n",
98 hinstWnd, hglbDlgTemp, hwndOwner, dlgprc, lParamInit,
99 iCodePage, iLang, lpDlgName, hinstLoad );
100 return 0;
105 /******************************************************************************
106 * FindLanguageResource16 [USER.923]
108 HRSRC16 WINAPI FindLanguageResource16( HINSTANCE16 hinst, LPCSTR lpRes,
109 LPCSTR lpResType, UINT16 iLang )
111 FIXME( "( %04hx, %p, %p, %hu ): stub\n", hinst, lpRes, lpResType, iLang );
112 return 0;
116 /******************************************************************************
117 * GetAppCodePage16 [USER.915]
118 * Returns the code page and language of the window
120 * RETURNS
121 * The low word contains the code page, the high word contains the resource language.
123 DWORD WINAPI GetAppCodePage16( HWND16 hwnd )
125 FIXME( "( %04hx ): stub\n", hwnd );
126 return 0;
130 /******************************************************************************
131 * GetBaseCodePage16 [USER.922]
132 * Returns the base code page and resource language.
133 * For example, Hebrew windows will return HebrewCodePage in the low word
134 * and English in the high word.
136 DWORD WINAPI GetBaseCodePage16( void )
138 FIXME( ": stub\n" );
139 return 0;
144 /******************************************************************************
145 * GetCodePageSystemFont16 [USER.913]
146 * Returns the stock font for the requested code page.
148 HFONT16 WINAPI GetCodePageSystemFont16( UINT16 iFont, UINT16 iCodePage )
150 FIXME( "( %hu, %hu ): stub\n", iFont, iCodePage );
151 return 0;
156 /******************************************************************************
157 * GetLanguageName16 [USER.906]
158 * Returns the name of one language in (possibly) a different language.
159 * Currently only handles language 0 (english).
161 * RETURNS
162 * Success: The number of bytes copied to the buffer, not including the null.
163 * Failure: 0
165 UINT WINAPI GetLanguageName16( UINT16 iLang, UINT16 iName,
166 LPSTR lpszName, UINT16 cbBuffer )
168 if ( (iLang == 0) && (iName == 0) ) {
169 if ( !lpszName || cbBuffer < 8 ) {
170 SetLastError( ERROR_INVALID_PARAMETER );
171 return 0;
173 strcpy( lpszName, "English" );
174 return 7;
177 FIXME( "( %hu, %hu, %p, %hu ): No BiDi16\n", iLang, iName, lpszName, cbBuffer );
178 return 0;
182 /******************************************************************************
183 * GetNumLanguages16 [USER.906]
184 * Returns the number of languages in the system.
186 UINT WINAPI GetNumLanguages16( void )
188 FIXME( ": No Bidi16\n" );
189 return 1;
194 /******************************************************************************
195 * GetProcessDefaultLayout16 [USER.1001]
197 * Gets the default layout for parentless windows.
198 * Right now, just returns 0 (left-to-right).
200 * RETURNS
201 * Success: Nonzero
202 * Failure: Zero
204 BOOL16 WINAPI GetProcessDefaultLayout16( DWORD *pdwDefaultLayout )
206 FIXME( "( %p ): no BiDi16\n", pdwDefaultLayout );
207 return GetProcessDefaultLayout( pdwDefaultLayout );
211 /******************************************************************************
212 * LoadLanguageString16 [USER.919]
213 * Loads a string for a specific language.
215 * RETURNS
216 * SUCCESS: The length of the string loaded.
217 * FAILURE: Zero.
219 UINT16 WINAPI LoadLanguageString16( HINSTANCE16 hinst, UINT16 id, UINT16 iLang,
220 LPSTR lpszText, INT16 nBytes )
222 FIXME( "( %04hx, %hu, %hu, %p, %hd ): stub\n", hinst, id, iLang, lpszText, nBytes );
223 return 0;
228 /******************************************************************************
229 * LoadSystemLanguageString16 [USER.902]
230 * Loads a string which is in one of the system language modules.
232 * RETURNS
233 * Success: The length of the string loaded
234 * Failure: Zero
236 UINT WINAPI LoadSystemLanguageString16( HINSTANCE16 hinstCaller, UINT16 id,
237 LPSTR lpszText, INT16 nBytes, UINT16 iLang )
239 FIXME( "( %04hx, %hu, %p, %hd, %hu ): stub\n", hinstCaller, id, lpszText, nBytes, iLang );
240 return 0;
244 /***********************************************************************
245 * MessageBoxEx16 [USER.930]
246 * The multilingual version of MessageBox.
248 INT16 WINAPI MessageBoxEx16( HWND16 hwndParent, LPCSTR lpszText,
249 LPCSTR lpszTitle, UINT16 fuStyle, UINT16 iLang )
251 FIXME( "( %04hx, %p, %p, %hu, %hu ): stub\n", hwndParent, lpszText, lpszTitle,
252 fuStyle, iLang );
253 return 0;
257 /***********************************************************************
258 * QueryCodePage16 [USER.914]
259 * Query code page specific data.
261 LRESULT WINAPI QueryCodePage16( UINT16 idxLang, UINT16 msg,
262 WPARAM16 wParam, LPARAM lParam )
264 FIXME( "( %hu, %hu, %04hx, %08lx ): stub\n", idxLang, msg, wParam, lParam );
265 return 0;
269 /***********************************************************************
270 * SetAppCodePage16 [USER.920]
271 * Set the code page and language of the window to new values.
273 * RETURNS
274 * The low word contains the old code page, the high word contains
275 * the old resource language.
277 DWORD WINAPI SetAppCodePage16( HWND16 hwnd, UINT16 iCodePage, UINT16 iLang,
278 UINT16 fRedraw )
280 FIXME( "( %04hx, %hu, %hu, %hu ): stub\n", hwnd, iCodePage, iLang, fRedraw );
281 return 0;
286 /***********************************************************************
287 * SetDlgItemTextEx16 [USER.911]
288 * Sets the title or text of a control in a dialog box.
289 * Currently only works for language 0 (english)
291 void WINAPI SetDlgItemTextEx16( HWND16 hwnd, INT16 id,
292 LPCSTR lpszText, UINT16 iLang )
294 FIXME( "( %04hx, %hd, %p, %hu ): stub\n", hwnd, id, lpszText, iLang );
299 /***********************************************************************
300 * SetLayout16 [GDI.1000]
302 * Sets left->right or right->left text layout flags of a dc.
304 BOOL16 WINAPI SetLayout16( HDC16 hdc, DWORD layout )
306 FIXME( "( %04hx, %08lx ): No BiDi16\n", hdc, layout );
307 return SetLayout( hdc, layout );
312 /******************************************************************************
313 * SetProcessDefaultLayout16 [USER.1000]
315 * Sets the default layout for parentless windows.
316 * Right now, only accepts 0 (left-to-right).
318 * RETURNS
319 * Success: Nonzero
320 * Failure: Zero
322 BOOL16 WINAPI SetProcessDefaultLayout16( DWORD dwDefaultLayout )
324 FIXME( "( %08lx ): No BiDi16\n", dwDefaultLayout );
325 return SetProcessDefaultLayout( dwDefaultLayout );
329 /******************************************************************************
330 * SetWindowTextEx16 [USER.909]
331 * Sets the given window's title to the specified text in the specified language.
333 void WINAPI SetWindowTextEx16( HWND16 hwnd, LPCSTR lpsz, UINT16 iLang )
335 FIXME( "( %04hx, %p, %hu ): stub\n", hwnd, lpsz, iLang );