Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo. Avoids needing to
repeatly update.
Also updates AUTHORS.txt from current repo with contributor names
Implemented as handling un-consumed scroll events that the
WX_VIEW_CONTROLS doesn't want because it has too many mods
set. Then dispatch these as TA_MOUSE_WHEEL events.
The default action from the selection tools is to run the
'increment' ACTION, which is implemented differently in the
various tools: eeschema can increment labels, symedit
does pin names and numbers, and fpedit does pad numbers.
While it's still session-limited, this means you don't have
to restart to get your locking ability back.
Finer-grained locking enablement probably makes better long-term
sense, but this at least prevents "gun shyness" about a setting
you can't turn off again easily.
Also it gets a bool's-worth of application configuration state
out of a dialog (it was a static).
Previously, when executing a left mouse button (LMB) click to drag the
selected table, the cells inside the table were selected instead of moving
or dragging the table. To fix this, the move action should be enabled
instead of cell selection when m_selection contains only PCB_TABLE as
selected item. Otherwise, cell selection should remain enabled.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17380
CHANGED: PCB file format now supports saving/loading complex padstacks
CHANGED: PTH pads are now rendered per copper layer in the copper color;
the PTH pad color is no longer used.
ADDED: support for importing complex pad stacks from Altium PCBs
Enforce padstack-aware access to pad properties across KiCad
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8182
Break the non-PCB-specfic parts of PCB_REFERENCE_IMAGE out
to a common REFERENCE_IMAGE class, which is then composed into
the PCB_REFERENCE_IMAGE. This will make it easier to bring the
transform origin logic to eeschema without repetition.
the GAL LAYER_SHAPES controls the opacity of filled shapes, not the visibility
a opacity = 0.0 disable the PCB_SHAPE selection of the item, but this is not
optimal, because only filled areas have a opacity control.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18719
TOOL_MENU::m_menu was unconditionally created by the TOOL_INTERACTIVE constructor, resulting in crashes if
we wanted to run the TOOLs in headless mode, e.g. in unit tests. This commits makes
the creation of the menu object dependent on Pgm::IsGui().
They are particularly damaging when our event loop
gets tied up in knots with the log message window
behind a modal window -- thereby locking up KiCad.
Zoom-to-selection should only show the elements that we can see, so
avoiding hidden fields in footprints keeps the zoom window appropriately
sized
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15245
- Changes BOX2 size to extended coordinates.
- Adds BOX2ISafe to construct a BOX2I that will fit in int32.
- Adds more checks.
- Safer computations.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17670
Don't try to do too many things at once. Separate
out fooptrint-children handling, visibility-handling,
and footprintEditor vs boardEditor differences.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17562
The footprint viewer isn't an edit frame, so we need to access the
settings through the base frame type instead. Also, double click makes
no sense in the footprint viewer, and just leads to weird results
sometimes.
Fixes Sentry KICAD-7A2