Qt 4.8
qt-4.8.6
src
gui
painting
qemulationpaintengine_p.h
Go to the documentation of this file.
1
/****************************************************************************
2
**
3
** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4
** Contact: http://www.qt-project.org/legal
5
**
6
** This file is part of the QtGui module of the Qt Toolkit.
7
**
8
** $QT_BEGIN_LICENSE:LGPL$
9
** Commercial License Usage
10
** Licensees holding valid commercial Qt licenses may use this file in
11
** accordance with the commercial license agreement provided with the
12
** Software or, alternatively, in accordance with the terms contained in
13
** a written agreement between you and Digia. For licensing terms and
14
** conditions see http://qt.digia.com/licensing. For further information
15
** use the contact form at http://qt.digia.com/contact-us.
16
**
17
** GNU Lesser General Public License Usage
18
** Alternatively, this file may be used under the terms of the GNU Lesser
19
** General Public License version 2.1 as published by the Free Software
20
** Foundation and appearing in the file LICENSE.LGPL included in the
21
** packaging of this file. Please review the following information to
22
** ensure the GNU Lesser General Public License version 2.1 requirements
23
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24
**
25
** In addition, as a special exception, Digia gives you certain additional
26
** rights. These rights are described in the Digia Qt LGPL Exception
27
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28
**
29
** GNU General Public License Usage
30
** Alternatively, this file may be used under the terms of the GNU
31
** General Public License version 3.0 as published by the Free Software
32
** Foundation and appearing in the file LICENSE.GPL included in the
33
** packaging of this file. Please review the following information to
34
** ensure the GNU General Public License version 3.0 requirements will be
35
** met: http://www.gnu.org/copyleft/gpl.html.
36
**
37
**
38
** $QT_END_LICENSE$
39
**
40
****************************************************************************/
41
42
#ifndef QEMULATIONPAINTENGINE_P_H
43
#define QEMULATIONPAINTENGINE_P_H
44
45
//
46
// W A R N I N G
47
// -------------
48
//
49
// This file is not part of the Qt API. It exists purely as an
50
// implementation detail. This header file may change from version to
51
// version without notice, or even be removed.
52
//
53
// We mean it.
54
//
55
56
#include <private/qpaintengineex_p.h>
57
58
QT_BEGIN_HEADER
59
60
QT_BEGIN_NAMESPACE
61
62
QT_MODULE
(Gui)
63
64
class
QEmulationPaintEngine
: public
QPaintEngineEx
65
{
66
public
:
67
QEmulationPaintEngine
(QPaintEngineEx *engine);
68
69
virtual
bool
begin(
QPaintDevice
*pdev);
70
virtual
bool
end
();
71
72
virtual
Type
type
()
const
;
73
virtual
QPainterState
*createState(
QPainterState
*orig)
const
;
74
75
virtual
void
fill(
const
QVectorPath
&path,
const
QBrush
&brush);
76
virtual
void
stroke(
const
QVectorPath
&path,
const
QPen
&pen);
77
virtual
void
clip(
const
QVectorPath
&path,
Qt::ClipOperation
op);
78
79
virtual
void
drawPixmap(
const
QRectF
&r,
const
QPixmap
&pm,
const
QRectF
&sr);
80
virtual
void
drawTextItem(
const
QPointF
&p,
const
QTextItem
&textItem);
81
virtual
void
drawStaticTextItem(
QStaticTextItem
*item);
82
virtual
void
drawTiledPixmap(
const
QRectF
&r,
const
QPixmap
&pixmap,
const
QPointF
&s);
83
virtual
void
drawImage(
const
QRectF
&r,
const
QImage
&pm,
const
QRectF
&sr, Qt::ImageConversionFlags flags);
84
85
virtual
void
drawPixmapFragments(
const
QPainter::PixmapFragment
*fragments,
int
fragmentCount,
const
QPixmap
&pixmap,
86
QPainter::PixmapFragmentHints hints);
87
virtual
void
drawPixmapFragments(
const
QRectF
*targetRects,
const
QRectF
*sourceRects,
int
fragmentCount,
const
QPixmap
&pixmap,
88
QPainter::PixmapFragmentHints hints);
89
90
virtual
void
clipEnabledChanged();
91
virtual
void
penChanged();
92
virtual
void
brushChanged();
93
virtual
void
brushOriginChanged();
94
virtual
void
opacityChanged();
95
virtual
void
compositionModeChanged();
96
virtual
void
renderHintsChanged();
97
virtual
void
transformChanged();
98
99
virtual
void
setState(
QPainterState
*s);
100
101
virtual
void
beginNativePainting();
102
virtual
void
endNativePainting();
103
104
virtual
uint
flags
()
const
{
return
QPaintEngineEx::IsEmulationEngine
|
QPaintEngineEx::DoNotEmulate
;}
105
106
inline
QPainterState
*
state
() {
return
(
QPainterState
*)
QPaintEngine::state
; }
107
inline
const
QPainterState
*
state
()
const
{
return
(
const
QPainterState
*)
QPaintEngine::state
; }
108
109
QPaintEngineEx *
real_engine
;
110
private
:
111
void
fillBGRect(
const
QRectF
&r);
112
};
113
114
QT_END_NAMESPACE
115
116
QT_END_HEADER
117
118
#endif
QPaintEngineEx::IsEmulationEngine
Definition:
qpaintengineex_p.h:229
type
int type
Definition:
qmetatype.cpp:239
QT_END_NAMESPACE
#define QT_END_NAMESPACE
This macro expands to.
Definition:
qglobal.h:90
QT_MODULE
#define QT_MODULE(x)
Definition:
qglobal.h:2783
QT_BEGIN_HEADER
#define QT_BEGIN_HEADER
Definition:
qglobal.h:136
QPaintEngine::state
QPaintEngineState * state
Definition:
qpaintengine.h:239
QPointF
The QPointF class defines a point in the plane using floating point precision.
Definition:
qpoint.h:214
QVectorPath
Definition:
qvectorpath_p.h:77
QEmulationPaintEngine
Definition:
qemulationpaintengine_p.h:64
QPen
The QPen class defines how a QPainter should draw lines and outlines of shapes.
Definition:
qpen.h:64
QEmulationPaintEngine::state
QPainterState * state()
Definition:
qemulationpaintengine_p.h:106
QT_BEGIN_NAMESPACE
#define QT_BEGIN_NAMESPACE
This macro expands to.
Definition:
qglobal.h:89
QPaintDevice
Definition:
qpaintdevice.h:60
QRectF
The QRectF class defines a rectangle in the plane using floating point precision. ...
Definition:
qrect.h:511
QEmulationPaintEngine::flags
virtual uint flags() const
Definition:
qemulationpaintengine_p.h:104
QImage
The QImage class provides a hardware-independent image representation that allows direct access to th...
Definition:
qimage.h:87
uint
unsigned int uint
Definition:
qglobal.h:996
QPaintEngine::Type
Type
Definition:
qpaintengine.h:201
QBrush
The QBrush class defines the fill pattern of shapes drawn by QPainter.
Definition:
qbrush.h:76
QPainter::PixmapFragment
This class is used in conjunction with the QPainter::drawPixmapFragments() function to specify how a ...
Definition:
qpainter.h:103
QPaintEngineEx::DoNotEmulate
Definition:
qpaintengineex_p.h:228
QPaintEngineEx
Definition:
qpaintengineex_p.h:143
QPixmap
The QPixmap class is an off-screen image representation that can be used as a paint device...
Definition:
qpixmap.h:71
QPainterState
Definition:
qpainter_p.h:141
QEmulationPaintEngine::real_engine
QPaintEngineEx * real_engine
Definition:
qemulationpaintengine_p.h:109
QTextItem
The QTextItem class provides all the information required to draw text in a custom paint engine...
Definition:
qpaintengine.h:68
class
#define class
Definition:
qapplication_x11.cpp:92
QStaticTextItem
Definition:
qstatictext_p.h:78
end
static const KeyPair *const end
Definition:
qt_cocoa_helpers_mac.mm:652
QT_END_HEADER
#define QT_END_HEADER
Definition:
qglobal.h:137
QEmulationPaintEngine::state
const QPainterState * state() const
Definition:
qemulationpaintengine_p.h:107
Qt::ClipOperation
ClipOperation
Definition:
qnamespace.h:1495
Qt 4.8 Source Code Browser