ClangCodeModel: Use ActionBuilder for Generating Compilation DB action

Change-Id: I89d8345351cb6da26b7ae899066a7ddfdb17fe9c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
hjk
2024-01-17 15:55:58 +01:00
parent 610a110341
commit 74cf4efb8a

View File

@@ -127,17 +127,16 @@ void ClangCodeModelPlugin::generateCompilationDB()
void ClangCodeModelPlugin::createCompilationDBAction() void ClangCodeModelPlugin::createCompilationDBAction()
{ {
// generate compile_commands.json // generate compile_commands.json
m_generateCompilationDBAction = new ParameterAction( ActionBuilder(this, Constants::GENERATE_COMPILATION_DB)
.setParameterText(Tr::tr("Generate Compilation Database for \"%1\""),
Tr::tr("Generate Compilation Database"), Tr::tr("Generate Compilation Database"),
Tr::tr("Generate Compilation Database for \"%1\""), ActionBuilder::AlwaysEnabled)
ParameterAction::AlwaysEnabled, this); .bindContextAction(&m_generateCompilationDBAction)
Project *startupProject = ProjectManager::startupProject(); .setCommandAttribute(Command::CA_UpdateText)
if (startupProject) .setCommandDescription(m_generateCompilationDBAction->text());
if (Project *startupProject = ProjectManager::startupProject())
m_generateCompilationDBAction->setParameter(startupProject->displayName()); m_generateCompilationDBAction->setParameter(startupProject->displayName());
Command *command = ActionManager::registerAction(m_generateCompilationDBAction,
Constants::GENERATE_COMPILATION_DB);
command->setAttribute(Command::CA_UpdateText);
command->setDescription(m_generateCompilationDBAction->text());
connect(&m_generatorWatcher, &QFutureWatcher<GenerateCompilationDbResult>::finished, connect(&m_generatorWatcher, &QFutureWatcher<GenerateCompilationDbResult>::finished,
this, [this] { this, [this] {