From 396213fa30b22bf8a4c00fbb519c91954ceeb334 Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Wed, 21 Jul 2021 17:55:27 +0200 Subject: [PATCH] 3D viewer: shows 3D shapes hide/show option in main menubar (Preferences) Although these options are already in Preferences/Preferences/3D Viewer, a direct access is useful because it avoid rebuilding the 3D scene, not needed to hide/show 3D shapes. --- 3d-viewer/3d_viewer/3d_menubar.cpp | 7 +++++++ 3d-viewer/3d_viewer/eda_3d_viewer.cpp | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/3d-viewer/3d_viewer/3d_menubar.cpp b/3d-viewer/3d_viewer/3d_menubar.cpp index 4827337a5f..18d2371fbb 100644 --- a/3d-viewer/3d_viewer/3d_menubar.cpp +++ b/3d-viewer/3d_viewer/3d_menubar.cpp @@ -118,7 +118,14 @@ void EDA_3D_VIEWER_FRAME::CreateMenuBar() prefsMenu->AppendSeparator(); + prefsMenu->Add( EDA_3D_ACTIONS::attributesTHT, ACTION_MENU::CHECK ); + prefsMenu->Add( EDA_3D_ACTIONS::attributesSMD, ACTION_MENU::CHECK ); + prefsMenu->Add( EDA_3D_ACTIONS::attributesVirtual, ACTION_MENU::CHECK ); + + prefsMenu->AppendSeparator(); + prefsMenu->Add( EDA_3D_ACTIONS::showAxis, ACTION_MENU::CHECK ); + prefsMenu->Add( EDA_3D_ACTIONS::showBoundingBoxes, ACTION_MENU::CHECK ); // Grid submenu ACTION_MENU* gridSubmenu = new ACTION_MENU( false, tool ); diff --git a/3d-viewer/3d_viewer/eda_3d_viewer.cpp b/3d-viewer/3d_viewer/eda_3d_viewer.cpp index 10ae80b782..76ade67e7d 100644 --- a/3d-viewer/3d_viewer/eda_3d_viewer.cpp +++ b/3d-viewer/3d_viewer/eda_3d_viewer.cpp @@ -202,6 +202,13 @@ void EDA_3D_VIEWER_FRAME::setupUIConditions() RegisterUIUpdateHandler( ID_RENDER_CURRENT_VIEW, ACTION_CONDITIONS().Check( raytracingCondition ) ); + mgr->SetConditions( EDA_3D_ACTIONS::attributesTHT, + FlagCheck( FL_FP_ATTRIBUTES_NORMAL ) ); + mgr->SetConditions( EDA_3D_ACTIONS::attributesSMD, + FlagCheck( FL_FP_ATTRIBUTES_NORMAL_INSERT ) ); + mgr->SetConditions( EDA_3D_ACTIONS::attributesVirtual, + FlagCheck( FL_FP_ATTRIBUTES_VIRTUAL ) ); + mgr->SetConditions( EDA_3D_ACTIONS::showBoundingBoxes, FlagCheck( FL_RENDER_OPENGL_SHOW_MODEL_BBOX ) ); mgr->SetConditions( EDA_3D_ACTIONS::showAxis,