Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
0d7d5ebf
Commit
0d7d5ebf
authored
Jul 16, 2008
by
Aric Stewart
Committed by
Alexandre Julliard
Jul 17, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mlang: Stub implementation of IMLangFontLink2.
parent
36a1ee76
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
178 additions
and
0 deletions
+178
-0
mlang.c
dlls/mlang/mlang.c
+130
-0
mlang.idl
include/mlang.idl
+48
-0
No files found.
dlls/mlang/mlang.c
View file @
0d7d5ebf
...
...
@@ -961,6 +961,7 @@ typedef struct tagMLang_impl
const
IMLangFontLinkVtbl
*
vtbl_IMLangFontLink
;
const
IMultiLanguageVtbl
*
vtbl_IMultiLanguage
;
const
IMultiLanguage3Vtbl
*
vtbl_IMultiLanguage3
;
const
IMLangFontLink2Vtbl
*
vtbl_IMLangFontLink2
;
LONG
ref
;
DWORD
total_cp
,
total_scripts
;
}
MLang_impl
;
...
...
@@ -1002,6 +1003,14 @@ static HRESULT WINAPI MLang_QueryInterface(
return
S_OK
;
}
if
(
IsEqualGUID
(
riid
,
&
IID_IMLangFontLink2
))
{
MLang_AddRef
(
This
);
TRACE
(
"Returning IID_IMLangFontLink2 %p ref = %d
\n
"
,
This
,
This
->
ref
);
*
ppvObject
=
&
(
This
->
vtbl_IMLangFontLink2
);
return
S_OK
;
}
if
(
IsEqualGUID
(
riid
,
&
IID_IMultiLanguage
)
)
{
MLang_AddRef
(
This
);
...
...
@@ -2568,6 +2577,126 @@ static const IMultiLanguage3Vtbl IMultiLanguage3_vtbl =
fnIMultiLanguage3_DetectOutboundCodePageInIStream
};
/******************************************************************************/
static
HRESULT
WINAPI
fnIMLangFontLink2_QueryInterface
(
IMLangFontLink2
*
iface
,
REFIID
riid
,
void
**
ppvObject
)
{
ICOM_THIS_MULTI
(
MLang_impl
,
vtbl_IMLangFontLink2
,
iface
);
return
MLang_QueryInterface
(
This
,
riid
,
ppvObject
);
}
static
ULONG
WINAPI
fnIMLangFontLink2_AddRef
(
IMLangFontLink2
*
iface
)
{
ICOM_THIS_MULTI
(
MLang_impl
,
vtbl_IMLangFontLink2
,
iface
);
return
MLang_AddRef
(
This
);
}
static
ULONG
WINAPI
fnIMLangFontLink2_Release
(
IMLangFontLink2
*
iface
)
{
ICOM_THIS_MULTI
(
MLang_impl
,
vtbl_IMLangFontLink2
,
iface
);
return
MLang_Release
(
This
);
}
static
HRESULT
WINAPI
fnIMLangFontLink2_GetCharCodePages
(
IMLangFontLink2
*
This
,
WCHAR
chSrc
,
DWORD
*
pdwCodePages
)
{
FIXME
(
"(%p)->%s %p
\n
"
,
This
,
debugstr_wn
(
&
chSrc
,
1
),
pdwCodePages
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_GetStrCodePages
(
IMLangFontLink2
*
This
,
const
WCHAR
*
pszSrc
,
long
cchSrc
,
DWORD
dwPriorityCodePages
,
DWORD
*
pdwCodePages
,
long
*
pcchCodePages
)
{
FIXME
(
"(%p)->%s %li %x %p %p
\n
"
,
This
,
debugstr_wn
(
pszSrc
,
cchSrc
),
cchSrc
,
dwPriorityCodePages
,
pdwCodePages
,
pcchCodePages
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_CodePageToCodePages
(
IMLangFontLink2
*
This
,
UINT
uCodePage
,
DWORD
*
pdwCodePages
)
{
FIXME
(
"(%p)->%i %p
\n
"
,
This
,
uCodePage
,
pdwCodePages
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_CodePagesToCodePage
(
IMLangFontLink2
*
This
,
DWORD
dwCodePages
,
UINT
uDefaultCodePage
,
UINT
*
puCodePage
)
{
FIXME
(
"(%p)->%i %i %p
\n
"
,
This
,
dwCodePages
,
uDefaultCodePage
,
puCodePage
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_GetFontCodePages
(
IMLangFontLink2
*
This
,
HDC
hDC
,
HFONT
hFont
,
DWORD
*
pdwCodePages
)
{
FIXME
(
"(%p)->%p %p %p
\n
"
,
This
,
hDC
,
hFont
,
pdwCodePages
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_ReleaseFont
(
IMLangFontLink2
*
This
,
HFONT
hFont
)
{
FIXME
(
"(%p)->%p
\n
"
,
This
,
hFont
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_ResetFontMapping
(
IMLangFontLink2
*
This
)
{
FIXME
(
"(%p)->
\n
"
,
This
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_MapFont
(
IMLangFontLink2
*
This
,
HDC
hDC
,
DWORD
dwCodePages
,
WCHAR
chSrc
,
HFONT
*
pFont
)
{
FIXME
(
"(%p)->%p %i %s %p
\n
"
,
This
,
hDC
,
dwCodePages
,
debugstr_wn
(
&
chSrc
,
1
),
pFont
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_GetFontUnicodeRanges
(
IMLangFontLink2
*
This
,
HDC
hDC
,
UINT
*
puiRanges
,
UNICODERANGE
*
pUranges
)
{
FIXME
(
"(%p)->%p %p %p
\n
"
,
This
,
hDC
,
puiRanges
,
pUranges
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_GetScriptFontInfo
(
IMLangFontLink2
*
This
,
SCRIPT_ID
sid
,
DWORD
dwFlags
,
UINT
*
puiFonts
,
SCRIPTFONTINFO
*
pScriptFont
)
{
FIXME
(
"(%p)->%i %i %p %p
\n
"
,
This
,
sid
,
dwFlags
,
puiFonts
,
pScriptFont
);
return
E_NOTIMPL
;
}
static
HRESULT
WINAPI
fnIMLangFontLink2_CodePageToScriptID
(
IMLangFontLink2
*
This
,
UINT
uiCodePage
,
SCRIPT_ID
*
pSid
)
{
FIXME
(
"(%p)->%i %p
\n
"
,
This
,
uiCodePage
,
pSid
);
return
E_NOTIMPL
;
}
static
const
IMLangFontLink2Vtbl
IMLangFontLink2_vtbl
=
{
fnIMLangFontLink2_QueryInterface
,
fnIMLangFontLink2_AddRef
,
fnIMLangFontLink2_Release
,
fnIMLangFontLink2_GetCharCodePages
,
fnIMLangFontLink2_GetStrCodePages
,
fnIMLangFontLink2_CodePageToCodePages
,
fnIMLangFontLink2_CodePagesToCodePage
,
fnIMLangFontLink2_GetFontCodePages
,
fnIMLangFontLink2_ReleaseFont
,
fnIMLangFontLink2_ResetFontMapping
,
fnIMLangFontLink2_MapFont
,
fnIMLangFontLink2_GetFontUnicodeRanges
,
fnIMLangFontLink2_GetScriptFontInfo
,
fnIMLangFontLink2_CodePageToScriptID
};
static
HRESULT
MultiLanguage_create
(
IUnknown
*
pUnkOuter
,
LPVOID
*
ppObj
)
{
MLang_impl
*
mlang
;
...
...
@@ -2582,6 +2711,7 @@ static HRESULT MultiLanguage_create(IUnknown *pUnkOuter, LPVOID *ppObj)
mlang
->
vtbl_IMLangFontLink
=
&
IMLangFontLink_vtbl
;
mlang
->
vtbl_IMultiLanguage
=
&
IMultiLanguage_vtbl
;
mlang
->
vtbl_IMultiLanguage3
=
&
IMultiLanguage3_vtbl
;
mlang
->
vtbl_IMLangFontLink2
=
&
IMLangFontLink2_vtbl
;
mlang
->
total_cp
=
0
;
for
(
i
=
0
;
i
<
sizeof
(
mlang_data
)
/
sizeof
(
mlang_data
[
0
]);
i
++
)
...
...
include/mlang.idl
View file @
0d7d5ebf
...
...
@@ -176,6 +176,53 @@ interface IEnumScript : IUnknown
[
object
,
uuid
(
dccfc162
-
2b38
-
11
d2
-
b7ec
-
00
c04f8f5d9a
),
pointer_default
(
unique
)
]
interface
IMLangFontLink2
:
IMLangCodePages
{
typedef
struct
tagUNICODERANGE
{
WCHAR
wcFrom
;
WCHAR
wcTo
;
}
UNICODERANGE
;
typedef
[
unique
]
IMLangFontLink2
*
PMLANGFONTLINK2
;
HRESULT
GetFontCodePages
(
[
in
]
HDC
hDC
,
[
in
]
HFONT
hFont
,
[
out
]
DWORD
*
pdwCodePages
)
;
HRESULT
ReleaseFont
(
[
in
]
HFONT
hFont
)
;
HRESULT
ResetFontMapping
()
;
HRESULT
MapFont
(
[
in
]
HDC
hDC
,
[
in
]
DWORD
dwCodePages
,
[
in
]
WCHAR
chSrc
,
[
out
]
HFONT
*
pFont
)
;
HRESULT
GetFontUnicodeRanges
(
[
in
]
HDC
hDC
,
[
in
,
out
]
UINT
*
puiRanges
,
[
out
]
UNICODERANGE
*
pUranges
)
;
HRESULT
GetScriptFontInfo
(
[
in
]
SCRIPT_ID
sid
,
[
in
]
DWORD
dwFlags
,
[
in
,
out
]
UINT
*
puiFonts
,
[
out
]
SCRIPTFONTINFO
*
pScriptFont
)
;
HRESULT
CodePageToScriptID
(
[
in
]
UINT
uiCodePage
,
[
out
]
SCRIPT_ID
*
pSid
)
;
}
[
object
,
uuid
(
275
c23e3
-
3747
-
11
d0
-
9
fea
-
00
aa003f8646
),
pointer_default
(
unique
)
]
...
...
@@ -595,6 +642,7 @@ coclass CMultiLanguage
interface
IMLangCodePages
;
interface
IMLangFontLink
;
/*
interface
IMLangLineBreakConsole
; */
interface
IMLangFontLink2
;
}
cpp_quote
(
"STDAPI LcidToRfc1766A(LCID, LPSTR, INT);"
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment