Huw Davies : riched20: Move text color determination to a helper function.
Alexandre Julliard
julliard at winehq.org
Thu Feb 14 15:01:32 CST 2013
Module: wine
Branch: master
Commit: 4178de89ef584d4ddc13605400dea05ac1159219
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4178de89ef584d4ddc13605400dea05ac1159219
Author: Huw Davies <huw at codeweavers.com>
Date: Thu Feb 14 14:16:17 2013 +0000
riched20: Move text color determination to a helper function.
---
dlls/riched20/paint.c | 26 ++++++++++++++++++--------
1 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/dlls/riched20/paint.c b/dlls/riched20/paint.c
index cd5a427..65c6e9e 100644
--- a/dlls/riched20/paint.c
+++ b/dlls/riched20/paint.c
@@ -185,6 +185,22 @@ static int calc_y_offset( const ME_Context *c, ME_Style *style )
return offs;
}
+static COLORREF get_text_color( ME_Context *c, ME_Style *style, BOOL highlight )
+{
+ COLORREF color;
+
+ if (highlight)
+ color = ITextHost_TxGetSysColor( c->editor->texthost, COLOR_HIGHLIGHTTEXT );
+ else if ((style->fmt.dwMask & CFM_LINK) && (style->fmt.dwEffects & CFE_LINK))
+ color = RGB(0,0,255);
+ else if ((style->fmt.dwMask & CFM_COLOR) && (style->fmt.dwEffects & CFE_AUTOCOLOR))
+ color = ITextHost_TxGetSysColor( c->editor->texthost, COLOR_WINDOWTEXT );
+ else
+ color = style->fmt.crTextColor;
+
+ return color;
+}
+
static void get_underline_pen( ME_Style *style, COLORREF color, HPEN *pen )
{
*pen = NULL;
@@ -284,12 +300,7 @@ static void ME_DrawTextWithStyle(ME_Context *c, ME_Run *run, int x, int y, LPCWS
hOldFont = ME_SelectStyleFont(c, run->style);
yOffset = calc_y_offset( c, run->style );
- if ((run->style->fmt.dwMask & CFM_LINK) && (run->style->fmt.dwEffects & CFE_LINK))
- rgb = RGB(0,0,255);
- else if ((run->style->fmt.dwMask & CFM_COLOR) && (run->style->fmt.dwEffects & CFE_AUTOCOLOR))
- rgb = ITextHost_TxGetSysColor(c->editor->texthost, COLOR_WINDOWTEXT);
- else
- rgb = run->style->fmt.crTextColor;
+ rgb = get_text_color( c, run->style, FALSE );
if (bHighlightedText)
{
@@ -336,8 +347,7 @@ static void ME_DrawTextWithStyle(ME_Context *c, ME_Run *run, int x, int y, LPCWS
dim.bottom = ymin + cy;
dim.left = xSelStart;
dim.right = xSelEnd;
- SetTextColor(hDC, ITextHost_TxGetSysColor(c->editor->texthost,
- COLOR_HIGHLIGHTTEXT));
+ SetTextColor( hDC, get_text_color( c, run->style, TRUE ) );
rgbBackOld = SetBkColor(hDC, ITextHost_TxGetSysColor(c->editor->texthost,
COLOR_HIGHLIGHT));
ExtTextOutW(hDC, xSelStart, y-yOffset, ETO_OPAQUE, &dim,
More information about the wine-cvs
mailing list