Implement stingy selection mode for tuning patterns.

This commit is contained in:
Jeff Young 2024-01-17 00:34:06 +00:00
parent be6a2d018d
commit ace4ef7b16
3 changed files with 8 additions and 0 deletions

View File

@ -328,6 +328,7 @@ public:
{ {
aCount = 0; aCount = 0;
aLayers[aCount++] = LAYER_ANCHOR; aLayers[aCount++] = LAYER_ANCHOR;
aLayers[aCount++] = GetLayer();
} }
bool HitTest( const VECTOR2I& aPosition, int aAccuracy = 0 ) const override bool HitTest( const VECTOR2I& aPosition, int aAccuracy = 0 ) const override

View File

@ -35,6 +35,7 @@
#include <pcb_track.h> #include <pcb_track.h>
#include <macros.h> #include <macros.h>
#include <pcb_marker.h> #include <pcb_marker.h>
#include <pcb_generator.h>
#include <pcb_base_frame.h> #include <pcb_base_frame.h>
#include <pcbnew_settings.h> #include <pcbnew_settings.h>
#include <ratsnest/ratsnest_data.h> #include <ratsnest/ratsnest_data.h>
@ -290,6 +291,9 @@ void PCB_DRAW_PANEL_GAL::DisplayBoard( BOARD* aBoard, PROGRESS_REPORTER* aReport
for( ZONE* zone : aBoard->Zones() ) for( ZONE* zone : aBoard->Zones() )
m_view->Add( zone ); m_view->Add( zone );
for( PCB_GENERATOR* generator : aBoard->Generators() )
m_view->Add( generator );
// Ratsnest // Ratsnest
if( !aBoard->IsFootprintHolder() ) if( !aBoard->IsFootprintHolder() )
{ {

View File

@ -2660,6 +2660,9 @@ bool PCB_SELECTION_TOOL::Selectable( const BOARD_ITEM* aItem, bool checkVisibili
return false; return false;
} }
if( aItem->GetParentGroup() && aItem->GetParentGroup()->Type() == PCB_GENERATOR_T )
return false;
const ZONE* zone = nullptr; const ZONE* zone = nullptr;
const PCB_VIA* via = nullptr; const PCB_VIA* via = nullptr;
const PAD* pad = nullptr; const PAD* pad = nullptr;