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
43a80b80
Commit
43a80b80
authored
May 26, 2015
by
Nikolay Sivov
Committed by
Alexandre Julliard
May 27, 2015
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
riched20: Implement font property setters.
parent
3b9f6449
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
69 additions
and
20 deletions
+69
-20
richole.c
dlls/riched20/richole.c
+69
-20
No files found.
dlls/riched20/richole.c
View file @
43a80b80
...
...
@@ -171,10 +171,10 @@ enum textfont_prop_id {
static
const
DWORD
textfont_prop_masks
[][
2
]
=
{
{
CFM_ALLCAPS
,
CFE_ALLCAPS
},
{
CFM_ANIMATION
},
{
CFM_BACKCOLOR
},
{
CFM_BACKCOLOR
,
CFE_AUTOBACKCOLOR
},
{
CFM_BOLD
,
CFE_BOLD
},
{
CFM_EMBOSS
,
CFE_EMBOSS
},
{
CFM_COLOR
},
{
CFM_COLOR
,
CFE_AUTOCOLOR
},
{
CFM_HIDDEN
,
CFE_HIDDEN
},
{
CFM_IMPRINT
,
CFE_IMPRINT
},
{
CFM_ITALIC
,
CFE_ITALIC
},
...
...
@@ -570,6 +570,36 @@ static HRESULT set_textfont_prop(ITextFontImpl *font, enum textfont_prop_id prop
case
FONT_UNDERLINE
:
fmt
.
dwEffects
=
value
->
l
==
tomTrue
?
textfont_prop_masks
[
propid
][
1
]
:
0
;
break
;
case
FONT_ANIMATION
:
fmt
.
bAnimation
=
value
->
l
;
break
;
case
FONT_BACKCOLOR
:
case
FONT_FORECOLOR
:
if
(
value
->
l
==
tomAutoColor
)
fmt
.
dwEffects
=
textfont_prop_masks
[
propid
][
1
];
else
if
(
propid
==
FONT_BACKCOLOR
)
fmt
.
crBackColor
=
value
->
l
;
else
fmt
.
crTextColor
=
value
->
l
;
break
;
case
FONT_KERNING
:
fmt
.
wKerning
=
value
->
f
;
break
;
case
FONT_LANGID
:
fmt
.
lcid
=
value
->
l
;
break
;
case
FONT_POSITION
:
fmt
.
yOffset
=
value
->
f
;
break
;
case
FONT_SIZE
:
fmt
.
yHeight
=
value
->
f
;
break
;
case
FONT_SPACING
:
fmt
.
sSpacing
=
value
->
f
;
break
;
case
FONT_WEIGHT
:
fmt
.
wWeight
=
value
->
l
;
break
;
default:
FIXME
(
"unhandled font property %d
\n
"
,
propid
);
return
E_FAIL
;
...
...
@@ -585,6 +615,20 @@ static HRESULT set_textfont_prop(ITextFontImpl *font, enum textfont_prop_id prop
return
S_OK
;
}
static
inline
HRESULT
set_textfont_propl
(
ITextFontImpl
*
font
,
enum
textfont_prop_id
propid
,
LONG
value
)
{
textfont_prop_val
v
;
v
.
l
=
value
;
return
set_textfont_prop
(
font
,
propid
,
&
v
);
}
static
inline
HRESULT
set_textfont_propf
(
ITextFontImpl
*
font
,
enum
textfont_prop_id
propid
,
FLOAT
value
)
{
textfont_prop_val
v
;
v
.
f
=
value
;
return
set_textfont_prop
(
font
,
propid
,
&
v
);
}
static
HRESULT
set_textfont_propd
(
ITextFontImpl
*
font
,
enum
textfont_prop_id
propid
,
LONG
value
)
{
textfont_prop_val
v
;
...
...
@@ -2339,8 +2383,13 @@ static HRESULT WINAPI TextFont_GetAnimation(ITextFont *iface, LONG *value)
static
HRESULT
WINAPI
TextFont_SetAnimation
(
ITextFont
*
iface
,
LONG
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%d): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%d)
\n
"
,
This
,
value
);
if
(
value
<
tomNoAnimation
||
value
>
tomAnimationMax
)
return
E_INVALIDARG
;
return
set_textfont_propl
(
This
,
FONT_ANIMATION
,
value
);
}
static
HRESULT
WINAPI
TextFont_GetBackColor
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2353,8 +2402,8 @@ static HRESULT WINAPI TextFont_GetBackColor(ITextFont *iface, LONG *value)
static
HRESULT
WINAPI
TextFont_SetBackColor
(
ITextFont
*
iface
,
LONG
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%d): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%d)
\n
"
,
This
,
value
);
return
set_textfont_propl
(
This
,
FONT_BACKCOLOR
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetBold
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2395,8 +2444,8 @@ static HRESULT WINAPI TextFont_GetForeColor(ITextFont *iface, LONG *value)
static
HRESULT
WINAPI
TextFont_SetForeColor
(
ITextFont
*
iface
,
LONG
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%d): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%d)
\n
"
,
This
,
value
);
return
set_textfont_propl
(
This
,
FONT_FORECOLOR
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetHidden
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2451,8 +2500,8 @@ static HRESULT WINAPI TextFont_GetKerning(ITextFont *iface, FLOAT *value)
static
HRESULT
WINAPI
TextFont_SetKerning
(
ITextFont
*
iface
,
FLOAT
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%.2f): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%.2f)
\n
"
,
This
,
value
);
return
set_textfont_propf
(
This
,
FONT_KERNING
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetLanguageID
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2465,8 +2514,8 @@ static HRESULT WINAPI TextFont_GetLanguageID(ITextFont *iface, LONG *value)
static
HRESULT
WINAPI
TextFont_SetLanguageID
(
ITextFont
*
iface
,
LONG
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%d): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%d)
\n
"
,
This
,
value
);
return
set_textfont_propl
(
This
,
FONT_LANGID
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetName
(
ITextFont
*
iface
,
BSTR
*
value
)
...
...
@@ -2522,8 +2571,8 @@ static HRESULT WINAPI TextFont_GetPosition(ITextFont *iface, FLOAT *value)
static
HRESULT
WINAPI
TextFont_SetPosition
(
ITextFont
*
iface
,
FLOAT
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%.2f): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%.2f)
\n
"
,
This
,
value
);
return
set_textfont_propf
(
This
,
FONT_POSITION
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetProtected
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2564,8 +2613,8 @@ static HRESULT WINAPI TextFont_GetSize(ITextFont *iface, FLOAT *value)
static
HRESULT
WINAPI
TextFont_SetSize
(
ITextFont
*
iface
,
FLOAT
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%.2f): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%.2f)
\n
"
,
This
,
value
);
return
set_textfont_propf
(
This
,
FONT_SIZE
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetSmallCaps
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2592,8 +2641,8 @@ static HRESULT WINAPI TextFont_GetSpacing(ITextFont *iface, FLOAT *value)
static
HRESULT
WINAPI
TextFont_SetSpacing
(
ITextFont
*
iface
,
FLOAT
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%.2f): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%.2f)
\n
"
,
This
,
value
);
return
set_textfont_propf
(
This
,
FONT_SPACING
,
value
)
;
}
static
HRESULT
WINAPI
TextFont_GetStrikeThrough
(
ITextFont
*
iface
,
LONG
*
value
)
...
...
@@ -2662,8 +2711,8 @@ static HRESULT WINAPI TextFont_GetWeight(ITextFont *iface, LONG *value)
static
HRESULT
WINAPI
TextFont_SetWeight
(
ITextFont
*
iface
,
LONG
value
)
{
ITextFontImpl
*
This
=
impl_from_ITextFont
(
iface
);
FIXME
(
"(%p)->(%d): stub
\n
"
,
This
,
value
);
return
E_NOTIMPL
;
TRACE
(
"(%p)->(%d)
\n
"
,
This
,
value
);
return
set_textfont_propl
(
This
,
FONT_WEIGHT
,
value
)
;
}
static
ITextFontVtbl
textfontvtbl
=
{
...
...
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