summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/abstract3dcontroller_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix layering violation involving AbstractDeclarativeMarc Mutz2022-07-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When trying an ubsan build of qtdatavis3d, I get: abstract3dcontroller.cpp.o: undefined reference to `typeinfo for AbstractDeclarative' Turns out that AbstractDeclarative is defined in DataVisualizationQml, a separate library, which depends on DataVisualization. It seems this worked because Abstract3DController only used inline members of AbstractDeclarative, so a normal build doesn't need the class exported, even though it's curious that inline isReady() calls exported QQuickItem::isComponentLoaded() and the linker didn't complain. But an UBSan build requires the type_info, which isn't available, because the class wasn't exported, and cannot be made available because of the layering violation. To fix, Extract Superclass AbstractDeclarativeInterface that provides only the required isReady() function, but lives in DataVisualization, and have the real AbstractDeclarative inherit it. As a drive-by, make isReady() const. Pick-to: 6.4 6.3 6.2 Fixes: QTBUG-104714 Change-Id: I0eb718746355f409a4105e2d53e79b7003fd8b22 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-131-28/+2
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I3b3112f5a36673b90fff0010f973d020886cf08d Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Migrate to autogenerated cpp exportsAlexey Edelev2021-09-271-1/+1
| | | | | | | | | | | | Replace the hardcoded cpp exports with a generated one where it's applicable. Change the cpp export macro name to the autogenerated one. Task-number: QTBUG-90492 Change-Id: Iff6fbff102297feffd443b8b6fef61f5e8f135e5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Sami Varanka <sami.varanka@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add hasSeries method to Abstract3D graphSami Varanka2021-09-241-0/+1
| | | | | | | | | | | | | Added a hasSeries method to Abstract3Dgraph. The method can be used to check whether a series has already been added to the graph. In addition, modified cpp and qml autotests to test the added method. Fixes: QTBUG-96683 Change-Id: I91f70ca15b6c5fbaa7691cd17bbfc2ef460c3d37 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Modernize and update to latest CMake APIUlf Hermann2021-06-111-1/+2
| | | | | | | | | | Use declarative registration for QML types, and separate the backing library from the plugin. Also, bump the revision numbers to account for Qt6 and drop the "2" from the source directory name. Change-Id: Ib48f90ad32a3624e7c31f1d2af9fcd92f069ee7f Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Fix Gradients don't showSami Varanka2021-05-181-0/+2
| | | | | | | | | | | | | Added pointer to graph in Abstract3DController. Controller can use that pointer to check whether the graph is ready when receiving a themetypeChanged signal. Added manual test for gradients. Pick-to: 6.1 Fixes: QTBUG-93506 Change-Id: I13df962b807feb615e3267f580ef57dd62a0b058 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Remove custom namespaceTomi Korpipaa2021-01-281-2/+2
| | | | | | Fixes: QTBUG-90400 Change-Id: Ia2f1974a21112bad97724717d073d367c4413a7f Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
* Use QList instead of QVectorJarek Kobus2020-06-251-1/+1
| | | | | | | Task-number: QTBUG-84469 Change-Id: I4dc064b70adb054ca4add2dd662e7227255ff970 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Convert uses of QTime as a timer to QElapsedTimerEdward Welbourne2019-06-121-2/+2
| | | | | Change-Id: I6050b5269304ac6941d3a9d057c91d439f46b63c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix build for -no-feature-wheeleventStephan Binner2017-04-241-0/+2
| | | | | Change-Id: I0a436ec2606fe6d76665ef147667c7d8ea5c59e4 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Copyright file update to GPLMiikka Heikkinen2016-01-121-9/+17
| | | | | Change-Id: Ib264fe1f2cd1589e2ba1ef2dc7d8f3951e125708 Reviewed-by: Tomi Korpipää <tomi.korpipaa@theqtcompany.com>
* Fix issues with COIN buildsMiikka Heikkinen2015-10-221-0/+3
| | | | | | | | | | | | -Fix miscellaneous compile errors -Move manual tests to manual folder and enable export of autotests -Added widgets requirement -Fixed autotests -Fixed renderer and controller synchronization in QML case -Treat fallback Mesa as ES2 similar to setting AA_UseSoftwareOpenGL Change-Id: If6619733725d079e339bef16262e5ea1450ab20f Reviewed-by: Tomi Korpipää <tomi.korpipaa@theqtcompany.com>
* Update license headersMiikka Heikkinen2015-10-201-11/+14
| | | | | Change-Id: I0581aefcf9dabc64b05eb8c97b5b92da1fb26299 Reviewed-by: Titta Heikkala <titta.heikkala@theqtcompany.com>
* Fix compilation with namespaced Qt.Friedemann Kleint2015-09-211-1/+1
| | | | | | Task-number: QTRD-3655 Change-Id: Id68e9cec8d1093fe1557b07a148ae04a27656284 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>
* Fix building against 5.6Miikka Heikkinen2015-06-171-2/+2
| | | | | | | | Apparently Qt modules are now required to use Q_SIGNALS and Q_SLOTS macros instead of 'signals' and 'slots' in headers. Change-Id: I4140b1fff4386d74bb371176919234366965e887 Reviewed-by: Mika Salmela <mika.salmela@theqtcompany.com>
* Copyright header changesMika Salmela2015-04-141-3/+3
| | | | | | | Copyright header changes for 5.5. Change-Id: I0361cfe1ebdb28955cb927700f14cf7b72694421 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>
* Change copyright headers.Miikka Heikkinen2014-11-071-7/+7
| | | | | | Change-Id: I453438fee92f18c983c1bef04c68b24a7ff72cf9 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com> Reviewed-by: Mika Salmela <mika.salmela@theqtcompany.com>
* Support for dynamic opengl builds.Miikka Heikkinen2014-10-291-0/+1
| | | | | | Task-number: QTRD-3392 Change-Id: I786bbf5ee9252b92d43d02d6b88ed9b986b4a5eb Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Fix context cleanupMiikka Heikkinen2014-10-131-1/+2
| | | | | | | | | | Context was not getting properly cleaned up in cases where render thread stopped before the cleanup took place. Now we ensure that required cleanup is done before context thread terminates. Change-Id: I1489914dafec928eebb69bac737f6f858ff49432 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Make background margin configurableMiikka Heikkinen2014-09-301-1/+8
| | | | | | | | | | | Added margin as abstract graph property. If the margin is narrow, the positions of theedge labels of the axes are adjusted to avoid overlap with edge labels on other axes. Task-number: QTRD-3204 Change-Id: I7fa5a04c8f2091519d99689ef2f6cbcf799fb15e Reviewed-by: Mika Salmela <mika.salmela@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Add C++ API for getting the custom item list from graph.Miikka Heikkinen2014-09-291-0/+1
| | | | | | | | QML already had this. Task-number: QTRD-3173 Change-Id: Ib4203eef7a0bc477ddc79467c91b22f95d573154 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Make various selection queries thread safeMiikka Heikkinen2014-09-291-0/+4
| | | | | | Task-number: QTRD-3333 Change-Id: I09cb9a119a3490de008feb97cbb6f0c623238927 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Implement zooming to cursorMiikka Heikkinen2014-09-261-1/+6
| | | | | | | | | Zooming to cursor is now default operating mode of the default input handler. Task-number: QTRD-3263 Change-Id: I5699fc0ce7393059538972cd52f31f06d87e3d8d Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Added possibility to change graph's localeMiikka Heikkinen2014-09-191-0/+6
| | | | | | | | | | Locale affects how axis labels are formatted. Default locale is still the "C". Task-number: QTRD-3229 Change-Id: I6126ce676906f4bbc91ae0abd18775bc1d564118 Reviewed-by: Mika Salmela <mika.salmela@digia.com> Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Reflection API addedTomi Korpipää2014-08-261-1/+14
| | | | | | | Task-number: QTRD-3287 Change-Id: I6c06b8fe025e0f1f87be00be906cab0e1f18a19f Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Added horizontal aspect ratio property for abstract graphsMiikka Heikkinen2014-07-011-4/+11
| | | | | | | | Value 0.0 indicates automatic scaling (the default). Task-number: QTRD-3192 Change-Id: I5e4cc1b7a03c0ba811e2ed3916a440906429af57 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Add radialLabelOffset property for graphsMiikka Heikkinen2014-06-261-1/+7
| | | | | | | | | This property indicates where radial labels of the polar chart are drawn Task-number: QTRD-3184 Change-Id: I1500e67da5e578b90d679876130c2d56c1d08039 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Polar graph support, phase oneMiikka Heikkinen2014-06-261-10/+16
| | | | | | | | | | - Polar property for toggling the polar mode - Example added. Example docs will be added in another patch once all of the functionality the example needs has been implemented. - Only surface graph supports polar so far. Scatter to be added later. Change-Id: I54d36f764ac1771ac88f73a5f3a2142f2309f6e8 Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Scatter perf improvementMika Salmela2014-06-051-0/+7
| | | | | | | Task-number: QTRD-3148 Change-Id: I2c9efa84184819aaac123ee29685bc3a9e35bfe6 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Clean upTomi Korpipää2014-06-021-4/+0
| | | | | | Task-number: QTRD-3149 Change-Id: I386501dcb489e36a0163109dbd40f29941bd5868 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Clean up Tomi Korpipää2014-06-021-9/+0
| | | | | | | Task-number: QTRD-3149 Change-Id: Ic8337601cd0635b48a940c0238d3dfd894dd7fab Change-Id: Ic8337601cd0635b48a940c0238d3dfd894dd7fab Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Optionally show axis titles on the graphMiikka Heikkinen2014-05-271-1/+17
| | | | | | Task-number: QTRD-2961 Change-Id: I6a344156bd29fa8fb1ede0546af4d0e67e5e2db4 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Code cleanups Tomi Korpipää2014-05-261-9/+1
| | | | | | | Task-number: QTRD-3149 Change-Id: I7db55daf41ea61548604e816d7a49b7bade450d2 Change-Id: I7db55daf41ea61548604e816d7a49b7bade450d2 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Added API for changing data aspect ratioTomi Korpipää2014-05-261-1/+8
| | | | | | Task-number: QTRD-3144 Change-Id: I9acd1be13083d7fbbed840882260a60f46c5f698 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Added enablers for axis dragging to QMLTomi Korpipää2014-05-211-0/+2
| | | | | | | | | Task-number: QTRD-3003 Will add an example in a separate commit Change-Id: I7fa9eb1b504d188c77b66ef8d4b2ee44416667e2 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Implement axis label autorotationMiikka Heikkinen2014-05-191-1/+9
| | | | | | Task-number: QTRD-2857 Change-Id: I158abb75272813cf7eb5d4b419e24325389d940e Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Dirty bits to custom item Tomi Korpipää2014-05-161-0/+3
| | | | | | | Task-number: QTRD-3082 Change-Id: I1503b067edcc677904ca16c1501109187809f98b Change-Id: I1503b067edcc677904ca16c1501109187809f98b Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Added visible flag and possibility to release ownership of custom itemTomi Korpipää2014-05-141-0/+1
| | | | | | Task-number: QTRD-3080 Change-Id: I198930c48fe9bce6a158406aff5fbf31272b9afe Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Added option to use orthographic projectionTomi Korpipää2014-05-141-1/+9
| | | | | | | Task-number: QTRD-3078 Change-Id: I07ebc2b7edd542cd28e405dfc80282f18b7a7314 Reviewed-by: Mika Salmela <mika.salmela@digia.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* API to query custom item selection Tomi Korpipää2014-05-131-0/+2
| | | | | | | | | | Task-number: QTRD-3046 + Added missing elementSelected signal to QML Change-Id: I5e79d8e910d2730e3d2ae5550ce576f01aac0b18 Change-Id: I5e79d8e910d2730e3d2ae5550ce576f01aac0b18 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Added API for querying label selectionTomi Korpipää2014-05-131-3/+6
| | | | | | Task-number: QTRD-3045 Change-Id: Ib5c8f29bcf0148ae604e27b2a81e6f72a2dbca2a Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* CustomDataItem made into a public classTomi Korpipää2014-05-121-5/+6
| | | | | | Task-number: QTRD-3055 Change-Id: I1e449df7c1bcb48fc639dbae579e2e1499c9ef2b Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Value axis reversing supportMiikka Heikkinen2014-05-081-0/+8
| | | | | | | Task-number: QTRD-2428 Change-Id: I51b3a1f8f974d5b72b36ee1188b7557539b9609b Reviewed-by: Titta Heikkala <titta.heikkala@digia.com> Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* QML them basecolor override by series bug fixedTomi Korpipää2014-04-251-1/+1
| | | | | | | | | | | Task-number: QTRD-3010 QML calls properties in "random" (or alphabetical) order, which in this case causes theme initialization to be called after series basecolor override, so setting a basecolor to a series to override theme did not work. Change-Id: I434f2a278bf2a70512a3d4d73c30d80319bd0e8e Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Add custom item support, part 2Tomi Korpipää2014-04-161-0/+1
| | | | | | | | | Task-number: QTRD-2866 + Added custom item rendering Change-Id: If24400fed7c0467d8ebbd554d6e4df3ec5a205f3 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Add custom item support, part 1Tomi Korpipää2014-04-151-0/+8
| | | | | | | | | | | | | | Task-number: QTRD-2866 + Added API for adding and removing custom items + Added custom data and custom render items + Added shaders for textured objects + Added custom item rendering draft to scatter + Fixed some shaders - to be continued in part 2 Change-Id: I9735fd02fc9e86ae486cca4c06f6d7f2a4b0b7da Reviewed-by: Mika Salmela <mika.salmela@digia.com>
* Optimize multiple series rendering.Miikka Heikkinen2014-04-101-1/+3
| | | | | | | | | | | | | | Cache all series instead of just the visible ones on all graphs instead of just surface. Changes to one series now trigger data update to only the affected series, which should significantly improve performance in these cases. Task-number: QTRD-2600 Task-number: QTRD-2957 Change-Id: I6db7c689108fce8d25aace6682a193936d6f0eaf Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Introduce fps measurement via propertiesMiikka Heikkinen2014-04-041-0/+12
| | | | | | | Task-number: QTRD-2134 Change-Id: I181ee6c784b998886c2292b7548e16ce75d86458 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
* Axis label dragging support, part 2Tomi Korpipää2014-04-031-0/+1
| | | | | | | | | | | Task-number: QTRD-2367 + Added emitting selection signals + Added an example about creating an input handler for axis label dragging - Snapshot for example docs to be taken Change-Id: I641f4feb9e31c32023727b1c7c695324923accc4 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* Enable querying selection label via APIMiikka Heikkinen2014-04-031-0/+2
| | | | | | | | | | | | Also enable suppressing drawing the label on graph. Selection label formatting was consequently moved from renderers to series. Task-number: QTRD-2896 Change-Id: Ia6a1a40298d8db0f54349de3eb27fb0b683dd302 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>