Skip to content

Commit cdb92b7

Browse files
committed
don't allow enabling edge selections without an index
1 parent efa47e1 commit cdb92b7

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

src/surface_mesh.cpp

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1425,14 +1425,25 @@ void SurfaceMesh::buildCustomOptionsUI() {
14251425

14261426
ImGui::Separator();
14271427

1428-
if (ImGui::MenuItem("Mark edges as used (selectable)", NULL, edgesHaveBeenUsed)) {
1429-
markEdgesAsUsed();
1430-
}
1431-
if (ImGui::MenuItem("Mark halfedges as used (selectable)", NULL, halfedgesHaveBeenUsed)) {
1432-
markHalfedgesAsUsed();
1433-
}
1434-
if (ImGui::MenuItem("Mark corners as used (selectable)", NULL, cornersHaveBeenUsed)) {
1435-
markCornersAsUsed();
1428+
1429+
if (ImGui::BeginMenu("Add to auto")) {
1430+
1431+
std::string edgeMsg = "edges";
1432+
bool edgeSelectionAllowed = !edgePerm.empty();
1433+
if (!edgeSelectionAllowed) {
1434+
edgeMsg += " [must set edge indices]";
1435+
}
1436+
if (ImGui::MenuItem(edgeMsg.c_str(), NULL, edgesHaveBeenUsed, edgeSelectionAllowed)) {
1437+
markEdgesAsUsed();
1438+
}
1439+
if (ImGui::MenuItem("halfedges", NULL, halfedgesHaveBeenUsed)) {
1440+
markHalfedgesAsUsed();
1441+
}
1442+
if (ImGui::MenuItem("corners", NULL, cornersHaveBeenUsed)) {
1443+
markCornersAsUsed();
1444+
}
1445+
1446+
ImGui::EndMenu();
14361447
}
14371448

14381449
ImGui::EndMenu();

0 commit comments

Comments
 (0)