Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QBlittablePlatformPixmap Class Referenceabstract

#include <qpixmap_blitter_p.h>

+ Inheritance diagram for QBlittablePlatformPixmap:
+ Collaboration diagram for QBlittablePlatformPixmap:

Public Member Functions

 QBlittablePlatformPixmap ()
 
 ~QBlittablePlatformPixmap ()
 
virtual QBlittablecreateBlittable (const QSize &size, bool alpha) const =0
 
QBlittableblittable () const
 
void setBlittable (QBlittable *blittable)
 
void resize (int width, int height) override
 
int metric (QPaintDevice::PaintDeviceMetric metric) const override
 
void fill (const QColor &color) override
 
QImagebuffer () override
 
QImage toImage () const override
 
bool hasAlphaChannel () const override
 
void fromImage (const QImage &image, Qt::ImageConversionFlags flags) override
 
qreal devicePixelRatio () const override
 
void setDevicePixelRatio (qreal scaleFactor) override
 
QPaintEnginepaintEngine () const override
 
void markRasterOverlay (const QRectF &)
 
void markRasterOverlay (const QPointF &, const QTextItem &)
 
void markRasterOverlay (const QVectorPath &)
 
void markRasterOverlay (const QPainterPath &)
 
void markRasterOverlay (const QRect *rects, int rectCount)
 
void markRasterOverlay (const QRectF *rects, int rectCount)
 
void markRasterOverlay (const QPointF *points, int pointCount)
 
void markRasterOverlay (const QPoint *points, int pointCount)
 
void unmarkRasterOverlay (const QRectF &)
 
- Public Member Functions inherited from QPlatformPixmap
 QPlatformPixmap (PixelType pixelType, int classId)
 
virtual ~QPlatformPixmap ()
 
virtual QPlatformPixmapcreateCompatiblePlatformPixmap () const
 
virtual void resize (int width, int height)=0
 
virtual void fromImage (const QImage &image, Qt::ImageConversionFlags flags)=0
 
virtual void fromImageInPlace (QImage &image, Qt::ImageConversionFlags flags)
 
virtual void fromImageReader (QImageReader *imageReader, Qt::ImageConversionFlags flags)
 
virtual bool fromFile (const QString &filename, const char *format, Qt::ImageConversionFlags flags)
 
virtual bool fromData (const uchar *buffer, uint len, const char *format, Qt::ImageConversionFlags flags)
 
virtual void copy (const QPlatformPixmap *data, const QRect &rect)
 
virtual bool scroll (int dx, int dy, const QRect &rect)
 
virtual int metric (QPaintDevice::PaintDeviceMetric metric) const =0
 
virtual void fill (const QColor &color)=0
 
virtual QBitmap mask () const
 
virtual void setMask (const QBitmap &mask)
 
virtual bool hasAlphaChannel () const =0
 
virtual QPixmap transformed (const QTransform &matrix, Qt::TransformationMode mode) const
 
virtual QImage toImage () const =0
 
virtual QImage toImage (const QRect &rect) const
 
virtual QPaintEnginepaintEngine () const =0
 
int serialNumber () const
 
PixelType pixelType () const
 
ClassId classId () const
 
virtual qreal devicePixelRatio () const =0
 
virtual void setDevicePixelRatio (qreal scaleFactor)=0
 
virtual QImagebuffer ()
 
int width () const
 
int height () const
 
int colorCount () const
 
int depth () const
 
bool isNull () const
 
qint64 cacheKey () const
 

Protected Attributes

QScopedPointer< QBlitterPaintEnginem_engine
 
QScopedPointer< QBlittablem_blittable
 
bool m_alpha
 
qreal m_devicePixelRatio
 
- Protected Attributes inherited from QPlatformPixmap
int w
 
int h
 
int d
 
bool is_null
 

Additional Inherited Members

- Public Types inherited from QPlatformPixmap
enum  PixelType { PixmapType , BitmapType }
 
enum  ClassId {
  RasterClass , DirectFBClass , BlitterClass , Direct2DClass ,
  X11Class , CustomClass = 1024
}
 
- Static Public Member Functions inherited from QPlatformPixmap
static QPlatformPixmapcreate (int w, int h, PixelType type)
 
- Protected Member Functions inherited from QPlatformPixmap
void setSerialNumber (int serNo)
 
void setDetachNumber (int detNo)
 

Detailed Description

Definition at line 25 of file qpixmap_blitter_p.h.

Constructor & Destructor Documentation

◆ QBlittablePlatformPixmap()

QBlittablePlatformPixmap::QBlittablePlatformPixmap ( )

Definition at line 22 of file qpixmap_blitter.cpp.

References global_ser_no, and QPlatformPixmap::setSerialNumber().

+ Here is the call graph for this function:

◆ ~QBlittablePlatformPixmap()

QBlittablePlatformPixmap::~QBlittablePlatformPixmap ( )

