kicad/pcbnew
Jeff Young a868fb97b6 Preserve Uuids when editing board footprints.
One way to do this would have been to keep the Uuids in the editor
copy.  However, this opens us up to errors if we forget a Save As or
export path and end up writing the Uuids out somewhere else.

In the end, it felt safer to store a map of the original Uuids and
restore them if we happen to save the editor footprint back to the
board.

Fixes https://gitlab.com/kicad/code/kicad/issues/7312
2021-01-31 14:09:59 +00:00
..
autorouter Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
board_stackup_manager Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
connectivity Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
dialogs Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
drc Make sure that NPTH pads still get handled in copper clearance checker. 2021-01-31 00:33:35 +00:00
exporters Use consistent terminology for component placement files. 2021-01-28 19:24:55 +00:00
import_gfx Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
microwave Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
netlist_reader Rebuild ratsnest when importing netlist 2021-01-27 17:57:00 -08:00
plugins altium: use those new fancy user definable layers and import the name from Altium 2021-01-31 11:15:08 +01:00
python Remove ddr3_length_match.py 2020-11-20 08:10:53 +00:00
ratsnest Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
router Ensure partially triangulated polys are not valid 2021-01-29 16:33:57 -08:00
specctra_import_export Fix typo causing no netnames in SPECCTRA export 2021-01-26 22:04:45 -05:00
swig Get python loading the new "user scripting" paths 2021-01-28 23:45:53 -05:00
tools Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
widgets Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
CMakeLists.txt Reorganize the CMake folder to separate build and configure steps 2021-01-28 00:24:22 +00:00
Doxyfile_python
Doxyfile_xml
action_plugin.cpp Mostly formatting cleanup but a few type-casting cleanups too. 2020-11-24 22:16:41 +00:00
action_plugin.h
array_creator.cpp MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
array_creator.h Make distinction between PCBNew-wide tools and Board-specific tools. 2020-12-16 13:32:46 +00:00
array_pad_name_provider.cpp MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
array_pad_name_provider.h More cleanup of MODULE to see if it fixes SWIG error. 2020-11-13 21:07:36 +00:00
board.cpp Fix parsing of track/via user sizes from legacy boards 2021-01-26 21:51:36 -05:00
board.h Add more const specifiers 2021-01-12 20:51:31 +00:00
board_commit.cpp Make distinction between PCBNew-wide tools and Board-specific tools. 2020-12-16 13:32:46 +00:00
board_commit.h Formatting. 2020-11-29 20:00:16 +00:00
board_connected_item.cpp More consistent naming. 2020-12-08 13:05:39 +00:00
board_connected_item.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
board_design_settings.cpp Factor in all clearance types when asking for worst clearance. 2021-01-01 00:31:36 +00:00
board_item.cpp Implement GetEffectiveShape() for PCB_TARGET_Ts. 2020-11-24 20:21:40 +00:00
board_item_container.h Add bulk add/remove mode flag to the BOARD_LISTENER 2020-12-07 22:04:13 -05:00
board_items_to_polygon_shape_transform.cpp More improvements to new selection disambiguation. 2020-11-29 14:02:46 +00:00
build_BOM_from_board.cpp "comp" -> "symbol". 2021-01-19 23:50:40 +00:00
cleanup_item.cpp more cleanup about removing useless include 2020-10-02 14:51:11 +02:00
cleanup_item.h Finish exorcising the old DRC system. 2020-09-15 20:15:46 +01:00
collectors.cpp Show dragging tools in context selection menu for components 2021-01-27 19:55:42 +00:00
collectors.h Show dragging tools in context selection menu for components 2021-01-27 19:55:42 +00:00
convert_drawsegment_list_to_polygon.cpp Fix issues in ConvertOutlineToPolygon() related to S_POLYGON PCV_SHAPE 2021-01-11 17:05:44 +01:00
convert_drawsegment_list_to_polygon.h Separate polygonization error from chaining error. 2020-12-24 21:02:14 +00:00
cross-probing.cpp Implement more precise annotation-required messages. 2021-01-30 16:31:27 +00:00
dimension.cpp Don't run dimension updates while parsing files. 2021-01-19 16:09:44 +00:00
dimension.h Don't run dimension updates while parsing files. 2021-01-19 16:09:44 +00:00
edit.cpp Don't request a full frame refresh when editing text properties (stop apperance flickering) 2020-12-09 21:14:48 -05:00
edit_track_width.cpp Nets don't have properites; netclasses do. 2020-12-08 13:05:39 +00:00
edit_zone_helpers.cpp Fix issues with zone filling connectivity locking 2021-01-18 13:22:12 -05:00
files.cpp Create a default user projects folder 2021-01-27 19:12:18 -05:00
footprint.cpp Remove a few const_cast 2021-01-12 20:51:31 +00:00
footprint.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
footprint_edit_frame.cpp Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
footprint_edit_frame.h Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
footprint_editor_settings.cpp Fix graphics snapping in Footprint Editor. 2020-12-19 00:21:28 +00:00
footprint_editor_utils.cpp Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
footprint_info_impl.cpp Use a temp file for saving the fp-info-cache for now 2020-12-10 23:07:49 -05:00
footprint_info_impl.h Replace wxTextFile for writing fp info cache 2020-12-10 21:34:40 -05:00
footprint_libraries_utils.cpp Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
footprint_preview_panel.cpp Remove multi-threading for footprint loading. 2020-12-21 22:03:24 +00:00
footprint_preview_panel.h Remove multi-threading for footprint loading. 2020-12-21 22:03:24 +00:00
footprint_tree_pane.cpp More Module -> Footprint and a bit of formatting cleanup. 2020-11-10 20:53:12 +00:00
footprint_tree_pane.h
footprint_viewer_frame.cpp Fix a missed Module -> Footprint. 2021-01-26 10:56:19 +00:00
footprint_viewer_frame.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
footprint_wizard.cpp
footprint_wizard.h MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
footprint_wizard_frame.cpp Use color theme backgrounds in page previews. 2020-12-23 23:18:38 +00:00
footprint_wizard_frame.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
footprint_wizard_frame_functions.cpp MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
fp_shape.cpp CADSTAR PCB Archive Importer: Fix arc and filled shapes in footprints 2020-12-10 14:35:37 +00:00
fp_shape.h Move footprint shape offset/rotation stuff to the right place. 2020-11-15 21:04:12 +00:00
fp_text.cpp Resolve text variables in title blocks for outputing to netlist. 2021-01-17 16:24:22 +00:00
fp_text.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
fp_tree_model_adapter.cpp Fix library tree behavior when duplicate project table entry is disabled. 2021-01-11 07:46:07 -05:00
fp_tree_model_adapter.h Formatting and naming conventions. 2020-11-07 18:50:30 +00:00
fp_tree_synchronizing_adapter.cpp Fix library tree behavior when duplicate project table entry is disabled. 2021-01-11 07:46:07 -05:00
fp_tree_synchronizing_adapter.h Formatting and naming conventions. 2020-11-07 18:50:30 +00:00
generate_footprint_info.cpp Fix issues in reporting netclasses. 2020-11-30 14:38:06 +00:00
generate_footprint_info.h
graphics_cleaner.cpp Mostly formatting cleanup but a few type-casting cleanups too. 2020-11-24 22:16:41 +00:00
graphics_cleaner.h MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
grid_layer_box_helpers.cpp Remove some "class_" prefixes from files. 2020-11-13 15:16:23 +00:00
grid_layer_box_helpers.h Dismiss the layer selector grid combobox when it loses focus 2020-10-10 15:24:35 +01:00
initpcb.cpp Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
invoke_pcb_dialog.h MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
io_mgr.cpp pcbnew: Add Fabmaster import 2021-01-16 14:28:33 -08:00
io_mgr.h pcbnew: Add Fabmaster import 2021-01-16 14:28:33 -08:00
kicad_clipboard.cpp Add optional project parameter to PCB plugin load method. 2020-12-18 10:40:51 -05:00
kicad_clipboard.h Add optional project parameter to PCB plugin load method. 2020-12-18 10:40:51 -05:00
load_select_footprint.cpp Preserve Uuids when editing board footprints. 2021-01-31 14:09:59 +00:00
menubar_footprint_editor.cpp Icons: standardise `export_png` to match set 2020-12-24 01:02:03 +00:00
menubar_pcb_editor.cpp Fix a missed Module -> Footprint. 2021-01-26 10:56:19 +00:00
netinfo.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
netinfo_item.cpp Fix minor compil warnings. 2020-12-08 18:28:03 +01:00
netinfo_list.cpp More consistent naming. 2020-12-08 13:05:39 +00:00
pad.cpp Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
pad.h Flash pads when connected by zone 2021-01-28 13:21:22 -08:00
pad_custom_shape_functions.cpp Performance enhancements. 2021-01-08 00:46:55 +00:00
pad_naming.cpp D_PAD -> PAD. 2020-11-13 15:16:24 +00:00
pad_naming.h D_PAD -> PAD. 2020-11-13 15:16:24 +00:00
pcb_base_edit_frame.cpp Use color theme backgrounds in page previews. 2020-12-23 23:18:38 +00:00
pcb_base_edit_frame.h Flip the footprint new library flow to prompt global or project first 2021-01-28 20:15:44 -05:00
pcb_base_frame.cpp Make sure pads are unlocked when editing footprint from board. 2021-01-26 15:28:48 +00:00
pcb_display_options.cpp ADDED: Control to only show ratsnest for visible layers 2020-09-07 16:43:43 -04:00
pcb_draw_panel_gal.cpp Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
pcb_draw_panel_gal.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pcb_edit_frame.cpp Implement more precise annotation-required messages. 2021-01-30 16:31:27 +00:00
pcb_edit_frame.h Implement more precise annotation-required messages. 2021-01-30 16:31:27 +00:00
pcb_expr_evaluator.cpp Fix bone-headed error in rules optimization. 2021-01-12 12:46:51 +00:00
pcb_expr_evaluator.h Performance improvements for DRC rules. 2021-01-11 22:09:36 +00:00
pcb_group.cpp Don't dereference board groups in fp editor 2021-01-11 14:58:33 -08:00
pcb_layer_box_selector.cpp Code cleanup: remove include wx.h from pcb_plot_params.h. 2021-01-25 16:18:46 +01:00
pcb_layer_box_selector.h Make indeterminate control states clearer for the user. 2020-05-05 20:26:51 +01:00
pcb_marker.cpp Don't put up double lock confirmation dialogs. 2020-12-15 22:34:24 +00:00
pcb_marker.h Make wxFindReplaceData argument const 2021-01-12 20:51:31 +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 Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
pcb_painter.h Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
pcb_plot_params.cpp Save DXF plot params to file and remove some dead code. 2021-01-03 14:22:25 +00:00
pcb_plot_params.h Code cleanup: remove include wx.h from pcb_plot_params.h. 2021-01-25 16:18:46 +01:00
pcb_plot_params_parser.h
pcb_screen.cpp more cleanup about removing useless include 2020-10-02 14:51:11 +02:00
pcb_shape.cpp Comment. 2021-01-28 23:31:38 +00:00
pcb_shape.h Go back to previous arc midpoint editing routine. 2021-01-19 23:50:40 +00:00
pcb_target.cpp PCB_TARGET: add missing GetMsgPanelInfo() virtual function. 2020-12-31 15:46:58 +01:00
pcb_target.h PCB_TARGET: add missing GetMsgPanelInfo() virtual function. 2020-12-31 15:46:58 +01:00
pcb_text.cpp One more attempt to fix flipping geometry. 2021-01-18 15:20:15 +00:00
pcb_text.h Make wxFindReplaceData argument const 2021-01-12 20:51:31 +00:00
pcb_view.cpp A groups children may also have children. 2021-01-09 13:47:24 +00:00
pcb_view.h Naming conventions. 2020-11-14 18:26:03 +00:00
pcbnew.cpp Get python loading the new "user scripting" paths 2021-01-28 23:45:53 -05:00
pcbnew.h Minor code cleanup, step3: remove more useless include. 2020-10-01 18:28:12 +02:00
pcbnew.icns Update icon resource sets 2020-12-22 15:16:33 -08:00
pcbnew.rc Handle Windows manifests ourselves and add dpi awareness option 2020-10-10 19:08:23 +00:00
pcbnew_config.cpp Remember autotrack width setting 2021-01-06 20:11:32 -08:00
pcbnew_config.h
pcbnew_doc.icns Update icon resource sets 2020-12-22 15:16:33 -08:00
pcbnew_id.h Cleanup. Push more editing functions to toolset. 2020-11-10 20:14:26 +00:00
pcbnew_printout.cpp Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
pcbnew_printout.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pcbnew_settings.cpp Prevent locking items in footprint editor 2021-01-11 11:23:26 -08:00
pcbnew_settings.h Prevent locking items in footprint editor 2021-01-11 11:23:26 -08:00
pcbplot.cpp Resolve text variables in title blocks for outputing to netlist. 2021-01-17 16:24:22 +00:00
pcbplot.h Make small drill marks size configurable via advanced config for both printing and plotting 2021-01-05 22:37:34 +00:00
plot_board_layers.cpp Make small drill marks size configurable via advanced config for both printing and plotting 2021-01-05 22:37:34 +00:00
plot_brditems_plotter.cpp Gerber plotter: prepare optimization of aperture macros type free polygons. 2021-01-23 21:15:27 +01:00
plotcontroller.h
plugin.cpp Add optional project parameter to PCB plugin load method. 2020-12-18 10:40:51 -05:00
sel_layer.cpp Better sizing for some conditional dialogs. 2021-01-07 01:27:12 +00:00
text_mod_grid_table.cpp Mostly formatting cleanup but a few type-casting cleanups too. 2020-11-24 22:16:41 +00:00
text_mod_grid_table.h MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
toolbars_footprint_editor.cpp Consistency for gerbview toolbar icons and some other icon tweaks. 2020-12-17 14:02:23 +00:00
toolbars_footprint_viewer.cpp Icons: fix incorrect icon in footprint browser 2021-01-04 01:44:02 +00:00
toolbars_pcb_editor.cpp Fix a missed Module -> Footprint. 2021-01-26 10:56:19 +00:00
track.cpp Redo pad & via painting (again). 2021-01-30 16:31:27 +00:00
track.h Flash pads when connected by zone 2021-01-28 13:21:22 -08:00
tracks_cleaner.cpp Consider tracks and vias together 2021-01-08 09:35:58 -08:00
tracks_cleaner.h Consider tracks and vias together 2021-01-08 09:35:58 -08:00
undo_redo.cpp Make distinction between PCBNew-wide tools and Board-specific tools. 2020-12-16 13:32:46 +00:00
zone.cpp Evaluate rules when fetching zone edge clearance. 2021-01-23 17:04:44 +00:00
zone.h Add missing const to Matches 2021-01-12 20:51:32 +00:00
zone_filler.cpp Fix the knockout conditions 2021-01-30 08:15:00 -08:00
zone_filler.h Fix issues with zone filling connectivity locking 2021-01-18 13:22:12 -05:00
zone_settings.cpp Remove some "class_" prefixes from files. 2020-11-13 15:16:23 +00:00
zone_settings.h Update some classnames including archaic zone names. 2020-11-12 10:31:25 +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 Remove some "class_" prefixes from files. 2020-11-13 15:16:23 +00:00
zones_functions_for_undo_redo.h Convert UNDO_REDO_T to an enum class 2020-08-26 18:04:32 +00:00