Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QSpanData Struct Reference

#include <qdrawhelper_p.h>

+ Collaboration diagram for QSpanData:

Public Types

enum  Type {
  None , Solid , LinearGradient , RadialGradient ,
  ConicalGradient , Texture
}
 

Public Member Functions

 QSpanData ()
 
 ~QSpanData ()
 
void init (QRasterBuffer *rb, const QRasterPaintEngine *pe)
 
void setup (const QBrush &brush, int alpha, QPainter::CompositionMode compositionMode, bool isCosmetic)
 
void setupMatrix (const QTransform &matrix, int bilinear)
 
void initTexture (const QImage *image, int alpha, QTextureData::Type=QTextureData::Plain, const QRect &sourceRect=QRect())
 
void adjustSpanMethods ()
 

Public Attributes

QRasterBufferrasterBuffer
 
ProcessSpans blend
 
ProcessSpans unclipped_blend
 
BitmapBlitFunc bitmapBlit
 
AlphamapBlitFunc alphamapBlit
 
AlphaRGBBlitFunc alphaRGBBlit
 
RectFillFunc fillRect
 
qreal m11
 
qreal m12
 
qreal m13
 
qreal m21
 
qreal m22
 
qreal m23
 
qreal m33
 
qreal dx
 
qreal dy
 
const QClipDataclip
 
enum QSpanData::Type type
 
signed int txop: 8
 
uint fast_matrix: 1
 
bool bilinear
 
QImagetempImage
 
QColor solidColor
 
union { 
 
   QGradientData   gradient 
 
   QTextureData   texture 
 
};  
 
std::shared_ptr< const voidcachedGradient
 

Detailed Description

Definition at line 302 of file qdrawhelper_p.h.

Member Enumeration Documentation

◆ Type

Enumerator
None 
Solid 
LinearGradient 
RadialGradient 
ConicalGradient 
Texture 

Definition at line 316 of file qdrawhelper_p.h.

Constructor & Destructor Documentation

◆ QSpanData()

QSpanData::QSpanData ( )
inline

Definition at line 304 of file qdrawhelper_p.h.

◆ ~QSpanData()

QSpanData::~QSpanData ( )
inline

Definition at line 305 of file qdrawhelper_p.h.

References tempImage.

Member Function Documentation

◆ adjustSpanMethods()

void QSpanData::adjustSpanMethods ( )

Definition at line 4600 of file qpaintengine_raster.cpp.

References DrawHelper::alphamapBlit, alphamapBlit, DrawHelper::alphaRGBBlit, alphaRGBBlit, DrawHelper::bitmapBlit, bitmapBlit, blend, DrawHelper::blendColor, clip, QClipData::clipRect, ConicalGradient, DrawHelper::fillRect, fillRect, QRasterBuffer::format, QClipData::hasRectClip, QRect::isEmpty(), LinearGradient, None, nullptr, qBlendGradient(), qBlendTexture(), qDrawHelper, qt_span_fill_clipped(), qt_span_fill_clipRect(), RadialGradient, rasterBuffer, Solid, Texture, and unclipped_blend.

Referenced by initTexture(), setup(), setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init()

void QSpanData::init ( QRasterBuffer rb,
const QRasterPaintEngine pe 
)

Definition at line 4457 of file qpaintengine_raster.cpp.

References None.

◆ initTexture()

void QSpanData::initTexture ( const QImage image,
int  alpha,
QTextureData::Type  _type = QTextureData::Plain,
const QRect sourceRect = QRect() 
)

Definition at line 4678 of file qpaintengine_raster.cpp.

References adjustSpanMethods(), d, data_ptr(), QImage::Format_Indexed8, QImage::Format_Invalid, QRect::height(), QRect::isNull(), qMin(), QRect::width(), QRect::x(), and QRect::y().

Referenced by setup().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setup()

void QSpanData::setup ( const QBrush brush,
int  alpha,
QPainter::CompositionMode  compositionMode,
bool  isCosmetic 
)

Definition at line 4470 of file qpaintengine_raster.cpp.

