Qt Creator API Core::ActionBuilder not present in coreplugin/actionmanager/actionmanager.h
-
I'm attempting to modify Qt Creator's Beautifier plugin.
Using Qt 6.6.0 with MSVC 2019 targeting Qt Creator 12.0.1 with plugin development; all obtained through the installer.I've done a sparse checkout of the Qt Creator repository, only including
/src/plugins/beautifier
.
I've opened Beautifier'sCMakeLists.txt
in Qt Creator and the project generates successfully once I've told it the path to my instance of Qt Creator.Beautifier makes repeated use of a class called
ActionBuilder
(link) in theCore
namespace, supposedly a part of the coreplugin API. The online docs (https://doc.qt.io/qtcreator-extending/core.html) and the header included in the plugin development component both have no mention of this class. As such I get undefined reference errors and the plugin fails to compile.Would I be better off checking out the v12.0.1 tag and working with an outdated version of the plugin, or using the very latest version of the whole IDE and plugin collection? Maybe I am spoiled by Qt's API stability but neither of these seem like a great idea.
-
ActionBuilder is entirely new API in master branch which is not present in 12.x. It is effectively a convenience wrapper around ActionManager::registerAction() and related functions. The existing plugins will be converted over time, the Beautifier plugin is one of the usual guinea pigs, so that's why you see it there, in master.
If you need to build explicitly against 12.0.1 you cannot use ActionBuilder. If you get compile errors from some code you checked out it means that you are probably not on the right branch.
-
I'm attempting to modify Qt Creator's Beautifier plugin.
Using Qt 6.6.0 with MSVC 2019 targeting Qt Creator 12.0.1 with plugin development; all obtained through the installer.I've done a sparse checkout of the Qt Creator repository, only including
/src/plugins/beautifier
.
I've opened Beautifier'sCMakeLists.txt
in Qt Creator and the project generates successfully once I've told it the path to my instance of Qt Creator.Beautifier makes repeated use of a class called
ActionBuilder
(link) in theCore
namespace, supposedly a part of the coreplugin API. The online docs (https://doc.qt.io/qtcreator-extending/core.html) and the header included in the plugin development component both have no mention of this class. As such I get undefined reference errors and the plugin fails to compile.Would I be better off checking out the v12.0.1 tag and working with an outdated version of the plugin, or using the very latest version of the whole IDE and plugin collection? Maybe I am spoiled by Qt's API stability but neither of these seem like a great idea.
-
ActionBuilder is entirely new API in master branch which is not present in 12.x. It is effectively a convenience wrapper around ActionManager::registerAction() and related functions. The existing plugins will be converted over time, the Beautifier plugin is one of the usual guinea pigs, so that's why you see it there, in master.
If you need to build explicitly against 12.0.1 you cannot use ActionBuilder. If you get compile errors from some code you checked out it means that you are probably not on the right branch.
-