riched20: Use PointFromCharContext now that we can specify logical ordering.
This commit is contained in:
parent
5ddfc36cc0
commit
eb773e0dea
|
@ -150,7 +150,6 @@ ME_DisplayItem *ME_SplitRunSimple(ME_TextEditor *editor, ME_Cursor *cursor) DECL
|
||||||
void ME_UpdateRunFlags(ME_TextEditor *editor, ME_Run *run) DECLSPEC_HIDDEN;
|
void ME_UpdateRunFlags(ME_TextEditor *editor, ME_Run *run) DECLSPEC_HIDDEN;
|
||||||
SIZE ME_GetRunSizeCommon(ME_Context *c, const ME_Paragraph *para, ME_Run *run, int nLen,
|
SIZE ME_GetRunSizeCommon(ME_Context *c, const ME_Paragraph *para, ME_Run *run, int nLen,
|
||||||
int startx, int *pAscent, int *pDescent) DECLSPEC_HIDDEN;
|
int startx, int *pAscent, int *pDescent) DECLSPEC_HIDDEN;
|
||||||
SIZE ME_GetRunSize(ME_Context *c, const ME_Paragraph *para, ME_Run *run, int nLen, int startx) DECLSPEC_HIDDEN;
|
|
||||||
void ME_CursorFromCharOfs(ME_TextEditor *editor, int nCharOfs, ME_Cursor *pCursor) DECLSPEC_HIDDEN;
|
void ME_CursorFromCharOfs(ME_TextEditor *editor, int nCharOfs, ME_Cursor *pCursor) DECLSPEC_HIDDEN;
|
||||||
void ME_RunOfsFromCharOfs(ME_TextEditor *editor, int nCharOfs, ME_DisplayItem **ppPara, ME_DisplayItem **ppRun, int *pOfs) DECLSPEC_HIDDEN;
|
void ME_RunOfsFromCharOfs(ME_TextEditor *editor, int nCharOfs, ME_DisplayItem **ppPara, ME_DisplayItem **ppRun, int *pOfs) DECLSPEC_HIDDEN;
|
||||||
int ME_CharOfsFromRunOfs(ME_TextEditor *editor, const ME_DisplayItem *pPara, const ME_DisplayItem *pRun, int nOfs) DECLSPEC_HIDDEN;
|
int ME_CharOfsFromRunOfs(ME_TextEditor *editor, const ME_DisplayItem *pPara, const ME_DisplayItem *pRun, int nOfs) DECLSPEC_HIDDEN;
|
||||||
|
|
|
@ -621,19 +621,6 @@ SIZE ME_GetRunSizeCommon(ME_Context *c, const ME_Paragraph *para, ME_Run *run, i
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
||||||
/******************************************************************************
|
|
||||||
* ME_GetRunSize
|
|
||||||
*
|
|
||||||
* Finds width and height (but not ascent and descent) of a part of the run
|
|
||||||
* up to given character.
|
|
||||||
*/
|
|
||||||
SIZE ME_GetRunSize(ME_Context *c, const ME_Paragraph *para,
|
|
||||||
ME_Run *run, int nLen, int startx)
|
|
||||||
{
|
|
||||||
int asc, desc;
|
|
||||||
return ME_GetRunSizeCommon(c, para, run, nLen, startx, &asc, &desc);
|
|
||||||
}
|
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* ME_SetSelectionCharFormat
|
* ME_SetSelectionCharFormat
|
||||||
*
|
*
|
||||||
|
|
|
@ -188,7 +188,6 @@ static void ME_InsertRowStart(ME_WrapContext *wc, const ME_DisplayItem *pEnd)
|
||||||
{
|
{
|
||||||
/* Exclude space characters from run width.
|
/* Exclude space characters from run width.
|
||||||
* Other whitespace or delimiters are not treated this way. */
|
* Other whitespace or delimiters are not treated this way. */
|
||||||
SIZE sz;
|
|
||||||
int len = p->member.run.len;
|
int len = p->member.run.len;
|
||||||
WCHAR *text = get_text( &p->member.run, len - 1 );
|
WCHAR *text = get_text( &p->member.run, len - 1 );
|
||||||
|
|
||||||
|
@ -199,13 +198,9 @@ static void ME_InsertRowStart(ME_WrapContext *wc, const ME_DisplayItem *pEnd)
|
||||||
if (len)
|
if (len)
|
||||||
{
|
{
|
||||||
if (len == p->member.run.len)
|
if (len == p->member.run.len)
|
||||||
{
|
|
||||||
width += p->member.run.nWidth;
|
width += p->member.run.nWidth;
|
||||||
} else {
|
else
|
||||||
sz = ME_GetRunSize(wc->context, ¶->member.para,
|
width += ME_PointFromCharContext( wc->context, &p->member.run, len, FALSE );
|
||||||
&p->member.run, len, p->member.run.pt.x);
|
|
||||||
width += sz.cx;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
bSkippingSpaces = !len;
|
bSkippingSpaces = !len;
|
||||||
} else if (!(p->member.run.nFlags & MERF_ENDPARA))
|
} else if (!(p->member.run.nFlags & MERF_ENDPARA))
|
||||||
|
|
Loading…
Reference in New Issue