From 5cc8abd8bd7911dbf3ac0fce43caa88249cc94c2 Mon Sep 17 00:00:00 2001 From: Cristian Adam Date: Mon, 6 May 2024 16:33:20 +0200 Subject: [PATCH] CMakePM: Add "Clear CMake Configuration" to context menu Fixes: QTCREATORBUG-24658 Fixes: QTCREATORBUG-30771 Change-Id: I6429e861a77663513ed3243396bdd67042c11faf Reviewed-by: Reviewed-by: Alessandro Portale --- src/plugins/cmakeprojectmanager/cmakeprojectconstants.h | 1 + src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h b/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h index 45c90a0b627..ea9461ba32c 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h +++ b/src/plugins/cmakeprojectmanager/cmakeprojectconstants.h @@ -11,6 +11,7 @@ const char RUN_CMAKE[] = "CMakeProject.RunCMake"; const char RUN_CMAKE_PROFILER[] = "CMakeProject.RunCMakeProfiler"; const char RUN_CMAKE_DEBUGGER[] = "CMakeProject.RunCMakeDebugger"; const char CLEAR_CMAKE_CACHE[] = "CMakeProject.ClearCache"; +const char CLEAR_CMAKE_CACHE_CONTEXT_MENU[] = "CMakeProject.ClearCacheContextMenu"; const char RESCAN_PROJECT[] = "CMakeProject.RescanProject"; const char RUN_CMAKE_CONTEXT_MENU[] = "CMakeProject.RunCMakeContextMenu"; const char BUILD_FILE_CONTEXT_MENU[] = "CMakeProject.BuildFileContextMenu"; diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp index ba13edbb32e..9730c957fbf 100644 --- a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp @@ -110,6 +110,14 @@ CMakeManager::CMakeManager() .addToContainer(PEC::M_PROJECTCONTEXT, PEC::G_PROJECT_BUILD) .addOnTriggered(this, [this] { runCMake(ProjectTree::currentBuildSystem()); }); + ActionBuilder(this, Constants::CLEAR_CMAKE_CACHE_CONTEXT_MENU) + .setText(Tr::tr("Clear CMake Configuration")) + .setContext(projectContext) + .bindContextAction(&m_clearCMakeCacheAction) + .setCommandAttribute(Command::CA_Hide) + .addToContainer(PEC::M_PROJECTCONTEXT, PEC::G_PROJECT_REBUILD) + .addOnTriggered(this, [this] { clearCMakeCache(ProjectManager::startupBuildSystem()); }); + ActionBuilder(this, Constants::BUILD_FILE_CONTEXT_MENU) .setText(Tr::tr("Build")) .bindContextAction(&m_buildFileContextMenu)