Given a symbol U12A, some parts of the code were assuming the prefix was
'U' while others were assuming 'U12'. Further complication arose when
there were '?' in the library version.
Fixes https://gitlab.com/kicad/code/kicad/issues/8223
1) Don't reset value when name changes
2) Don't fire events when initialising dialog
3) Make sure when symbol is saved back to schematic that only current
instance has its ref updated, but that all instances have their other
fields updated.
4) When saving symbol back to board always use the fields from the
editor and not the (alias-specific) ones from the library.
Fixes https://gitlab.com/kicad/code/kicad/issues/8159
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
CHANGED: KiCAD allows connecting components directly together in
schematics. If the user drags one of the components, KiCAD
adds a wire to keep the conection intact. It should do the same for
net and global labels but it doesn't.
This MR adds net and global labels to the list of items that can connect
to other items.
Fixes https://gitlab.com/kicad/code/kicad/issues/7713