Preparatory changes to enable Id ctor from char(&)[]

Change-Id: Ifacc56c1e5e1a13ec9e6a0e2d2f6f1087cb1fce3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
hjk
2024-09-03 11:11:22 +02:00
parent c83b4e64f7
commit 8c70159928
22 changed files with 45 additions and 41 deletions

View File

@@ -265,7 +265,7 @@ ModelManagerInterface::WorkingCopy ModelManagerInterface::workingCopyInternal()
}
void ModelManagerInterface::addTaskInternal(const QFuture<void> &result, const QString &msg,
const char *taskId) const
const Utils::Id taskId) const
{
Q_UNUSED(result)
qCDebug(qmljsLog) << "started " << taskId << " " << msg;

View File

@@ -12,6 +12,7 @@
#include <utils/environment.h>
#include <utils/filepath.h>
#include <utils/futuresynchronizer.h>
#include <utils/id.h>
#include <utils/qrcparser.h>
#include <utils/synchronizedvalue.h>
@@ -214,7 +215,7 @@ protected:
virtual void writeMessageInternal(const QString &msg) const;
virtual WorkingCopy workingCopyInternal() const;
virtual void addTaskInternal(const QFuture<void> &result, const QString &msg,
const char *taskId) const;
const Utils::Id taskId) const;
static void parseLoop(QSet<Utils::FilePath> &scannedPaths,
QSet<Utils::FilePath> &newLibraries,

View File

@@ -1193,7 +1193,7 @@ void AndroidConfigurations::applyConfig()
static bool matchKit(const ToolchainBundle &bundle, const Kit &kit)
{
using namespace ProjectExplorer::Constants;
for (const Id lang : {C_LANGUAGE_ID, CXX_LANGUAGE_ID}) {
for (const Id lang : {Id(C_LANGUAGE_ID), Id(CXX_LANGUAGE_ID)}) {
const Toolchain * const tc = ToolchainKitAspect::toolchain(&kit, lang);
if (!tc || tc->typeId() != Constants::ANDROID_TOOLCHAIN_TYPEID
|| tc->targetAbi() != bundle.targetAbi()) {

View File

@@ -49,6 +49,7 @@
using namespace Core;
using namespace ProjectExplorer;
using namespace Utils;
namespace ClangTools::Internal {
@@ -126,7 +127,7 @@ void ClangToolsPlugin::onCurrentEditorChanged()
void ClangToolsPlugin::registerAnalyzeActions()
{
const char * const menuGroupId = "ClangToolsCppGroup";
const Id menuGroupId = "ClangToolsCppGroup";
ActionContainer * const mtoolscpp
= ActionManager::actionContainer(CppEditor::Constants::M_TOOLS_CPP);
if (mtoolscpp) {
@@ -141,11 +142,11 @@ void ClangToolsPlugin::registerAnalyzeActions()
}
for (const auto &toolInfo : {std::make_tuple(ClangTidyTool::instance(),
Constants::RUN_CLANGTIDY_ON_PROJECT,
Constants::RUN_CLANGTIDY_ON_CURRENT_FILE),
Id(Constants::RUN_CLANGTIDY_ON_PROJECT),
Id(Constants::RUN_CLANGTIDY_ON_CURRENT_FILE)),
std::make_tuple(ClazyTool::instance(),
Constants::RUN_CLAZY_ON_PROJECT,
Constants::RUN_CLAZY_ON_CURRENT_FILE)}) {
Id(Constants::RUN_CLAZY_ON_PROJECT),
Id(Constants::RUN_CLAZY_ON_CURRENT_FILE))}) {
ClangTool * const tool = std::get<0>(toolInfo);
ActionManager::registerAction(tool->startAction(), std::get<1>(toolInfo));
Command *cmd = ActionManager::registerAction(tool->startOnCurrentFileAction(),

View File

@@ -127,8 +127,8 @@ static Toolchain *toolchainFromFlags(const Kit *kit, const QStringList &flags, c
if (compilerId != ProjectExplorer::Constants::CLANG_TOOLCHAIN_TYPEID &&
compilerId != ProjectExplorer::Constants::CLANG_CL_TOOLCHAIN_TYPEID) {
compilerId = HostOsInfo::isWindowsHost()
? ProjectExplorer::Constants::CLANG_CL_TOOLCHAIN_TYPEID
: ProjectExplorer::Constants::CLANG_TOOLCHAIN_TYPEID;
? Id(ProjectExplorer::Constants::CLANG_CL_TOOLCHAIN_TYPEID)
: Id(ProjectExplorer::Constants::CLANG_TOOLCHAIN_TYPEID);
if (kitToolchain->isValid() && kitToolchain->typeId() == compilerId)
return kitToolchain;
if ((toolchain = toolchainFromCompilerId(compilerId, language)))

View File

@@ -87,7 +87,7 @@ protected:
Qt::CaseSensitivity filterCaseSensitivity() const { return m_filterCaseSensitivity; }
void setFilteringEnabled(bool enable);
QWidget *filterWidget() const { return m_filterOutputLineEdit; }
void setupContext(const char *context, QWidget *widget);
void setupContext(const Utils::Id &context, QWidget *widget);
void setupContext(const Context &context, QWidget *widget);
void setZoomButtonsEnabled(bool enabled);

View File

@@ -252,7 +252,7 @@ void IOutputPane::setFilteringEnabled(bool enable)
m_filterOutputLineEdit->setEnabled(enable);
}
void IOutputPane::setupContext(const char *context, QWidget *widget)
void IOutputPane::setupContext(const Id &context, QWidget *widget)
{
return setupContext(Context(context), widget);
}

View File

@@ -28,6 +28,7 @@
using namespace CPlusPlus;
using namespace TextEditor;
using namespace Utils;
namespace CppEditor {
@@ -38,9 +39,9 @@ class VirtualFunctionProposalWidget : public GenericProposalWidget
public:
VirtualFunctionProposalWidget(bool openInSplit)
{
const char *id = openInSplit
? TextEditor::Constants::FOLLOW_SYMBOL_UNDER_CURSOR_IN_NEXT_SPLIT
: TextEditor::Constants::FOLLOW_SYMBOL_UNDER_CURSOR;
const Id id = openInSplit
? Id(TextEditor::Constants::FOLLOW_SYMBOL_UNDER_CURSOR_IN_NEXT_SPLIT)
: Id(TextEditor::Constants::FOLLOW_SYMBOL_UNDER_CURSOR);
if (Core::Command *command = Core::ActionManager::command(id))
m_sequence = command->keySequence();
setFragile(true);
@@ -144,7 +145,7 @@ private:
auto *item = new VirtualFunctionProposalItem(link, m_params.openInNextSplit);
item->setText(text);
item->setIcon(Icons::iconForSymbol(func));
item->setIcon(CPlusPlus::Icons::iconForSymbol(func));
return item;
}

View File

@@ -1217,7 +1217,7 @@ void DebuggerPluginPrivate::createDapDebuggerPerspective(QWidget *globalLogWindo
struct DapPerspective
{
QString name;
char const *runMode;
Id runMode;
bool forceSkipDeploy = false;
};
@@ -2043,7 +2043,7 @@ void DebuggerPluginPrivate::extensionsInitialized()
// If the CppEditor or QmlJS editor plugin is there, we want to add something to
// the editor context menu.
for (Id menuId : { CppEditor::Constants::M_CONTEXT, QmlJSEditor::Constants::M_CONTEXT }) {
for (Id menuId : {Id(CppEditor::Constants::M_CONTEXT), Id(QmlJSEditor::Constants::M_CONTEXT)}) {
if (ActionContainer *editorContextMenu = ActionManager::actionContainer(menuId)) {
auto cmd = editorContextMenu->addSeparator(m_watchCommand->context());
cmd->setAttribute(Command::CA_Hide);

View File

@@ -1678,7 +1678,7 @@ void FakeVimPlugin::editorOpened(IEditor *editor)
});
handler->findNextRequested.set([](bool reverse) {
triggerAction(reverse ? Core::Constants::FIND_PREVIOUS : Core::Constants::FIND_NEXT);
triggerAction(reverse ? Id(Core::Constants::FIND_PREVIOUS) : Id(Core::Constants::FIND_NEXT));
});
handler->foldToggle.set([this, handler](int depth) {

View File

@@ -88,7 +88,7 @@ DeployMcuProcessStep::DeployMcuProcessStep(ProjectExplorer::BuildStepList *bc, I
cmd.setLabelText(QmlProjectManager::Tr::tr("Command:"));
cmd.setValue(rootPath.pathAppended("/bin/qmlprojectexporter"));
const char *importPathConstant = QtSupport::Constants::KIT_QML_IMPORT_PATH;
const Id importPathConstant = QtSupport::Constants::KIT_QML_IMPORT_PATH;
const FilePath qulIncludeDir = FilePath::fromVariant(kit->value(importPathConstant));
QStringList includeDirs {
ProcessArgs::quoteArg(qulIncludeDir.toString()),
@@ -96,7 +96,7 @@ DeployMcuProcessStep::DeployMcuProcessStep(ProjectExplorer::BuildStepList *bc, I
ProcessArgs::quoteArg(qulIncludeDir.pathAppended("Shapes").toString())
};
const char *toolChainConstant = Internal::Constants::KIT_MCUTARGET_TOOLCHAIN_KEY;
const Id toolChainConstant = Internal::Constants::KIT_MCUTARGET_TOOLCHAIN_KEY;
QStringList arguments = {
ProcessArgs::quoteArg(buildSystem()->projectFilePath().toString()),
"--platform", findKitInformation(kit, "QUL_PLATFORM"),

View File

@@ -1614,7 +1614,7 @@ static Toolchains detectClangClToolChainInPath(const FilePath &clangClPath,
.arg(QLatin1String(isDefault ? "Default " : ""))
.arg(targetAbi.wordWidth())
.arg(Abi::toString(targetAbi.osFlavor()).toUpper());
for (auto language : {Constants::C_LANGUAGE_ID, Constants::CXX_LANGUAGE_ID}) {
for (auto language : {Id(Constants::C_LANGUAGE_ID), Id(Constants::CXX_LANGUAGE_ID)}) {
ClangClToolchain *tc = static_cast<ClangClToolchain *>(
Utils::findOrDefault(alreadyKnown, [&](Toolchain *tc) -> bool {
if (tc->typeId() != Constants::CLANG_CL_TOOLCHAIN_TYPEID)
@@ -1868,7 +1868,7 @@ static Toolchains findOrCreateToolchains(const ToolchainDetector &detector,
const QString &varsBatArg)
{
Toolchains res;
for (auto language : {Constants::C_LANGUAGE_ID, Constants::CXX_LANGUAGE_ID}) {
for (auto language : {Id(Constants::C_LANGUAGE_ID), Id(Constants::CXX_LANGUAGE_ID)}) {
Toolchain *tc = Utils::findOrDefault(detector.alreadyKnown, [&](Toolchain *tc) -> bool {
if (tc->typeId() != Constants::MSVC_TOOLCHAIN_TYPEID)
return false;
@@ -1921,7 +1921,7 @@ static void detectCppBuildTools2015(Toolchains *list)
Abi::WindowsMsvc2015Flavor,
e.format,
e.wordSize);
for (auto language : {Constants::C_LANGUAGE_ID, Constants::CXX_LANGUAGE_ID}) {
for (auto language : {Id(Constants::C_LANGUAGE_ID), Id(Constants::CXX_LANGUAGE_ID)}) {
auto tc = new MsvcToolchain(Constants::MSVC_TOOLCHAIN_TYPEID);
tc->setupVarsBat(abi, vcVarsBat, QLatin1String(e.varsBatArg));
tc->setDisplayName(name + QLatin1String(e.postFix));

View File

@@ -480,7 +480,7 @@ void ToolchainKitAspectFactory::addToMacroExpander(Kit *kit, MacroExpander *expa
QList<OutputLineParser *> ToolchainKitAspectFactory::createOutputParsers(const Kit *k) const
{
for (const Id langId : {Constants::CXX_LANGUAGE_ID, Constants::C_LANGUAGE_ID}) {
for (const Id langId : {Id(Constants::CXX_LANGUAGE_ID), Id(Constants::C_LANGUAGE_ID)}) {
if (const Toolchain * const tc = ToolchainKitAspect::toolchain(k, langId))
return tc->createOutputParsers();
}

View File

@@ -51,6 +51,8 @@
#include <exception>
using namespace Utils;
namespace QmlDesigner {
inline static QString captionForModelNode(const ModelNode &modelNode)
@@ -123,9 +125,8 @@ void DesignerActionManager::polishActions() const
for (auto *action : actions) {
if (!action->menuId().isEmpty()) {
const QString id = QString("QmlDesigner.%1").arg(QString::fromLatin1(action->menuId()));
Core::Command *cmd = Core::ActionManager::registerAction(action->action(), id.toLatin1().constData(), qmlDesignerUIContext);
const Id id = Id("QmlDesigner.").withSuffix(action->menuId());
Core::Command *cmd = Core::ActionManager::registerAction(action->action(), id, qmlDesignerUIContext);
cmd->setDefaultKeySequence(action->action()->shortcut());
cmd->setDescription(action->action()->toolTip());

View File

@@ -129,7 +129,7 @@ Edit3DWidget::Edit3DWidget(Edit3DView *view)
// Register action as creator command to make it configurable
Core::Command *command = Core::ActionManager::registerAction(
a, action->menuId().constData(), context);
a, Utils::Id::fromName(action->menuId()), context);
m_actionToCommandHash.insert(a, command);
command->setDefaultKeySequence(a->shortcut());
if (proxyGroup)

View File

@@ -26,6 +26,8 @@
#include <projectexplorer/runconfiguration.h>
#include <projectexplorer/runcontrol.h>
using namespace Utils;
namespace QmlPreview {
using QmlPreviewRunControlList = QList<ProjectExplorer::RunControl *>;
}
@@ -66,9 +68,9 @@ QmlPreviewWidgetPlugin::QmlPreviewWidgetPlugin()
Core::Context globalContext;
auto registerCommand = [&globalContext](ActionInterface *action) {
const QString id = QStringView(u"QmlPreview.%1").arg(QString::fromLatin1(action->menuId()));
const Id id = Id("QmlPreview.").withSuffix(action->menuId());
Core::Command *cmd = Core::ActionManager::registerAction(action->action(),
id.toLatin1().constData(),
id,
globalContext);
cmd->setDefaultKeySequence(action->action()->shortcut());

View File

@@ -339,7 +339,7 @@ void ModelManager::updateDefaultProjectInfo()
void ModelManager::addTaskInternal(const QFuture<void> &result, const QString &msg,
const char *taskId) const
const Id taskId) const
{
ProgressManager::addTask(result, msg, taskId);
}

View File

@@ -12,8 +12,6 @@
QT_FORWARD_DECLARE_CLASS(QTimer)
QT_FORWARD_DECLARE_CLASS(QLocale)
namespace Utils { class MimeType; }
namespace QmlJSTools {
namespace Internal {
@@ -31,7 +29,7 @@ protected:
void writeMessageInternal(const QString &msg) const override;
WorkingCopy workingCopyInternal() const override;
void addTaskInternal(const QFuture<void> &result, const QString &msg,
const char *taskId) const override;
const Utils::Id taskId) const override;
ProjectInfo defaultProjectInfoForProject(
ProjectExplorer::Project *project, const Utils::FilePaths &hiddenRccFolders) const override;
private:

View File

@@ -229,8 +229,8 @@ Toolchains QnxConfiguration::createToolChains(const QnxTarget &target)
{
Toolchains toolchains;
for (const Id language : {ProjectExplorer::Constants::C_LANGUAGE_ID,
ProjectExplorer::Constants::CXX_LANGUAGE_ID}) {
for (const Id language : {Id(ProjectExplorer::Constants::C_LANGUAGE_ID),
Id(ProjectExplorer::Constants::CXX_LANGUAGE_ID)}) {
auto toolchain = new QnxToolchain;
toolchain->setDetection(Toolchain::ManualDetection);
toolchain->setLanguage(language);

View File

@@ -77,7 +77,7 @@ int ExamplesWelcomePage::priority() const
Id ExamplesWelcomePage::id() const
{
return m_showExamples ? "Examples" : "Tutorials";
return m_showExamples ? Id("Examples") : Id("Tutorials");
}
static FilePath copyToAlternativeLocation(const FilePath &proFile,

View File

@@ -997,7 +997,7 @@ void MemcheckTool::setupRunner(MemcheckToolRunner *runTool)
QAction *action = m_filterMenu->addAction(file.fileName());
action->setToolTip(file.toUserOutput());
connect(action, &QAction::triggered, this, [file] {
EditorManager::openEditorAt(file, 0);
EditorManager::openEditorAt(file);
});
m_suppressionActions.append(action);
}

View File

@@ -124,8 +124,8 @@ static Toolchains doAutoDetect(const ToolchainDetector &detector)
WebAssemblyEmSdk::addToEnvironment(sdk, env);
Toolchains result;
for (auto languageId : {ProjectExplorer::Constants::C_LANGUAGE_ID,
ProjectExplorer::Constants::CXX_LANGUAGE_ID}) {
for (auto languageId : {Id(ProjectExplorer::Constants::C_LANGUAGE_ID),
Id(ProjectExplorer::Constants::CXX_LANGUAGE_ID)}) {
auto toolChain = new WebAssemblyToolChain;
toolChain->setLanguage(languageId);
toolChain->setDetection(Toolchain::AutoDetection);