diff --git a/companion/src/modelslist.cpp b/companion/src/modelslist.cpp index 8e5f82369..337553e5a 100644 --- a/companion/src/modelslist.cpp +++ b/companion/src/modelslist.cpp @@ -732,7 +732,7 @@ void TreeModel::refresh() } unsigned mdlidx = model.moduleData[j].modelId; rxs.append(QString("%1").arg(uint(mdlidx), 2, 10, QChar('0'))); - if (!isModelIdUnique(mdlidx)) { + if (!isModelIdUnique(mdlidx, j)) { current->setHighlightRX(true); } } @@ -746,17 +746,15 @@ void TreeModel::refresh() } } -bool TreeModel::isModelIdUnique(unsigned modelIdx) +bool TreeModel::isModelIdUnique(unsigned modelIdx, unsigned module) { int cnt = 0; for (unsigned i=0; imodels.size(); i++) { ModelData & model = radioData->models[i]; if (!model.isEmpty()) { - for (unsigned j=0; j 1) { - return false; - } + if (model.moduleData[module].protocol != PULSES_OFF && model.moduleData[module].modelId == modelIdx) { + if (++cnt > 1) { + return false; } } } diff --git a/companion/src/modelslist.h b/companion/src/modelslist.h index d7e60684c..6aaebae92 100644 --- a/companion/src/modelslist.h +++ b/companion/src/modelslist.h @@ -149,7 +149,7 @@ class TreeModel : public QAbstractItemModel private: TreeItem * getItem(const QModelIndex & index) const; - bool isModelIdUnique(unsigned modelId); + bool isModelIdUnique(unsigned modelId, unsigned module); TreeItem * rootItem; RadioData * radioData;