Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qwindowsdirect2dpaintengine.cpp File Reference

(6d1384034deb681c1c4a656a1582f3e1606b1c1a)

#include "qwindowsdirect2dpaintengine.h"
#include "qwindowsdirect2dplatformpixmap.h"
#include "qwindowsdirect2dpaintdevice.h"
#include "qwindowsdirect2dcontext.h"
#include "qwindowsdirect2dhelpers.h"
#include "qwindowsdirect2dbitmap.h"
#include "qwindowsdirect2ddevicecontext.h"
#include <QtGui/private/qwindowsfontdatabase_p.h>
#include "qwindowsintegration.h"
#include <QtCore/qmath.h>
#include <QtCore/qstack.h>
#include <QtCore/qsettings.h>
#include <QtCore/private/qcomptr_p.h>
#include <QtGui/private/qpaintengine_p.h>
#include <QtGui/private/qtextengine_p.h>
#include <QtGui/private/qfontengine_p.h>
#include <QtGui/private/qstatictext_p.h>
#include <d2d1_1.h>
#include <dwrite_1.h>
Include dependency graph for qwindowsdirect2dpaintengine.cpp:

Go to the source code of this file.

Classes

class  Direct2DPathGeometryWriter
struct  D2DVectorPathCache
class  QWindowsDirect2DPaintEnginePrivate
class  QWindowsDirect2DPaintEngineSuspenderImpl
class  QWindowsDirect2DPaintEngineSuspenderPrivate

Macros

#define D2D_TAG(tag)

Enumerations

enum  {
  D2DDebugDrawInitialStateTag = -1 , D2DDebugFillTag = 1 , D2DDebugFillRectTag , D2DDebugDrawRectsTag ,
  D2DDebugDrawRectFsTag , D2DDebugDrawEllipseTag , D2DDebugDrawEllipseFTag , D2DDebugDrawImageTag ,
  D2DDebugDrawPixmapTag , D2DDebugDrawStaticTextItemTag , D2DDebugDrawTextItemTag , D2DDebugDrawInitialStateTag = -1 ,
  D2DDebugFillTag = 1 , D2DDebugFillRectTag , D2DDebugDrawRectsTag , D2DDebugDrawRectFsTag ,
  D2DDebugDrawEllipseTag , D2DDebugDrawEllipseFTag , D2DDebugDrawImageTag , D2DDebugDrawPixmapTag ,
  D2DDebugDrawStaticTextItemTag , D2DDebugDrawTextItemTag
}
enum  : unsigned { SimpleSystemClip = 0x1 , SimpleSystemClip = 0x1 }
enum  ClipType { AxisAlignedClip , LayerClip , AxisAlignedClip , LayerClip }
enum  {
  D2DDebugDrawInitialStateTag = -1 , D2DDebugFillTag = 1 , D2DDebugFillRectTag , D2DDebugDrawRectsTag ,
  D2DDebugDrawRectFsTag , D2DDebugDrawEllipseTag , D2DDebugDrawEllipseFTag , D2DDebugDrawImageTag ,
  D2DDebugDrawPixmapTag , D2DDebugDrawStaticTextItemTag , D2DDebugDrawTextItemTag , D2DDebugDrawInitialStateTag = -1 ,
  D2DDebugFillTag = 1 , D2DDebugFillRectTag , D2DDebugDrawRectsTag , D2DDebugDrawRectFsTag ,
  D2DDebugDrawEllipseTag , D2DDebugDrawEllipseFTag , D2DDebugDrawImageTag , D2DDebugDrawPixmapTag ,
  D2DDebugDrawStaticTextItemTag , D2DDebugDrawTextItemTag
}
enum  : unsigned { SimpleSystemClip = 0x1 , SimpleSystemClip = 0x1 }
enum  ClipType { AxisAlignedClip , LayerClip , AxisAlignedClip , LayerClip }

Functions

Q_GUI_EXPORT QImage qt_imageForBrush (int brushStyle, bool invert)
static ID2D1Factory1 * factory ()
static D2D1_MATRIX_3X2_F transformFromLine (const QLineF &line, qreal penWidth, qreal dashOffset)
static void adjustLine (QPointF *p1, QPointF *p2)
static bool isLinePositivelySloped (const QPointF &p1, const QPointF &p2)
static QList< D2D1_GRADIENT_STOP > qGradientStopsToD2DStops (const QGradientStops &qstops)

Variables

static const qreal MAGICAL_ALIASING_OFFSET = 0.5

Macro Definition Documentation

◆ D2D_TAG

#define D2D_TAG ( tag)
Value:
d->dc()->SetTags(tag, tag)
static QRegularExpression tag("</?@[^>]*>")

