diff options
author | Denis Shienkov <denis.shienkov@gmail.com> | 2019-11-04 18:33:03 +0300 |
---|---|---|
committer | Denis Shienkov <denis.shienkov@gmail.com> | 2019-11-11 12:41:32 +0000 |
commit | 6e6cd04eb6c8fe89ab7c1658d3c8602e86a4f111 (patch) | |
tree | 6a6e60fbefdf97db791d5dbe83068259f39b5f4e /src/plugins/baremetal/idebugserverprovider.cpp | |
parent | 0f429d5ed70caab609a4631c7d641661837620f5 (diff) | |
download | qt-creator-6e6cd04eb6c8fe89ab7c1658d3c8602e86a4f111.tar.gz |
BareMetal: Add additional 'engine' column to debugger providers view
Now for each debugger provider is displayed its debugger engine name
and a tooltip with a brief description. It is the helper feature, that
will be useful in future for users at choosing of a debug provider
compatible with a configured debugger.
Change-Id: I7721479d0d52cf3d34479a5f5f58a2369d0d9e8c
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/plugins/baremetal/idebugserverprovider.cpp')
-rw-r--r-- | src/plugins/baremetal/idebugserverprovider.cpp | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/src/plugins/baremetal/idebugserverprovider.cpp b/src/plugins/baremetal/idebugserverprovider.cpp index 8d687c2a26..ab2f023eab 100644 --- a/src/plugins/baremetal/idebugserverprovider.cpp +++ b/src/plugins/baremetal/idebugserverprovider.cpp @@ -41,6 +41,7 @@ namespace Internal { const char idKeyC[] = "BareMetal.IDebugServerProvider.Id"; const char displayNameKeyC[] = "BareMetal.IDebugServerProvider.DisplayName"; +const char engineTypeKeyC[] = "BareMetal.IDebugServerProvider.EngineType"; static QString createId(const QString &id) { @@ -97,6 +98,24 @@ QString IDebugServerProvider::typeDisplayName() const return m_typeDisplayName; } +void IDebugServerProvider::setTypeDisplayName(const QString &typeDisplayName) +{ + m_typeDisplayName = typeDisplayName; +} + +Debugger::DebuggerEngineType IDebugServerProvider::engineType() const +{ + return m_engineType; +} + +void IDebugServerProvider::setEngineType(Debugger::DebuggerEngineType engineType) +{ + if (m_engineType == engineType) + return; + m_engineType = engineType; + providerUpdated(); +} + bool IDebugServerProvider::operator==(const IDebugServerProvider &other) const { if (this == &other) @@ -106,7 +125,8 @@ bool IDebugServerProvider::operator==(const IDebugServerProvider &other) const const QString otherId = other.id().left(other.id().indexOf(':')); // We ignore displayname - return thisId == otherId; + return thisId == otherId + && m_engineType == other.m_engineType; } QVariantMap IDebugServerProvider::toMap() const @@ -114,6 +134,7 @@ QVariantMap IDebugServerProvider::toMap() const return { {idKeyC, m_id}, {displayNameKeyC, m_displayName}, + {engineTypeKeyC, m_engineType} }; } @@ -138,14 +159,11 @@ bool IDebugServerProvider::fromMap(const QVariantMap &data) { m_id = data.value(idKeyC).toString(); m_displayName = data.value(displayNameKeyC).toString(); + m_engineType = static_cast<Debugger::DebuggerEngineType>( + data.value(engineTypeKeyC, Debugger::NoEngineType).toInt()); return true; } -void IDebugServerProvider::setTypeDisplayName(const QString &typeDisplayName) -{ - m_typeDisplayName = typeDisplayName; -} - // IDebugServerProviderFactory QString IDebugServerProviderFactory::id() const |