LibreOffice Module vcl (master)  1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
WinSkiaSalGraphicsImpl Class Reference

#include <gdiimpl.hxx>

Inheritance diagram for WinSkiaSalGraphicsImpl:
[legend]
Collaboration diagram for WinSkiaSalGraphicsImpl:
[legend]

Public Member Functions

 WinSkiaSalGraphicsImpl (WinSalGraphics &rGraphics, SalGeometryProvider *mpProvider)
 
virtual void DeInit () override
 
virtual void freeResources () override
 
virtual bool UseRenderNativeControl () const override
 
virtual bool TryRenderCachedNativeControl (ControlCacheKey const &rControlCacheKey, int nX, int nY) override
 
virtual bool RenderAndCacheNativeControl (CompatibleDC &rWhite, CompatibleDC &rBlack, int nX, int nY, ControlCacheKey &aControlCacheKey) override
 
virtual bool DrawTextLayout (const GenericSalLayout &layout) override
 
virtual void ClearDevFontCache () override
 
- Public Member Functions inherited from SkiaSalGraphicsImpl
 SkiaSalGraphicsImpl (SalGraphics &pParent, SalGeometryProvider *pProvider)
 
virtual ~SkiaSalGraphicsImpl () override
 
virtual void Init () override
 
virtual OUString getRenderBackendName () const override
 
const vcl::RegiongetClipRegion () const
 
virtual bool setClipRegion (const vcl::Region &) override
 
virtual sal_uInt16 GetBitCount () const override
 
virtual long GetGraphicsWidth () const override
 
virtual void ResetClipRegion () override
 
virtual void SetLineColor () override
 
virtual void SetLineColor (Color nColor) override
 
virtual void SetFillColor () override
 
virtual void SetFillColor (Color nColor) override
 
virtual void SetXORMode (bool bSet, bool bInvertOnly) override
 
virtual void SetROPLineColor (SalROPColor nROPColor) override
 
virtual void SetROPFillColor (SalROPColor nROPColor) override
 
virtual void drawPixel (long nX, long nY) override
 
virtual void drawPixel (long nX, long nY, Color nColor) override
 
virtual void drawLine (long nX1, long nY1, long nX2, long nY2) override
 
virtual void drawRect (long nX, long nY, long nWidth, long nHeight) override
 
virtual void drawPolyLine (sal_uInt32 nPoints, const SalPoint *pPtAry) override
 
virtual void drawPolygon (sal_uInt32 nPoints, const SalPoint *pPtAry) override
 
virtual void drawPolyPolygon (sal_uInt32 nPoly, const sal_uInt32 *pPoints, PCONSTSALPOINT *pPtAry) override
 
virtual bool drawPolyPolygon (const basegfx::B2DHomMatrix &rObjectToDevice, const basegfx::B2DPolyPolygon &, double fTransparency) override
 
virtual bool drawPolyLine (const basegfx::B2DHomMatrix &rObjectToDevice, const basegfx::B2DPolygon &, double fTransparency, double fLineWidth, const std::vector< double > *pStroke, basegfx::B2DLineJoin, css::drawing::LineCap, double fMiterMinimumAngle, bool bPixelSnapHairline) override
 
virtual bool drawPolyLineBezier (sal_uInt32 nPoints, const SalPoint *pPtAry, const PolyFlags *pFlgAry) override
 
virtual bool drawPolygonBezier (sal_uInt32 nPoints, const SalPoint *pPtAry, const PolyFlags *pFlgAry) override
 
virtual bool drawPolyPolygonBezier (sal_uInt32 nPoly, const sal_uInt32 *pPoints, const SalPoint *const *pPtAry, const PolyFlags *const *pFlgAry) override
 
virtual void copyArea (long nDestX, long nDestY, long nSrcX, long nSrcY, long nSrcWidth, long nSrcHeight, bool bWindowInvalidate) override
 
virtual void copyBits (const SalTwoRect &rPosAry, SalGraphics *pSrcGraphics) override
 
virtual bool blendBitmap (const SalTwoRect &, const SalBitmap &rBitmap) override
 
virtual bool blendAlphaBitmap (const SalTwoRect &, const SalBitmap &rSrcBitmap, const SalBitmap &rMaskBitmap, const SalBitmap &rAlphaBitmap) override
 
virtual void drawBitmap (const SalTwoRect &rPosAry, const SalBitmap &rSalBitmap) override
 
virtual void drawBitmap (const SalTwoRect &rPosAry, const SalBitmap &rSalBitmap, const SalBitmap &rMaskBitmap) override
 