Definition at line 33 of file qpixmap_blitter.cpp.

Member Function Documentation

◆ blittable()

QBlittable * QBlittablePlatformPixmap::blittable ( ) const

Definition at line 41 of file qpixmap_blitter.cpp.

References createBlittable(), QScopedPointer< T, Cleanup >::data(), m_alpha, m_blittable, and QScopedPointer< T, Cleanup >::reset().

Referenced by buffer(), QBlitterPaintEnginePrivate::clipAndDrawPixmap(), QDirectFbBlitterPlatformPixmap::dfbBlitter(), QDirectFbConvenience::dfbSurfaceForPlatformPixmap(), QDirectFbBlitter::drawPixmapOpacity(), fill(), QBlitterPaintEnginePrivate::fillRect(), QDirectFbBackingStore::flush(), hasAlphaChannel(), QBlitterPaintEnginePrivate::lock(), QDirectFbBackingStore::scroll(), setBlittable(), toImage(), and QBlitterPaintEnginePrivate::unlock().

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

◆ buffer()

QImage * QBlittablePlatformPixmap::buffer ( )
overridevirtual

Reimplemented from QPlatformPixmap.

Definition at line 122 of file qpixmap_blitter.cpp.

References blittable(), and QBlittable::lock().

Referenced by fromImage(), and QBlitterPaintEnginePrivate::lock().

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

◆ createBlittable()

virtual QBlittable * QBlittablePlatformPixmap::createBlittable ( const QSize size,
bool  alpha 
) const
pure virtual

Implemented in QDirectFbBlitterPlatformPixmap.

Referenced by blittable().

+ Here is the caller graph for this function:

◆ devicePixelRatio()

qreal QBlittablePlatformPixmap::devicePixelRatio ( ) const
overridevirtual

Implements QPlatformPixmap.

Definition at line 161 of file qpixmap_blitter.cpp.

References m_devicePixelRatio.

Referenced by metric().

+ Here is the caller graph for this function:

◆ fill()

void QBlittablePlatformPixmap::fill ( const QColor color)
overridevirtual

Implements QPlatformPixmap.

Definition at line 99 of file qpixmap_blitter.cpp.

References QBlittable::alphaFillRect(), QBlittable::AlphaFillRectCapability, blittable(), QPainter::CompositionMode_Source, QImage::fill(), QBlittable::fillRect(), hasAlphaChannel(), QBlittable::lock(), m_alpha, m_blittable, m_engine, QScopedPointer< T, Cleanup >::reset(), QBlittable::SolidRectCapability, and QBlittable::unlock().

+ Here is the call graph for this function:

◆ fromImage()

void QBlittablePlatformPixmap::fromImage ( const QImage image,
Qt::ImageConversionFlags  flags 
)
overridevirtual

Implements QPlatformPixmap.

Definition at line 137 of file qpixmap_blitter.cpp.

References QImage::bits(), buffer(), QImage::bytesPerLine(), QImage::constBits(), QImage::convertToFormat(), QImage::format(), m_alpha, m_devicePixelRatio, markRasterOverlay(), resize(), and QImage::sizeInBytes().

+ Here is the call graph for this function:

◆ hasAlphaChannel()

bool QBlittablePlatformPixmap::hasAlphaChannel ( ) const
overridevirtual

Implements QPlatformPixmap.

Definition at line 132 of file qpixmap_blitter.cpp.

References blittable(), QImage::hasAlphaChannel(), and QBlittable::lock().

Referenced by fill().

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

◆ markRasterOverlay() [1/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QPainterPath path)
inline

Definition at line 156 of file qpixmap_blitter_p.h.

References Q_UNUSED.

◆ markRasterOverlay() [2/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QPoint points,
int  pointCount 
)
inline

Definition at line 146 of file qpixmap_blitter_p.h.

References Q_UNUSED.

◆ markRasterOverlay() [3/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QPointF pos,
const QTextItem ti 
)
inline

Definition at line 100 of file qpixmap_blitter_p.h.

References QTextItem::font(), markRasterOverlay(), pos, Q_UNUSED, rect, QTextItem::text(), and QFontMetricsF::tightBoundingRect().

+ Here is the call graph for this function:

◆ markRasterOverlay() [4/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QPointF points,
int  pointCount 
)
inline

Definition at line 136 of file qpixmap_blitter_p.h.

References Q_UNUSED.

◆ markRasterOverlay() [5/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QRect rects,
int  rectCount 
)
inline

Definition at line 113 of file qpixmap_blitter_p.h.

References i, markRasterOverlay(), and Q_UNUSED.

+ Here is the call graph for this function:

◆ markRasterOverlay() [6/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QRectF rect)
inline

Definition at line 82 of file qpixmap_blitter_p.h.

References Q_UNUSED, and rect.

Referenced by fromImage(), markRasterOverlay(), markRasterOverlay(), and markRasterOverlay().

