summaryrefslogtreecommitdiffstats
path: root/src/render/frontend/qlayer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Accept/Drop entities and filter recursivelyJuan José Casafranca2017-08-021-3/+42
| | | | | | | | | | The layer now may specify if a subtree must be completely accepted recursively. The layerfilter can specify if the entities must be accepted or dropped. Task-number: QTBUG-59814 Change-Id: I7beff9e036d5de8b128cf960ba5f11477e5784e1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* QLayer: update the documentationPaul Lemire2016-08-101-2/+74
| | | | | Change-Id: I9fb5af3c6ef748db961e52aed958c500fd233401 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* De-inline dtors of public polymorphic classesMarc Mutz2016-05-191-0/+5
| | | | | | | | | | | | | | By making the destructor (usually the first non-inline, non-pure, virtual function, and therefore the trigger for most compilers to emit the vtable and type_info structures for the class in that TU) out-of-line, vtables and, more importantly, type_info structures for the class are pinned to a single TU. This prevents false negative dynamic_cast and catch evaluation. It also allows to add code to them later, if necessary. Change-Id: I0da301cd788162abba6cdbbb21910090a22adb9a Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Get rid of QLayer::namesKevin Ottens2016-05-041-33/+0
| | | | | | | | | | | | | Don't reinvent a variable naming system (string based global variables even) and instead use pointer to QLayer instance everywhere, even with QLayerFilter. The wave and deferred-renderer-cpp examples have been ported to the new API. Change-Id: I82a858770954a8743a5c3d2ce0c463e62844871f Task-number: QTBUG-51440 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QLayer/Layer create and handle creation changesSean Harmer2016-04-291-0/+8
| | | | | Change-Id: Id12e4d99b56fcfb8b58c58da778c48fcfa19460b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Strip out cloning subsystemSean Harmer2016-04-291-11/+0
| | | | | Change-Id: I4def54a11de0f9c676ef6b2d7bd8e723ded25ab9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* QNode: make cleanup a private slotPaul Lemire2016-04-231-5/+0
| | | | | | | | | | QT3D_CLONEABLE now implements a default dtor that calls _q_ cleanup QT3D_CLONEABLE_CUSTOM_DTOR is used for classes that really need to implement their own dtor but they need to invoke _q_cleanup manually Change-Id: I2937a3b9edeb5a763749f0044360d78ab4461a5e Task-number: QTBUG-51464 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-01-261-4/+0
|\ | | | | | | | | | | | | | | | | Conflicts: src/doc/src/qt3dcollision-module.qdoc src/render/frontend/qcamera.cpp src/render/frontend/qcameralens.cpp Change-Id: I8a0ae250a6b8e065a1ef3c817968ebb7ef23b20d
| * Doc: Exclude private header files from the documentation buildTopi Reinio2016-01-251-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | In the documentation configuration, exclude all '_p.h' files from the documentation build. This prevents QDoc from generating documentation for private classes, and also allows removal of documentation that explicitly set the private classes \internal. Change-Id: I8fcf5c99a2a0b75e9ee5dcd928fa4a2b4b8cf34f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Unify license header usageAntti Kokko2016-01-261-11/+14
|/ | | | | | | Update old header.LGPL3 to header.LGPL Change-Id: I8eac0cd6bbc276a56df487249cc459c0d4fab165 Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* Added parameters to signals and made setters Q_SLOTSTomi Korpipää2015-12-091-1/+1
| | | | | | Change-Id: Icec2f9f207221e35ffdeeb594bb9b4dc6ef890f1 Task-number: QTBUG-49797 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Doc: Fix QDoc warnings and do further cleanupTopi Reinio2015-11-231-5/+5
| | | | | | | | | Fix the documentation issues that still remained broken after renaming the namespaces/QML modules. Do further cleanup and minor doc editing. Change-Id: Iff38c8c1b99e7f712dc3f9ad07ecd37a747b3a26 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* Doc: Updated the docs for the namespace changesVenugopal Shivashankar2015-10-271-1/+1
| | | | | | | | | | | | | | | | Each of the submodules now have there own namespace so the following changes are required to adapt: - Added \namespace docs for the new namespaces. - Updated all the \class and \instantiates entries to use the appropriate namespace qualifier. - Changed the \module and \qmlmodule names for Qt 3D Core and Qt 3D Render modules. - Added the missing \module and \qmlmodule pages for the Qt 3D Collision module. Change-Id: Ibc5bf30e4f50aecb6a3b24bc8536f17ed19d681d Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Move Render aspect into the Qt3DRender namespaceSean Harmer2015-10-131-7/+7
| | | | | | | Updated examples and tests accordingly. Change-Id: I8848a88472de2302aa072fa11f21ea934672b7e6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Merge branch '5.5.0' into 5.5Sean Harmer2015-06-211-3/+3
|\ | | | | | | | | | | | | Conflicts: src/input/qkeyboardcontroller.cpp Change-Id: Ifb0b5af165fb11dbe07849f34d3b93d9cc78eeaa
| * Doc: Fix multiple documentation issuesv5.5.0-rc1Topi Reinio2015-06-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Restore qt3d-index.html as the main landing page. Needed for external linking. - Fix \inmodule commands for Renderer classes - Add proper group so that all three modules are listed on the landing page, both C++ and QML modules - Remove qt3drenderer-index.html (to be consistent with Qt3DCore), copy contents over to the module page and to a new file, qt3d-examples.qdoc. - Fix indexTitles in qdocconf files, and subprojects for Renderer QML types and Qt3D examples Change-Id: I0e2497771d0525d120ffa9d7d6338b01fdfa6963 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
| * Use Qt3D.Renderer rather than RenderSean Harmer2015-06-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | This should make the documentation and code terminology consistent throughout. We can rename the source directories at a later date if needed. Task-number: QTBUG-46622 Change-Id: I2737e54192341808f4a0270ad19ba70f6c4af589 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | QNode parent changesPaul Lemire2015-06-111-0/+5
|/ | | | | | | | | | | | | | | - introduce QNode::setParent(QNode *) - QNode created with explicit parent now invoke QNodePrivate::_q_addChild - QNode::cleanup introduces, need to be added to the dtor of every QT3D_CLONABLE QNode subclass. Handles proper destruction. - QNode::cleanup added to all classes that should have it. - Updated unit tests of Nodes, Entity, Scene Change-Id: Id2c2784122a78edaae5580fe5976d88be5a1921c Task-number: QTBUG-45947 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Doc: Add Qt3D QML and C++ skeleton comments for qdocMartin Smith2015-05-281-0/+34
| | | | | | | | | | | | | | Add documentation structure and qdoc comments for \class, \qmltype, \property, and \qmlproperty, etc, for the Qt3DRender C++ and QML modules. The actual documentation (descriptions) are still missing, but this allows the QML type documentation to be generated and reduces the qdoc error count. Change-Id: I9e96241f07ca2388f1a8cc2a3677fa6d02a2404d Task-number: QTBUG-46037 Reviewed-by: Martin Smith <martin.smith@digia.com>
* Do not pass `this` to Private c-torKonstantin Ritt2015-05-201-3/+3
| | | | | | | For classes derived from QNodePrivate, it is not used anymore. Change-Id: I9573042500c2c7533687d251e72bac14cb793525 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Doc: Fix multiple C++ documentation issuesTopi Reinio2015-04-141-0/+5
| | | | | | | | | | | | | | | | | | | - Remove multiple \namespace commands for namespace Qt3D. QDoc in 5.5 is now able to collate namespace members from multiple modules. - Mark 'Q...Private' classes and functions taking private arguments as \internal - Use correct \qtvariable for Qt 3D Core and Render - Add src/plugins directory to Qt 3D Core documentation build to correctly generate Assimp-related documentation. - Ensure documentation for C++ properties is visible by using the \property command instead of documenting the setter/getter functions. - Add export and logging macros to qdoc ignore directives - Remove unnecessary use of \fn command - Language and styling fixes Change-Id: I2481fa30ad2f6869b85c038c20ff1730b8522d46 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Copyright header change.Mika Salmela2015-02-091-19/+14
| | | | | | | | As for preparation for Qt5.5 release the copyright header is updated to correspond the current license requirements. Change-Id: I36632918b66f455539453b42c369689fb11298ec Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QLayer: QString name property converted to QStringList namesPaul Lemire2014-10-221-8/+7
| | | | | | Change-Id: I1f1c80231118240d5ae590166d00d0b53661ab33 Task-number: QTBUG-41540 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Have copy() only on QNodeKevin Ottens2014-10-161-4/+4
| | | | | | | | | | It was previously both on QNode and QNodePrivate. The one on QNodePrivate didn't give us much as it didn't eliminate the virtual of QNode. Change-Id: Ia1ea9dd831674109c84bd7005abe7fde3b1223fa Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Hide doClone implementations behind a macroKevin Ottens2014-10-151-7/+0
| | | | | | | | | This way we will avoid inconsistencies. It also means making some of the copy() implementations more clever. Change-Id: Ic79c9ec7c9c32f8951d5d9f5184592880bf8d5fd Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QNode refactoringPaul Lemire2014-10-031-12/+9
| | | | | | | | | | | | | | | | Move almost everything to private classes. Assimp loading restored. All examples working. QNode hierachy is now handled through QObject::setParent, addChild, removeChild are part of the private api. Note: commented QChangeArbiter unit tests as they can no longer work with this patch and will restore them when QChangeArbiter will have been made private. Task-number: QTBUG-41470 Task-number: QTBUG-41523 Change-Id: I4430974b3aa7f3744c38714b451b122e0cb4d0c9 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Improved/Refactored cloning and doClone off all subclassesPaul Lemire2014-09-301-2/+5
| | | | | | | | Note: As we are using QScene during cloning, it is important that node hierarchy be created and added in the proper order (parent then child). Change-Id: I8fd53f7ca696ec9aca19cc70dc116ccba4154911 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QLayer implements doClone and copy methodsPaul Lemire2014-08-131-0/+15
| | | | | Change-Id: I3b1de7e154088a284f8f72c871f7f22af4ff7290 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Renamed Component to QComponentPaul Lemire2014-07-051-3/+3
| | | | | Change-Id: Ifd585f5883e446d0569c38219d26ba581455e857 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Renamed Node to QNodePaul Lemire2014-07-051-2/+2
| | | | | Change-Id: I0a0ebde1c107db8831b596eab1e512a2062979f7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Added QLayer componentPaul Lemire2014-07-051-0/+81
Change-Id: Ic2d985148c5755f0a697147cc2852e52d06d5e22 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>