LibreOffice Module sw (master) 1
|
#include <sal/config.h>
#include <i18nlangtag/mslangid.hxx>
#include <officecfg/Office/Common.hxx>
#include <vcl/outdev.hxx>
#include <vcl/kernarray.hxx>
#include <vcl/lineinfo.hxx>
#include <vcl/metric.hxx>
#include <vcl/svapp.hxx>
#include <vcl/lazydelete.hxx>
#include <vcl/glyphitemcache.hxx>
#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
#include <com/sun/star/i18n/WordType.hpp>
#include <com/sun/star/i18n/XBreakIterator.hpp>
#include <breakit.hxx>
#include <paintfrm.hxx>
#include <viewsh.hxx>
#include <viewopt.hxx>
#include <fntcache.hxx>
#include <IDocumentSettingAccess.hxx>
#include <swfont.hxx>
#include <wrong.hxx>
#include <txtfrm.hxx>
#include <pagefrm.hxx>
#include <tgrditem.hxx>
#include <scriptinfo.hxx>
#include <editeng/brushitem.hxx>
#include <accessibilityoptions.hxx>
#include <svx/sdr/attribute/sdrallfillattributeshelper.hxx>
#include <doc.hxx>
#include <editeng/fhgtitem.hxx>
#include <vcl/glyphitem.hxx>
#include <vcl/vcllayout.hxx>
#include <docsh.hxx>
#include <strings.hrc>
#include <fntcap.hxx>
#include <vcl/outdev/ScopedStates.hxx>
#include <o3tl/hash_combine.hxx>
#include <cstdint>
#include <memory>
#include "justify.hxx"
Go to the source code of this file.
Macros | |
#define | WRONG_SHOW_MIN 5 |
Typedefs | |
typedef std::vector< std::pair< TextFrameIndex, TextFrameIndex > > | SwForbidden |
Functions | |
constexpr Color | gWaveCol (COL_GRAY) |
static bool | lcl_IsFontAdjustNecessary (const vcl::RenderContext &rOutDev, const vcl::RenderContext &rRefDev) |
static void | lcl_calcLinePos (const CalcLinePosData &rData, Point &rStart, Point &rEnd, TextFrameIndex const nStart, TextFrameIndex const nWrLen) |
static bool | lcl_IsMonoSpaceFont (const vcl::RenderContext &rOut) |
static bool | lcl_IsFullstopCentered (const vcl::RenderContext &rOut) |
static void | lcl_DrawLineForWrongListData (SwForbidden &rForbidden, const SwDrawTextInfo &rInf, sw::WrongListIterator *pWList, const CalcLinePosData &rCalcLinePosData, const Size &rPrtFontSize) |
static void | GetTextArray (const OutputDevice &rDevice, const OUString &rStr, KernArray &rDXAry, sal_Int32 nIndex, sal_Int32 nLen, bool bCaret=false, const vcl::text::TextLayoutCache *layoutCache=nullptr) |
static void | GetTextArray (const OutputDevice &rOutputDevice, const SwDrawTextInfo &rInf, KernArray &rDXAry, bool bCaret=false) |
static void | GetTextArray (const OutputDevice &rOutputDevice, const SwDrawTextInfo &rInf, KernArray &rDXAry, sal_Int32 nLen, bool bCaret=false) |
Variables | |
SwFntCache * | pFntCache = nullptr |
SwFntObj * | pLastFont = nullptr |
static vcl::DeleteOnDeinit< VclPtr< OutputDevice > > | s_pFntObjPixOut {} |
#define WRONG_SHOW_MIN 5 |
Definition at line 592 of file fntcache.cxx.
typedef std::vector<std::pair<TextFrameIndex, TextFrameIndex> > SwForbidden |
Definition at line 616 of file fntcache.cxx.
|
static |
Definition at line 745 of file fntcache.cxx.
References SalLayoutGlyphsCache::GetLayoutGlyphs(), OutputDevice::GetTextArray(), nIndex, and SalLayoutGlyphsCache::self().
Referenced by SwFntObj::DrawText(), SwFntObj::GetModelPositionForViewPoint(), GetTextArray(), SwFont::GetTextBreak(), and SwFntObj::GetTextSize().
|
static |
Definition at line 754 of file fntcache.cxx.
References o3tl::strong_int< typename UNDERLYING_TYPE, typename PHANTOM_TYPE >::get(), SwDrawTextInfo::GetIdx(), SwDrawTextInfo::GetLen(), SwDrawTextInfo::GetText(), GetTextArray(), and SwDrawTextInfo::GetVclCache().
|
static |
Definition at line 761 of file fntcache.cxx.
References o3tl::strong_int< typename UNDERLYING_TYPE, typename PHANTOM_TYPE >::get(), SwDrawTextInfo::GetIdx(), SwDrawTextInfo::GetLen(), SwDrawTextInfo::GetText(), GetTextArray(), and SwDrawTextInfo::GetVclCache().
Referenced by SwFntObj::DrawText().
|
static |
Definition at line 196 of file fntcache.cxx.
References Point::AdjustX(), Point::AdjustY(), CH_BLANK, o3tl::strong_int< typename UNDERLYING_TYPE, typename PHANTOM_TYPE >::get(), Point::setX(), Point::setY(), SPACING_PRECISION_FACTOR, and UnMapDirection().
Referenced by lcl_DrawLineForWrongListData().
|
static |
Definition at line 618 of file fntcache.cxx.
References a, Point::AdjustY(), sw::WrongListIterator::Check(), OutputDevice::DrawLine(), OutputDevice::DrawWaveLine(), first, OutputDevice::GetConnectMetaFile(), SwDrawTextInfo::GetIdx(), SwDrawTextInfo::GetLen(), OutputDevice::GetLineColor(), SwDrawTextInfo::GetOut(), SwDrawTextInfo::GetPos(), SwDrawTextInfo::GetShell(), SwDrawTextInfo::GetSmartTags(), SwViewShell::GetViewOptions(), sw::WrongListIterator::GetWrongElement(), SwViewOption::GetZoom(), lcl_calcLinePos(), OutputDevice::LogicToPixel(), SwWrongArea::mColor, SwWrongArea::mLineType, OutputDevice::Pop(), OutputDevice::Push(), round, LineInfo::SetDashCount(), LineInfo::SetDashLen(), LineInfo::SetDistance(), OutputDevice::SetLineColor(), WRONG_SHOW_MIN, WRONGAREA_BOLD, WRONGAREA_BOLDWAVE, WRONGAREA_DASHED, and WRONGAREA_WAVE.
Referenced by SwFntObj::DrawText().
|
static |
Definition at line 153 of file fntcache.cxx.
References OutputDevice::GetOutDevType(), OUTDEV_PRINTER, and OUTDEV_WINDOW.
Referenced by SwFntObj::DrawText(), SwFntObj::GetFontAscent(), SwFntObj::GetFontHangingBaseline(), SwFntObj::GetFontHeight(), and SwFntObj::SetDevFont().
|
static |
Definition at line 607 of file fntcache.cxx.
References OutputDevice::GetFontMetric(), and FontMetric::IsFullstopCentered().
Referenced by SwFntObj::DrawText(), SwFntObj::GetModelPositionForViewPoint(), SwFont::GetTextBreak(), and SwFntObj::GetTextSize().
|
static |
Definition at line 600 of file fntcache.cxx.
References OutputDevice::GetTextWidth(), and u.
Referenced by SwFntObj::DrawText(), SwFntObj::GetModelPositionForViewPoint(), SwFont::GetTextBreak(), and SwFntObj::GetTextSize().
SwFntCache* pFntCache = nullptr |
Definition at line 66 of file fntcache.cxx.
Referenced by FlushFontCache(), SwViewShell::Init(), SwViewShell::PrintProspect(), sw::DocumentDeviceManager::PrtDataChanged(), SwViewShell::Reformat(), SwProtocol::Stop(), SwFntAccess::SwFntAccess(), TextFinit(), and TextInit_().
SwFntObj* pLastFont = nullptr |
Definition at line 68 of file fntcache.cxx.
Referenced by SwSubFont::CalcEsc(), SwTextFrame::CalcHeightOfLastLine(), SwSubFont::ChgFnt(), SwSubFont::DoOnCapitals(), SwSubFont::DrawStretchText_(), SwSubFont::DrawText_(), SwFntCache::Flush(), SwSubFont::GetModelPositionForViewPoint_(), and SwSubFont::GetTextSize_().
|
static |
Definition at line 74 of file fntcache.cxx.
Referenced by SwFntObj::DrawText().