Skip to content

Commit 1fdc648

Browse files
committed
Fix for renamed showfield
1 parent 8d44229 commit 1fdc648

File tree

2 files changed

+11
-6
lines changed

2 files changed

+11
-6
lines changed

src/Interface/Modules/Render/ViewScene.cc

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1785,9 +1785,14 @@ void ViewSceneDialog::sendGeometryFeedbackToState(int x, int y, const std::strin
17851785
state_->setTransientValue(Parameters::GeometryFeedbackInfo, vsf);
17861786
}
17871787

1788-
void ViewSceneDialog::updateMeshComponentSelection(const QString& moduleId, const QString& component, bool selected)
1789-
{
1790-
MeshComponentSelectionFeedback sel(moduleId.toStdString(), component.toStdString(), selected);
1788+
void ViewSceneDialog::updateMeshComponentSelection(const QString& showFieldName, const QString& component, bool selected)
1789+
{
1790+
auto name = showFieldName.toStdString();
1791+
auto moduleId = name;
1792+
auto renamed = name.find("(from ");
1793+
if (renamed != std::string::npos)
1794+
moduleId.assign(name.begin() + renamed + 6, name.end() - 1);
1795+
MeshComponentSelectionFeedback sel(moduleId, component.toStdString(), selected);
17911796
state_->setTransientValue(Parameters::MeshComponentSelection, sel);
17921797
}
17931798

src/Interface/Modules/Render/ViewSceneControlsDock.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,7 @@ std::vector<QString> VisibleItemManager::synchronize(const std::vector<GeometryB
366366
if (!containsItem(name))
367367
addRenderItem(name);
368368

369-
auto stateIter = showFieldStates.find(name.toStdString());
369+
auto stateIter = std::find_if(showFieldStates.begin(), showFieldStates.end(), [&name](const ShowFieldStatesMap::value_type& p) { return name.toStdString().find(p.first) != std::string::npos; });
370370
if (stateIter != showFieldStates.end())
371371
{
372372
auto state = stateIter->second;
@@ -394,7 +394,7 @@ void VisibleItemManager::addRenderItem(const QString& name)
394394

395395
itemList_->addTopLevelItem(item);
396396
item->setCheckState(0, Qt::Checked);
397-
if (name.startsWith("ShowField:"))
397+
if (name.contains("ShowField:"))
398398
{
399399
new QTreeWidgetItem(item, QStringList("Nodes"));
400400
new QTreeWidgetItem(item, QStringList("Edges"));
@@ -410,7 +410,7 @@ void VisibleItemManager::updateCheckStates(const QString& name, std::vector<bool
410410
return;
411411
}
412412
auto item = items[0];
413-
if (name.startsWith("ShowField:"))
413+
if (name.contains("ShowField:"))
414414
{
415415
auto nodes = item->child(2); //TODO: brittle sort order
416416
auto edges = item->child(0);

0 commit comments

Comments
 (0)