std::set<BOARD_ITEM*> GRID_HELPER::queryVisible( const BOX2I& aArea ) const { std::set<BOARD_ITEM*> items; std::vector<KIGFX::VIEW::LAYER_ITEM_PAIR> selectedItems; std::vector<KIGFX::VIEW::LAYER_ITEM_PAIR>::iterator it, it_end; m_frame->GetGalCanvas()->GetView()->Query( aArea, selectedItems ); // Get the list of selected items for( it = selectedItems.begin(), it_end = selectedItems.end(); it != it_end; ++it ) { BOARD_ITEM* item = static_cast<BOARD_ITEM*>( it->first ); if( item->ViewIsVisible() ) items.insert ( item ); } return items; }