| Index: xfa/src/fdp/src/tto/fde_textout.h
|
| diff --git a/xfa/src/fdp/src/tto/fde_textout.h b/xfa/src/fdp/src/tto/fde_textout.h
|
| index 7edd05b0e1f89d7a6580cfcb47b99e90a38729f7..97bf51756f876865ce268a69a3c35c860839b44a 100644
|
| --- a/xfa/src/fdp/src/tto/fde_textout.h
|
| +++ b/xfa/src/fdp/src/tto/fde_textout.h
|
| @@ -1,167 +1,167 @@
|
| -// Copyright 2014 PDFium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| -
|
| -#ifndef _FDE_TEXTOUT_IMP
|
| -#define _FDE_TEXTOUT_IMP
|
| -struct FDE_TTOPIECE {
|
| - public:
|
| - int32_t iStartChar;
|
| - int32_t iChars;
|
| - FX_DWORD dwCharStyles;
|
| - CFX_RectF rtPiece;
|
| -};
|
| -typedef FDE_TTOPIECE* FDE_LPTTOPIECE;
|
| -typedef CFX_MassArrayTemplate<FDE_TTOPIECE> CFDE_TTOPieceArray;
|
| -class CFDE_TTOLine : public CFX_Target {
|
| - public:
|
| - CFDE_TTOLine();
|
| - CFDE_TTOLine(const CFDE_TTOLine& ttoLine);
|
| - ~CFDE_TTOLine();
|
| - int32_t AddPiece(int32_t index, const FDE_TTOPIECE& ttoPiece);
|
| - int32_t GetSize() const;
|
| - FDE_LPTTOPIECE GetPtrAt(int32_t index);
|
| - void RemoveLast(int32_t iCount);
|
| - void RemoveAll(FX_BOOL bLeaveMemory);
|
| - FX_BOOL m_bNewReload;
|
| - CFDE_TTOPieceArray m_pieces;
|
| -
|
| - protected:
|
| - int32_t m_iPieceCount;
|
| -};
|
| -typedef CFX_ObjectMassArrayTemplate<CFDE_TTOLine> CFDE_TTOLineArray;
|
| -class CFDE_TextOut : public IFDE_TextOut, public CFX_Target {
|
| - public:
|
| - CFDE_TextOut();
|
| - ~CFDE_TextOut();
|
| - virtual void Release() { delete this; }
|
| - virtual void SetFont(IFX_Font* pFont);
|
| - virtual void SetFontSize(FX_FLOAT fFontSize);
|
| - virtual void SetTextColor(FX_ARGB color);
|
| - virtual void SetStyles(FX_DWORD dwStyles);
|
| - virtual void SetTabWidth(FX_FLOAT fTabWidth);
|
| - virtual void SetEllipsisString(const CFX_WideString& wsEllipsis);
|
| - virtual void SetParagraphBreakChar(FX_WCHAR wch);
|
| - virtual void SetAlignment(int32_t iAlignment);
|
| - virtual void SetLineSpace(FX_FLOAT fLineSpace);
|
| - virtual void SetDIBitmap(CFX_DIBitmap* pDIB);
|
| - virtual void SetRenderDevice(CFX_RenderDevice* pDevice);
|
| - virtual void SetClipRect(const CFX_Rect& rtClip);
|
| - virtual void SetClipRect(const CFX_RectF& rtClip);
|
| - virtual void SetMatrix(const CFX_Matrix& matrix);
|
| - virtual void SetLineBreakTolerance(FX_FLOAT fTolerance);
|
| - virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - CFX_Size& size);
|
| - virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - CFX_SizeF& size);
|
| - virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - CFX_Rect& rect);
|
| - virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - CFX_RectF& rect);
|
| -
|
| - virtual void DrawText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - int32_t x,
|
| - int32_t y);
|
| - virtual void DrawText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - FX_FLOAT x,
|
| - FX_FLOAT y);
|
| - virtual void DrawText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - const CFX_Rect& rect);
|
| - virtual void DrawText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - const CFX_RectF& rect);
|
| -
|
| - virtual void SetLogicClipRect(const CFX_RectF& rtClip);
|
| - virtual void CalcLogicSize(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - CFX_SizeF& size);
|
| - virtual void CalcLogicSize(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - CFX_RectF& rect);
|
| - virtual void DrawLogicText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - FX_FLOAT x,
|
| - FX_FLOAT y);
|
| - virtual void DrawLogicText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - const CFX_RectF& rect);
|
| - virtual int32_t GetTotalLines();
|
| -
|
| - protected:
|
| - void CalcTextSize(const FX_WCHAR* pwsStr, int32_t iLength, CFX_RectF& rect);
|
| - FX_BOOL RetrieveLineWidth(FX_DWORD dwBreakStatus,
|
| - FX_FLOAT& fStartPos,
|
| - FX_FLOAT& fWidth,
|
| - FX_FLOAT& fHeight);
|
| - void SetLineWidth(CFX_RectF& rect);
|
| - void DrawText(const FX_WCHAR* pwsStr,
|
| - int32_t iLength,
|
| - const CFX_RectF& rect,
|
| - const CFX_RectF& rtClip);
|
| - void LoadText(const FX_WCHAR* pwsStr, int32_t iLength, const CFX_RectF& rect);
|
| - void LoadEllipsis();
|
| - void ExpandBuffer(int32_t iSize, int32_t iType);
|
| - void RetrieveEllPieces(int32_t*& pCharWidths);
|
| -
|
| - void Reload(const CFX_RectF& rect);
|
| - void ReloadLinePiece(CFDE_TTOLine* pLine, const CFX_RectF& rect);
|
| - FX_BOOL RetriecePieces(FX_DWORD dwBreakStatus,
|
| - int32_t& iStartChar,
|
| - int32_t& iPieceWidths,
|
| - FX_BOOL bReload,
|
| - const CFX_RectF& rect);
|
| - void AppendPiece(const FDE_TTOPIECE& ttoPiece,
|
| - FX_BOOL bNeedReload,
|
| - FX_BOOL bEnd);
|
| - void ReplaceWidthEllipsis();
|
| - void DoAlignment(const CFX_RectF& rect);
|
| - void OnDraw(const CFX_RectF& rtClip);
|
| - int32_t GetDisplayPos(FDE_LPTTOPIECE pPiece);
|
| - int32_t GetCharRects(FDE_LPTTOPIECE pPiece);
|
| -
|
| - void ToTextRun(const FDE_LPTTOPIECE pPiece, FX_TXTRUN& tr);
|
| - void DrawLine(const FDE_LPTTOPIECE pPiece, IFDE_Pen*& pPen);
|
| -
|
| - IFX_TxtBreak* m_pTxtBreak;
|
| - IFX_Font* m_pFont;
|
| - FX_FLOAT m_fFontSize;
|
| - FX_FLOAT m_fLineSpace;
|
| - FX_FLOAT m_fLinePos;
|
| - FX_FLOAT m_fTolerance;
|
| - int32_t m_iAlignment;
|
| - int32_t m_iTxtBkAlignment;
|
| - int32_t* m_pCharWidths;
|
| - int32_t m_iChars;
|
| - int32_t* m_pEllCharWidths;
|
| - int32_t m_iEllChars;
|
| - FX_WCHAR m_wParagraphBkChar;
|
| - FX_ARGB m_TxtColor;
|
| - FX_DWORD m_dwStyles;
|
| - FX_DWORD m_dwTxtBkStyles;
|
| - CFX_WideString m_wsEllipsis;
|
| - FX_BOOL m_bElliChanged;
|
| - int32_t m_iEllipsisWidth;
|
| - CFX_WideString m_wsText;
|
| - CFX_RectF m_rtClip;
|
| - CFX_RectF m_rtLogicClip;
|
| - CFX_Matrix m_Matrix;
|
| - CFDE_TTOLineArray m_ttoLines;
|
| - int32_t m_iCurLine;
|
| - int32_t m_iCurPiece;
|
| - int32_t m_iTotalLines;
|
| - FXTEXT_CHARPOS* m_pCharPos;
|
| - int32_t m_iCharPosSize;
|
| - IFDE_RenderDevice* m_pRenderDevice;
|
| - CFX_Int32Array m_hotKeys;
|
| - CFX_RectFArray m_rectArray;
|
| -};
|
| -#endif
|
| +// Copyright 2014 PDFium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
|
| +
|
| +#ifndef _FDE_TEXTOUT_IMP
|
| +#define _FDE_TEXTOUT_IMP
|
| +struct FDE_TTOPIECE {
|
| + public:
|
| + int32_t iStartChar;
|
| + int32_t iChars;
|
| + FX_DWORD dwCharStyles;
|
| + CFX_RectF rtPiece;
|
| +};
|
| +typedef FDE_TTOPIECE* FDE_LPTTOPIECE;
|
| +typedef CFX_MassArrayTemplate<FDE_TTOPIECE> CFDE_TTOPieceArray;
|
| +class CFDE_TTOLine : public CFX_Target {
|
| + public:
|
| + CFDE_TTOLine();
|
| + CFDE_TTOLine(const CFDE_TTOLine& ttoLine);
|
| + ~CFDE_TTOLine();
|
| + int32_t AddPiece(int32_t index, const FDE_TTOPIECE& ttoPiece);
|
| + int32_t GetSize() const;
|
| + FDE_LPTTOPIECE GetPtrAt(int32_t index);
|
| + void RemoveLast(int32_t iCount);
|
| + void RemoveAll(FX_BOOL bLeaveMemory);
|
| + FX_BOOL m_bNewReload;
|
| + CFDE_TTOPieceArray m_pieces;
|
| +
|
| + protected:
|
| + int32_t m_iPieceCount;
|
| +};
|
| +typedef CFX_ObjectMassArrayTemplate<CFDE_TTOLine> CFDE_TTOLineArray;
|
| +class CFDE_TextOut : public IFDE_TextOut, public CFX_Target {
|
| + public:
|
| + CFDE_TextOut();
|
| + ~CFDE_TextOut();
|
| + virtual void Release() { delete this; }
|
| + virtual void SetFont(IFX_Font* pFont);
|
| + virtual void SetFontSize(FX_FLOAT fFontSize);
|
| + virtual void SetTextColor(FX_ARGB color);
|
| + virtual void SetStyles(FX_DWORD dwStyles);
|
| + virtual void SetTabWidth(FX_FLOAT fTabWidth);
|
| + virtual void SetEllipsisString(const CFX_WideString& wsEllipsis);
|
| + virtual void SetParagraphBreakChar(FX_WCHAR wch);
|
| + virtual void SetAlignment(int32_t iAlignment);
|
| + virtual void SetLineSpace(FX_FLOAT fLineSpace);
|
| + virtual void SetDIBitmap(CFX_DIBitmap* pDIB);
|
| + virtual void SetRenderDevice(CFX_RenderDevice* pDevice);
|
| + virtual void SetClipRect(const CFX_Rect& rtClip);
|
| + virtual void SetClipRect(const CFX_RectF& rtClip);
|
| + virtual void SetMatrix(const CFX_Matrix& matrix);
|
| + virtual void SetLineBreakTolerance(FX_FLOAT fTolerance);
|
| + virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + CFX_Size& size);
|
| + virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + CFX_SizeF& size);
|
| + virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + CFX_Rect& rect);
|
| + virtual void CalcSize(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + CFX_RectF& rect);
|
| +
|
| + virtual void DrawText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + int32_t x,
|
| + int32_t y);
|
| + virtual void DrawText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + FX_FLOAT x,
|
| + FX_FLOAT y);
|
| + virtual void DrawText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + const CFX_Rect& rect);
|
| + virtual void DrawText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + const CFX_RectF& rect);
|
| +
|
| + virtual void SetLogicClipRect(const CFX_RectF& rtClip);
|
| + virtual void CalcLogicSize(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + CFX_SizeF& size);
|
| + virtual void CalcLogicSize(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + CFX_RectF& rect);
|
| + virtual void DrawLogicText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + FX_FLOAT x,
|
| + FX_FLOAT y);
|
| + virtual void DrawLogicText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + const CFX_RectF& rect);
|
| + virtual int32_t GetTotalLines();
|
| +
|
| + protected:
|
| + void CalcTextSize(const FX_WCHAR* pwsStr, int32_t iLength, CFX_RectF& rect);
|
| + FX_BOOL RetrieveLineWidth(FX_DWORD dwBreakStatus,
|
| + FX_FLOAT& fStartPos,
|
| + FX_FLOAT& fWidth,
|
| + FX_FLOAT& fHeight);
|
| + void SetLineWidth(CFX_RectF& rect);
|
| + void DrawText(const FX_WCHAR* pwsStr,
|
| + int32_t iLength,
|
| + const CFX_RectF& rect,
|
| + const CFX_RectF& rtClip);
|
| + void LoadText(const FX_WCHAR* pwsStr, int32_t iLength, const CFX_RectF& rect);
|
| + void LoadEllipsis();
|
| + void ExpandBuffer(int32_t iSize, int32_t iType);
|
| + void RetrieveEllPieces(int32_t*& pCharWidths);
|
| +
|
| + void Reload(const CFX_RectF& rect);
|
| + void ReloadLinePiece(CFDE_TTOLine* pLine, const CFX_RectF& rect);
|
| + FX_BOOL RetriecePieces(FX_DWORD dwBreakStatus,
|
| + int32_t& iStartChar,
|
| + int32_t& iPieceWidths,
|
| + FX_BOOL bReload,
|
| + const CFX_RectF& rect);
|
| + void AppendPiece(const FDE_TTOPIECE& ttoPiece,
|
| + FX_BOOL bNeedReload,
|
| + FX_BOOL bEnd);
|
| + void ReplaceWidthEllipsis();
|
| + void DoAlignment(const CFX_RectF& rect);
|
| + void OnDraw(const CFX_RectF& rtClip);
|
| + int32_t GetDisplayPos(FDE_LPTTOPIECE pPiece);
|
| + int32_t GetCharRects(FDE_LPTTOPIECE pPiece);
|
| +
|
| + void ToTextRun(const FDE_LPTTOPIECE pPiece, FX_TXTRUN& tr);
|
| + void DrawLine(const FDE_LPTTOPIECE pPiece, IFDE_Pen*& pPen);
|
| +
|
| + IFX_TxtBreak* m_pTxtBreak;
|
| + IFX_Font* m_pFont;
|
| + FX_FLOAT m_fFontSize;
|
| + FX_FLOAT m_fLineSpace;
|
| + FX_FLOAT m_fLinePos;
|
| + FX_FLOAT m_fTolerance;
|
| + int32_t m_iAlignment;
|
| + int32_t m_iTxtBkAlignment;
|
| + int32_t* m_pCharWidths;
|
| + int32_t m_iChars;
|
| + int32_t* m_pEllCharWidths;
|
| + int32_t m_iEllChars;
|
| + FX_WCHAR m_wParagraphBkChar;
|
| + FX_ARGB m_TxtColor;
|
| + FX_DWORD m_dwStyles;
|
| + FX_DWORD m_dwTxtBkStyles;
|
| + CFX_WideString m_wsEllipsis;
|
| + FX_BOOL m_bElliChanged;
|
| + int32_t m_iEllipsisWidth;
|
| + CFX_WideString m_wsText;
|
| + CFX_RectF m_rtClip;
|
| + CFX_RectF m_rtLogicClip;
|
| + CFX_Matrix m_Matrix;
|
| + CFDE_TTOLineArray m_ttoLines;
|
| + int32_t m_iCurLine;
|
| + int32_t m_iCurPiece;
|
| + int32_t m_iTotalLines;
|
| + FXTEXT_CHARPOS* m_pCharPos;
|
| + int32_t m_iCharPosSize;
|
| + IFDE_RenderDevice* m_pRenderDevice;
|
| + CFX_Int32Array m_hotKeys;
|
| + CFX_RectFArray m_rectArray;
|
| +};
|
| +#endif
|
|
|