summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote branch 'staging/master' into refactorSamuel Rødal2011-05-1114-236/+752
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/painting/qdrawhelper_p.h src/gui/painting/qgraphicssystemfactory.cpp src/gui/painting/qpainter.cpp src/gui/painting/qunifiedtoolbarsurface_mac.cpp src/gui/painting/qunifiedtoolbarsurface_mac_p.h src/openvg/openvg.pro src/openvg/qpaintengine_vg.cpp src/openvg/qwindowsurface_vg.cpp src/openvg/qwindowsurface_vgegl.cpp src/plugins/platforms/wayland/qwaylanddisplay.cpp src/widgets/graphicsview/qgraphicsscene.cpp
| * Fixed bug in QPdfEngine::addImage causing mono images to be made 32 bitMatthew Cattell2011-05-101-1/+4
| | | | | | | | | | | | | | | | Regression from 4.5 causing performance and size degradation. Task-number: QTBUG-18997 Reviewed-by: Samuel (cherry picked from commit 18122b473ecbd85ba953f70743b1756358bf7c0c)
| * Fixed off-by-one in radial gradient color table index computation.Samuel Rødal2011-05-101-4/+2
| | | | | | | | | | | | | | | | Clamp to GRADIENT_COLOR_TABLE-1, not GRADIENT_COLOR_TABLE-2. Fixes visible error in gradients.qps Reviewed-by: Kim Motoyoshi Kalland <kim.kalland@nokia.com> (cherry picked from commit af9d20680c91f587f4791aa68f3a8b03d3a42be0)
| * Fixes warnings about unused variablesOlivier Goffart2011-05-105-17/+2
| | | | | | | | | | Reviewed-by: Samuel (cherry picked from commit ddd253e14318af45e5c56df736028b88257068c4)
| * Another attempt at fixing the MSVC2005 build.Samuel Rødal2011-05-101-1/+6
| | | | | | | | | | | | | | | | Apparently direct casting is illegal there too, even though they don't have the cast operators. Reviewed-by: Kim (cherry picked from commit 45c60ceac3d5a401543d7d56a44d1f9227464431)
| * Compile fix in qdrawhelper_sse2.cpp for MSVC 2005.Samuel Rødal2011-05-101-0/+5
| | | | | | | | (cherry picked from commit 7f921ea08c296e7451a44a1dae15350ae183ea20)
| * Compile fix in qdrawhelper_sse2.cpp.Samuel Rødal2011-05-101-1/+1
| | | | | | | | (cherry picked from commit 7cc4ffce36c24596630ca83cd6418869d6383670)
| * Added support for six-parameter radial gradients.Samuel Rødal2011-05-1011-73/+343
| | | | | | | | | | | | | | | | | | The extended radial gradients conform to the radial gradient specification in HTML 5 canvas. Task-number: QTBUG-14075 Reviewed-by: Andreas Kling (cherry picked from commit da55c1ea92474e989e5582b02815936bbf584405)
| * Improved gradient table generation performance for two-stop gradients.Samuel Rødal2011-05-105-72/+222
| | | | | | | | | | | | | | | | | | Two stops is a fairly common case so we gain quite a bit by special casing it. Improves performance by 10 % in parcycle benchmark, and by 90 % in a synthetic benchmark. Reviewed-by: Andreas Kling (cherry picked from commit 5b74a70ac630073582be56f8a0539624a1080185)
| * Optimized radial gradient fetch using SSE 2.Samuel Rødal2011-05-103-0/+98
| | | | | | | | | | | | | | | | On an i7 this improves performance by 22 % in parcycle, 107 % in default svgviewer example, and 283 % in a synthetic radial gradient benchmark. Reviewed-by: Andreas Kling (cherry picked from commit 26bd3dccdee8c6a8f1cf9d254a2a6be7d403aa8d)
| * Improved qt_gradient_clamp for reflect spreads.Samuel Rødal2011-05-101-5/+2
| | | | | | | | | | | | | | | | Using GRADIENT_STOPTABLE_SIZE * 2 as the modulo gives more correct behaviour, and also improves performance slightly. Reviewed-by: Benjamin Poulain (cherry picked from commit 44dd7ef86a3970694a4f8fd9516575c0533a336e)
| * Prepared for SIMD implementation of radial gradients.Samuel Rødal2011-05-102-177/+174
| | | | | | | | | | | | | | | | Made the radial gradient fetch func into a template to be able to optimize the inner loop using SIMD instructions. Reviewed-by: Benjamin Poulain (cherry picked from commit f16c261348193b4c03f796db4e1e3a5db09267a2)
| * Rename QGlyphs -> QGlyphRunEskil Abrahamsen Blomfeldt2011-05-103-14/+14
| | | | | | | | | | | | | | | | | | | | | | API clean-up for QGlyphRun: 1. QGlyphs -> QGlyphRun 2. QGlyphRun's font()/setFont() -> rawFont()/setRawFont() 3. QPainter::drawGlyphs() -> drawGlyphRun() 4. QTextLayout and QTextFragment's glyphs() -> glyphRuns() Reviewed-by: Jiang Jiang (cherry picked from commit 84ef364302728b68d2d29ea9c4ccbec32c7bb115)
| * Add internal documentation for QUnifiedToolbarSurface.Fabien Freling2011-05-101-0/+33
| | | | | | | | | | | | | | | | | | This document is aimed for developers. This is why it is directly written in the header file. This is not part of the public API. Reviewed-by: Richard Moe Gustavsen (cherry picked from commit 891b6ac7236d21b69bdb54b00051422cee004059)
| * Set the default graphics system to raster.Fabien Freling2011-05-101-1/+1
| | | | | | | | | | | | | | This change is specific to Mac OS X/Cocoa. Reviewed-by: Lars Knoll (cherry picked from commit 2c2026df66f237b7313397dd74f6bc3212b94596)
| * Revert "Switch the default graphics system to raster on Mac."Fabien Freling2011-05-101-1/+1
| | | | | | | | | | | | | | | | This reverts commit a5d40fd3814ab7c8e865912c03a918bfd5994998. We have to fix the regressions due to the raster engine before putting it by default. (cherry picked from commit 3197fe2af911673c6291db0102e90a0d7f6ae926)
| * Fix a race condition when the main window is being destructed.Fabien Freling2011-05-101-1/+2
| | | | | | | | | | | | | | | | | | | | During the destructor of QWidget, we delete the layout. If the layout is not set to 0 afterwards, a check on the layout might turn true, but any access will end with a segfault. Reviewed-by: João Abecasis (cherry picked from commit abc5a632942c23496d75c49b3b0b4a674cdafdf8)
| * Switch the default graphics system to raster on Mac.Fabien Freling2011-05-101-1/+1
| | | | | | | | | | Reviewed-by: Lars Knoll (cherry picked from commit a5d40fd3814ab7c8e865912c03a918bfd5994998)
| * Fix QPainter::drawGlyphs() with non-affine transformationEskil Abrahamsen Blomfeldt2011-05-061-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | When the matrix has an non-affine transformation, the text will have to be rendered using the default path-renderer. This means going through the drawTextItem() path (since drawStaticText() has no support for those transformations) and it also means not pre-transforming the coordinates, since the default implementation of drawTextItem() supports transformations. Task-number: QTBUG-18214 Reviewed-by: Jiang Jiang (cherry picked from commit 55446d104db77fc7994ab12352b1c08bb7b63346)
* | Exports for QtWidgets to link.Samuel Rødal2011-05-092-3/+3
| |
* | get QtWidgets to linkLars Knoll2011-05-076-13/+13
| | | | | | | | | | some more changes, mainly exporting methods from QtGui to get QtWidgets to link.
* | library splitLars Knoll2011-05-071-1/+1
| |
* | QPixmapFilter will live in QtWidgetsLars Knoll2011-05-051-0/+1
| | | | | | | | | | | | | | | | The class is only used for QGraphicsEffect. When merging QtOpenGL into Gui and Widgets, the GL nased pixmap filters will also need to be moved into effects/ and the pixmapFilter() method in QPaintEngineEx can get removed.
* | separate QPrinter and QPrintDialogLars Knoll2011-05-044-29/+11
| | | | | | | | Removed all dependencies QPrinter had on QPrintDialog.
* | qdrawutil is for QtWidgetsLars Knoll2011-05-045-1232/+0
| | | | | | | | the methods don't make sense for QML based apps
* | remove some unused codeLars Knoll2011-05-043-57/+0
| | | | | | | | | | QPaintDeviceRedirection is not being used any more. Remove all code related to it.
* | QStylePainter belongs in QtWidgetsLars Knoll2011-05-043-290/+0
| | | | | | | | | | Move it into the styles/ directory that will end up in the QtWidgets library
* | move platform specific files out of the wayLars Knoll2011-05-0423-10309/+0
| | | | | | | | | | | | | | Keep the files as reference to implement the lighthouse plugins, but move them away from the main directory hierachy as they won't be part of Qt5 in any case.
* | split kernel/ up according to the future library splitLars Knoll2011-05-043-1948/+0
| | | | | | | | | | | | | | Create a guikernel/ directory that contains the files that'll go into libQtGui. What remains in kernel/ will go into QtWidgets. In addition to that image/, painting/ and text will end up int QtGui.
* | Merge remote branch 'origin/master' into refactorLars Knoll2011-05-044-12/+9
|\|
| * Support gamma correction of text on GLEskil Abrahamsen Blomfeldt2011-05-031-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the SRGB framebuffer extension in GL is available, we can support gamma correction of text with a gamma of 2.1. On Mac this is sufficient for gamma correcting subpixel antialiased text. Gray antialiasing should not be gamma corrected on Mac. On Windows, the user can potentially set the gamma value to anything between 1.0 and 2.2 (or something like that). We support anything that resembles 1.0 closely enough by pushing the text out without any correction (like before). We also support anything that resembles 2.1 (the gamma hardcoded in GL's SRGB extension) by turning on the extension before blending the text. In between the two, we'll use gray antialiasing to avoid differing too much from the raster engine (which is our reference in this.) For gray antialiasing on Windows, we use a constant gamma of 2.3 which has been determined by experimentation. Since this is close enough to 2.1 we do gamma correction with SRGB extension. The distance limit of 0.2 is determined by some experimentation. Reviewed-by: Samuel (cherry picked from commit 79ba7cceca5e4029876ace2121edd25b08ae14ce)
| * Don't transform glyph positions for Core Graphics paint engineJiang Jiang2011-04-291-2/+3
| | | | | | | | | | | | | | | | Since it already transformed text positions based on transform matrix on QPainter. Reviewed-by: Eskil (cherry picked from commit b86c9120710bf1481df5f6541618169a82fd65b8)
| * Fix crash in raster on X11 when text contains unsupported charactersEskil Abrahamsen Blomfeldt2011-04-291-1/+1
| | | | | | | | | | | | | | | | | | We would assume the font engine was a FT engine and do a static cast here, which would cause a crash if the box engine was in use instead. Task-number: QTBUG-17443 Reviewed-by: Samuel (cherry picked from commit c9c54682bcd23598ac7a8db3b10e9f18c978e268)
| * Initial import from qtquick2.Qt by Nokia2011-04-271-1/+3
| | | | | | | | | | Branched from the monolithic repo, Qt qtquick2 branch, at commit a4a585d2ee907746682846ae6e8a48e19deef469
* | remove dependency to QStyle::visualAlignmentLars Knoll2011-05-041-2/+2
| | | | | | | | | | | | | | The current position of the code in QGuiAppPrivate is a bit messy, but we can later on consider consolidating some of this in some helper namespace.
* | Get rid of QCustomRasterPaintDevice / QWS stuff in raster engine.Samuel Rødal2011-05-044-1139/+44
| |
* | Get rid of remaining QWidget dependencies in QPainter.Samuel Rødal2011-05-044-129/+33
| |
* | Remove QWidget dependency in QPainter::initFrom().Samuel Rødal2011-05-044-10/+14
| |
* | Get rid of unused window surfaces.Samuel Rødal2011-05-0412-1933/+1
| |
* | even less QT3_SUPPORTLars Knoll2011-05-035-266/+0
| | | | | | | | | | the new libQtGui should now be free of any Qt3 related methods.
* | remove obsolete stuffLars Knoll2011-05-0313-1132/+0
| | | | | | | | | | everything inside QT3_SUPPORT is gone in gui/painting
* | remove postscript support from QtLars Knoll2011-05-035-1147/+17
| | | | | | | | | | I really wanted to do this since many years already! :)
* | remove more QApplication dependenciesLars Knoll2011-05-035-16/+9
| |
* | remove a few qapplication includesLars Knoll2011-05-034-4/+0
| |
* | rename qwindow_qpa to qwindowLars Knoll2011-05-032-3/+3
| |
* | QGuiApplication is not QPA specificLars Knoll2011-05-032-3/+2
| | | | | | | | | | Rename files to reflect that QGuiApplication is going to be used everywhere.
* | remove a unneeded reference to qbackingstoreLars Knoll2011-05-031-1/+0
| |
* | remove the graphicssystem code paths.Lars Knoll2011-05-0316-1439/+1
| | | | | | | | | | QPA's platform integration layer replaces the graphics system now.
* | remove a not required include.Lars Knoll2011-05-031-1/+0
| |
* | split the HexString template class out of qstylehelperLars Knoll2011-05-034-4/+4
| | | | | | | | | | | | The class is used in quite a few places and has no relation to styles. Split it out into it's own file to remove a dependency between Gui and Widgets.