| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Upcoming changes to QDoc require API entities to be fully qualified;
previously, QDoc maintained a list of 'open namespaces' that were
part of matching the documented entity with its declaration, but
that concept does not work for parallelized parsing where the order
of processing can be arbitrary.
Change-Id: I1662fb4692b5c91a2d9e33eb17708544d9cd1ebb
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
we need to avoid polluting the global (or qt) namespace by moving the
`using namespace Qt3DXXX` statements into the namespace where it's
actually required.
furthermore:
* replace `QT_USE_NAMESPACE` with `QT_BEGIN_NAMESPACE`/`END` pair
* exclude some translation units with name clashes inside anonymous
namespaces
Change-Id: I5301b55c6a0c7079602c759f5bde152354149880
Pick-to: 6.7
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: Icd578efe70a9bdaf5ffbd5c8e9500c370d655cc0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All these TUs relied on transitive includes of qpointer.h, maybe to a
large extent via qevent.h, though, given that qevent.h is more or less
the only public QtBase header that includes qpointer.h, something else
seems to be at play here.
Said qevent.h actually needs QPointer in-name-only, so a forward
declaration would suffice. Prepare for qevent.h dropping the include.
The algorithm I used was:
If the TU mentions 'passiveGrabbers', the name of the QEvent function
that returns QPointers, and the TU doesn't have qpointer.h included
explicitly, include it. That may produce False Positives, but better
safe than sorry. Otherwise, in src/, add an include to all source and
header files which mention QPointer. Exception: if foo.h of a foo.cpp
already includes it, don't include again.
Task-number: QTBUG-117670
Change-Id: I36d5fc6eea6c28b90d7dd82c27ee0685d983d627
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This disables the 3-arg QObject::connect() overload:
QObject::connect(sender, signal, functor)
For details see:
https://lists.qt-project.org/pipermail/development/2023-July/044141.html
Change-Id: If62d07f687d9ea86995ea813add49216ccaf15cc
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Multiple \qmlproperty commands used a non-existent module identifier,
or the name of the C++ module in place of the QML one.
Also, in some instances, the C++ type name was used in \qmlproperty
signature.
Fixing these also makes a number of QML properties appear in the
generated docs.
Pick-to: 6.6 6.5
Change-Id: I452361d3b0397d3ce405a2fb28577c37a24f02e3
Reviewed-by: Andreas Eliasson <andreas.eliasson@qt.io>
|
|
|
|
|
|
|
|
| |
Except in examples
Pick-to: 6.5
Change-Id: I31b06ddfc79f14dde3369518a76d57606daf939f
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I008781fa63d253c4f1a7201d911da87f451d797f
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We've been requiring C++17 since Qt 6.0, and our qAsConst use finally
starts to bother us (QTBUG-99313), so time to port away from it
now.
Since qAsConst has exactly the same semantics as std::as_const (down
to rvalue treatment, constexpr'ness and noexcept'ness), there's really
nothing more to it than a global search-and-replace.
Task-number: QTBUG-99313
Change-Id: I1b3c7c4058726c55199fd8ba74b6d6890ad8dd93
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a semantic patch using ClangTidyTransformator as in
qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8, but extended to
handle typedefs and accesses through pointers, too:
const std::string o = "object";
auto hasTypeIgnoringPointer = [](auto type) { return anyOf(hasType(type), hasType(pointsTo(type))); };
auto derivedFromAnyOfClasses = [&](ArrayRef<StringRef> classes) {
auto exprOfDeclaredType = [&](auto decl) {
return expr(hasTypeIgnoringPointer(hasUnqualifiedDesugaredType(recordType(hasDeclaration(decl))))).bind(o);
};
return exprOfDeclaredType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))));
};
auto renameMethod = [&] (ArrayRef<StringRef> classes,
StringRef from, StringRef to) {
return makeRule(cxxMemberCallExpr(on(derivedFromAnyOfClasses(classes)),
callee(cxxMethodDecl(hasName(from), parameterCountIs(0)))),
changeTo(cat(access(o, cat(to)), "()")),
cat("use '", to, "' instead of '", from, "'"));
};
renameMethod(<classes>, "count", "size");
renameMethod(<classes>, "length", "size");
a.k.a qt-port-to-std-compatible-api V4 with config Scope: 'Container'.
Change-Id: I3b040fa72968753048fd669c073ae80c3ba1bdad
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
C++20 deprecated the implicit capture of [this] in [=].
Move Q_D()s into the lambdas, where applicable.
Pick-to: 6.4 6.3 6.2 5.15
Change-Id: I345658b0ab9c4edc070f6fd111fce135dd757b14
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
| |
Change-Id: I9af5214af3ad019e3adf55c7d4d9dfe43a5226ff
Task-number: QTBUG-101876
Pick-to: 5.15 6.3
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
| |
Task-number: QTBUG-103286
Pick-to: 6.3 6.2 5.15
Change-Id: Iaddad08bb469408ee975e463ac82c95870130cee
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
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: I8105424281eed871037fa6c463871ca8829876b5
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Replace outdated LGPL3 with LGPL header in src, and
GPL3-EXCEPT in tests.
Task-number: QTBUG-90321
Pick-to: 6.2
Change-Id: I3f6491cb402a993a4341a983c780337e8658c256
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We are likely relying on the fact that most implementations of containers
clear the moved from container when calling std::move. That being said
this behavior is likely implementation/platform dependent and could
bite us at some later point.
This patch introduces a moveAndClear function that does the move and an
explicit clear and use it in all appropriate places.
Change-Id: I8081d09907e17e287741fa952269af22df4dcf5f
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
Pick-to: 5.15
Fixes: QTBUG-64110
Change-Id: I09330ba29b0c120d6e7e0ae0b2bf8d4e388054e1
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Built with QtQuick disabled.
- C++17 required
- minor issues with QList vs QVector
- QMutexLocker templated vs not
- moc forward declaration handling
Change-Id: I5540625e74e2c009e528f56203e4b88be8d54599
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
| |
- QVariant::Type deprecated, use QMetaType related APIs
- QNodeId not used as reference in for loops (nop but really noisy)
- some unused code
Change-Id: I291219207fcd1ad0bf89533b4e2bb5fa47a353bb
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
Since we have long depended on C++11 now, all of these can go.
Change-Id: I8808af2cd5ce192864c636b521dadd7de189563b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Pick-to: 5.15
Change-Id: I7dbff87a1b7a00d4fb6d7b558c38fa6fe5d2cdd5
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
Register and document QDebugOverlay.
Change-Id: I357918ce3448c451d796f88656ec287bf03ffcfd
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: Iaba2780c2ac28181cce15ae350fadd755a51999f
Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
|
|
|
|
|
|
|
| |
Change-Id: I7f1b2f3bca78f16abac49fa8686522aebf393d7c
Pick-to: 5.15
Pick-to: 5.12
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
This cannot be handled with RHI and in practice nobody ever used that
feature.
[ChangeLog] QRenderTargetSelector remove outputs/drawBuffers property
Change-Id: I6b02718733e5c05cee9074b0078ba2a544de95d6
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Use list-initialization.
Task-number: QTBUG-84469
Change-Id: I826450646fc3c7118cae49c22a28058f47770e13
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Task-number: QTBUG-84469
Change-Id: Ic726ce85e01190dbc64426388fd454c54ae3c3e3
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I99a55a52da55b9b8c32e0db8e47932a4eb2820fa
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QtBase has macro to enable SSE handling on specific source files.
But Qt3D has some classes which use those specific instruction set
in headers, so any file that includes those should also have the
right command line options.
This adds the right command line arguments to the 3DCorePrivate target
so that anything that depends on that will have the right options.
3DCore is fine because it knows about the special headers files which
were tagged.
Change-Id: Ia061750121fb2ab5c93600c08a5464179ca2c228
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I3d8fa0940a22f40bec3809b302cc59a40a5c3c52
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- updated dependencies, excluding qtgamepad for now
- fixed issues with Q_PROPERTY not supporting forward declarations
- fixed for changes in QtQuick private API
- fixed for changes in QtOpenGLVersionFunctions API
- fixed for removal of QT_OPENGL_ES* macros
- fixed for changes in QtConcurrent API
- fixed RHI based build
Change-Id: I42ccd2f101b7f0a78e2860c6d551722bf6710a11
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|\
| |
| |
| | |
Change-Id: Id669d5c1aab29965eac0dabd1cb497e908dac23e
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp
src/plugins/renderers/opengl/graphicshelpers/submissioncontext_p.h
src/plugins/renderers/opengl/renderer/renderer.cpp
src/render/backend/attachmentpack_p.h
src/render/frontend/qrenderaspect.cpp
src/render/picking/qabstractraycaster.cpp
tests/manual/manual.pro
Change-Id: I617b7e34bf7e11b2921bfc15e1b99c3e81891ec7
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ibcc4d9bfd9d0a9d7697151915f24a6eecc149f6d
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add button in overlay UI to dump:
- the details of technique and render pass filters in the render views
- the details of technique and render pass keys in the scene graph
This is useful to understand why some objects are not rendered.
Change-Id: I57a284081ec986e49e90c979042cc0c17ee0d1cf
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Id4ad6552fc1a254bd9414bab63400d624e902442
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In Extras, make QTorusMesh and others a QGeometryView rather than
a QGeometryRenderer. Requires changes to scene graphs here and there
but going forward there simple shapes could be used as proxies for
picking or collision detection, etc.
Change-Id: Id488e064080dfd303e448aba11e6b242236b81d4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Move QBuffer, QAttribute, QGeometry to Qt3DCore.
Change-Id: I59dfd091eefadcada93350b3aba955f40b304385
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|\| |
| | |
| | |
| | | |
Change-Id: I2777f6a40b9029ef5569a84e04f9e18a914504e7
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ie48d5de80fc4f5cd007de1e3caa43c65ee3d7783
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Was used by old node init API
Change-Id: I7b68f25634ee7aaccefab6f499ac074fcfb9a7f4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Mostly old messaging API
Change-Id: I17eb2206b2ede56d2f7d36375d5e711d6149019f
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|\| |
| | |
| | |
| | | |
Change-Id: I731aa986e1cc45b3af920db1a23f256927beecf7
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I5314da1df7fbfd1b6db4412e7bc71231525d9de2
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
By default the QRenderAspect will try to load this plugin
Change-Id: Ie55e207fb8e6d0b64f717bbb99699eb669eaa3f2
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
GLShader is renderer specific shader implementation for OpenGL.
Shader now contains only backend information for a QShaderProgram frontend
node.
- Similar to the GLTexture handling, a generic adopt/abandon manager for
shaders was introduced (regardless of the actually GraphicsAPIShader class).
- The renderer and renderviews were adapted to the new changes.
This was the last major thing preventing the modularisation of the
QRenderAspect and renderers
Change-Id: If671d60928b433977e9d6e5c58199827f9408a3f
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Can be activated at adding a QDebugOverlay in the frame graph to
identify which surface it should be renderer one (renders only
once on first branch that contains such a node).
Can be also activated on the forward renderer from Qt3DExtras.
- Shows information about FPS and number of
jobs/renderviews/commands/vertices/entities/geometries/textures...
- Allows to toggle job and gl call tracing and open folder where
trace files are stored
- Windows to show and dump glinfo and renderview/command details to the
console
Change-Id: I286ff85760e8f8f0604a23458883ff22229bda94
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
prints to the console, also dump the list of paths in the frame graph
to help understand render views.
Change-Id: Ic4756e09545971b224a239fafc6667b0ca3d4572
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We used to perform uniform minization between adjacent render commands all the time.
Since this can yield to a higher CPU usages (but more efficient rendering submission),
we now make this step optional.
[ChangeLog] QSortPolicy add Uniform mode (to control whether uniform minization
should be performed)
Change-Id: I5c0e0dba22400a9884ee1d75426fd76b073fdcb5
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Removes the jobs who's only purpose was to send a message to the frontend.
Now added a jobsDone() call to render which is called from main thread
when jobs are completed, so it's safe to sync data to frontend.
Added a task trace for the backend to front end synching.
Change-Id: I587462bea353c5d5a0065b542adcacef4dedb05f
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|