kicad/pcbnew
Seth Hillbrand e33bf78d96 Separate flashing check for connectivity
When building the connectivity database, we should not be using the
connectivity to check for shapes.

To make this deterministic, we introduce two flags (ALWAYS_FLASH and
NEVER_FLASH) that are used with connectivity building to determine
whether a pad is flashed for connectivity or not.  ZONE <-> PAD/VIA
connectivity will be checked with ALWAYS_FLASHED and all other
connectivity will be checked with NEVER_FLASHED if they are marked for
potential annular ring removal.  If they are not marked for removal,
they will be checked ALWAYS_FLASHED.

Fixes https://gitlab.com/kicad/code/kicad/issues/11114

(cherry picked from commit 442aae19d9)
2022-03-21 08:37:53 -07:00
..
autorouter Avoid potential divide by zero in footprint spreading PVS V609 2022-02-05 18:31:00 +00:00
board_stackup_manager pcbnew: fix incorrect calculation of the board thickness from board stackup. 2022-02-18 18:10:49 +01:00
connectivity Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
dialogs Fix expand variables for built-in 2022-03-18 16:46:36 -07:00
drc Pull some fixes back from master. 2022-03-18 12:49:54 -07:00
exporters GERBER_JOBFILE_WRITER: allows all *_User layers to be listed in *gbrjob file. 2022-02-17 15:35:49 +01:00
import_gfx Don't pre-scale the line width 2022-03-14 03:09:23 +00:00
microwave More wide-string declarations. 2022-02-05 13:29:00 +00:00
netlist_reader Use wxEmptyString instead of wxT( "" ) 2022-02-09 10:33:52 -08:00
plugins Fixing Eagle refs that do not work with KiCad 2022-02-25 15:45:30 -08:00
python Python, board.i: fix incorrect order of an include. 2022-03-20 18:47:14 +01:00
ratsnest Fix broken refactor from 0e65fe5 2021-12-07 12:38:05 -08:00
router Update end item before moving on track/via change 2022-03-02 09:21:52 -08:00
specctra_import_export Specctra import/export: fix some issues (tested only with FreeRouter): 2022-03-20 19:05:23 +01:00
tools Exclude hidden text from selection in FP Editor. 2022-03-16 15:15:01 +00:00
widgets APPEARANCE_CONTROLS: fix missing update when toggling a layer view. 2022-02-26 10:40:47 +01:00
CMakeLists.txt Fix a incorrect filename in a copy command (MSW specific). 2022-03-14 21:14:04 -04:00
Doxyfile_python
Doxyfile_xml
action_plugin.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
action_plugin.h Pcbnew header housekeeping round 1. 2021-06-04 09:08:38 -04:00
array_creator.cpp Array creator tool: Add option to assign unique reference designators 2021-10-25 22:38:49 +01:00
array_creator.h Array creator tool: Add option to assign unique reference designators 2021-10-25 22:38:49 +01:00
array_pad_number_provider.cpp We don't keep a CHANGELOG.TXT 2021-10-05 19:46:53 -07:00
array_pad_number_provider.h We don't keep a CHANGELOG.TXT 2021-10-05 19:46:53 -07:00
board.cpp Remove broken call to normalize outlines 2022-02-18 09:30:26 -08:00
board.h Remove broken call to normalize outlines 2022-02-18 09:30:26 -08:00
board_commit.cpp Make sure Cleanup handles shapes other than segments. 2022-03-02 15:26:02 +00:00
board_commit.h Make sure Cleanup handles shapes other than segments. 2022-03-02 15:26:02 +00:00
board_connected_item.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
board_connected_item.h More NULL expunging. 2021-07-20 07:27:18 -04:00
board_design_settings.cpp Copy Pad_Master when copying BOARD_DESIGN_SETTINGS. 2022-02-25 10:40:05 +00:00
board_item.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
board_item_container.h
build_BOM_from_board.cpp Pcbnew: honor footprint exclude from BOM setting. 2022-01-09 11:30:06 -05:00
cleanup_item.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
cleanup_item.h Pcbnew header housekeeping round 1. 2021-06-04 09:08:38 -04:00
collectors.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
collectors.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
convert_shape_list_to_polygon.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
convert_shape_list_to_polygon.h Push most of PCB_SHAPE impl down in to EDA_SHAPE. 2021-10-15 12:45:43 +01:00
cross-probing.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
edit.cpp Update call signature for SwitchLayer 2021-12-09 10:14:11 -08:00
edit_track_width.cpp Optimize DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS: a time consuming call (OnModify()) 2022-02-20 20:12:36 +01:00
edit_zone_helpers.cpp Connectivity rebuild must be done after commit push. 2022-02-25 23:15:44 +00:00
files.cpp Move temp save files to temporary directory 2022-03-08 10:05:04 -08:00
footprint.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
footprint.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
footprint_edit_frame.cpp On-the-fly language updating for appearance panel & selection filter. 2022-02-20 01:03:08 +00:00
footprint_edit_frame.h Use wxEmptyString instead of wxT( "" ) 2022-02-09 10:33:52 -08:00
footprint_editor_settings.cpp Use wxEmptyString instead of wxT( "" ) 2022-02-09 10:33:52 -08:00
footprint_editor_utils.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
footprint_info_impl.cpp Infobar warning if symbol loading was cancelled. 2022-02-27 18:20:25 +00:00
footprint_info_impl.h Pass wxString objects by reference instead of on the stack. 2021-07-27 08:41:27 -04:00
footprint_libraries_utils.cpp Freeze TEDIT in place 2022-03-01 15:53:07 -08:00
footprint_preview_panel.cpp Used cached footprints without check in preview 2021-02-25 15:46:52 -08:00
footprint_preview_panel.h Kill the last of wx/wx.h in headers 2021-06-07 17:59:20 -04:00
footprint_tree_pane.cpp Rename SCH_COMPONENT to SCH_SYMBOL. 2021-06-10 10:34:49 -04:00
footprint_tree_pane.h
footprint_viewer_frame.cpp Handle list double-click without shortcuts 2022-02-25 16:53:03 -08:00
footprint_viewer_frame.h Handle list double-click without shortcuts 2022-02-25 16:53:03 -08:00
footprint_wizard.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
footprint_wizard.h More wxString wide literals. 2022-02-04 23:12:09 +00:00
footprint_wizard_frame.cpp Use wxEmptyString instead of wxT( "" ) 2022-02-09 10:33:52 -08:00
footprint_wizard_frame.h Pcbnew header housekeeping round 1. 2021-06-04 09:08:38 -04:00
footprint_wizard_frame_functions.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
fp_shape.cpp Cache read arc data for stability 2022-03-08 10:33:49 -08:00
fp_shape.h Cache read arc data for stability 2022-03-08 10:33:49 -08:00
fp_text.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
fp_text.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
fp_text_grid_table.cpp Add hot-updating of units in common wxGrids. 2021-12-23 17:01:34 +00:00
fp_text_grid_table.h Add hot-updating of units in common wxGrids. 2021-12-23 17:01:34 +00:00
fp_tree_model_adapter.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
fp_tree_model_adapter.h
fp_tree_synchronizing_adapter.cpp Infobar warning if symbol loading was cancelled. 2022-02-27 18:20:25 +00:00
fp_tree_synchronizing_adapter.h
generate_footprint_info.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
generate_footprint_info.h
graphics_cleaner.cpp Make sure Cleanup handles shapes other than segments. 2022-03-02 15:26:02 +00:00
graphics_cleaner.h Make sure Cleanup handles shapes other than segments. 2022-03-02 15:26:02 +00:00
grid_layer_box_helpers.cpp Typo fix: Correct 'allow to' -> 'allows one to' 2021-04-03 13:39:50 +00:00
grid_layer_box_helpers.h
initpcb.cpp More NULL expunging. 2021-07-20 07:27:18 -04:00
invoke_pcb_dialog.h
io_mgr.cpp Kicad has many plugins. This one is for the pcb. 2021-11-25 12:56:46 +00:00
io_mgr.h Formatting and include cleanup. 2021-06-25 17:48:15 +01:00
kicad_clipboard.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
kicad_clipboard.h Kicad has many plugins. This one is for the pcb. 2021-11-25 12:56:46 +00:00
load_select_footprint.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
menubar_footprint_editor.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
menubar_pcb_editor.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
netinfo.h More wxString wide literals. 2022-02-04 23:12:09 +00:00
netinfo_item.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
netinfo_list.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pad.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pad.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pad_custom_shape_functions.cpp Handle invalid pads more gracefully 2022-02-02 13:36:24 -08:00
pcb_base_edit_frame.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcb_base_edit_frame.h Use progress reporting in more places when loading a board 2021-11-25 11:19:03 -05:00
pcb_base_frame.cpp Fix repaints getting done after the wrong dialog. 2022-02-13 18:37:44 +00:00
pcb_dimension.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_dimension.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_display_options.cpp Impleent persistence for no-connect pad setting. 2021-09-01 00:00:12 +01:00
pcb_draw_panel_gal.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcb_draw_panel_gal.h Use progress reporting in more places when loading a board 2021-11-25 11:19:03 -05:00
pcb_edit_frame.cpp Redraw pads when mask or paste layer is visible after board setup. 2022-03-10 17:54:38 +00:00
pcb_edit_frame.h Update call signature for SwitchLayer 2021-12-09 10:14:11 -08:00
pcb_expr_evaluator.cpp Fix typo which leads to catastrophic performance on boards with tons of zones. 2022-03-16 15:16:11 +00:00
pcb_expr_evaluator.h Add a compile error for ill-defined rules, and more performance. 2021-08-16 12:14:17 +01:00
pcb_group.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcb_item_containers.h Prefix TRACK, ARC and VIA. 2021-06-11 22:07:02 +01:00
pcb_layer_box_selector.cpp Rename layer ids file. 2021-07-29 16:03:25 +01:00
pcb_layer_box_selector.h Pcbnew header housekeeping round 1. 2021-06-04 09:08:38 -04:00
pcb_marker.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_marker.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_origin_transforms.cpp
pcb_origin_transforms.h
pcb_painter.cpp Reimplementation of 513486b0ec. 2022-03-03 23:29:22 +00:00
pcb_painter.h Use board's maxError value when possible. 2021-09-07 00:14:18 +01:00
pcb_plot_params.cpp Move plotter headers into include folder. 2021-08-18 16:38:31 -04:00
pcb_plot_params.h Move plotter headers into include folder. 2021-08-18 16:38:31 -04:00
pcb_plot_params_parser.h
pcb_screen.cpp Rename layer ids file. 2021-07-29 16:03:25 +01:00
pcb_shape.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_shape.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_target.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_target.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_text.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_text.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_track.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_track.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
pcb_view.cpp Round 2 of Worksheet -> Drawing Sheet. 2021-02-23 11:57:44 +00:00
pcb_view.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
pcbnew.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcbnew.h Add Python Tool to pcbnew 2021-06-01 20:18:24 +00:00
pcbnew.icns Add drop shadows to MacOS icons 2021-07-30 20:55:34 -07:00
pcbnew_config.cpp Normalize drawing sheet path to env vars & prj, not just prj. 2021-10-02 23:39:45 +01:00
pcbnew_config.h
pcbnew_doc.icns Add drop shadows to MacOS icons 2021-07-30 20:55:34 -07:00
pcbnew_id.h Add Python Tool to pcbnew 2021-06-01 20:18:24 +00:00
pcbnew_printout.cpp Reconcile two different printing bug fixes. 2022-03-02 12:07:43 +00:00
pcbnew_printout.h Prefix TRACK, ARC and VIA. 2021-06-11 22:07:02 +01:00
pcbnew_settings.cpp pcbnew print: minor fix: option edge.cut on all layers not stored. Fixes #10046 https://gitlab.com/kicad/code/kicad/issues/10046 2021-12-23 18:36:42 +01:00
pcbnew_settings.h pcbnew print: minor fix: option edge.cut on all layers not stored. Fixes #10046 https://gitlab.com/kicad/code/kicad/issues/10046 2021-12-23 18:36:42 +01:00
pcbplot.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcbplot.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
plot_board_layers.cpp plot_board_layers.cpp: Add missing layers (USer_x) in list 2022-03-08 14:44:53 +01:00
plot_brditems_plotter.cpp Gerber plotter: fix broken plot of SHAPE_LINE_CHAIN with arcs. 2022-02-28 18:26:26 +01:00
plotcontroller.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
plugin.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
sel_layer.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
toolbars_footprint_editor.cpp Add missing view controls for FP Editor Appearance Manager. 2021-10-31 16:33:03 +00:00
toolbars_footprint_viewer.cpp Remove vestiges of old zoom-auto architecture. 2021-09-19 18:32:15 +01:00
toolbars_pcb_editor.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
tracks_cleaner.cpp Improved performance for Cleanup Tracks & Vias. 2022-03-18 12:50:09 -07:00
tracks_cleaner.h Improved performance for Cleanup Tracks & Vias. 2022-03-18 12:50:09 -07:00
undo_redo.cpp Freeze TEDIT in place 2022-03-01 15:53:07 -08:00
zone.cpp Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
zone.h Separate flashing check for connectivity 2022-03-21 08:37:53 -07:00
zone_filler.cpp Improvements for pads/vias in zones which knockout other zones. 2022-03-05 15:40:30 +00:00
zone_filler.h Decouple PROGRESS_REPORTER interface from implementations. 2021-08-14 21:05:49 +01:00
zone_settings.cpp Allow Rule Areas on all physical layers. 2022-02-20 01:03:08 +00:00
zone_settings.h Allow Rule Areas on all physical layers. 2022-02-20 01:03:08 +00:00
zones.h
zones_functions_for_undo_redo.cpp Fix source comment / documentation typos 2021-06-09 19:32:58 +00:00
zones_functions_for_undo_redo.h