LibreOffice Module vcl (master)
1
|
#include <gdiimpl.hxx>
Classes | |
struct | LastPolyPolygonInfo |
Public Types | |
enum | GlyphOrientation { GlyphOrientation::Apply, GlyphOrientation::Ignore } |
Public Member Functions | |
SkiaSalGraphicsImpl (SalGraphics &pParent, SalGeometryProvider *pProvider) | |
virtual | ~SkiaSalGraphicsImpl () override |
virtual void | Init () override |
virtual void | DeInit () override |
virtual OUString | getRenderBackendName () const override |
const vcl::Region & | getClipRegion () const |
virtual bool | setClipRegion (const vcl::Region &) override |
virtual sal_uInt16 | GetBitCount () const override |
virtual tools::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 (tools::Long nX, tools::Long nY) override |
virtual void | drawPixel (tools::Long nX, tools::Long nY, Color nColor) override |
virtual void | drawLine (tools::Long nX1, tools::Long nY1, tools::Long nX2, tools::Long nY2) override |
virtual void | drawRect (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight) override |
virtual void | drawPolyLine (sal_uInt32 nPoints, const Point *pPtAry) override |
virtual void | drawPolygon (sal_uInt32 nPoints, const Point *pPtAry) override |
virtual void | drawPolyPolygon (sal_uInt32 nPoly, const sal_uInt32 *pPoints, const Point **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 Point *pPtAry, const PolyFlags *pFlgAry) override |
virtual bool | drawPolygonBezier (sal_uInt32 nPoints, const Point *pPtAry, const PolyFlags *pFlgAry) override |
virtual bool | drawPolyPolygonBezier (sal_uInt32 nPoly, const sal_uInt32 *pPoints, const Point *const *pPtAry, const PolyFlags *const *pFlgAry) override |
virtual void | copyArea (tools::Long nDestX, tools::Long nDestY, tools::Long nSrcX, tools::Long nSrcY, tools::Long nSrcWidth, tools::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< SalBitmap > | getBitmap (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight) override |
virtual Color | getPixel (tools::Long nX, tools::Long nY) override |
virtual void | invert (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, SalInvert nFlags) override |
virtual void | invert (sal_uInt32 nPoints, const Point *pPtAry, SalInvert nFlags) override |
virtual bool | drawEPS (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::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 (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::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 | implDrawGradient (const basegfx::B2DPolyPolygon &rPolyPolygon, const SalGradient &rGradient) override |
virtual bool | supportsOperation (OutDevSupportType eType) const override |
void | dump (const char *file) const |
void | drawBitmap (const SalTwoRect &rPosAry, const SkiaSalBitmap &bitmap, SkBlendMode blendMode=SkBlendMode::kSrcOver) |
void | drawImage (const SalTwoRect &rPosAry, const sk_sp< SkImage > &aImage, SkBlendMode eBlendMode=SkBlendMode::kSrcOver) |
void | drawShader (const SalTwoRect &rPosAry, const sk_sp< SkShader > &shader, SkBlendMode blendMode=SkBlendMode::kSrcOver) |
void | drawGenericLayout (const GenericSalLayout &layout, Color textColor, const SkFont &font, GlyphOrientation glyphOrientation) |
![]() | |
virtual | ~SalGraphicsImpl () |
virtual void | freeResources ()=0 |
virtual bool | implDrawGradient (basegfx::B2DPolyPolygon const &rPolyPolygon, SalGradient const &rGradient)=0 |
Static Protected Member Functions | |
static void | setCanvasClipRegion (SkCanvas *canvas, const vcl::Region ®ion) |
static constexpr SkScalar | toSkX (tools::Long x) |
static constexpr SkScalar | toSkY (tools::Long y) |
Protected Attributes | |
SalGraphics & | mParent |
SalGeometryProvider * | mProvider |
Pointer to the SalFrame or SalVirtualDevice. More... | |
std::unique_ptr< sk_app::WindowContext > | mWindowContext |
sk_sp< SkSurface > | mSurface |
bool | mIsGPU |
SkIRect | mDirtyRect |
vcl::Region | mClipRegion |
Color | mLineColor |
Color | mFillColor |
bool | mXorMode |
SkBitmap | mXorBitmap |
std::unique_ptr< SkCanvas > | mXorCanvas |
SkRegion | mXorRegion |
std::unique_ptr< SkiaFlushIdle > | mFlush |
LastPolyPolygonInfo | mLastPolyPolygonInfo |
int | mPendingOperationsToFlush |
Static Protected Attributes | |
static constexpr SkScalar | toSkXYFix = SkScalar(0.005) |
Friends | |
class | SkiaFlushIdle |
template<typename charT , typename traits > | |
std::basic_ostream< charT, traits > & | operator<< (std::basic_ostream< charT, traits > &stream, const SkiaSalGraphicsImpl *graphics) |
Definition at line 40 of file gdiimpl.hxx.
|
strong |
Enumerator | |
---|---|
Apply | |
Ignore |
Definition at line 218 of file gdiimpl.hxx.
SkiaSalGraphicsImpl::SkiaSalGraphicsImpl | ( | SalGraphics & | pParent, |
SalGeometryProvider * | pProvider | ||
) |
|
overridevirtual |
|
inlineprotected |
Definition at line 270 of file gdiimpl.hxx.
|
protected |
|
inlineprotectedvirtual |
Reimplemented in X11SkiaSalGraphicsImpl.
Definition at line 242 of file gdiimpl.hxx.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
protected |
|
protected |
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
protected |
|
protectedvirtual |
|
protectedpure virtual |
Implemented in WinSkiaSalGraphicsImpl, and X11SkiaSalGraphicsImpl.
|
protected |
|
overridevirtual |
Reimplemented from SalGraphicsImpl.
Reimplemented in WinSkiaSalGraphicsImpl, and X11SkiaSalGraphicsImpl.
|
protected |
|
protected |
|
overridevirtual |
Render bitmap with alpha channel.
rSourceBitmap | Source bitmap to blit |
rAlphaBitmap | Alpha channel to use for blitting |
Implements SalGraphicsImpl.
|
overridevirtual |
Render solid rectangle with given transparency.
nX | Top left coordinate of rectangle |
nY | Bottom right coordinate of rectangle |
nWidth | Width of rectangle |
nHeight | Height of rectangle |
nTransparency | Transparency value (0-255) to use. 0 blits and opaque, 255 a fully transparent rectangle |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
void SkiaSalGraphicsImpl::drawBitmap | ( | const SalTwoRect & | rPosAry, |
const SkiaSalBitmap & | bitmap, | ||
SkBlendMode | blendMode = SkBlendMode::kSrcOver |
||
) |
|
overridevirtual |
Implements SalGraphicsImpl.
void SkiaSalGraphicsImpl::drawGenericLayout | ( | const GenericSalLayout & | layout, |
Color | textColor, | ||
const SkFont & | font, | ||
GlyphOrientation | glyphOrientation | ||
) |
|
overridevirtual |
Implements SalGraphicsImpl.
void SkiaSalGraphicsImpl::drawImage | ( | const SalTwoRect & | rPosAry, |
const sk_sp< SkImage > & | aImage, | ||
SkBlendMode | eBlendMode = SkBlendMode::kSrcOver |
||
) |
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
void SkiaSalGraphicsImpl::drawShader | ( | const SalTwoRect & | rPosAry, |
const sk_sp< SkShader > & | shader, | ||
SkBlendMode | blendMode = SkBlendMode::kSrcOver |
||
) |
|
overridevirtual |
draw transformed bitmap (maybe with alpha) where Null, X, Y define the coordinate system
Implements SalGraphicsImpl.
void SkiaSalGraphicsImpl::dump | ( | const char * | file | ) | const |
|
protected |
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
const vcl::Region& SkiaSalGraphicsImpl::getClipRegion | ( | ) | const |
|
inlineprotected |
Definition at line 232 of file gdiimpl.hxx.
|
overridevirtual |
Implements SalGraphicsImpl.
|
inlineprotected |
Definition at line 265 of file gdiimpl.hxx.
|
overridevirtual |
Implements SalGraphicsImpl.
|
inlineoverridevirtual |
Implements SalGraphicsImpl.
Definition at line 50 of file gdiimpl.hxx.
|
inlineprotected |
Definition at line 263 of file gdiimpl.hxx.
|
protected |
|
overridevirtual |
|
overridevirtual |
Implements SalGraphicsImpl.
Reimplemented in X11SkiaSalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
protected |
|
inlineprotected |
Definition at line 253 of file gdiimpl.hxx.
|
inlineprotected |
Definition at line 252 of file gdiimpl.hxx.
|
protected |
|
protected |
|
protectedpure virtual |
Implemented in WinSkiaSalGraphicsImpl, and X11SkiaSalGraphicsImpl.
|
protected |
|
protected |
|
protected |
|
overridevirtual |
Implements SalGraphicsImpl.
|
protected |
|
staticprotected |
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
Implements SalGraphicsImpl.
|
inlineprotected |
Definition at line 250 of file gdiimpl.hxx.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
overridevirtual |
Implements SalGraphicsImpl.
|
inlinestaticprotected |
Definition at line 295 of file gdiimpl.hxx.
|
inlinestaticprotected |
Definition at line 296 of file gdiimpl.hxx.
|
friend |
Definition at line 310 of file gdiimpl.hxx.
|
friend |
Definition at line 260 of file gdiimpl.hxx.
|
protected |
Definition at line 328 of file gdiimpl.hxx.
|
protected |
Definition at line 327 of file gdiimpl.hxx.
|
protected |
Definition at line 330 of file gdiimpl.hxx.
|
protected |
Definition at line 335 of file gdiimpl.hxx.
|
protected |
Definition at line 326 of file gdiimpl.hxx.
|
protected |
Definition at line 343 of file gdiimpl.hxx.
|
protected |
Definition at line 329 of file gdiimpl.hxx.
|
protected |
Definition at line 320 of file gdiimpl.hxx.
|
protected |
Definition at line 344 of file gdiimpl.hxx.
|
protected |
Pointer to the SalFrame or SalVirtualDevice.
Definition at line 322 of file gdiimpl.hxx.
|
protected |
Definition at line 325 of file gdiimpl.hxx.
|
protected |
Definition at line 323 of file gdiimpl.hxx.
|
protected |
Definition at line 332 of file gdiimpl.hxx.
|
protected |
Definition at line 333 of file gdiimpl.hxx.
|
protected |
Definition at line 331 of file gdiimpl.hxx.
|
protected |
Definition at line 334 of file gdiimpl.hxx.
|
staticprotected |
Definition at line 298 of file gdiimpl.hxx.