This also fixes a failure to use the correct effective width for
shapes (which might, for instance, inherit their widths from schematic
defaults, netclasses, etc.).
Fixes https://gitlab.com/kicad/code/kicad/issues/11358
Only SVG can actually handle transparency, but we should at least mimic
the color value of other transparent fills by blending with a (presumed)
white paper.
Fixes https://gitlab.com/kicad/code/kicad/issues/11304
Yielding can change the status of the m_rcItemsProvider, so we need to
check after the yield to ensure we don't try to dereference it after
freeing
Fixes https://gitlab.com/kicad/code/kicad/issues/11347
ADDED: Any addition board layers can be plotted on all selected board layer
when plotting.
CHANGED: The new plot to all layers feature made the plot edge cuts option
obsolete. Users must now select the edge cuts layer from the list of
plot to all layer selections to include edge cuts on all layers when
plotting.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2449
We only need one bottom to top layer sequence definition.
Plot a sequence of layer IDs (LSEQ) in the order of the sequence.
Add helper method to layer set (LSET) to create a sequence of layer IDs
using another sequence for ordering.
Commit ad251b7b broke the template path
lookup for flatpak via `PATHS::GetStockTemplatesPath()`. Fix this by
using `::GetStockEDALibraryPath()` in all EDA Library related path
lookup functions.
`GetStockEDALibraryPath()` effectively does the same as
`GetStockDataPath()`, but it takes care to check the
`KICAD_LIBRARY_DATA` build config, which is being used by flatpak to
point to the flatpak EDA Library extensions in
`/app/extensions/Library/`.
Closes#11174
Previously, coordinates were clamped to +- 60 inches. It makes no sense to
clamp them at plotter level: max cooed depends on the editor (schematic/board...)
Rename MAX_PAGE_SIZE_MILS to MAX_PAGE_SIZE_EESCHEMA_MILS and use it only for Eeschema.
Fixes#11196https://gitlab.com/kicad/code/kicad/issues/11196
When moving windows between monitors on Mac that changes the DPI, we
observe incorrect re-sizing of columns and rows. This attempts to
rectify the situation by avoiding DPI changes for Mac builds.
Fixes https://gitlab.com/kicad/code/kicad/issues/10586
After changing track width, via size, grid or zoom from the toolbar, the
canvas has no longer the focus on Windows. So we force the focus after clicking
on these widgets.
Fixes#11103https://gitlab.com/kicad/code/kicad/issues/11103
Allow falling back to the alternate variable definitions if the built-in
text block variables are not set.
Also push the project into variable resolution when plotting
Fixes https://gitlab.com/kicad/code/kicad/issues/11168
(cherry picked from commit c44d31fcfb)
Also make sure that value field is updated from name changes when the
symbol is a power symbol (even if it's from the schematic instead of
the library).
Fixes https://gitlab.com/kicad/code/kicad/issues/11093
Arcs can be altered by the process of changing from on-disk
representation to in-memory representation. Saving back to disk without
modifying the arc should not modify the calculated values.
This stores a copy of the on-disk representation that is only used to
save back to disk in the event that the arc is not modified during
editing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10442
Also makes sure the progress dialog is closed when we're done reading
symbols (it used to stay up for much of the symbol editor initialization).
Also makes sure that any cancel in the preLoad step is honoured in the
sync step. (The preload is done because it is multi-threaded and therefore
faster than the single-threaded sync.)
Also makes sure that individual threads pay attention to the cancellation,
not just the GUI thread.
Fixes https://gitlab.com/kicad/code/kicad/issues/8372
Count() returns unsigned values. Since, we subtract 1 from this value,
if the count is 0, we will underflow the unsigned value, creating an
extremely large value that we multiply by the interline spacing.
(cherry picked from commit d29d981784)
This is for the out-of-box experience for novice users. It is presumed
that folks with larger more complicated boards will turn it off.
Fixes https://gitlab.com/kicad/code/kicad/issues/6413
It avoid trying to calculate arc angles (start, end or arc angle) that
frequently create issues due to reverse Y axis, plot mirrored and/or
angle normalization with different criteria.
Fixes#10914https://gitlab.com/kicad/code/kicad/issues/10914
Use GAL_DRAWING_CONTEXT as this unlocks the context in its destructor,
so that when an exception is thrown inside the `try` block, it should
automatically unlock before we switch backend.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10840
Mac and some Linux configs disable menu icons. We shouldn't offer the
option when the system does not support this as it leads to confusion
Fixes https://gitlab.com/kicad/code/kicad/issues/10425