References adjustSpanMethods(), QGradientData::alphaColor, QColor::alphaF(), QConicalGradientData::angle, Qt::BDiagPattern, cachedGradient, QRadialGradientData::center, QConicalGradientData::center, QRasterBuffer::colorizeBitmap(), QGradientData::colorTable32, QPainter::CompositionMode_SourceOver, QGradientData::conical, ConicalGradient, Qt::ConicalGradientPattern, Qt::CrossPattern, Qt::Dense1Pattern, Qt::Dense2Pattern, Qt::Dense3Pattern, Qt::Dense4Pattern, Qt::Dense5Pattern, Qt::Dense6Pattern, Qt::Dense7Pattern, Qt::DiagCrossPattern, QLinearGradientData::end, Qt::FDiagPattern, QRadialGradientData::focal, gradient, Qt::HorPattern, initTexture(), QGradientData::linear, LinearGradient, Qt::LinearGradientPattern, Qt::NoBrush, None, QLinearGradientData::origin, QTextureData::Pattern, qbrush_color(), qbrush_style(), qDegreesToRadians(), qHasPixmapTexture(), qPremultiplyWithExtraAlpha(), qt_imageForBrush(), QGradientData::radial, RadialGradient, Qt::RadialGradientPattern, QRadialGradientData::radius, rasterBuffer, QImage::rect(), QGradient::RepeatSpread, Solid, solidColor, Qt::SolidPattern, QGradientData::spread, tempImage, Texture, Qt::TexturePattern, QTextureData::Tiled, Qt::VerPattern, QPointF::x(), QLinearGradientData::x, QRadialGradientData::x, QConicalGradientData::x, QPointF::y(), QLinearGradientData::y, QRadialGradientData::y, and QConicalGradientData::y.

+ Here is the call graph for this function:

◆ setupMatrix()

void QSpanData::setupMatrix ( const QTransform matrix,
int  bilinear 
)

Definition at line 4645 of file qpaintengine_raster.cpp.

References adjustSpanMethods(), bilinear, dx, QTransform::dx(), dy, QTransform::dy(), fast_matrix, QTransform::isAffine(), m11, QTransform::m11(), m12, QTransform::m12(), m13, QTransform::m13(), m21, QTransform::m21(), m22, QTransform::m22(), m23, QTransform::m23(), m33, QTransform::m33(), qAbs(), QTransform::translate(), txop, and QTransform::type().

Referenced by QRasterPaintEnginePrivate::updateMatrixData().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ [union]

union { ... } QSpanData

◆ alphamapBlit

AlphamapBlitFunc QSpanData::alphamapBlit

Definition at line 311 of file qdrawhelper_p.h.

Referenced by adjustSpanMethods().

◆ alphaRGBBlit

AlphaRGBBlitFunc QSpanData::alphaRGBBlit

Definition at line 312 of file qdrawhelper_p.h.

Referenced by adjustSpanMethods().

◆ bilinear

bool QSpanData::bilinear

Definition at line 326 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ bitmapBlit

BitmapBlitFunc QSpanData::bitmapBlit

Definition at line 310 of file qdrawhelper_p.h.

Referenced by adjustSpanMethods().

◆ blend

◆ cachedGradient

std::shared_ptr<const void> QSpanData::cachedGradient

Definition at line 333 of file qdrawhelper_p.h.

Referenced by setup().

◆ clip

const QClipData* QSpanData::clip

Definition at line 315 of file qdrawhelper_p.h.

Referenced by adjustSpanMethods(), qt_span_fill_clipped(), and qt_span_fill_clipRect().

◆ dx

qreal QSpanData::dx

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ dy

qreal QSpanData::dy

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ fast_matrix

uint QSpanData::fast_matrix

Definition at line 325 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ fillRect

RectFillFunc QSpanData::fillRect

Definition at line 313 of file qdrawhelper_p.h.

Referenced by adjustSpanMethods().

◆ gradient

QGradientData QSpanData::gradient

Definition at line 330 of file qdrawhelper_p.h.

Referenced by setup().

◆ m11

qreal QSpanData::m11

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ m12

qreal QSpanData::m12

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ m13

qreal QSpanData::m13

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ m21

qreal QSpanData::m21

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ m22

qreal QSpanData::m22

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ m23

qreal QSpanData::m23

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ m33

qreal QSpanData::m33

Definition at line 314 of file qdrawhelper_p.h.

Referenced by setupMatrix(), and QRasterPaintEnginePrivate::updateMatrixData().

◆ rasterBuffer

QRasterBuffer* QSpanData::rasterBuffer

◆ solidColor

QColor QSpanData::solidColor

Definition at line 328 of file qdrawhelper_p.h.

Referenced by setup().

◆ tempImage

QImage* QSpanData::tempImage

◆ texture

QTextureData QSpanData::texture

Definition at line 331 of file qdrawhelper_p.h.

◆ txop

signed int QSpanData::txop

◆ type

enum QSpanData::Type QSpanData::type

◆ unclipped_blend

ProcessSpans QSpanData::unclipped_blend

Definition at line 309 of file qdrawhelper_p.h.

Referenced by adjustSpanMethods(), qt_span_fill_clipped(), and qt_span_fill_clipRect().


The documentation for this struct was generated from the following files: