1) improve spacing in copper zone properties.
2) improve spacing and naming in dielectric material properties.
3) clearer naming in board setup > constraints.
4) remove over-exuberant stretching in board setup > mask & paste.
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
(The current one keeps pulling the Kicad Manager window to the front
on OSX.)
I also removed the UpdateUI stuff which was probably causing:
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
Keeping them in base_units means that we can't introduce
any dependence on these functions to anything that needs to
compile without one of the unit defines (EESCHEMA, PCBNEW, etc)
A call to FormatInternalUnits() was made without switching to "C" locale.
In this case it was not necessary, but FormatInternalUnits() expects in some tests
this locale, thus creating issues (assert and incorrect conversion)
Fixes#8177https://gitlab.com/kicad/code/kicad/issues/8177
The thickness only needs to be computed when the actual
values change, so computing on UI update is a waste of
resources and can cause UI lag.
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
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.
The removal of the pcbnew general section was meant for v6 but passed
the deadline. This removes the duplication of thickness. We do not
allow the thickness to be different between nominal and stackup, so
keeping separate text fields is unnecesarily confusing to users
including wx.h is useless for this file, and include wx.h in a lot of other files.
Include wx.h must be made only when needed in a given file, because on Windows
it include some headers that frequently create collision with kicad declarations