From 528e791d6e89f98189c30354c519360d9052f2f7 Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Sun, 5 Jul 2026 15:55:09 -0700 Subject: [PATCH] Add context menus to joint/control sliders for resetting values. PiperOrigin-RevId: 942950247 Change-Id: I5d1c011f85d7d9abe6b19a699bb34af803998627 --- src/experimental/platform/ux/gui.cc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/experimental/platform/ux/gui.cc b/src/experimental/platform/ux/gui.cc index 794569ab..33fab1f2 100644 --- a/src/experimental/platform/ux/gui.cc +++ b/src/experimental/platform/ux/gui.cc @@ -1263,6 +1263,12 @@ void JointsGui(const mjModel* model, const mjData* data, const int data_adr = model->jnt_qposadr[i]; ImGui_Slider(name, &data->qpos[data_adr], min, max); + if (ImGui::BeginPopupContextItem()) { + if (ImGui::MenuItem("Reset to default")) { + data->qpos[data_adr] = model->qpos0[data_adr]; + } + ImGui::EndPopup(); + } } ImGui::PopItemWidth(); @@ -1302,6 +1308,12 @@ void ControlsGui(const mjModel* model, const mjData* data, max = model->actuator_ctrlrange[2 * i + 1]; } ImGui_Slider(name, &data->ctrl[i], min, max); + if (ImGui::BeginPopupContextItem()) { + if (ImGui::MenuItem("Reset to 0")) { + data->ctrl[i] = mju_clip(0.0, min, max); + } + ImGui::EndPopup(); + } } ImGui::PopItemWidth();