kicad/eeschema
Wayne Stambaugh 2b387ae9c3 Move schematic symbol instance data back into symbol definition.
This change reverts the storage of all symbol instance data in the root
schematic.  This was done because it's not possible to reuse instance
data when importing from sub-sheets.

There has been a fundamental change in how sheet paths are store in the
instance data.  The root schematic UUID is always used when saving the
instance data.  To prevent file churn, the virtual root sheet UUID is set
to the root schematic UUID when loading the project.  This provides a way
to determine the project that stored the instance data.  All uses of paths
without root sheet have been expunged from the code.

The sheet instance data is still saved only in the root sheet for the
time being.  New sheet instances will be automatically assigned an page
number based on the incremental virtual sheet page number.  Sheet page
numbers will not be imported.

Added project name to instance data to improve the readability of the
schematic file format.  It also creates an opportunity to remove orphaned
instance data by project name rather than cryptic UUIDs.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/12472
2022-10-02 15:06:42 -04:00
..
dialogs Minor fixes. 2022-10-01 18:42:02 +02:00
navlib Cleanup spacemouse plugin 2022-04-01 15:14:41 -07:00
netlist_exporters Sim: Basic cleanup after KIBIS merge 2022-09-30 16:17:00 +02:00
plugins Fix a UTF8 convert issue in some BOM python scripts. 2022-09-16 10:25:51 +02:00
sch_plugins Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sim Sim: Basic cleanup after KIBIS merge 2022-09-30 16:17:00 +02:00
symbol_editor ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
tools Improve default net pattern to be all members of bus instead of first member. 2022-10-01 22:58:11 +01:00
widgets ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
CMakeLists.txt Add Ibis to spice model editor 2022-09-27 20:47:00 +00:00
annotate.cpp Allow selected RefDes as proxy to selected symbol for annotate selection. 2022-08-24 11:31:13 +01:00
autoplace_fields.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
bom_plugins.cpp Revert "cmake: adding KICAD_MACOSX_APP_BUNDLE option" 2022-01-31 15:57:56 -08:00
bom_plugins.h Unwrap some std::library typedefs. 2021-07-28 22:16:38 +01:00
bus-wire-junction.cpp Move EDA_ITEM bounding boxes to BOX2I. 2022-08-31 10:16:55 +01:00
bus_alias.h Coverity fixes. 2022-08-22 17:52:58 +01:00
cmp_library.keywords
cmp_library_lexer.cpp Expunge the use of the word component from Eeschema code. 2021-06-14 14:00:21 -04:00
component_references_lister.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
connection_graph.cpp Handle netclasses assigned to bus labels. 2022-10-02 15:01:16 +01:00
connection_graph.h CHANGED netclass assignments now done via canvas or via patterns. 2022-08-14 22:56:29 +01:00
cross-probing.cpp Keep selection order in SCH->PCB cross-selection. 2022-09-22 11:43:37 +00:00
default_values.h Fix some issues with incorrectly scaled defaults given in mils. 2021-08-25 20:04:06 +01:00
ee_collectors.cpp Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
ee_collectors.h Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
eeschema.cpp Don't allow a SaveAs to overwrite the root sheet. 2022-09-08 23:43:07 +01:00
eeschema.icns Add drop shadows to MacOS icons 2021-07-30 20:55:34 -07:00
eeschema_config.cpp Fix duplicate variable member m_userUnits, creating issues depending on 2022-09-26 19:47:28 +02:00
eeschema_doc.icns Add drop shadows to MacOS icons 2021-07-30 20:55:34 -07:00
eeschema_id.h Add pinned library support to Footprint and Symbol Viewers. 2022-07-09 17:41:10 -06:00
eeschema_settings.cpp Add "Open file after plot" to Plot dialog 2022-09-08 11:11:20 +00:00
eeschema_settings.h Add "Open file after plot" to Plot dialog 2022-09-08 11:11:20 +00:00
erc.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
erc.h Off-grid ERC warnings. 2022-03-17 20:23:56 +00:00
erc_item.cpp CHANGED netclass assignments now done via canvas or via patterns. 2022-08-14 22:56:29 +01:00
erc_item.h CHANGED netclass assignments now done via canvas or via patterns. 2022-08-14 22:56:29 +01:00
erc_settings.cpp Add ERC QA tests 2022-09-09 17:21:57 -07:00
erc_settings.h Add ERC QA tests 2022-09-09 17:21:57 -07:00
fields_grid_table.cpp Work around more instances of the wxWidgets color string locale bug. 2022-09-30 20:56:25 +01:00
fields_grid_table.h Untangle some includes 2022-09-25 11:37:06 -04:00
files-io.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
general.h Rename layer ids file. 2021-07-29 16:03:25 +01:00
generate_alias_info.cpp Fix kicad_string.h / string.cpp mismatch. 2021-07-29 16:03:25 +01:00
generate_alias_info.h Substitute all wxHtmlWindow with HTML_WINDOW 2021-10-12 07:07:15 +00:00
hierarch.cpp Add include for Linux builds. 2022-09-27 12:31:47 +01:00
hierarch.h ADDED setting page number from hierarchy tree. 2022-09-26 21:58:04 +01:00
invoke_sch_dialog.h Move Bus Definitions to common GUI paradigm in Schematic Setup. 2022-08-21 12:29:51 +01:00
lib_field.cpp Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
lib_field.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
lib_item.cpp ADDED: Support for explicit DNP field 2022-09-16 22:26:16 +00:00
lib_item.h ADDED: Support for explicit DNP field 2022-09-16 22:26:16 +00:00
lib_pin.cpp Formatting. 2022-09-27 11:12:58 +01:00
lib_pin.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
lib_shape.cpp Eeschema, print and plot: fix arc issue for lib arcs == 180 deg 2022-09-24 10:00:21 +02:00
lib_shape.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
lib_symbol.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
lib_symbol.h ADDED: Support for explicit DNP field 2022-09-16 22:26:16 +00:00
lib_text.cpp Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
lib_text.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
lib_textbox.cpp Avoid including plotters/plotter.h in many files. 2022-09-21 08:52:34 +02:00
lib_textbox.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
libarch.cpp A bit more Part -> Symbol. 2021-06-17 22:24:41 +01:00
menubar.cpp ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
picksymbol.cpp Allow hiding symbol library tables from symbol chooser 2022-08-26 20:18:40 -04:00
pin_numbers.cpp Fix broken comparison in pin_numbers 2022-04-19 14:46:05 -07:00
pin_numbers.h Fix broken comparison in pin_numbers 2022-04-19 14:46:05 -07:00
pin_type.cpp On-the-fly translations for pin electrical types. 2022-04-05 13:57:28 +01:00
pin_type.h Expunge the use of the word component from Eeschema code. 2021-06-14 14:00:21 -04:00
project_rescue.cpp Cleanup & performance enhancements. 2022-08-01 13:09:51 +01:00
project_rescue.h More NULL expunging. 2021-07-16 16:13:41 -04:00
project_sch_specific.cpp Eeschema: code refactor and fix missing save project setting when closing the sch editor. 2022-06-09 13:39:09 +02:00
sch_base_frame.cpp ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
sch_base_frame.h ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
sch_bitmap.cpp Readability improvements. 2022-09-19 11:18:20 +01:00
sch_bitmap.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_bus_entry.cpp Avoid including plotters/plotter.h in many files. 2022-09-21 08:52:34 +02:00
sch_bus_entry.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_connection.cpp Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_connection.h Replace boost::optional with std::optional 2022-08-25 15:50:47 -07:00
sch_draw_panel.cpp Cleanup. 2021-12-23 20:36:18 +00:00
sch_draw_panel.h RIP EDA_RECT. 2022-08-31 23:57:24 +01:00
sch_edit_frame.cpp Replace PROF_COUNTER with PROF_TIMER in some conditional places. 2022-09-27 14:07:47 +00:00
sch_edit_frame.h Default intersheet ref field visibility to off, and show warning 2022-09-26 21:00:46 +01:00
sch_field.cpp Use netclass colours for label graphics, text and fields. 2022-09-24 23:51:40 +01:00
sch_field.h Use netclass colours for label graphics, text and fields. 2022-09-24 23:51:40 +01:00
sch_file_versions.h Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_io_mgr.cpp ADDED: Database libraries MVP 2022-08-26 10:51:13 -04:00
sch_io_mgr.h ADDED: Dynamic field columns in symbol chooser 2022-09-05 16:38:14 -04:00
sch_item.cpp Move hypertext linking to user-page-numbers. 2022-08-27 19:17:43 +01:00
sch_item.h Avoid including plotters/plotter.h in many files. 2022-09-21 08:52:34 +02:00
sch_junction.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
sch_junction.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_label.cpp Default intersheet ref field visibility to off, and show warning 2022-09-26 21:00:46 +01:00
sch_label.h Use netclass colours for label graphics, text and fields. 2022-09-24 23:51:40 +01:00
sch_line.cpp Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_line.h Avoid including plotters/plotter.h in many files. 2022-09-21 08:52:34 +02:00
sch_marker.cpp Combine Iu2Millimeter & remove PcbMm2iu 2022-09-16 21:09:26 -04:00
sch_marker.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_no_connect.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
sch_no_connect.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_painter.cpp Use netclass colours for label graphics, text and fields. 2022-09-24 23:51:40 +01:00
sch_painter.h ADDED: Support for explicit DNP field 2022-09-16 22:26:16 +00:00
sch_pin.cpp Small optimizations. 2022-09-22 17:22:04 +00:00
sch_pin.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_plugin.cpp More NULL expunging. 2021-07-16 16:13:41 -04:00
sch_preview_panel.cpp Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
sch_preview_panel.h Don't paint hidden fields without a schematic context 2022-08-20 17:56:53 -04:00
sch_reference_list.h Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_rtree.h RIP EDA_RECT. 2022-08-31 23:57:24 +01:00
sch_screen.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_screen.h Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_shape.cpp Avoid including plotters/plotter.h in many files. 2022-09-21 08:52:34 +02:00
sch_shape.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_sheet.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_sheet.h Coding conventions. 2022-09-26 21:58:04 +01:00
sch_sheet_path.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_sheet_path.h Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_sheet_pin.cpp Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_sheet_pin.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_symbol.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_symbol.h Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
sch_text.cpp Small optimizations. 2022-09-22 17:22:04 +00:00
sch_text.h Use netclass colours for label graphics, text and fields. 2022-09-24 23:51:40 +01:00
sch_text_help.md Fix outdated syntax in help text 2021-11-25 12:53:29 +00:00
sch_text_help_md.h Add 2 automatically generated files to the source tree. 2022-06-22 08:51:04 +02:00
sch_textbox.cpp Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_textbox.h Push UNITS_PROVIDER down into a low-level mixin. 2022-09-19 17:10:59 +01:00
sch_validators.cpp Fix bus validation. 2021-09-17 22:01:17 +01:00
sch_validators.h CHANGED netclass assignments now done via canvas or via patterns. 2022-08-14 22:56:29 +01:00
sch_view.cpp Allow text variable resolution through properties in drawing sheet text. 2022-09-20 15:28:05 +01:00
sch_view.h Get all eeschema layers properly ordered 2022-01-23 10:04:32 -08:00
schematic.cpp Move bus aliases to std::set. 2022-09-11 19:48:08 +01:00
schematic.h Allow text variable resolution through properties in drawing sheet text. 2022-09-20 15:28:05 +01:00
schematic.keywords Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
schematic_settings.cpp Remove convert_to_biu.h, merge contents to base_units.h 2022-09-16 21:09:28 -04:00
schematic_settings.h Remove convert_to_biu.h, merge contents to base_units.h 2022-09-16 21:09:28 -04:00
schematic_undo_redo.cpp Special case undo for items with instance data. 2022-03-19 19:37:01 +00:00
sheet.cpp Move schematic symbol instance data back into symbol definition. 2022-10-02 15:06:42 -04:00
symbol_async_loader.cpp Infobar warning if symbol loading was cancelled. 2022-02-27 17:06:08 +00:00
symbol_async_loader.h Infobar warning if symbol loading was cancelled. 2022-02-27 17:06:08 +00:00
symbol_checker.cpp Readability improvements. 2022-09-19 11:18:20 +01:00
symbol_lib_table.cpp fix a few compil warnings 2022-09-23 18:30:42 +02:00
symbol_lib_table.h ADDED: Dynamic field columns in symbol chooser 2022-09-05 16:38:14 -04:00
symbol_library.cpp Fix some warnings detected by PVS-STUDIO (most are not used vars) 2022-07-25 18:23:52 +02:00
symbol_library.h Hash symbol libraries per library rather than statically per cache type. 2022-02-07 15:40:21 -05:00
symbol_library_common.h ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
symbol_library_manager.cpp Fix more for loops making copies of iterates 2022-09-25 00:48:38 +01:00
symbol_library_manager.h Fix missing virtual dtor 2022-09-23 21:44:15 -04:00
symbol_tree_model_adapter.cpp Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
symbol_tree_model_adapter.h Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
symbol_tree_synchronizing_adapter.cpp ADDED: Export symbols from schematic to library 2022-09-23 21:23:01 -04:00
symbol_tree_synchronizing_adapter.h Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
symbol_viewer_frame.cpp Repoint IU_PER_MILS 2022-09-16 21:09:26 -04:00
symbol_viewer_frame.h Add pinned library support to Footprint and Symbol Viewers. 2022-07-09 17:41:10 -06:00
toolbars_sch_editor.cpp Fix some issue with hierarchy panel on OSX. 2022-07-26 14:51:43 +01:00
toolbars_symbol_viewer.cpp Add display options to Symbol Browser toolbar. 2022-09-08 00:28:30 +01:00