QDoc: Expand and refine QML node searching
The previous implementation only considered QML properties, didn't
handle nested properties well, and did not allow the search to
distinguish between properties and attached properties.
Searches now walk the search path, dereferencing properties to access
their types and continue the search. Methods are specifically searched
for if parentheses are used with the last path element.
Fallbacks to more general searches are used to catch cases that the
current approach may miss.
Pick-to: 6.12
Task-number: QTBUG-137279
Change-Id: Ie32f203cfe0f15ffcbc324f7157e6d97f9f0fdb9
Reviewed-by: David Boddie <david.boddie@qt.io>
Reviewed-by: Topi Reinio <topi.reinio@qt.io>
| commit | b6f337d72becba1eb87afdac0a088eaad90621e6 |
| parent | 0e5f27d60a5d45e239c877b030da7314f559792f |
| author | David Boddie <david.boddie@qt.io> |
| committer | Paul Wicking <paul.wicking@qt.io> |
| commit time | Wed, 21 Oct 2026 18:27:58 +0000 |
- M src/qdoc/qdoc/src/qdoc/qdocdatabase.cpp
- M src/qdoc/qdoc/src/qdoc/qdocdatabase.h
- M src/qdoc/qdoc/tests/qdoc/CMakeLists.txt
- A src/qdoc/qdoc/tests/qdoc/node/catch_findflags.cpp
- M src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_properties/expected/qml-testmodule-baseitem-members.html
- M src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_properties/expected/qml-testmodule-baseitem.html
- M src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_properties/expected/qmlproperties.index
- M src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_properties/expected/testmodule-qmlmodule.html
- M src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_properties/src/types.qdoc
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_property_paths/expected/html/qml-testmodule-baseitem-members.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_property_paths/expected/html/qml-testmodule-baseitem.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_property_paths/expected/html/qmlpropertypaths.index
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_property_paths/expected/html/testmodule-qmlmodule.html
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_property_paths/qml_property_paths.qdocconf
- A src/qdoc/qdoc/tests/validateqdocoutputfiles/testdata/qml_property_paths/src/types.qdoc