diff --git a/pcbnew/footprint_edit_frame.cpp b/pcbnew/footprint_edit_frame.cpp index 5c54aa2440..f39da18f4d 100644 --- a/pcbnew/footprint_edit_frame.cpp +++ b/pcbnew/footprint_edit_frame.cpp @@ -1020,6 +1020,12 @@ void FOOTPRINT_EDIT_FRAME::setupUIConditions() return GetDisplayOptions().m_ContrastModeDisplay != HIGH_CONTRAST_MODE::NORMAL; }; + auto boardFlippedCond = + [this]( const SELECTION& ) + { + return GetCanvas()->GetView()->IsMirroredX(); + }; + auto footprintTreeCond = [this] (const SELECTION& ) { @@ -1027,6 +1033,7 @@ void FOOTPRINT_EDIT_FRAME::setupUIConditions() }; mgr->SetConditions( ACTIONS::highContrastMode, CHECK( highContrastCond ) ); + mgr->SetConditions( PCB_ACTIONS::flipBoard, CHECK( boardFlippedCond ) ); mgr->SetConditions( PCB_ACTIONS::toggleFootprintTree, CHECK( footprintTreeCond ) ); mgr->SetConditions( ACTIONS::print, ENABLE( haveFootprintCond ) ); diff --git a/pcbnew/menubar_footprint_editor.cpp b/pcbnew/menubar_footprint_editor.cpp index 0ee00aa37f..db1fdc13b0 100644 --- a/pcbnew/menubar_footprint_editor.cpp +++ b/pcbnew/menubar_footprint_editor.cpp @@ -172,6 +172,8 @@ void FOOTPRINT_EDIT_FRAME::ReCreateMenuBar() contrastModeSubMenu->Add( PCB_ACTIONS::layerAlphaInc ); viewMenu->Add( contrastModeSubMenu ); + viewMenu->Add( PCB_ACTIONS::flipBoard, ACTION_MENU::CHECK ); + viewMenu->AppendSeparator(); viewMenu->Add( PCB_ACTIONS::toggleFootprintTree, ACTION_MENU::CHECK );