virtual void drawMask (const SalTwoRect &rPosAry, const SalBitmap &rSalBitmap, Color nMaskColor) override
 
virtual std::shared_ptr< SalBitmapgetBitmap (long nX, long nY, long nWidth, long nHeight) override
 
virtual Color getPixel (long nX, long nY) override
 
virtual void invert (long nX, long nY, long nWidth, long nHeight, SalInvert nFlags) override
 
virtual void invert (sal_uInt32 nPoints, const SalPoint *pPtAry, SalInvert nFlags) override
 
virtual bool drawEPS (long nX, long nY, long nWidth, long nHeight, void *pPtr, sal_uInt32 nSize) override
 
virtual bool drawAlphaBitmap (const SalTwoRect &, const SalBitmap &rSourceBitmap, const SalBitmap &rAlphaBitmap) override
 Render bitmap with alpha channel. More...
 
virtual bool drawTransformedBitmap (const basegfx::B2DPoint &rNull, const basegfx::B2DPoint &rX, const basegfx::B2DPoint &rY, const SalBitmap &rSourceBitmap, const SalBitmap *pAlphaBitmap) override
 draw transformed bitmap (maybe with alpha) where Null, X, Y define the coordinate system More...
 
virtual bool drawAlphaRect (long nX, long nY, long nWidth, long nHeight, sal_uInt8 nTransparency) override
 Render solid rectangle with given transparency. More...
 
virtual bool drawGradient (const tools::PolyPolygon &rPolygon, const Gradient &rGradient) override
 
virtual bool supportsOperation (OutDevSupportType eType) const override
 
void dump (const char *file) const
 
void drawImage (const SalTwoRect &rPosAry, const sk_sp< SkImage > &aImage, SkBlendMode eBlendMode=SkBlendMode::kSrcOver)
 
void drawGenericLayout (const GenericSalLayout &layout, Color textColor, const SkFont &font, GlyphOrientation glyphOrientation)
 
- Public Member Functions inherited from SalGraphicsImpl
virtual ~SalGraphicsImpl ()
 
- Public Member Functions inherited from WinSalGraphicsImplBase
virtual ~WinSalGraphicsImplBase ()
 
virtual bool TryRenderCachedNativeControl (const ControlCacheKey &, int, int)
 
virtual bool UseTextDraw () const
 
virtual void PreDrawText ()
 
virtual void PostDrawText ()
 
virtual void DrawTextMask (CompatibleDC::Texture *, Color, const SalTwoRect &)
 
virtual void DeferredTextDraw (const CompatibleDC::Texture *, Color, const SalTwoRect &)
 

Static Public Member Functions

static void prepareSkia ()
 

Protected Member Functions

virtual void createWindowContext () override
 
virtual void performFlush () override
 
sk_sp< SkTypeface > createDirectWriteTypeface (const LOGFONTW &logFont)
 
SkFont::Edging getFontEdging ()
 
- Protected Member Functions inherited from SkiaSalGraphicsImpl
void preDraw ()
 
void postDraw ()
 
SkCanvas * getDrawCanvas ()
 
void flushDrawing ()
 
virtual void createSurface ()
 
void checkSurface ()
 
void recreateSurface ()
 
void destroySurface ()
 
virtual bool avoidRecreateByResize () const
 
void createWindowSurface ()
 
void createOffscreenSurface ()
 
void privateDrawAlphaRect (long nX, long nY, long nWidth, long nHeight, double nTransparency, bool blockAA=false)
 
void setProvider (SalGeometryProvider *provider)
 
bool isOffscreen () const
 
bool isGPU () const
 
void invert (basegfx::B2DPolygon const &rPoly, SalInvert eFlags)
 
int GetWidth () const
 
int GetHeight () const
 
void drawMask (const SalTwoRect &rPosAry, const sk_sp< SkImage > &rImage, Color nMaskColor)
 
SkCanvas * getXorCanvas ()
 
void applyXor ()
 
void addXorRegion (const SkRect &rect)
 
SkScalar toSkX (long x) const
 
SkScalar toSkY (long y) const
 

Protected Attributes

IDWriteFactory * dwriteFactory
 
IDWriteGdiInterop * dwriteGdiInterop
 
sk_sp< SkFontMgr > dwriteFontMgr
 
bool dwriteDone = false
 
SkFont::Edging fontEdging
 
bool fontEdgingDone = false
 
- Protected Attributes inherited from SkiaSalGraphicsImpl
SalGraphicsmParent
 
