|
| X11SkiaSalGraphicsImpl (X11SalGraphics &rParent) |
|
virtual void | Init () override |
|
virtual void | freeResources () override |
|
virtual void | Flush () override |
|
| 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 void | 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, double fAlpha) override |
| draw transformed bitmap (maybe with alpha) where Null, X, Y define the coordinate system More...
|
|
virtual bool | hasFastDrawTransformedBitmap () const override |
|
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, int srcScaling=1, 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, const SkFont &verticalFont) |
|
void | setAntiAlias (bool bNew) |
|
bool | getAntiAlias () const |
|
| SalGraphicsImpl () |
|
virtual | ~SalGraphicsImpl () |
|
virtual void | Init ()=0 |
|
virtual void | DeInit () |
|
virtual void | freeResources ()=0 |
|
virtual OUString | getRenderBackendName () const =0 |
|
virtual void | setClipRegion (const vcl::Region &)=0 |
|
virtual sal_uInt16 | GetBitCount () const =0 |
|
virtual tools::Long | GetGraphicsWidth () const =0 |
|
virtual void | ResetClipRegion ()=0 |
|
virtual void | SetLineColor ()=0 |
|
virtual void | SetLineColor (Color nColor)=0 |
|
virtual void | SetFillColor ()=0 |
|
virtual void | SetFillColor (Color nColor)=0 |
|
virtual void | SetXORMode (bool bSet, bool bInvertOnly)=0 |
|
virtual void | SetROPLineColor (SalROPColor nROPColor)=0 |
|
virtual void | SetROPFillColor (SalROPColor nROPColor)=0 |
|
virtual void | drawPixel (tools::Long nX, tools::Long nY)=0 |
|
virtual void | drawPixel (tools::Long nX, tools::Long nY, Color nColor)=0 |
|
virtual void | drawLine (tools::Long nX1, tools::Long nY1, tools::Long nX2, tools::Long nY2)=0 |
|
virtual void | drawRect (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight)=0 |
|
virtual void | drawPolyLine (sal_uInt32 nPoints, const Point *pPtAry)=0 |
|
virtual void | drawPolygon (sal_uInt32 nPoints, const Point *pPtAry)=0 |
|
virtual void | drawPolyPolygon (sal_uInt32 nPoly, const sal_uInt32 *pPoints, const Point **pPtAry)=0 |
|
virtual bool | drawPolyPolygon (const basegfx::B2DHomMatrix &rObjectToDevice, const basegfx::B2DPolyPolygon &, double fTransparency)=0 |
|
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)=0 |
|
virtual bool | drawPolyLineBezier (sal_uInt32 nPoints, const Point *pPtAry, const PolyFlags *pFlgAry)=0 |
|
virtual bool | drawPolygonBezier (sal_uInt32 nPoints, const Point *pPtAry, const PolyFlags *pFlgAry)=0 |
|
virtual bool | drawPolyPolygonBezier (sal_uInt32 nPoly, const sal_uInt32 *pPoints, const Point *const *pPtAry, const PolyFlags *const *pFlgAry)=0 |
|
virtual void | copyArea (tools::Long nDestX, tools::Long nDestY, tools::Long nSrcX, tools::Long nSrcY, tools::Long nSrcWidth, tools::Long nSrcHeight, bool bWindowInvalidate)=0 |
|
virtual void | copyBits (const SalTwoRect &rPosAry, SalGraphics *pSrcGraphics)=0 |
|
virtual void | drawBitmap (const SalTwoRect &rPosAry, const SalBitmap &rSalBitmap)=0 |
|
virtual void | drawBitmap (const SalTwoRect &rPosAry, const SalBitmap &rSalBitmap, const SalBitmap &rMaskBitmap)=0 |
|
virtual void | drawMask (const SalTwoRect &rPosAry, const SalBitmap &rSalBitmap, Color nMaskColor)=0 |
|
virtual std::shared_ptr< SalBitmap > | getBitmap (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight)=0 |
|
virtual Color | getPixel (tools::Long nX, tools::Long nY)=0 |
|
virtual void | invert (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, SalInvert nFlags)=0 |
|
virtual void | invert (sal_uInt32 nPoints, const Point *pPtAry, SalInvert nFlags)=0 |
|
virtual bool | drawEPS (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, void *pPtr, sal_uInt32 nSize)=0 |
|
virtual bool | blendBitmap (const SalTwoRect &, const SalBitmap &rBitmap)=0 |
|
virtual bool | blendAlphaBitmap (const SalTwoRect &, const SalBitmap &rSrcBitmap, const SalBitmap &rMaskBitmap, const SalBitmap &rAlphaBitmap)=0 |
|
virtual bool | drawAlphaBitmap (const SalTwoRect &, const SalBitmap &rSourceBitmap, const SalBitmap &rAlphaBitmap)=0 |
|
virtual bool | drawTransformedBitmap (const basegfx::B2DPoint &rNull, const basegfx::B2DPoint &rX, const basegfx::B2DPoint &rY, const SalBitmap &rSourceBitmap, const SalBitmap *pAlphaBitmap, double fAlpha)=0 |
|
virtual bool | hasFastDrawTransformedBitmap () const =0 |
|
virtual bool | drawAlphaRect (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency)=0 |
|
virtual bool | drawGradient (const tools::PolyPolygon &rPolygon, const Gradient &rGradient)=0 |
|
virtual bool | implDrawGradient (basegfx::B2DPolyPolygon const &rPolyPolygon, SalGradient const &rGradient)=0 |
|
virtual bool | supportsOperation (OutDevSupportType eType) const =0 |
|
|
enum class | XorMode {
None
,
Invert
,
Xor
} |
|
using | DirectImage = SkiaHelper::DirectImage |
|
void | preDraw () |
|
void | postDraw () |
|
SkCanvas * | getDrawCanvas () |
|
void | flushDrawing () |
|
virtual void | createSurface () |
|
void | checkSurface () |
|
void | destroySurface () |
|
virtual bool | avoidRecreateByResize () const |
|
void | createWindowSurface (bool forceRaster=false) |
|
virtual void | createWindowSurfaceInternal (bool forceRaster=false)=0 |
|
void | createOffscreenSurface () |
|
virtual void | flushSurfaceToWindowContext () |
|
void | privateDrawAlphaRect (tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, double nTransparency, bool blockAA=false) |
|
void | privateCopyBits (const SalTwoRect &rPosAry, SkiaSalGraphicsImpl *src) |
|
void | setProvider (SalGeometryProvider *provider) |
|
bool | isOffscreen () const |
|
bool | isGPU () const |
|
void | invert (basegfx::B2DPolygon const &rPoly, SalInvert eFlags) |
|
void | performFlush () |
|
void | scheduleFlush () |
|
int | GetWidth () const |
|
int | GetHeight () const |
|
virtual int | getWindowScaling () const |
|
void | addUpdateRegion (const SkRect &rect) |
|
void | setCanvasScalingAndClipping () |
|
void | resetCanvasScalingAndClipping () |
|
sk_sp< SkImage > | mergeCacheBitmaps (const SkiaSalBitmap &bitmap, const SkiaSalBitmap *alphaBitmap, const Size &targetSize) |
|
void | checkPendingDrawing () |
|
bool | delayDrawPolyPolygon (const basegfx::B2DPolyPolygon &polygon, double transparency) |
|
void | performDrawPolyPolygon (const basegfx::B2DPolyPolygon &polygon, double transparency, bool useAA) |
|
BmpScaleFlag | goodScalingQuality () const |
|
SkSamplingOptions | makeSamplingOptions (const SalTwoRect &rPosAry, int scalingFactor, int srcScalingFactor=1) |
|
SkSamplingOptions | makeSamplingOptions (const SkMatrix &matrix, int scalingFactor) |
|
SkPaint | makePaintInternal () const |
|
SkPaint | makeLinePaint (double transparency=0) const |
|
SkPaint | makeFillPaint (double transparency=0) const |
|
SkPaint | makeBitmapPaint () const |
|
SkPaint | makeGradientPaint () const |
|
SkPaint | makeTextPaint (std::optional< Color > color) const |
|
SkPaint | makePixelPaint (std::optional< Color > color) const |
|
void | windowBackingPropertiesChanged () |
|
static void | setCanvasClipRegion (SkCanvas *canvas, const vcl::Region ®ion) |
|
static OString | makeCachedImageKey (const SkiaSalBitmap &bitmap, const SkiaSalBitmap *alphaBitmap, const Size &targetSize, DirectImage bitmapType, DirectImage alphaBitmapType) |
|
static constexpr SkScalar | toSkX (tools::Long x) |
|
static constexpr SkScalar | toSkY (tools::Long y) |
|
SalGraphics & | mParent |
|
SalGeometryProvider * | mProvider |
| Pointer to the SalFrame or SalVirtualDevice. More...
|
|
sk_sp< SkSurface > | mSurface |
|
std::unique_ptr< sk_app::WindowContext > | mWindowContext |
|
bool | mIsGPU |
|
SkIRect | mDirtyRect |
|
vcl::Region | mClipRegion |
|
std::optional< Color > | moLineColor |
|
std::optional< Color > | moFillColor |
|
XorMode | mXorMode |
|
std::unique_ptr< SkiaFlushIdle > | mFlush |
|
LastPolyPolygonInfo | mLastPolyPolygonInfo |
|
int | mScaling |
|
bool | mInWindowBackingPropertiesChanged |
|
static constexpr SkScalar | toSkXYFix = SkScalar(0.005) |
|
static int | pendingOperationsToFlush = 0 |
|