Updating to PCB always resolves text variables from the schematic. This
means that back annotation will always start from resolved variables if
they exist in the schematic. So to avoid this, we prevent overwriting
any text variables that exist in the schematic.
This does prevent the user from updating a text variable in a pcbnew
field and backannotating this variable change into the schematic where
the schematic had a text variable already. Text variables are forward
annotation only until we add an additional property to each field to
include the unresolved text
Fixes https://gitlab.com/kicad/code/kicad/issues/21724
You generally copy/paste whole rows in lib tables, so make this workflow
easier. Allows pasting rows as new data. Prevent overwriting existing
data and don't force pasting from the first column
Interestingly, the majority of people in a KiCad training course wanted
to draw subsheets this way. There is no real reason to keep the
existing select behavior, so this greases some skids
The flag wxMOD_ALTGR is defined in wxWidgets as wxMOD_CONTROL|wxMOD_ALT
So AltGr key cannot used as modifier key because it is the same as
Alt key + Ctrl key that is already handled.
So the previous code did not work with modifiers Alt key, Ctrl key and Altgr key
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21696
The properties panel needs to look like the data fields for user
experience. In wx3.3 we get a helpful action button but until then, we
need to make our own
Implement bracket notation for stacked pins ([1,2,3], [1-4], [1,3,5-7]).
Automatic net naming proceeds based on the smallest logical pin number
in stacked groups.
Provide explode/reform commands in symbol editor for conversion.
Supports arbitrary ranges including BGA alphanum ranges like
[AA1-AA3,CD14-CD22]
Adds some additional QA and trace logging
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2004
The fix is more a workaround: if all columns of m_viewControlsGrid are removed by
the right click menu and the grid is empty, there are no way to re-add a column.
When happens, this workaround re-add a column when reopening the dialog to avoid
a empty grid.
When decreasing the number of units in a symbol, the previous code erased
items directly from m_drawings using a single iterator. Because m_drawings
is a MULTIVECTOR, this could invalidate iterators and attempt to erase
from the wrong bucket, leading to segmentation faults.
This patch iterates bucket by bucket and erases items belonging to units
greater than the requested count. This ensures iterator safety and avoids
accessing invalid memory.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21631
1) Moved view controls list to a wx_grid.
2) Allow show/hide of columns in view controls.
3) Allow editing of BOM Names in grid without long-click on Mac.
3) Added column show/hide states and sash pos to prefs.
4) Decreased mininum sash pane width to allow wider main grid.
5) Simplified presentation by moving "include" and "cross-probe"
settings to config menu.