SalGeometryProvidermProvider
 Pointer to the SalFrame or SalVirtualDevice. More...
 
std::unique_ptr< sk_app::WindowContext > mWindowContext
 
sk_sp< SkSurface > mSurface
 
bool mIsGPU
 
vcl::Region mClipRegion
 
Color mLineColor
 
Color mFillColor
 
bool mXorMode
 
SkBitmap mXorBitmap
 
std::unique_ptr< SkCanvas > mXorCanvas
 
SkRegion mXorRegion
 
std::unique_ptr< SkiaFlushIdlemFlush
 

Private Attributes

WinSalGraphicsmWinParent
 

Additional Inherited Members

- Public Types inherited from SkiaSalGraphicsImpl
enum  GlyphOrientation {
  GlyphOrientation::Apply,
  GlyphOrientation::Ignore
}
 
- Static Protected Member Functions inherited from SkiaSalGraphicsImpl
static void setCanvasClipRegion (SkCanvas *canvas, const vcl::Region &region)
 

Detailed Description

Definition at line 51 of file skia/win/gdiimpl.hxx.

Constructor & Destructor Documentation

WinSkiaSalGraphicsImpl::WinSkiaSalGraphicsImpl ( WinSalGraphics rGraphics,
SalGeometryProvider mpProvider 
)

Member Function Documentation

virtual void WinSkiaSalGraphicsImpl::ClearDevFontCache ( )
overridevirtual

Reimplemented from WinSalGraphicsImplBase.

sk_sp<SkTypeface> WinSkiaSalGraphicsImpl::createDirectWriteTypeface ( const LOGFONTW &  logFont)
protected
virtual void WinSkiaSalGraphicsImpl::createWindowContext ( )
overrideprotectedvirtual

Implements SkiaSalGraphicsImpl.

virtual void WinSkiaSalGraphicsImpl::DeInit ( )
overridevirtual

Reimplemented from SkiaSalGraphicsImpl.

virtual bool WinSkiaSalGraphicsImpl::DrawTextLayout ( const GenericSalLayout layout)
overridevirtual

Reimplemented from WinSalGraphicsImplBase.

virtual void WinSkiaSalGraphicsImpl::freeResources ( )
overridevirtual

Implements SalGraphicsImpl.

SkFont::Edging WinSkiaSalGraphicsImpl::getFontEdging ( )
protected
virtual void WinSkiaSalGraphicsImpl::performFlush ( )
overrideprotectedvirtual

Implements SkiaSalGraphicsImpl.

static void WinSkiaSalGraphicsImpl::prepareSkia ( )
static
virtual bool WinSkiaSalGraphicsImpl::RenderAndCacheNativeControl ( CompatibleDC rWhite,
CompatibleDC rBlack,
int  nX,
int  nY,
ControlCacheKey aControlCacheKey 
)
overridevirtual

Reimplemented from WinSalGraphicsImplBase.

virtual bool WinSkiaSalGraphicsImpl::TryRenderCachedNativeControl ( ControlCacheKey const &  rControlCacheKey,
int  nX,
int  nY 
)
overridevirtual
virtual bool WinSkiaSalGraphicsImpl::UseRenderNativeControl ( ) const
inlineoverridevirtual

Reimplemented from WinSalGraphicsImplBase.

Definition at line 62 of file skia/win/gdiimpl.hxx.

Member Data Documentation

bool WinSkiaSalGraphicsImpl::dwriteDone = false
protected

Definition at line 81 of file skia/win/gdiimpl.hxx.

IDWriteFactory* WinSkiaSalGraphicsImpl::dwriteFactory
protected

Definition at line 78 of file skia/win/gdiimpl.hxx.

sk_sp<SkFontMgr> WinSkiaSalGraphicsImpl::dwriteFontMgr
protected

Definition at line 80 of file skia/win/gdiimpl.hxx.

IDWriteGdiInterop* WinSkiaSalGraphicsImpl::dwriteGdiInterop
protected

Definition at line 79 of file skia/win/gdiimpl.hxx.

SkFont::Edging WinSkiaSalGraphicsImpl::fontEdging
protected

Definition at line 82 of file skia/win/gdiimpl.hxx.

bool WinSkiaSalGraphicsImpl::fontEdgingDone = false
protected

Definition at line 83 of file skia/win/gdiimpl.hxx.

WinSalGraphics& WinSkiaSalGraphicsImpl::mWinParent
private

Definition at line 54 of file skia/win/gdiimpl.hxx.


The documentation for this class was generated from the following file: