Debugger: Work around linguist issues

It gets confused by templates that use "class" (QTBUG-55478), and by
certain complicated namespace usages (QTBUG-64007).

Change-Id: I6029922344f6718b5893dd07daee0953366c442e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Eike Ziller
2017-10-24 13:10:16 +02:00
parent a646196011
commit 14e6a30ebf

View File

@@ -202,7 +202,7 @@ public:
QPersistentModelIndex m_currentIndex; QPersistentModelIndex m_currentIndex;
}; };
template <class Predicate> template <typename Predicate>
void forAllDebuggers(const Predicate &pred) void forAllDebuggers(const Predicate &pred)
{ {
d->m_model->forItemsAtLevel<2>([pred](DebuggerTreeItem *titem) { d->m_model->forItemsAtLevel<2>([pred](DebuggerTreeItem *titem) {
@@ -210,7 +210,7 @@ void forAllDebuggers(const Predicate &pred)
}); });
} }
template <class Predicate> template <typename Predicate>
const DebuggerItem *findDebugger(const Predicate &pred) const DebuggerItem *findDebugger(const Predicate &pred)
{ {
DebuggerTreeItem *titem = d->m_model->findItemAtLevel<2>([pred](DebuggerTreeItem *titem) { DebuggerTreeItem *titem = d->m_model->findItemAtLevel<2>([pred](DebuggerTreeItem *titem) {
@@ -624,31 +624,6 @@ void DebuggerOptionsPage::finish()
d->m_model->cancel(); d->m_model->cancel();
} }
} // namespace Internal
// --------------------------------------------------------------------------
// DebuggerItemManager
// --------------------------------------------------------------------------
DebuggerItemManager::DebuggerItemManager()
{
new DebuggerItemManagerPrivate;
connect(ICore::instance(), &ICore::saveSettingsRequested,
this, [] { d->saveDebuggers(); });
}
DebuggerItemManager::~DebuggerItemManager()
{
delete d;
}
QList<DebuggerItem> DebuggerItemManager::debuggers()
{
QList<DebuggerItem> result;
forAllDebuggers([&result](const DebuggerItem &item) { result.append(item); });
return result;
}
void DebuggerItemManagerPrivate::autoDetectCdbDebuggers() void DebuggerItemManagerPrivate::autoDetectCdbDebuggers()
{ {
FileNameList cdbs; FileNameList cdbs;
@@ -826,42 +801,6 @@ void DebuggerItemManagerPrivate::readLegacyDebuggers(const FileName &file)
} }
} }
const DebuggerItem *DebuggerItemManager::findByCommand(const FileName &command)
{
return findDebugger([command](const DebuggerItem &item) {
return item.command() == command;
});
}
const DebuggerItem *DebuggerItemManager::findById(const QVariant &id)
{
return findDebugger([id](const DebuggerItem &item) {
return item.id() == id;
});
}
const DebuggerItem *DebuggerItemManager::findByEngineType(DebuggerEngineType engineType)
{
return findDebugger([engineType](const DebuggerItem &item) {
return item.engineType() == engineType;
});
}
QVariant DebuggerItemManager::registerDebugger(const DebuggerItem &item)
{
return d->registerDebugger(item);
}
void DebuggerItemManager::deregisterDebugger(const QVariant &id)
{
d->m_model->forItemsAtLevel<2>([id](DebuggerTreeItem *titem) {
if (titem->m_item.id() == id)
d->m_model->destroyItem(titem);
});
}
namespace Internal {
static FileName userSettingsFileName() static FileName userSettingsFileName()
{ {
QFileInfo settingsLocation(ICore::settings()->fileName()); QFileInfo settingsLocation(ICore::settings()->fileName());
@@ -1000,4 +939,62 @@ void DebuggerItemManagerPrivate::saveDebuggers()
} }
} // namespace Internal } // namespace Internal
// --------------------------------------------------------------------------
// DebuggerItemManager
// --------------------------------------------------------------------------
DebuggerItemManager::DebuggerItemManager()
{
new DebuggerItemManagerPrivate;
connect(ICore::instance(), &ICore::saveSettingsRequested,
this, [] { d->saveDebuggers(); });
}
DebuggerItemManager::~DebuggerItemManager()
{
delete d;
}
QList<DebuggerItem> DebuggerItemManager::debuggers()
{
QList<DebuggerItem> result;
forAllDebuggers([&result](const DebuggerItem &item) { result.append(item); });
return result;
}
const DebuggerItem *DebuggerItemManager::findByCommand(const FileName &command)
{
return findDebugger([command](const DebuggerItem &item) {
return item.command() == command;
});
}
const DebuggerItem *DebuggerItemManager::findById(const QVariant &id)
{
return findDebugger([id](const DebuggerItem &item) {
return item.id() == id;
});
}
const DebuggerItem *DebuggerItemManager::findByEngineType(DebuggerEngineType engineType)
{
return findDebugger([engineType](const DebuggerItem &item) {
return item.engineType() == engineType;
});
}
QVariant DebuggerItemManager::registerDebugger(const DebuggerItem &item)
{
return d->registerDebugger(item);
}
void DebuggerItemManager::deregisterDebugger(const QVariant &id)
{
d->m_model->forItemsAtLevel<2>([id](DebuggerTreeItem *titem) {
if (titem->m_item.id() == id)
d->m_model->destroyItem(titem);
});
}
} // namespace Debugger } // namespace Debugger