aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph/qsgdefaultrectanglenode.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Move Qt Quick scenegraph resources under the :/qt-project.org/ directoryGiuseppe D'Angelo2016-04-011-2/+2
| | | | | | Change-Id: Ib1c2695f86837b02ba4aaf49184421cd464f7c20 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* QSGDefaultRectangleNode: Fix gradient position calculationsSanttu Lakkala2015-06-171-4/+4
| | | | | | | | | | Change the gradient position calculations to consider full border, not just half of it, because the border is fully drawn inside the rectangle, not half outside, half inside. Task-number: QTBUG-36059 Change-Id: Ie7dec94d9f6e03ae07c612c6e3b1950781973dc7 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Update copyright headersJani Heikkinen2015-02-121-7/+7
| | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* Update license headers and add new licensesJani Heikkinen2014-08-251-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 & LICENSE.GPLv2 - Removed LICENSE.GPL Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0 Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* Mark material as dirty after changing color's opacity in Rectangle.Gunnar Sletta2014-04-301-5/+15
| | | | | Change-Id: I8037908bb2ba494001c516e2c7606c3bb54a14d8 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Only look at alpha to decide if rectangle has fill or not.Gunnar Sletta2014-01-221-2/+2
| | | | | | Task-number: QTBUG-35606 Change-Id: Id403047e19e75d91ec3b3f8367166d8ec96ecaf8 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Refactor shaders into seprate GLSL source filesSean Harmer2013-10-311-57/+9
| | | | | | | | | | | | | | | | | | | | | | The default implementation of QSGShaderMaterial::vertexShader() and fragmentShader() now loads the GLSL source from a list of source files that can be specified via the setShaderSourceFile() or setShaderSourceFiles() functions. Multiple shader source files for each shader stage are supported. Each source file will be read in the order specified and concatenated together before being compiled. The other places where Qt Quick 2 loads shader source code have been adapted to use the new QSGShaderSourceBuilder, which is also used internally by QSGMaterial. This puts Qt Quick 2 into a better state ready to support OpenGL core profile and to load different shaders based upon OpenGL version, profile, GPU vendor, platform, etc. Change-Id: I1a66213c2ce788413168eb48c7bc5317e61988a2 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Fix license headers of QtQuick sources.Gunnar Sletta2013-09-301-1/+1
| | | | | Change-Id: I3750c47640bf21c3567c5fa1c4667e3e2552942e Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Support opt-in QSGNode descriptions without breaking binary compat.Gunnar Sletta2013-08-121-2/+2
| | | | | | | | | | This define is quite useful for debugging scene graph internals, but it is disabled by default to conserve memory. For clarity, I renamed the define to QSG_RUNTIME_DESCRIPTION. Change-Id: Ie5ff44d67af38adc65d0d09255d8533dc7a33bff Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Rectangle which only draw an opaque border should not be blended.Gunnar Sletta2013-08-011-1/+1
| | | | | Change-Id: I55996a1c38ad6da4566d2160155503a27ad4a20b Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Prefix internal classes properly and private export them.Gunnar Sletta2013-06-171-4/+4
| | | | | | | | | Without the private export on these classes, the private export on the QSGDefaultImageNode and QSGDefaultTextureNode is useless, as the symbols fail to resolve Change-Id: I25a265a7669e5f5015c482aa24fe154c2c9a1062 Reviewed-by: Alan Alpert <aalpert@blackberry.com>
* Merge branch 'stable' into devGunnar Sletta2013-01-171-1/+1
|\ | | | | | | | | | | | | | | Conflicts: src/qml/doc/qtqml.qdocconf src/quick/doc/qtquick.qdocconf Change-Id: I087fa14720995a5e53c43567dc4a3c29eb9992a9
| * Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | | | | | | | Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* | Disable blending of opaque Rectangle elementsGunnar Sletta2013-01-171-0/+3
|/ | | | | Change-Id: If456248c10c24c3d2f2a383f29e72c74d2dee8bf Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Make Rectangle border be inner instead of centered on the outline.Samuel Rødal2012-10-221-18/+8
| | | | | | | | | | | | | This avoids awkward situations such as when clipping to a parent item of the same size and makes it easier to reason about the bounding rectangle of the item. Task-number: QTBUG-21341 Change-Id: If015cfbc5792429f4a407fc0547ea71eca779eda Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Laszlo Papp <lpapp@kde.org> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Work around mis-optimisation on QNX/SGX in AA vertex shaderSean Harmer2012-09-261-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | The new AA algorithm which is implemented in the vertex shader of SmoothColorMaterialShader and SmoothTextureMaterialShader exposes a driver bug in the glsl compiler/optimiser for the GPU used in the BlackBerry PlayBook. The bug results in the if (scale < 0.0) scale = 1.0 code always being executed even when the condition is false. This leads to massive corrupion of Image, Rectangle, and BorderImage elements when the antialiasing property is enabled. This commit works around the compiler bug by refactoring the vertex shader to explicitly include an else clause. The check for negative values is now performed on the numerator only as the denominator is dot(dir, dir) which is always positive (square of magnitude of dir vector). This gives the correct behaviour on all platforms (that I have access to). Change-Id: I236542c9b59ff2915e95cbd9300b442be316bba9 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-231-24/+24
| | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Change antialiasing method for QML2.Kim Motoyoshi Kalland2012-07-131-288/+566
| | | | | | | | | | | | | Since multisampling can require a lot of memory, and might not be supported on some hardware, turn off multisampling and implement antialiasing in the vertex shader instead. The alternative method of antialiasing is implemented for Rectangle, Image, BorderImage and AnimatedImage, and must be explicitly enabled by setting the new antialiasing property. Task-number: QTBUG-26268 Change-Id: I39a93d978658a494bf51e9f0fd02d8414eb8be12 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Merge master <-> api_changesMatthew Vogt2012-03-051-2/+1
|\ | | | | | | Change-Id: Iad2f07b989b25349fd2d4fff010e24dcd5a1688f
| * Remove unused member.Michael Brasser2012-02-271-2/+1
| | | | | | | | | | Change-Id: Ibfcc7a78e442c2be5bab6933e2e85ed39344e6c2 Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
* | Rename QDeclarative symbols to QQuick and QQmlMatthew Vogt2012-02-241-1/+1
|/ | | | | | | | | | | | | Symbols beginning with QDeclarative are already exported by the quick1 module. Users can apply the bin/rename-qtdeclarative-symbols.sh script to modify client code using the previous names of the renamed symbols. Task-number: QTBUG-23737 Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66 Reviewed-by: Martin Jones <martin.jones@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: If39bd256b0fa85eba17ea30f8ab87ea27d758908 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update obsolete contact address.Jason McDonald2012-01-231-1/+1
| | | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I6a730abc0c396fb545a48b2d6938abedac2e3f1c Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
* Update copyright year in Nokia copyright headers.Jason McDonald2012-01-171-1/+1
| | | | | | | | Update copyright headers from before 2011, and a couple of new ones that were merged after the previous change to copyright headers. Change-Id: Ia76e08e2734afa4ef3f1207dbcda5ff3bc81b366 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Say hello to QtQuick moduleKent Hansen2011-12-021-0/+548
This change moves the QtQuick 2 types and C++ API (including SceneGraph) to a new module (AKA library), QtQuick. 99% of this change is moving files from src/declarative to src/quick, and from tests/auto/declarative to tests/auto/qtquick2. The loading of QtQuick 2 ("import QtQuick 2.0") is now delegated to a plugin, src/imports/qtquick2, just like it's done for QtQuick 1. All tools, examples, and tests that use QtQuick C++ API have gotten "QT += quick" or "QT += quick-private" added to their .pro file. A few additional internal QtDeclarative classes had to be exported (via Q_DECLARATIVE_PRIVATE_EXPORT) since they're needed by the QtQuick 2 implementation. The old header locations (e.g. QtDeclarative/qquickitem.h) will still be supported for some time, but will produce compile-time warnings. (To avoid the QtQuick implementation using the compatibility headers (since QtDeclarative's includepath comes first), a few include statements were modified, e.g. from "#include <qsgnode.h>" to "#include <QtQuick/qsgnode.h>".) There's a change in qtbase that automatically adds QtQuick to the module list if QtDeclarative is used. Together with the compatibility headers, this should help reduce the migration pain for existing projects. In theory, simply getting an existing QtDeclarative-based project to compile and link shouldn't require any changes for now -- but porting to the new scheme is of course recommended, and will eventually become mandatory. Task-number: QTBUG-22889 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Change-Id: Ia52be9373172ba2f37e7623231ecb060316c96a7 Reviewed-by: Kent Hansen <kent.hansen@nokia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>