+ Here is the caller graph for this function:

◆ markRasterOverlay() [7/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QRectF rects,
int  rectCount 
)
inline

Definition at line 124 of file qpixmap_blitter_p.h.

References i, markRasterOverlay(), and Q_UNUSED.

+ Here is the call graph for this function:

◆ markRasterOverlay() [8/8]

void QBlittablePlatformPixmap::markRasterOverlay ( const QVectorPath path)
inline

Definition at line 91 of file qpixmap_blitter_p.h.

References Q_UNUSED.

◆ metric()

int QBlittablePlatformPixmap::metric ( QPaintDevice::PaintDeviceMetric  metric) const
overridevirtual

Implements QPlatformPixmap.

Definition at line 68 of file qpixmap_blitter.cpp.

References devicePixelRatio(), QPaintDevice::devicePixelRatioFScale(), QPlatformPixmap::h, metric(), QPaintDevice::PdmDepth, QPaintDevice::PdmDevicePixelRatio, QPaintDevice::PdmDevicePixelRatioScaled, QPaintDevice::PdmDpiX, QPaintDevice::PdmDpiY, QPaintDevice::PdmHeight, QPaintDevice::PdmHeightMM, QPaintDevice::PdmPhysicalDpiX, QPaintDevice::PdmPhysicalDpiY, QPaintDevice::PdmWidth, QPaintDevice::PdmWidthMM, qRound(), qt_defaultDpiX(), qt_defaultDpiY(), qWarning, and QPlatformPixmap::w.

Referenced by metric().

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

◆ paintEngine()

QPaintEngine * QBlittablePlatformPixmap::paintEngine ( ) const
overridevirtual

Implements QPlatformPixmap.

Definition at line 171 of file qpixmap_blitter.cpp.

References QScopedPointer< T, Cleanup >::data(), m_engine, and QScopedPointer< T, Cleanup >::reset().

+ Here is the call graph for this function:

◆ resize()

void QBlittablePlatformPixmap::resize ( int  width,
int  height 
)
overridevirtual

Implements QPlatformPixmap.

Definition at line 57 of file qpixmap_blitter.cpp.

References QPlatformPixmap::d, QScreen::depth, global_ser_no, QPlatformPixmap::height(), QPlatformPixmap::is_null, m_blittable, m_engine, QGuiApplication::primaryScreen, QScopedPointer< T, Cleanup >::reset(), QPlatformPixmap::setSerialNumber(), and QPlatformPixmap::width().

Referenced by fromImage(), and setBlittable().

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

◆ setBlittable()

void QBlittablePlatformPixmap::setBlittable ( QBlittable blittable)

Definition at line 51 of file qpixmap_blitter.cpp.

References blittable(), QSize::height(), m_blittable, QScopedPointer< T, Cleanup >::reset(), resize(), QBlittable::size(), and QSize::width().

Referenced by QDirectFbBackingStore::QDirectFbBackingStore(), and QDirectFbBackingStore::resize().

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

◆ setDevicePixelRatio()

void QBlittablePlatformPixmap::setDevicePixelRatio ( qreal  scaleFactor)
overridevirtual

Implements QPlatformPixmap.

Definition at line 166 of file qpixmap_blitter.cpp.

References m_devicePixelRatio.

◆ toImage()

QImage QBlittablePlatformPixmap::toImage ( ) const
overridevirtual

Implements QPlatformPixmap.

Definition at line 127 of file qpixmap_blitter.cpp.

References blittable(), QImage::copy(), and QBlittable::lock().

+ Here is the call graph for this function:

◆ unmarkRasterOverlay()

void QBlittablePlatformPixmap::unmarkRasterOverlay ( const QRectF rect)
inline

Definition at line 165 of file qpixmap_blitter_p.h.

References Q_UNUSED, and rect.

Referenced by QBlitterPaintEnginePrivate::clipAndDrawPixmap(), and QBlitterPaintEnginePrivate::fillRect().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_alpha

bool QBlittablePlatformPixmap::m_alpha
protected

Definition at line 67 of file qpixmap_blitter_p.h.

Referenced by blittable(), fill(), and fromImage().

◆ m_blittable

QScopedPointer<QBlittable> QBlittablePlatformPixmap::m_blittable
protected

Definition at line 66 of file qpixmap_blitter_p.h.

Referenced by blittable(), fill(), resize(), and setBlittable().

◆ m_devicePixelRatio

qreal QBlittablePlatformPixmap::m_devicePixelRatio
protected

Definition at line 68 of file qpixmap_blitter_p.h.

Referenced by devicePixelRatio(), fromImage(), and setDevicePixelRatio().

◆ m_engine

QScopedPointer<QBlitterPaintEngine> QBlittablePlatformPixmap::m_engine
protected

Definition at line 65 of file qpixmap_blitter_p.h.

Referenced by fill(), paintEngine(), and resize().


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