Definition at line 65 of file qwindowsdirect2dpaintengine.cpp.

Enumeration Type Documentation

◆ anonymous enum [1/2]

anonymous enum
Enumerator
D2DDebugDrawInitialStateTag 
D2DDebugFillTag 
D2DDebugFillRectTag 
D2DDebugDrawRectsTag 
D2DDebugDrawRectFsTag 
D2DDebugDrawEllipseTag 
D2DDebugDrawEllipseFTag 
D2DDebugDrawImageTag 
D2DDebugDrawPixmapTag 
D2DDebugDrawStaticTextItemTag 
D2DDebugDrawTextItemTag 
D2DDebugDrawInitialStateTag 
D2DDebugFillTag 
D2DDebugFillRectTag 
D2DDebugDrawRectsTag 
D2DDebugDrawRectFsTag 
D2DDebugDrawEllipseTag 
D2DDebugDrawEllipseFTag 
D2DDebugDrawImageTag 
D2DDebugDrawPixmapTag 
D2DDebugDrawStaticTextItemTag 
D2DDebugDrawTextItemTag 

Definition at line 36 of file qwindowsdirect2dpaintengine.cpp.

◆ anonymous enum [2/2]

anonymous enum
Enumerator
D2DDebugDrawInitialStateTag 
D2DDebugFillTag 
D2DDebugFillRectTag 
D2DDebugDrawRectsTag 
D2DDebugDrawRectFsTag 
D2DDebugDrawEllipseTag 
D2DDebugDrawEllipseFTag 
D2DDebugDrawImageTag 
D2DDebugDrawPixmapTag 
D2DDebugDrawStaticTextItemTag 
D2DDebugDrawTextItemTag 
D2DDebugDrawInitialStateTag 
D2DDebugFillTag 
D2DDebugFillRectTag 
D2DDebugDrawRectsTag 
D2DDebugDrawRectFsTag 
D2DDebugDrawEllipseTag 
D2DDebugDrawEllipseFTag 
D2DDebugDrawImageTag 
D2DDebugDrawPixmapTag 
D2DDebugDrawStaticTextItemTag 
D2DDebugDrawTextItemTag 

Definition at line 36 of file qwindowsdirect2dpaintengine.cpp.

◆ anonymous enum [1/2]

anonymous enum : unsigned
Enumerator
SimpleSystemClip 
SimpleSystemClip 

Definition at line 51 of file qwindowsdirect2dpaintengine.cpp.

◆ anonymous enum [2/2]

anonymous enum : unsigned
Enumerator
SimpleSystemClip 
SimpleSystemClip 

Definition at line 51 of file qwindowsdirect2dpaintengine.cpp.

◆ ClipType [1/2]

enum ClipType
Enumerator
AxisAlignedClip 
LayerClip 
AxisAlignedClip 
LayerClip 

Definition at line 55 of file qwindowsdirect2dpaintengine.cpp.

◆ ClipType [2/2]

enum ClipType
Enumerator
AxisAlignedClip 
LayerClip 
AxisAlignedClip 
LayerClip 

Definition at line 55 of file qwindowsdirect2dpaintengine.cpp.

Function Documentation

◆ adjustLine()

void adjustLine ( QPointF * p1,
QPointF * p2 )
static

Definition at line 1336 of file qwindowsdirect2dpaintengine.cpp.

◆ factory()

ID2D1Factory1 * factory ( )
inlinestatic

Definition at line 69 of file qwindowsdirect2dpaintengine.cpp.

References QWindowsDirect2DContext::d2dFactory(), and QWindowsDirect2DContext::instance().

Here is the call graph for this function:

◆ isLinePositivelySloped()

bool isLinePositivelySloped ( const QPointF & p1,
const QPointF & p2 )
static

Definition at line 1325 of file qwindowsdirect2dpaintengine.cpp.

◆ qGradientStopsToD2DStops()

QList< D2D1_GRADIENT_STOP > qGradientStopsToD2DStops ( const QGradientStops & qstops)
static

Definition at line 89 of file qwindowsdirect2dpaintengine.cpp.

◆ qt_imageForBrush()

Q_GUI_EXPORT QImage qt_imageForBrush ( int brushStyle,
bool invert )

Definition at line 146 of file qbrush.cpp.

◆ transformFromLine()

D2D1_MATRIX_3X2_F transformFromLine ( const QLineF & line,
qreal penWidth,
qreal dashOffset )
inlinestatic

Definition at line 74 of file qwindowsdirect2dpaintengine.cpp.

Variable Documentation

◆ MAGICAL_ALIASING_OFFSET

const qreal MAGICAL_ALIASING_OFFSET = 0.5
static

Definition at line 63 of file qwindowsdirect2dpaintengine.cpp.