The library manager update part function was orphaning the root symbol of derived symbols when the root symbol was edited. Re-parent the inherited symbols when updating a root symbol. Update the mandatory field attributes whenever the parent is set for derived parts. This will show the fields with the correct attributes in the symbol editor and viewer. Using std::unique_ptr to hold the current symbols was deleting the pointer on symbol selection changes causing the pointer in the library manager buffer to be stale in some cases. Revert back to using a simple pointer and manual clean up as required. Prevent derived symbols from being saved to a different library to prevent orphaned symbols. Fixes kicad/code/kicad#3649 |
||
---|---|---|
.. | ||
lib_edit_frame.cpp | ||
lib_edit_frame.h | ||
lib_export.cpp | ||
lib_manager.cpp | ||
lib_manager.h | ||
libedit.cpp | ||
libedit_plot_component.cpp | ||
libedit_undo_redo.cpp | ||
menubar_libedit.cpp | ||
symbedit.cpp | ||
toolbars_libedit.cpp |