| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
It's a member in QRasterPaintEngine which is subclassed by
QDirectFBPaintEngine which lives in a plugin.
Partial revert of 48257d751a76699e548e59b76fc79303ef328375
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
|
|
|
| |
enum Qt::Uninitialized contains one value, which is also called
Uninitialized. Because the type and the value used the same name,
wherever the type Qt::Uninitialized was used in a function signature,
you had to include the enum keyword. But qdoc's preprocessor doesn't
like that, so you have to take the enum keyword out of the signatures.
But then the compiler complains because the type and the value look
the same. So I had to change the enum type name to Initialization, so
the compiler can distinguish it from the value name. And qdoc likes
that too.
|
|
|
|
| |
Reviewed-by: Samuel
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
configure.exe
tests/auto/qpainter/tst_qpainter.cpp
translations/qt_ru.ts
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change from a relative to an absolute fuzzy compare as was the case
pre-4.4. With a relative fuzzy compare points that have an x or y
coordinate of 0 will never be merged with points that are very close to
0, for example (1e-15, 0).
Task-number: 251909
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure not to use the broken QRect constructor, and do an early check
on whether the clip rect is empty in QRasterizer::rasterizeLine().
Task-number: 254105
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These constructors are useful when you have to create a temporary
uninitialized QTransform/QMatrix and later initialize it to something
else.
Done with Lars.
Reviewed-by: samuel
|
|\ \
| |/ |
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| | |
We know the type of the transformation in these methods, so there is no
point in setting a dirty flag for the type.
Reviewed-by: Samuel
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The code so far was converting the rect to a painterpath, mapping
that one and then taking the bounding rect. It is actually sufficient
to simply map the four corners of the rectangle and take the bounding
rect of these four points even in the projective case.
Fix the MAP macro to be more correct for degenerated projective
transformations.
Reviewed-By: Samuel
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't waste cycles with constructing a vector with rectangles if
there is only one rectangle in the source region.
Same as 36ff1b507bf2d509019ae8ddd638922b09755c6b, but for
QRegion::intersects(QRect).
Reviewed-by: bnilsen
|
| |
| |
| |
| |
| |
| |
| |
| | |
Don't waste cycles with constructing two vectors with rectangles if
there is only one rectangle in each of the two regions.
Reviewed-by: Lars
Reviewed-by: bnilsen
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using qFuzzyCompare for checking whether two transformations
are equal doesn't give us too much and is inconsistent with
our other matrix classes. Using simple floating point
equality is a lot faster as well.
Added qFuzzyCompare overloads for QMatrix and QTransform to still
allow for fuzzy comparisons.
Reviewed-By: Samuel Rødal
|
| |
| |
| |
| |
| | |
MSVC requires the same linkage specifiers to be provided at both the
declaration and definition.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QPixmap shouldn't return true in hasAlphaChannel() for bitmaps, instead
the paint engine should check whether the pixmap is a bitmap or not. In
addition, QBrush::isOpaque() returned true for bitmap brushes, which is
wrong according to the documentation.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| | |
Do nothing if both sh and sv is 0.
Reviewed-by: Samuel
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The pen color should be used when drawPixmap is called with a bitmap,
and the brush color should be used for texture patterns that are
bitmaps.
Task-number: 245802
Reviewed-by: Trond
|
| | | |
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| |
| |
| |
| | |
Conflicts:
demos/boxes/glshaders.cpp
src/gui/graphicsview/qgraphicsitem.cpp
tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp
tools/linguist/shared/cpp.cpp
translations/linguist_ja.qm
translations/qt_ru.qm
|
| |
| |
| |
| |
| |
| |
| |
| | |
The predefined dash patterns for Mac have always been off, compared to
the ones in the raster engine and the GL engine.
Task-number: 255292
Reviewed-by: Kim
|
| |
| |
| |
| |
| |
| |
| |
| | |
Though this variable always will be initialized in
QX11PaintEngine::begin() valgrind complains about conditional jump or
move depends on uninitialised value(s).
Reviewed-by: Donald <qt-info@nokia.com>
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Since QTransform::type() now uses a switch based on m_dirty, we can't
treat m_dirty as a bit mask anymore.
Reviewed-by: Ariya
|
| |
| |
| |
| |
| |
| |
| |
| | |
Similar to what was done in f86dcade8716a0aee841ba05740887598633de17,
we shouldn't multiply by the redirectionMatrix in replayClipOperations()
as the clip info matrices already contain the redirectionMatrix.
Reviewed-by: bnilsen
|
| |
| |
| |
| |
| |
| |
| |
| | |
After change f0a4a37a5182660580fd361110d3fd51463221d8 the clip info
stack already contains the redirection offset, so we don't need to apply
it again.
Reviewed-by: bnilsen
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Also, updateInvMatrix() can be greatly simplified as updateMatrix() is
always called whenever anything related to the state matrix changes, so
we can assume that it's up-to-date.
Reviewed-by: bnilsen
|
| | |
|
| | |
|
| |
| |
| |
| | |
Broke after this commit: 32f32ee3e752a6cc03505ddaa48d2849eaedc2a6
|
| |
| |
| |
| |
| |
| |
| | |
Unlike the span array, the clip line array is only free'd in the
destructor, so if it's already allocated we shouldn't allocate it again.
Reviewed-by: Denis Dzyubenko
|
| |
| |
| |
| |
| |
| | |
This makes debugging etc much easier, plus most of the places
controlPointRect() was called the caller had to convert the rect to a
QRectF manually.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QPainter::worldTransform() does not return identity matrix when created
on a redirected widget. It should always be identity by default, and
should only change as a result of QPainter::setWorldTransform. The
reason it didn't return identity for redirected widgets, was that we
translated the shared painter's world matrix directly.
Since we cannot modify the world matrix directly, we have to store
the shared painter's current world transform in a separate matrix
(redirectedMatrix), reset the world transform to identity, and later
combine the redirectedMatrix with world transforms set on the painter.
Note that redirection_offset was in negative coordinates before,
and that redirectionMatrix now is in positive coordinates, hence opposite
signs around.
Auto-test included.
Reviewed-by: lars
Reviewed-by: Samuel
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 72e083c98c3adb07bb1578fb7f28f121fc3f34ac.
This test broke the tst_QTransform::projectivePathMapping autotest. Lars
is looking into it; for now we take the patch out.
Reviewed-by: Lars
|
|\ \ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The artifacts were visible in the mainwindow demo when dragging the top
toolbar separator left and right. We need to check that rect clipping is
actually activated before we compare the new clip rect with the old,
otherwise the clip type and clip bound flags won't get updated.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use the stencil method to draw clip paths and regions to the Z-buffer
instead of using glClear / glScissor. Using different depth values for
the various clip parts also makes restore() very cheap when only
IntersectClip is used.
As an additional bonus this patch gives antialiased clip in the GL 2
paint engine.
Task-number: 254658
Reviewed-by: Trond
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit 07dca7a30d4bd1efd8032915700420cca3fd60fa.
Move the equality operator code back in (qFuzzyCompare) to avoid
breaking many autotests. The change should go back in later on,
possibly supplemented by a qFuzzyCompare(QTransform) function.
But until we can figure out how to not break everything this
patch has to wait.
Reviewed-by: Lars
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Using qFuzzyCompare for checking whether two transformations
are equal doesn't give us too much and is inconsistent with
our other matrix classes. Using simple floating point
equality is a lot faster as well.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
The code so far was converting the rect to a painterpath, mapping
that one and then taking the bounding rect. It is actually sufficient
to simply map the four corners of the rectangle and take the bounding
rect of these four points even in the projective case.
Reviewed-by: Andreas
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
Conflicts:
src/3rdparty/phonon/qt7/mediaobject.mm
src/3rdparty/phonon/qt7/quicktimevideoplayer.mm
src/gui/text/qfontengine_win.cpp
tools/linguist/shared/cpp.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We didn't actually check the depth of the target window before
calling the qt_x11_drawImage() fu, that will only work with
depths >= 24.
Task-number: 255311
Reviewed-by: Samuel
BT: yes
|
| |
| |
| |
| |
| |
| |
| |
| | |
Some checks where in the wrong locations, and some endifs where
hard to read.
Merge-request: 611
Reviewed-by: Marius Storm-Olsen <marius@trolltech.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We've had a problem with a stale cache for color profiles this should
make things work well. We get the callback for each display whether it
needs it or not, but honesly I would rather that we update this a few
times too many when people change their display profile than not at all.
FWIW, this code is inspired from Apple's Tech Note TN2035.
|
| |
| |
| |
| |
| |
| |
| | |
seem fixable easily)
Merge-request: 594
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
|
|\ \
| |/ |
|