diff options
author | Martin Hosken <martin_hosken@sil.org> | 2015-09-10 10:14:18 +0700 |
---|---|---|
committer | Martin Hosken <martin_hosken@sil.org> | 2015-09-14 01:16:40 +0000 |
commit | 41007842ed9bb5d6165792a197769f72dae55a2c (patch) | |
tree | 3db9834122c1a6b43bd2428129629a6f66669978 /vcl/inc/graphite_layout.hxx | |
parent | 35fd0cf311d0ab6e647ef8a244f350d8a690e734 (diff) |
Refactor graphite integration and update graphite
Change-Id: I09db7262c2a6180a078620ba086dd7a4c132bd82
Reviewed-on: https://gerrit.libreoffice.org/18459
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
Reviewed-by: Martin Hosken <martin_hosken@sil.org>
Diffstat (limited to 'vcl/inc/graphite_layout.hxx')
-rw-r--r-- | vcl/inc/graphite_layout.hxx | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/vcl/inc/graphite_layout.hxx b/vcl/inc/graphite_layout.hxx index 55d0d676091d..1378f88d64bf 100644 --- a/vcl/inc/graphite_layout.hxx +++ b/vcl/inc/graphite_layout.hxx @@ -96,6 +96,7 @@ private: int mnSegCharOffset; // relative to ImplLayoutArgs::mpStr long mnWidth; std::vector<int> mvChar2BaseGlyph; + std::vector<int> mvChar2Glyph; std::vector<int> mvGlyph2Char; std::vector<int> mvCharDxs; std::vector<int> mvCharBreaks; @@ -109,8 +110,6 @@ public: // used by upper layers virtual bool LayoutText( ImplLayoutArgs& ) SAL_OVERRIDE; // first step of layout // split into two stages to allow dc to be restored on the segment - gr_segment * CreateSegment(ImplLayoutArgs& rArgs); - bool LayoutGlyphs(ImplLayoutArgs& rArgs, gr_segment * pSegment); virtual void AdjustLayout( ImplLayoutArgs& ) SAL_OVERRIDE; // adjusting positions @@ -145,13 +144,14 @@ public: static const int EXTRA_CONTEXT_LENGTH; private: void expandOrCondense(ImplLayoutArgs &rArgs); - void fillFrom(gr_segment * rSeg, ImplLayoutArgs & rArgs, float fScaling); + void fillFrom(gr_segment * rSeg, ImplLayoutArgs & rArgs, float fScaling, bool bRtl, int firstCharOffset); float append(gr_segment * pSeg, ImplLayoutArgs & rArgs, const gr_slot * pSlot, float gOrigin, float nextGlyphOrigin, float fScaling, - long & rDXOffset, bool bIsBase, int baseChar); + long & rDXOffset, bool bIsBase, int baseChar, int baseGlyph, bool bRtl); + int ScanFwdForChar(int &findChar, bool fallback) const; }; #endif // INCLUDED_VCL_INC_GRAPHITE_LAYOUT_HXX |