kicad/pcbnew
Seth Hillbrand 0cf1a67e29 Cache read arc data for stability
Arcs can be altered by the process of changing from on-disk
representation to in-memory representation.  Saving back to disk without
modifying the arc should not modify the calculated values.

This stores a copy of the on-disk representation that is only used to
save back to disk in the event that the arc is not modified during
editing.

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

(cherry picked from commit cd7141fd10)
2022-03-08 10:33:49 -08: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 Improvements for pads/vias in zones which knockout other zones. 2022-03-05 15:40:30 +00:00
dialogs pcbnew: Fix Bezier "Add Primitive" in Pad Creation Dialog (From master branch) 2022-03-08 14:44:05 +01:00
drc More wide-string declarations. 2022-02-05 13:29:00 +00: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 svg importer: fix a crash when importing some files with no graphic item 2022-02-28 18:26:24 +01: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 Settings: allow multiple project access from Python standalone 2022-03-05 12:50:45 -05: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 Remove escaped double-quotes 2021-11-03 17:03:14 -07:00
tools Fix issue with 9396735733 2022-03-02 10:46:59 -08:00
widgets APPEARANCE_CONTROLS: fix missing update when toggling a layer view. 2022-02-26 10:40:47 +01:00
CMakeLists.txt Ensure we can version scripting properly 2022-02-03 15:54:07 -08: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 More wxString wide literals. 2022-02-04 23:12:09 +00:00
board_item_container.h Add bulk add/remove mode flag to the BOARD_LISTENER 2020-12-07 22:04:13 -05:00
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 Fix typoed test condition for TH no hole pads PVS V501 2022-02-05 18:32:08 +00:00
footprint.h Freeze TEDIT in place 2022-03-01 15:53:07 -08: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 FP_TEXT::ViewGetLOD() fix incorrect test (LAYER_MOD_VALUES color has no matter) 2022-03-03 11:59:03 +01:00
fp_text.h Rework bitmap system to load from archived PNGs 2021-03-11 08:37:35 -05: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 Formatting and naming conventions. 2020-11-07 18:50:30 +00:00
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 Formatting and naming conventions. 2020-11-07 18:50:30 +00:00
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 MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
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 Handle hidden layers in FP Editor. 2022-02-25 10:40:05 +00:00
pad.h Pcbnew: fix chamfered rectangular pad definitions in GenCAD exporter. 2021-11-24 12:54:44 -05: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 More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcb_dimension.h Convert Altium radial dimensions to leaders. 2021-07-24 14:25:59 +01: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 Remove unneeded condition to rotate 2022-03-03 15:44:50 -08:00
pcb_edit_frame.h Update call signature for SwitchLayer 2021-12-09 10:14:11 -08:00
pcb_expr_evaluator.cpp Normalize `IsInsideCourtyard` 2022-03-08 10:07:59 -08: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 Scale markers somewhat proportionally to zoom. 2021-12-23 17:01:01 +00:00
pcb_marker.h Scale markers somewhat proportionally to zoom. 2021-12-23 17:01:01 +00:00
pcb_origin_transforms.cpp Add more consts all over the place 2020-10-27 11:03:35 +00:00
pcb_origin_transforms.h Add more consts all over the place 2020-10-27 11:03:35 +00:00
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 Remove locking from footprint editor. 2021-10-31 16:33:03 +00:00
pcb_shape.h Overhaul arc internal model to not over-specify information. 2021-10-15 12:45:43 +01:00
pcb_target.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcb_target.h PCB_TARGET: add missing TransformShapeWithClearanceToPolygon() method. 2022-01-29 20:07:14 +01:00
pcb_text.cpp More wxString wide literals. 2022-02-04 23:12:09 +00:00
pcb_text.h PCB_TEXT: remove "hide" option, because they are never hidden. 2021-07-18 14:58:21 +02:00
pcb_track.cpp High-contrast mode: don't render vias that don't cross high-contrast layer. 2022-03-02 12:07:43 +00:00
pcb_track.h Remove track min width from the status bar. 2021-11-12 17:31:50 +00: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 Check for additional connections between tracks 2022-03-03 13:08:37 -08:00
tracks_cleaner.h Prefix TRACK, ARC and VIA. 2021-06-11 22:07:02 +01:00
undo_redo.cpp Freeze TEDIT in place 2022-03-01 15:53:07 -08:00
zone.cpp Must clear arcs before calling Clipper. 2022-03-05 15:40:30 +00:00
zone.h Respect ERROR_OUTSIDE when inflating polygons. 2022-02-21 17:32:25 +00: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 Update some classnames including archaic zone names. 2020-11-12 10:31:25 +00:00
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