source: branches/swt/src/usp10/usp10.cpp@ 22105

Last change on this file since 22105 was 22105, checked in by rousseau, 10 years ago

usp10: Added Wine Sources (containing stubs)

The first goal is to have 'usp10' compile and build for Odin32.
The second goal is to enable the JNI-linkage for 'swt.dll'.
Instead of complicating things by starting with the latest and greatest
versions from the Wine Repo, we start with the version where Wine
started implementing 'usp10'.

Then we'll use some 'successive approximation' to find a commit in the
Wine Repo that is the best fit for Odin32 and SWT at this time. That
will be hour 'hook' into the Wine Repo for 'usp10'. Then we'll first
port the functions that SWT needs, leaving the others for a later time.

This revision builds and 'swt.dll' can resolve the 4 exported funtions.
(Testing with Snippet316)

For all the Wine Odin is going to drink we use the Wine Git Repository.
Below are the references to the GitGub mirror and the Master repo for
the sources used for this 'glass of wine'.

Wine Mirror (GitHub) Source and Commit references:
https://github.com/wine-mirror/wine/tree/54508df52715eaeb6414f9f474691fde548d8e15/dlls/usp10
https://github.com/wine-mirror/wine/commit/54508df52715eaeb6414f9f474691fde548d8e15

Wine Master (GitWeb) Source and Commit references:
http://source.winehq.org/git/wine.git/tree/54508df52715eaeb6414f9f474691fde548d8e15:/dlls/usp10
http://source.winehq.org/git/wine.git/commit/54508df52715eaeb6414f9f474691fde548d8e15

Note:
A header-file for 'usp10' was already committed here:
http://trac.netlabs.org/odin32/changeset?reponame=&old=22076%40%2F&new=22076%40%2F
for getting 'swt.dll' to build. It will be synced from the Wine Repo
when we have found our 'hook' commit.

File size: 2.3 KB
Line 
1/*
2 * Implementation of Uniscribe Script Processor (usp10.dll)
3 *
4 * Copyright 2005 Steven Edwards for CodeWeavers
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 *
20 * Notes:
21 * Uniscribe allows for processing of complex scripts such as joining
22 * and filtering characters and bi-directional text with custom line breaks.
23 */
24
25#include <stdarg.h>
26
27#include <windef.h>
28#include <winbase.h>
29#include <winuser.h>
30#include <usp10.h>
31
32#include "wine/debug.h"
33
34WINE_DEFAULT_DEBUG_CHANNEL(uniscribe);
35
36BOOL WINAPI DllMain(HINSTANCE hInstDLL, DWORD fdwReason, LPVOID lpv)
37{
38 switch(fdwReason) {
39 case DLL_PROCESS_ATTACH:
40 DisableThreadLibraryCalls(hInstDLL);
41 break;
42 case DLL_PROCESS_DETACH:
43 break;
44 }
45 return TRUE;
46}
47
48HRESULT WINAPI ScriptGetProperties(const SCRIPT_PROPERTIES ***ppSp, int *piNumScripts)
49{
50 FIXME("%p,%p\n",ppSp,piNumScripts);
51 return E_NOTIMPL;
52}
53
54HRESULT WINAPI ScriptRecordDigitSubstitution(LCID Locale,SCRIPT_DIGITSUBSTITUTE *psds)
55{
56 FIXME("%ld,%p\n",Locale,psds);
57 return E_NOTIMPL;
58}
59
60HRESULT WINAPI ScriptApplyDigitSubstitution(const SCRIPT_DIGITSUBSTITUTE* psds,
61 SCRIPT_CONTROL* psc, SCRIPT_STATE* pss)
62{
63 FIXME("%p,%p,%p\n",psds,psc,pss);
64 return E_NOTIMPL;
65}
66
67HRESULT WINAPI ScriptItemize(const WCHAR *pwcInChars, int cInChars, int cMaxItems,
68 const SCRIPT_CONTROL *psControl, const SCRIPT_STATE *psState,
69 SCRIPT_ITEM *pItems, int *pcItems)
70{
71 FIXME("%s,%d,%d,%p,%p,%p,%p\n", debugstr_w(pwcInChars), cInChars, cMaxItems,
72 psControl, psState, pItems, pcItems);
73 return E_INVALIDARG;
74}
Note: See TracBrowser for help on using the repository browser.