Pin names like "+V" were incorrectly parsed as doubles leading to broken
comparisons. These caused heap overflows when sorting pin tables
This corrects the comparison so that numeric sorts are only performed
when there is an actual number in the symbol segment. Also adds unit
tests for common error cases
CHANGED: The text variable ${SHEETNAME} now always represents the name of the
sheet when used anywhere in the schematic editor, including the title block
ADDED: A new text variable ${SHEETPATH} which is replaced with the path to the
current sheet - e.g. "/Sheet 1/Sheet 2".
To ensure backward compatibility, the default drawing sheet now uses
${SHEETPATH}. Custom drawing sheets will need to be manually edited.
Prior to fixing the schematic file change churn do to instance data
changing to the last selected sheet instance, the symbol instance data
was set rather than empty. This change allows for users to set the
default instance data which is used for every new instance of the
schematic.
ADDED: Default schematic symbol instance data (unit and reference, value,
and footprint fields) can be set to be used as the default settings
for all new instances of the schematic.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11113
Better to have both the single-pin error message and the non-driven
error message when an input pin is not connected than miss error
messages when the pin is connected to a blank net
Fixes https://gitlab.com/kicad/code/kicad/issues/10430
(cherry picked from commit e740db61f5)
Make "don't stroke" an explicit property in the GUI.
Silently enforce line width to >= 0 when stroking.
Make layouts between dialogs more consistent.
Interpret unspecified fill colour as layer colour.
Fixes https://gitlab.com/kicad/code/kicad/issues/11279
SIMULATOR has now an Attach() method, which should be called
with proper SIMULATION_MODEL that should be simulated, before calling Run()
Concrete class of SIMULATION_MODEL for ngspice is NGSPICE_CIRCUIT_MODEL,
renamed from NETLIST_EXPORTER_PSPICE_SIM. DIALOG_SIM_SETTINGS relies
on above mentioned object, so it was added as an argument of the constructor.
Do not use the symbol field string to populate the value and footprint
grid cells. The field strings may be empty because the symbol has not
been instantiated yet by entering a sheet. This fix makes an incorrect
assumption that the first instance value and footprint data in the symbol
is the same for all instances.
Note: this fix is incomplete because the value and footprint fields are
can now be different between sheet instances. The entire field
table editor design will need to be rethought because the current
grouping doesn't allow different value and footprint instance
changes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11194