kicad/pcbnew
Seth Hillbrand 586fddeec1 Avoid case where whole line is new head
If the whole line shifts, we may have no points of the old tail in the
new line.  In this case, we may not only not find the split point but we
may also have fewer points in the new line than were in the old head.
Clamping to the maximum potential point count prevents creating invalid
lines

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16591
2024-04-19 17:54:29 -07:00
..
api Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
autorouter Split out table editing and table cell editing. 2024-02-24 20:05:51 +00:00
board_stackup_manager Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
connectivity Don't count removed zone layers 2024-03-11 23:38:10 +00:00
dialogs ADDED: Fuse Shapes option for STEP/BREP/GLTF export. 2024-04-19 03:43:26 +03:00
drc Handle DRC rules that limit PTH/NPTH in courtyards 2024-04-16 22:46:38 +00:00
exporters ADDED: Fuse Shapes option for STEP/BREP/GLTF export. 2024-04-19 03:43:26 +03:00
generators Fix more build warnings 2024-03-23 08:53:11 -04:00
git Rename PCB IO classes/files 2023-12-24 01:22:21 +00:00
import_gfx Don't import invalid polygons. 2024-02-25 12:28:19 +00:00
microwave Schematic editor Table Properties and commenting for QuasiModal usage. 2024-03-10 12:18:50 +00:00
navlib Introduce action friendly names 2023-10-27 23:58:29 +01:00
netlist_reader Allow non-identical schematic/pcb nets 2024-04-15 17:54:44 -07:00
pcb_io IPC2581 fixes 2024-04-16 13:25:09 -07:00
python Fix SWIG wrapper for AddPrimitive 2024-04-04 23:09:05 -04:00
ratsnest Ensure that we are not calculating self-collision 2024-04-14 13:50:01 -07:00
router Avoid case where whole line is new head 2024-04-19 17:54:29 -07:00
specctra_import_export Remove non-const access to board-owned items 2024-03-26 18:36:23 -04:00
teardrop Move PCBNew overrides to nullable properties. 2024-02-24 20:05:51 +00:00
tools Fix deletion of items in pcbnew 2024-04-18 23:37:37 +01:00
widgets Explicit lambda capture 2024-04-12 22:54:59 -04:00
zone_manager Remove non-const access to board-owned items 2024-03-26 18:36:23 -04:00
CMakeLists.txt Strip out no longer needed links on the top executables 2024-04-14 07:52:02 -04:00
Doxyfile_python
Doxyfile_xml
action_plugin.cpp
action_plugin.h
array_creator.cpp Split out table editing and table cell editing. 2024-02-24 20:05:51 +00:00
array_creator.h
array_pad_number_provider.cpp
array_pad_number_provider.h
board.cpp BOARD::DeleteMARKERs fix bug: missing m_itemByIdCache handling. 2024-04-16 12:00:40 +02:00
board.h Add composite update callback to BOARD_LISTENER 2024-04-04 22:29:47 +00:00
board_commit.cpp Add composite update callback to BOARD_LISTENER 2024-04-04 22:29:47 +00:00
board_commit.h More active tracking of undo/redo items. 2024-01-27 20:02:40 +00:00
board_connected_item.cpp Use Title Case for property names 2023-11-29 01:23:35 +00:00
board_connected_item.h Move PCBNew overrides to nullable properties. 2024-02-24 20:05:51 +00:00
board_design_settings.cpp Make sure users don't run into min text size. 2024-03-23 15:50:45 +00:00
board_item.cpp Parent property should not be accessible from the UI 2024-01-23 20:41:34 -05:00
board_item_container.h Improve clarity of default zone settings. 2024-02-03 13:22:16 +00:00
build_BOM_from_board.cpp Kick the wildcards and file exts into a static class, export it from kicommon 2023-12-27 21:10:01 -05:00
cleanup_item.cpp
cleanup_item.h
collectors.cpp ADDED: PCB tables. 2024-02-24 20:05:51 +00:00
collectors.h Improve/fix Expand connection for graphics. 2023-12-04 09:52:31 +03:00
convert_shape_list_to_polygon.cpp performance efficiencies 2023-12-18 18:45:02 +00:00
convert_shape_list_to_polygon.h Coding policy, Doxygen comment, and spelling fixes. 2023-10-12 12:27:30 -04:00
cross-probing.cpp Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
edit.cpp Schematic editor Table Properties and commenting for QuasiModal usage. 2024-03-10 12:18:50 +00:00
edit_track_width.cpp Hook up via size & drill constraints to editors. 2023-10-21 19:10:38 +01:00
edit_zone_helpers.cpp Split out table editing and table cell editing. 2024-02-24 20:05:51 +00:00
files.cpp Fix Eagle board import when footprint library versions exist. 2024-03-14 09:45:05 -04:00
fix_board_shape.cpp Fix some warnings. 2023-10-31 04:25:19 +03:00
fix_board_shape.h Add a routine for joining PCB shapes. 2023-09-04 06:46:24 +03:00
footprint.cpp Be a little more careful about courtyard caches 2024-04-18 09:32:00 -07:00
footprint.h Add missing file mod 2024-04-18 09:48:30 -07:00
footprint_chooser_frame.cpp Better locality-of-reference for footprint chooser filters. 2024-03-23 12:48:52 +00:00
footprint_chooser_frame.h Better locality-of-reference for footprint chooser filters. 2024-03-23 12:48:52 +00:00
footprint_edit_frame.cpp Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
footprint_edit_frame.h Push library management into IO_BASE 2023-12-27 01:21:53 +00:00
footprint_editor_settings.cpp Make sure users don't run into min text size. 2024-03-23 15:50:45 +00:00
footprint_editor_utils.cpp Table bug fixes. 2024-03-11 22:58:12 +00:00
footprint_info_impl.cpp Deconflict some LIB_TREE_ITEM APIs so they can remain non-const. 2024-04-04 13:18:55 +01:00
footprint_info_impl.h send multivector.h and sync_queue.h to core 2023-09-08 07:14:34 -04:00
footprint_libraries_utils.cpp Update a few strings based on new string freeze policy. 2024-02-05 15:49:57 +00:00
footprint_preview_panel.cpp Pass symbol's netlist to footprint preview widget. 2024-03-09 15:01:59 +00:00
footprint_preview_panel.h Pass symbol's netlist to footprint preview widget. 2024-03-09 15:01:59 +00:00
footprint_tree_pane.cpp Cleanup. 2023-09-29 00:13:13 +01:00
footprint_tree_pane.h
footprint_viewer_frame.cpp NETINFO_ITEMs are owned by BOARD. 2023-10-04 21:01:33 +01:00
footprint_viewer_frame.h Cleanup. 2023-09-29 00:13:12 +01:00
footprint_wizard.cpp
footprint_wizard.h
footprint_wizard_frame.cpp Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
footprint_wizard_frame.h Cleanup. 2023-09-29 00:13:12 +01:00
footprint_wizard_frame_functions.cpp Rename function in Footprint wizard to prevent impoper override 2023-06-12 23:14:56 +01:00
fp_text_grid_table.cpp Improve grid cell editors appearance. 2024-04-13 23:26:01 +03:00
fp_text_grid_table.h PCB Fields: operate on field copies in dialogs 2023-12-11 09:37:23 -05:00
fp_tree_model_adapter.cpp Capture exceptions thrown by FP_LIB_TABLE::FindRow() in some places. 2023-08-20 12:27:37 +02:00
fp_tree_model_adapter.h
fp_tree_synchronizing_adapter.cpp Fix more utf8 comparisons 2024-04-12 22:53:25 -04:00
fp_tree_synchronizing_adapter.h Clearer naming. 2023-11-09 14:05:35 +00:00
fpedit.icns macOS: add a few more known file types 2023-11-16 12:11:42 -05:00
fpedit_doc.icns Add document type icons 2024-02-09 15:55:57 -08:00
generate_footprint_info.cpp Improve editing values with {return} in text fields; Add hyperlink detection. 2023-10-15 01:45:39 +03:00
generate_footprint_info.h
generators_mgr.cpp Introduce GENERATORS_MGR. 2023-10-08 02:41:17 +00:00
generators_mgr.h Introduce GENERATORS_MGR. 2023-10-08 02:41:17 +00:00
graphics_cleaner.cpp Remove non-const access to board-owned items 2024-03-26 18:36:23 -04:00
graphics_cleaner.h Remove non-const access to board-owned items 2024-03-26 18:36:23 -04:00
grid_layer_box_helpers.cpp Replace __WXGTK20__ with __WXGTK__ 2023-04-12 18:57:12 +01:00
grid_layer_box_helpers.h
initpcb.cpp BoardDesignSettings are owned by FOOTPRINT_EDITOR_SETTINGS in the FP Editor. 2023-06-12 10:08:41 +01:00
invoke_pcb_dialog.h Refactor: Move DIALOG_PLUGIN_OPTIONS to common and use enum for event ID 2023-05-28 23:56:41 +02:00
kicad_clipboard.cpp Cut/copy/paste for PCB tables. 2024-03-28 14:31:31 +00:00
kicad_clipboard.h Push PCB_IOs to use the base progress reporter instead of per-function 2023-12-27 17:06:23 +00:00
load_select_footprint.cpp Introduce base IO_MGR class and unify RELEASER objects 2023-12-29 00:37:38 +00:00
menubar_footprint_editor.cpp Table support for footprint editor. 2024-03-11 17:46:09 +00:00
menubar_pcb_editor.cpp Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
netinfo.h Fix visibility of NET_INFO::SetParent 2023-12-11 10:07:28 +00:00
netinfo_item.cpp Set default netclass for newly-added no-net PNS items 2023-12-10 22:59:36 -05:00
netinfo_list.cpp NETINFO_ITEMs are owned by BOARD. 2023-10-04 21:01:33 +01:00
pad.cpp Calculate and show pad area in footprint editor 2024-04-17 15:31:56 -07:00
pad.h Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
pad_custom_shape_functions.cpp Cleanup. 2023-11-25 13:12:45 +00:00
pcb_base_edit_frame.cpp Kick the wildcards and file exts into a static class, export it from kicommon 2023-12-27 21:10:01 -05:00
pcb_base_edit_frame.h Split out table editing and table cell editing. 2024-02-24 20:05:51 +00:00
pcb_base_frame.cpp Improve clarity of default zone settings. 2024-02-03 13:22:16 +00:00
pcb_dimension.cpp Update copyrights. 2023-11-11 15:29:34 +00:00
pcb_dimension.h ADDED: Git integration support 2023-10-20 12:51:47 +00:00
pcb_draw_panel_gal.cpp Implement stingy selection mode for tuning patterns. 2024-01-17 00:34:22 +00:00
pcb_draw_panel_gal.h Formatting and warnings cleanup. (No functional changes.) 2023-04-16 15:36:21 +01:00
pcb_edit_frame.cpp Fix more utf8 comparisons 2024-04-12 22:53:25 -04:00
pcb_edit_frame.h IPC_API: fix crash in PLUGIN_AVAILABILITY_CHANGED event handler 2024-04-05 18:11:52 -07:00
pcb_field.cpp Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
pcb_field.h Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
pcb_generator.cpp Implement copy/paste for generators. 2024-01-16 23:38:50 +00:00
pcb_generator.h Implement copy/paste for generators. 2024-01-16 23:38:50 +00:00
pcb_group.cpp Expose groups to property manager. 2024-03-20 20:19:21 +00:00
pcb_group.h Make sure group items get added to commit. 2024-01-22 23:34:34 +00:00
pcb_item_containers.h Introduce PCB_GENERATOR. 2023-10-08 02:41:17 +00:00
pcb_layer_box_selector.cpp Use Fit to size the layer box after sitting min size 2024-02-02 23:43:05 -05:00
pcb_layer_box_selector.h
pcb_marker.cpp ADDED: A new IPC API based on protobuf and nng 2024-04-02 19:34:36 -04:00
pcb_marker.h ADDED: A new IPC API based on protobuf and nng 2024-04-02 19:34:36 -04:00
pcb_origin_transforms.cpp Separate out axes definitions between ModEdit and PCBNew. 2023-10-25 15:01:36 +01:00
pcb_origin_transforms.h
pcb_painter.cpp Show disambiguated netname when needed 2024-04-19 16:31:05 -07:00
pcb_painter.h ADDED: PCB tables. 2024-02-24 20:05:51 +00:00
pcb_plot_params.cpp ADDED: optional PDF metadata from AUTHOR and SUBJECT variables. 2024-03-14 17:40:04 +00:00
pcb_plot_params.h ADDED: optional PDF metadata from AUTHOR and SUBJECT variables. 2024-03-14 17:40:04 +00:00
pcb_plot_params_parser.h
pcb_reference_image.cpp Functionally it's a "reference image". 2023-10-24 15:44:21 +01:00
pcb_reference_image.h Functionally it's a "reference image". 2023-10-24 15:44:21 +01:00
pcb_screen.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
pcb_shape.cpp Factor out SHAPE_LINE_CHAIN utilities 2024-04-04 18:55:58 -04:00
pcb_shape.h RIP LIB_TEXTBOX and LIB_SHAPE. 2024-04-16 16:31:16 +01:00
pcb_table.cpp Handle table layer in undo. 2024-03-17 20:39:46 +00:00
pcb_table.h Table bug fixes. 2024-03-11 22:58:12 +00:00
pcb_tablecell.cpp Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
pcb_tablecell.h Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
pcb_target.cpp Fix sch_field and pcb_target not returning evaluated similarity correctly 2024-01-16 15:43:49 -05:00
pcb_target.h ADDED: Git integration support 2023-10-20 12:51:47 +00:00
pcb_text.cpp Do not set optional defaults 2024-04-11 09:43:12 -07:00
pcb_text.h PCB Fields: fix v7 imported board hidden description field pos 2024-04-09 15:23:44 -04:00
pcb_textbox.cpp Split out table editing and table cell editing. 2024-02-24 20:05:51 +00:00
pcb_textbox.h Table bug fixes. 2024-03-11 22:58:12 +00:00
pcb_track.cpp Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
pcb_track.h Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
pcb_view.cpp ADDED: PCB tables. 2024-02-24 20:05:51 +00:00
pcb_view.h
pcbexpr_evaluator.cpp Further improvements to cache locking. 2024-03-07 13:20:20 +00:00
pcbexpr_evaluator.h More consistent naming. 2023-08-21 15:26:33 +01:00
pcbexpr_functions.cpp Handle memberOfSheet for full footprints 2024-03-11 16:32:24 -07:00
pcbnew.cpp Move PGM_BASE to kicommon 2024-03-20 23:29:42 -04:00
pcbnew.icns Add document type icons 2024-02-09 15:55:57 -08:00
pcbnew_config.cpp ADDED: Selection filter for schematic editor 2024-02-25 17:44:10 -05:00
pcbnew_config.h Remove obsolete config_params.h includes 2023-09-25 20:40:29 -04:00
pcbnew_doc.icns Add document type icons 2024-02-09 15:55:57 -08:00
pcbnew_id.h Make pad & via teardrops 1st-class citizens (props of the pad/via) 2023-05-19 18:02:03 +01:00
pcbnew_jobs_handler.cpp ADDED: Fuse Shapes option for STEP/BREP/GLTF export. 2024-04-19 03:43:26 +03:00
pcbnew_jobs_handler.h ADDED: PCB 3D image raytracing rendering from CLI. 2024-03-08 14:38:18 +00:00
pcbnew_printout.cpp Save state of as-item-checkboxes checkbox. 2023-11-05 16:22:20 +00:00
pcbnew_printout.h Commenting and formatting. No functional changes. 2023-03-13 18:29:55 +00:00
pcbnew_settings.cpp Move Net Inspector dialog to a widget panel in pcbnew 2024-03-19 01:02:01 +00:00
pcbnew_settings.h Move Net Inspector dialog to a widget panel in pcbnew 2024-03-19 01:02:01 +00:00
pcbplot.cpp Add settings for plotting PDF property popups. 2023-04-30 18:10:04 +01:00
pcbplot.h Table plotting for PCBNew. 2024-03-24 16:49:33 +00:00
plot_board_layers.cpp Plot pads: Do not use pad offset twice when plotting chamfered rect pads 2024-04-18 12:53:38 +02:00
plot_brditems_plotter.cpp Table plotting for PCBNew. 2024-03-24 16:49:33 +00:00
plotcontroller.h Allow plotting of multiple board layers per plot in Python. 2023-02-14 09:49:20 -05:00
plotprint_opts.h
project_pcb.cpp On second thought rename PROJECT_PCBNEW to PROJECT_PCB 2023-09-27 23:15:54 -04:00
sel_layer.cpp Add hot key column on layer select dialog 2023-10-04 12:17:15 -04:00
toolbars_footprint_editor.cpp ADDED: PCB tables. 2024-02-24 20:05:51 +00:00
toolbars_footprint_viewer.cpp Rollback wxChoice -> wxComboBox changes for now. 2023-04-09 23:00:33 +01:00
toolbars_pcb_editor.cpp Add QA tests and expand serialization for API 2024-04-02 19:51:18 -04:00
tracks_cleaner.cpp Remove group from dummy track before deletion 2024-04-01 21:59:55 +01:00
tracks_cleaner.h
undo_redo.cpp Add composite update callback to BOARD_LISTENER 2024-04-04 22:29:47 +00:00
zone.cpp Static cast some more enum usage 2024-04-13 15:15:39 -04:00
zone.h Update equality overloads for C++20 2024-04-12 23:05:58 -04:00
zone_filler.cpp Don't knock out anti-text box 2024-04-06 14:28:49 -07:00
zone_filler.h Remove non-const access to board-owned items 2024-03-26 18:36:23 -04:00
zone_settings.cpp Move PCBNew overrides to nullable properties. 2024-02-24 20:05:51 +00:00
zone_settings.h Add proper comparison operators for BOARD_DESIGN_SETTINGS and children 2024-01-01 13:37:31 -05:00
zones.h ADDED: zone manager 2024-02-24 15:10:50 +00:00