Jeff Young
a4073c2ace
Provide some user hints on editing fields.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17781
2024-04-17 18:30:37 +01:00
Alex Shvartzkop
01fedb86e2
Fix shadowed variable.
2024-04-17 18:22:22 +03:00
Alex Shvartzkop
d97ac47509
Try to use parallel processing in BRep cutting algorithm.
2024-04-17 18:15:17 +03:00
Alex Shvartzkop
d98d7f9017
ADDED: Support 3D shape export in BREP format.
...
BREP doesn't support colors or label names,
but is much faster to write/read compared to STEP.
2024-04-17 17:31:10 +03:00
Alex Shvartzkop
bf16f757ed
STEP export: disable history to speed up hole cutting.
2024-04-17 16:09:03 +03:00
Seth Hillbrand
caa18568e0
Handle DRC rules that limit PTH/NPTH in courtyards
...
Allows custom rules that explicitly allow holes from one footprint to
overlap the courtyard from another
2024-04-16 22:46:38 +00:00
dsa-t
822409225a
STEP export: don't fail when can't construct a wire.
...
This can happen with very small shapes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17774
(cherry picked from commit 481c1592ae
)
Co-authored-by: Alex Shvartzkop <dudesuchamazing@gmail.com>
2024-04-16 22:36:34 +00:00
Seth Hillbrand
374fb0f5f2
IPC2581 fixes
...
- Component name ref comes before pin ref
- OtherSideView is at the end of the package
- BOM defines the dictionary so we need all items in the BOM even if
marked "Exlude from BOM"
- Fix unique REFDES indicator to increment number rather than appending
additional numbers
2024-04-16 13:25:09 -07:00
Jeff Young
3958d1bf14
Clean up selection logic.
...
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
2024-04-16 18:12:47 +01:00
Jeff Young
d761b4f22f
RIP LIB_TEXTBOX and LIB_SHAPE.
2024-04-16 16:31:16 +01:00
jean-pierre charras
6b7852c2bb
BOARD::DeleteMARKERs fix bug: missing m_itemByIdCache handling.
...
When deleting markers, the m_itemByIdCache corresponding entry must be
also removed.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11750
2024-04-16 12:00:40 +02:00
Seth Hillbrand
f61d400d88
Allow non-identical schematic/pcb nets
...
The schematic net names are fully unique but if we have multiple pads
that are mapped to a NC pin, they need to have unique net names so that
they do not get connected to each other in the ratsnest. This breaks
the schematic parity check as we have modified the netname for some
pads. To work around this, we first maintain the zero-th net without
suffix and then add an additional check in DRC to ensure that we allow
unconnected nets as long as the share a common prefix with the schematic
netname.
2024-04-15 17:54:44 -07:00
Seth Hillbrand
8760519a87
Ensure that we are not calculating self-collision
...
Ratsnest may have connections from a zone to two different items. This
should be avoided as we never want to draw the ratsnest line with the
same element as start and finish
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17763
2024-04-14 13:50:01 -07:00
Marek Roszko
2a3b597ab9
Strip out no longer needed links on the top executables
...
Not needed due to kicommon
2024-04-14 07:52:02 -04:00
Alex Shvartzkop
76b7cdd128
Improve grid cell editors appearance.
2024-04-13 23:26:01 +03:00
Marek Roszko
94847e89c3
Static cast some more enum usage
2024-04-13 15:15:39 -04:00
Marek Roszko
7d68e19afa
enum * double is deprecated
2024-04-13 15:14:39 -04:00
Jeff Young
d77eae3e7e
Collapse LIB_FIELD into SCH_FIELD.
2024-04-13 15:42:13 +01:00
Marek Roszko
262d94964f
Lets try C++20
2024-04-12 23:32:18 -04:00
Marek Roszko
96cdfc7fa7
Update equality overloads for C++20
...
C++20 added new reverse and rewritten candidates. This can confuse the compiler because it'll test both A==B and B==A for overloads.
Because we were defining parent class equality overloads, A==B and B==A was considered ambigious due to both being compatible in casting.
So we needed to add explicit child class equality operator overloads
2024-04-12 23:05:58 -04:00
Marek Roszko
7a67151a22
Update lamba capture
2024-04-12 23:03:29 -04:00
Marek Roszko
1607729cf7
Silence deprecation warning about enum * fp type
2024-04-12 22:55:43 -04:00
Marek Roszko
dbd98f1ce0
Explicit lambda capture
2024-04-12 22:54:59 -04:00
Marek Roszko
8fb4901d4b
Fix more utf8 comparisons
2024-04-12 22:53:25 -04:00
Seth Hillbrand
d0fe2e06aa
Do not set optional defaults
...
In the file format, the 'mirror' tag is optional (not written unless on)
so we cannot default the new text to 'mirror' on just because the
footprint is on the back layer as it won't be turned off by the
footprint loader.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17546
2024-04-11 09:43:12 -07:00
Seth Hillbrand
59f99d9a6a
Re-add routine to remove duplicate points
...
The router needs to elimitate duplicate points but keep colinear
segments. This re-creates the partial routine from the old Simplify()
function
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17582
2024-04-10 17:25:58 -07:00
Alex Shvartzkop
7b935f7673
EasyEDA Pro: import Colorful Image as Reference Image.
2024-04-10 03:21:46 +03:00
Mike Williams
e2f1da60d9
PCB Fields: fix v7 imported board hidden description field pos
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17684
2024-04-09 15:23:44 -04:00
Seth Hillbrand
a12bc3a410
Don't knock out anti-text box
...
Knockout text should only prevent filling directly around the text
itself, not the larger anti-text fill around it. This prevents minimum
width provisions from kicking in unneccesarily
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17665
2024-04-06 14:28:49 -07:00
qu1ck
441b2686d3
IPC_API: fix crash in PLUGIN_AVAILABILITY_CHANGED event handler
2024-04-05 18:11:52 -07:00
Jon Evans
c1e7668d80
Fix SWIG wrapper for AddPrimitive
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17676
2024-04-04 23:09:05 -04:00
Jon Evans
aff2d5c0d3
Factor out SHAPE_LINE_CHAIN utilities
2024-04-04 18:55:58 -04:00
JamesJ
a321a86f38
Update net inspector after connectivity update when loading board
...
Fixes issue where if the net inspector was open when a board was
loaded, the track data would not be updated until a board edit
action triggered an update.
2024-04-04 22:29:47 +00:00
JamesJ
951065390e
Add composite update callback to BOARD_LISTENER
...
Required for net inspector otherwise composite operations (such
as undo / redo, and length tuning) can result in multiple add /
remove events firing which results in inconsistent length state.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17527
(for 9.0)
2024-04-04 22:29:47 +00:00
Jeff Young
bf2b3b0b0f
Deconflict some LIB_TREE_ITEM APIs so they can remain non-const.
...
(The non-const is required by FOOTPRINT_INFO, which must load
footrpints to get some of the data.)
2024-04-04 13:18:55 +01:00
jean-pierre charras
59142a10d7
DIALOG_CREATE_ARRAY: better messages and better comments
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17642
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17656
2024-04-04 09:54:47 +02:00
jean-pierre charras
3f24e0eb09
minor compil warning (unused var)
2024-04-04 09:52:28 +02:00
Mike Williams
2acf928723
PCB: fix net inspector assert on column show/hide menu
...
Also handle 0-width columns coming in from settings. GTK seems to have
an issue where these columns are impossible to resize even if they are
made visible.
2024-04-03 13:15:47 -04:00
Jon Evans
493ca7a0f5
Fix unhandled case warnings
2024-04-02 20:56:48 -04:00
Jon Evans
1dbe78c68b
Add QA tests and expand serialization for API
2024-04-02 19:51:18 -04:00
Jon Evans
6bd02cae6d
Refactor; add user control over API server
2024-04-02 19:51:18 -04:00
Jon Evans
a3b6ab48a4
Add a new plugin system for the new API
2024-04-02 19:51:16 -04:00
Jon Evans
f613cd1cb4
ADDED: A new IPC API based on protobuf and nng
...
Details, documentation, and language bindings are works in
progress and will be evolving over the course of KiCad 9
development.
2024-04-02 19:34:36 -04:00
Jon Evans
e5d4f58d65
Fix parsing of legacy text hide token
...
(cherry picked from commit 53c2543474
)
2024-04-02 22:26:57 +00:00
Seth Hillbrand
2123e2ca9c
Add some corrections to IPC2581 export syntax
...
Outline fonts need lineDesc
Padstack def need the location for the pad relative to the padstack
2024-04-01 22:57:25 -07:00
Seth Hillbrand
d82e8ee41a
Map nets in pasted data
...
Add missing nets to the existing board and use any existing nets of the
same name.
Adds option to clear all nets in Paste Special
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17626
2024-04-01 16:56:44 -07:00
Ian McInerney
90ace0fcaf
Ensure model file output stream is valid before writing to it
...
Fixes KICAD-74V
2024-04-01 22:00:05 +01:00
Ian McInerney
87a8235831
Remove group from dummy track before deletion
...
The dummy track in the merge colinear segments is used to overwrite the
original segment with the changes at the end, so the group must be
removed before leaving the function, and can't be removed at creation.
Fixes KICAD-74M
2024-04-01 21:59:55 +01:00
Roberto Fernandez Bautista
6078bc52eb
PNS: Fix a few memory leaks
2024-03-31 18:21:02 +02:00
Jeff Young
43edc2eaf8
Don't start immediate mode when there's no event position.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17332
2024-03-31 12:59:52 +01:00
Thomas Pointhuber
7d1881b58a
altium: use std::unique_ptr instead of raw pointers where feasible
2024-03-31 00:03:03 +01:00
Seth Hillbrand
c841d0df6d
Handle small holes in DRC Connection width test
...
If there is a small hole (smaller than the conn width), we can loop
around in a circle checking all points and not move past the mimimum
distance.
To avoid this, if we detect a loop, we exit the substantial checker.
This should return with true because a large hole will return true and
we are only checking to see if there is a minimum amount of copper
between two open areas
2024-03-30 07:58:34 -07:00
JamesJ
79a3dd71e4
Only delete grouped / generated BOARD_ITEMS from the root item
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17527
This is required as during an undo / redo operation, rebuilding
the previous selection can result in a group / generator being
selected as well as all of their contained items. This prunes
the contained items to remove the possibility of a double-delete.
2024-03-30 14:20:06 +00:00
Marek Roszko
fd501b4bc8
Fix DRC slowdown due to UI yields
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17434
2024-03-29 23:34:01 -04:00
Seth Hillbrand
37a3f52d81
Remove unused variable
2024-03-29 16:48:08 -07:00
Seth Hillbrand
e4756c811e
Utilize hash_combine to avoid hash collision
...
Most of our pointers will share the top 32 or more bits of their pointer
addresses, making cache collisions highly likely. This uses a hash
combiner to mix the bits more effectively
2024-03-29 15:39:57 -07:00
Seth Hillbrand
10c1072479
Remove duplicated clearanceEpsilon
...
We already get clearance epsilon in the clearance resolver. Don't
subtract it twice or we end up getting DRC errors
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16879
2024-03-29 15:39:57 -07:00
Seth Hillbrand
5e850911c5
When dragging a via, we need to get all obstacles
...
The clearance epsilon should not be used to limit which force elements
we return in the query. Otherwise, we can drag elements into a
DRC-violating space
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16293
2024-03-29 15:39:57 -07:00
Jeff Young
491adc6c6c
Formatting.
2024-03-29 16:04:32 +00:00
Jeff Young
2c21ef1ed0
Fix footprint undo for new UUID caches.
...
The footprint's children get swapped by the parent's std::swap
call, so they need to get removed/added to their parent around
the swap.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17592
2024-03-29 16:04:32 +00:00
Seth Hillbrand
c3a5b92ed0
Sort netnames in properties panel
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15590
2024-03-28 13:03:16 -07:00
Jeff Young
57b224d3f0
Cut/copy/paste for PCB tables.
2024-03-28 14:31:31 +00:00
Jeff Young
f9c5e48c57
Add missing PCB_TABLE_T, and a comment.
2024-03-28 14:31:31 +00:00
Jon Evans
e347300593
Work around SWIG problems
2024-03-27 18:42:46 -04:00
Mike Williams
48b3b4697a
PCB: update footprint field when changing footprints
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/17598
2024-03-27 15:20:12 -04:00
Jon Evans
1acb1afa98
Fix build errors; warnings
...
(somehow, the previous version compiles on my machine...)
2024-03-26 19:38:28 -04:00
Jon Evans
5aa8af1abf
Add a cache for looking up board items by ID
2024-03-26 18:36:23 -04:00
Jon Evans
7b6afd290a
Remove non-const access to board-owned items
...
(with a few things const-casted for now)
2024-03-26 18:36:23 -04:00
JamesJ
54919e6854
Performance update for pcbnew net inspector
...
Forces full rebuild of nets list for bulk updates over a certain
size. This is more performant than iterating over all items in
a bulk update.
2024-03-24 20:29:15 +00:00
JamesJ
f51e775f26
Use bulk BOARD_LISTENER calls following undo or redo operations
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17561
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17420
2024-03-24 19:25:26 +00:00
Jeff Young
50567764b5
Allow no-net teardrops on no-net pads with no-net tracks.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17566
2024-03-24 19:22:25 +00:00
Jeff Young
a53bc9e026
Attempt to prevent KICAD-YP.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17560
2024-03-24 18:12:58 +00:00
Jeff Young
5d37a00759
Table plotting for PCBNew.
...
Also fixes some bugs with property exposure that (along with
other things) allowed you to put table cells on a different
layer than their parent table.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17438
2024-03-24 16:49:33 +00:00
JamesJ
67d6e6afdf
Only update net inspector when panel is shown.
...
Pcbnew can hang for a long time when undoing operations involving
large numbers of board items. This provides an interim workaround
(and replicated the behaviour of the search panel) by only
computing track statistics updates incrementally if the inspector
is displayed.
Partially fixes https://gitlab.com/kicad/code/kicad/-/issues/17561
(if net inspector is not shown)
2024-03-24 12:11:36 +00:00
Jeff Young
fc572bfbc6
Make sure users don't run into min text size.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17543
2024-03-23 15:50:45 +00:00
Jon Evans
af18e06ea4
Remove the "insert chevron" function of the via placer
...
This behavior is generally undesirable and was only needed
because of past limitations. Now we only split a track
when the user places a via directly on top of it.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16456
2024-03-23 14:28:21 +00:00
wh201906
806daecf85
Add toggleHV45Mode item to the measure tool's context menu
...
The behavior of the measure tool is influenced by the
horizontal/vertical/45-degree mode, but the context menu of the measure
tool lacks an option to toggle this mode. In contrast, the drawing
tools are also affected by this mode, and their context menu has the
item to toggle this mode.
2024-03-23 21:24:13 +08:00
Jeff Young
88c1fa3e26
Ignore graphic shapes that implement netties.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17223
2024-03-23 13:18:46 +00:00
Marek Roszko
ab759d21f2
Fix more build warnings
2024-03-23 08:53:11 -04:00
Jeff Young
7218d501d4
Better locality-of-reference for footprint chooser filters.
2024-03-23 12:48:52 +00:00
Marek Roszko
490dbfdf83
Fix build warnings
2024-03-23 08:34:59 -04:00
aris-kimi
d7abed2d60
Footprint Chooser dialog: Allow toggle buttons to work simultaneously
2024-03-23 09:48:15 +00:00
Seth Hillbrand
00d108498f
Avoid crashing on missing tracks in CADSTAR
...
We can't assume that the ignored connection exists when trying to set
the junction size. We use int_max for the default instead of 0 so that
later, we don't try to create a minor track with 0 width in loadNets()
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17523
2024-03-22 10:55:48 -07:00
jean-pierre charras
cb8ed07858
GERBER_JOBFILE_WRITER: use UTF8 encoding according to current specif.
...
Since 2020, non ASCII7 chars are encoded using UTF8 encoding.
A old but incorrect encoding was previously used.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17534
2024-03-22 09:50:32 +01:00
JamesJ
de85b2217b
Re-centralise handling of sort column in net inspector list.
...
- Includes GTK crash fix from a5ef4f1b
- Additionally removes an unneccesary re-sort when rebuilding columns
- Correctly saves column state when using pcbnew standalone
2024-03-21 21:07:08 +00:00
jean-pierre charras
4f4ca9f383
Do not run DRAWING_TOOL::PlaceTuningPattern() inside the footprint editor
...
The footprint editor cannot run the router.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17522
2024-03-21 15:19:48 +01:00
Marek Roszko
83ef5fd7d6
Move PGM_BASE to kicommon
2024-03-20 23:29:42 -04:00
Marek Roszko
e32b26ebeb
Move JSON_SETTINGS and PARAMS to kicommon
2024-03-20 23:29:42 -04:00
Mark Roszko
9947cc0359
Fix another build breakage
2024-03-21 03:23:29 +00:00
Jon Evans
a5ef4f1bef
Net inspector: fix crash when switching boards on GTK
...
Can't invalidate columns while they are the sorting key
2024-03-20 23:04:28 -04:00
Jon Evans
f00f47df13
wxWidgets 3.3 compatibility: explicit wxString conversion
2024-03-20 22:02:41 -04:00
Jeff Young
d0df8df7c7
Use a lighter touch keeping internal data structures in sync.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17493
2024-03-20 21:35:43 +00:00
Jeff Young
82c851a4a7
Expose groups to property manager.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17496
2024-03-20 20:19:21 +00:00
Jeff Young
859f553c91
Keep internal data consistent when changing pad type.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17493
2024-03-20 18:35:56 +00:00
jean-pierre charras
90eed8b4b6
Avoid using a nullptr.
2024-03-20 18:34:18 +01:00
Alex Shvartzkop
800ff9ffb1
STEP export: add location info to edge add failures.
2024-03-19 23:10:37 +03:00
Alex Shvartzkop
75037dd1d1
STEP export: handle small segments connecting two arcs better.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17499
2024-03-19 22:53:30 +03:00
jean-pierre charras
63dd4aed93
Step exporter: workaround to fix issue for boards with main round outline
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17446
2024-03-19 11:19:37 +01:00
JamesJ
a763d613e5
Move Net Inspector dialog to a widget panel in pcbnew
...
Introduces some updates to the inspector, and a number of bug fixes:
- Correctly handles changes in board stackup
- Correctly handles unit change events
- Correctly handles language change events
- All layout / panel settings are stored to the project settings
- Retains ability to create net report
- Simple filter searches on net name and net class name (stored in settings)
- Allows hide / show of columns (stored in settings)
- Grouping by netclass (stored in settings)
- Optional filtering by net name (stored in settings)
- Optional filtering by net class (stored in settings)
- Custom grouping by net name match
2024-03-19 01:02:01 +00:00
Jeff Young
4ed2a0674a
Minor cleanup.
2024-03-18 22:21:01 +00:00
jean-pierre charras
3b47fd1503
FOOTPRINT_CHOOSER_FRAME: add option to show the 3D in a separate viewer.
...
If a separate viewer frame is selected, the footprint chooser always shows
the footprint and the 3D shape is shown in a 3D viewer frame if the 3D view
is enabled.
2024-03-18 08:42:43 +01:00
Mark Roszko
72d83cd5de
Revert "Move JSON_SETTINGS and PARAMS to kicommon"
...
This reverts commit 81855aaaa6
2024-03-18 00:08:46 +00:00
Marek Roszko
81855aaaa6
Move JSON_SETTINGS and PARAMS to kicommon
2024-03-17 18:11:49 -04:00
Jeff Young
37b19c4df7
Handle table layer in undo.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17437
2024-03-17 20:39:46 +00:00
Jeff Young
0598ca0f90
Keep BOARD_DESIGN_SETTINGS DRC marker exclusions up-to-date.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17429
2024-03-17 16:29:24 +00:00
Jeff Young
d317b8da74
Pull modifications to cherry pick forward from 6.0.
2024-03-17 12:42:45 +00:00
Jeff Young
44c14b1935
Fix layer swapping for multi-layer items.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17371
2024-03-17 12:14:21 +00:00
Jeff Young
a4062ade3d
Report location of FUTURE_FORMAT_ERRORs when reading footprints.
2024-03-16 11:06:12 +00:00
Jeff Young
d17151ac1b
Correctly handle locked token for PCB_TEXTBOX and PCB_TABLECELL.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17439
2024-03-15 21:42:47 +00:00
Jan Wichmann
91b850d8df
pcbnew: The checkbox 'Center on footprint' was not disabled when the actionButton was changed.
2024-03-14 22:24:30 +00:00
Wayne Stambaugh
cf97432833
Fix Eagle footprint library QA test failure.
...
Unfortunately the KiCad library I/O does not unescape file names so do not
escape them in the Eagle board plugin.
2024-03-14 17:00:27 -04:00
Jeff Young
e30b6398b7
ADDED: optional PDF metadata from AUTHOR and SUBJECT variables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17289
2024-03-14 17:40:04 +00:00
Wayne Stambaugh
34ec57958d
Fix Eagle board import when footprint library versions exist.
...
This was a crude hack that appends the library URN ordinal to the name of
the footprint so that it can be correctly looked up by the "element" node.
The Eagle XML DTD does not make it clear how the URN "ASSET_ID" and
"VERSION" are used to look up the appropriate "ASSET_TYPE" so this is a
best guess and seems to work correctly.
The inferred edge clearance dialog had to be disabled when importing third
party boards because on GTK (and possibly other platforms) the dialog would
completely hang KiCad preventing the imported board and possible schematic
from being saved.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12897
2024-03-14 09:45:05 -04:00
Wayne Stambaugh
eddf4883b6
Minor dialog layout improvements.
2024-03-13 11:45:33 -04:00
Jeff Young
a091767551
Don't test non-overlapping non-through-hole vias.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17426
2024-03-13 15:19:28 +00:00
Jeff Young
91d949f59e
Splitter for 3D model page of Footprint Properties.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15606
2024-03-13 15:03:55 +00:00
Alex Shvartzkop
b56ee20e22
Fix a crash in PNS zone sync when there's more outlines than triangulated polygons.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17351
2024-03-13 03:09:21 +03:00
Jon Evans
ece8521e68
Add some safety to layer swapping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17371
2024-03-12 19:32:40 -04:00
Jeff Young
4b6a1f4dbd
Remove netclass/custom rule handling from Track & Via Properties.
...
(These should be done in Edit > Edit Track & Via Properties.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17216
2024-03-12 22:29:03 +00:00
Jeff Young
1844bf1708
Make Edit Track & Via Sizes "specified sizes" dropdowns clearer.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17216
2024-03-12 22:27:10 +00:00
Jeff Young
25e181db5c
Don't allow selection of footprint text in board editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17271
2024-03-12 21:30:12 +00:00
Alex Shvartzkop
44b970c8f2
Fix warning.
2024-03-12 08:54:21 +03:00
Seth Hillbrand
0f57d76ecd
Clean and standardize cross-probing action
...
Between schematic and pcb editors, we want the following actions:
- Single click on ERC/DRC item should show the item in the ERC/DRC
window. But if the window is not visible, it should only update the
status bar
- Double click on ERC/DRC item should show and raid the ERC/DRC window
as well as select the line item
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17383
2024-03-11 17:50:44 -07:00
Seth Hillbrand
6e591f5f91
Don't count removed zone layers
...
This does 3 things:
1) Removes unused zone layers on load
2) Does not save unused zone layers
3) Removes unused zone layers from connectivity calculation
(1) Prevents existing boards from using unused zone layers for any
connectivity or rendering. (2) Updates the contents of boards with
removed zone layers to prevent them from propagating. (3) updates the
connectivity while running pcbnew and removing a zone layer
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17288
2024-03-11 23:38:10 +00:00
SubaruArai
d7173dd6d1
qr footprint wizard: add option for error correction level
...
QR codes allow 4 different levels of error correction. By increasing the level, larger numbers of data bytes can be corrupted without invalidating the code
2024-03-11 23:37:29 +00:00
Seth Hillbrand
3cc1617f5a
Fix slow selection time when calculating clearance
...
The clearance between two zones could be rather slow. This was in part
to trying to do triangle-triangle collisions between zones when we only
need outline collision and in part to the shape_line_chain collision
routine. The shape_line_chain collisions don't need to recreate
segments on each iteration and should instead create them once and using
this to check all collisions
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17327
2024-03-11 16:32:24 -07:00
Seth Hillbrand
9648fafe11
Handle memberOfSheet for full footprints
...
Previously, we handled clearance for just components in the eval
function. We also checked the incorrect root sheetname.
2024-03-11 16:32:24 -07:00
Jeff Young
d083593177
Table bug fixes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17399
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17398
2024-03-11 22:58:12 +00:00
Jeff Young
5ccd11d426
Run disambiguation if there are multiple preferred items.
...
This didn't really come up before tables, but any cell selection
will also include its parent table.
2024-03-11 17:46:09 +00:00
Jeff Young
ccfefc3971
Table support for footprint editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17333
2024-03-11 17:46:09 +00:00
Mark Roszko
d904535a15
Add missing text var override to cli gerbers
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17283
2024-03-11 12:33:52 +00:00
Jeff Young
fbc433deaa
Make sure to initialize cell start location.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17379
2024-03-10 21:49:54 +00:00
Jeff Young
9602151d6c
Fix typo in SelectRows().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17378
2024-03-10 21:06:43 +00:00
Jeff Young
1bf24da385
Schematic editor Table Properties and commenting for QuasiModal usage.
2024-03-10 12:18:50 +00:00
Jeff Young
a12d79cd13
Performance improvements for multi-page dialogs.
2024-03-10 12:18:50 +00:00
jean-pierre charras
821063e5b1
Pcbnew, pdf plotter: fixes and enhancements.
...
* To select a footprint info, Use the bbox with not text as selectable area
* Fix also incorrect position of footprint bbox when plotting with offset
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17355
2024-03-10 13:04:39 +01:00
Jeff Young
f341ab9b00
Bug fixes for flipping tables.
...
Also adds support for tabbing between table cells in the
table editor dialog.
Also adds support for calling the table editor dialog from
edit properties on a table selection.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17337
2024-03-09 22:18:19 +00:00
Jeff Young
63b06095e6
Table selections for PCBNew.
2024-03-09 22:18:19 +00:00
Jeff Young
72ba31ba27
Pass symbol's netlist to footprint preview widget.
...
This allows us to show the pin functions on the corresponding
pads.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17349
2024-03-09 15:01:59 +00:00
Alex Shvartzkop
4d66a8ebdb
Fix rendering/plotting of arcs with tiny angle and huge radius.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17343
2024-03-09 02:07:24 +03:00
Jeff Young
d1d9636598
Run Edge.Cuts & Margin clearance tests on zone layer.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17292
2024-03-08 20:51:05 +00:00
Seth Hillbrand
686a62cbe6
Temporary fix to disable zone-zone clearance display
...
When selecting two objects, we display the measured clearance between
them. This can be problematic with large zones as they have thousands
of triangles.
This is a temporary fix for 8.0.1 to disable the check until we have a
performant version
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17327
2024-03-08 10:31:59 -08:00
Alex Shvartzkop
aa68a3817a
Fix zone cross-probing from DRC dialog.
2024-03-08 21:23:14 +03:00
Alex Shvartzkop
f6f0b9a661
ADDED: PCB 3D image raytracing rendering from CLI.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/3691
2024-03-08 14:38:18 +00:00
Jeff Young
06a8517818
Further improvements to cache locking.
...
In particular, don't hold cache lock while doing computations.
2024-03-07 13:20:20 +00:00
Armin Schoisswohl
4dcec60bf4
add include <mutex> to fix compilation under linux
2024-03-07 13:20:16 +00:00
Armin Schoisswohl
bb9448edcb
change m_CachesMutex to shared_mutex and do shared locking for read access in zone BBox calculations
2024-03-07 13:20:13 +00:00
Armin Schoisswohl
991ff71f33
fix deadlock in DRC "Checking keeopouts & disallow constraints"
2024-03-07 13:20:10 +00:00
Armin Schoisswohl
4590455ab2
protect cache lookups in pcbnew/zone by locking the mutex before calling find, fix #17237
2024-03-07 13:20:06 +00:00
Yon Uriarte
7520a8b316
Avoid updating max clearance while in dtor
...
Max clearance is updated by IncrementTimeStamp(), which is called when in the FOOTPRINT dtor and ZONE dtor. This can cause issues when iterating over all footprints as the footprints may be delete-ed
Fixes https://gitlab.com/kicad/code/kicad/issues/17269
2024-03-06 18:48:49 +00:00
SubaruArai
8b3fc41ee5
Update QR footprint wizard
...
- Allows more than 62 bytes
- Adjusts size of code based on data or parameters
- Allows selection of ECC
2024-03-06 18:39:40 +00:00
Jeff Young
20efeef5ae
Apply anti-walk algorithm only to textboxes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16481
2024-03-06 13:51:27 +00:00
Yon Uriarte
4e8e14ae3a
Responsive: Avoid excessive repaints when toggling a netclass' rastnest visibility.
...
Toggling netclasses visibility toggles the member nets' visibility one by one. Defer redrawing until all toggling is done.
Fixes https://gitlab.com/kicad/code/kicad/issues/17115
2024-03-05 14:32:12 +00:00
Alex Shvartzkop
a4da829ccc
Fabmaster (CADENCE ASCII): import dimensions graphics.
...
See https://gitlab.com/kicad/code/kicad/-/issues/17239
2024-03-04 19:51:28 +03:00
Alex Shvartzkop
cb4ace5561
Fabmaster (CADENCE ASCII) import: fix position and orientation of footprint graphics.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17239
2024-03-04 19:51:27 +03:00
Mike Williams
36331e259a
VRML: add options to exclude DNP/unspecified types like STEP exporter
2024-03-04 10:10:34 -05:00
Alex Shvartzkop
30573beb48
EasyEDA Std: fix importing footprints from footprint editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17264
2024-03-04 16:34:51 +03:00
Alex Shvartzkop
951c550c1e
EasyEDA Std PCB: fix crash when Name/Prefix type text is not in a footprint.
2024-03-04 15:09:31 +03:00
jean-pierre charras
4a945172db
Pcbnew: do not select a PCB_REFERENCE_IMAGE if the LAYER_DRAW_BITMAPS is not visible.
...
LAYER_DRAW_BITMAPS layer controls transparency and visibility of images on the board.
Fixes #16282
https://gitlab.com/kicad/code/kicad/-/issues/16282
2024-03-04 11:46:45 +01:00
Seth Hillbrand
02cdb0c6b9
Mask aperture pads can have multiple layers
...
But as long as they don't have copper, we should treat them as mask
apertures
2024-03-03 20:56:39 +00:00
Alex Shvartzkop
85b1978408
Use 64-bit type to represent microseconds.
...
int and long are 32-bit on Windows, causing overflows.
2024-03-03 21:40:26 +03:00
Wayne Stambaugh
3eb5c52073
Improve zone manager dialog layout.
2024-03-03 12:09:01 -05:00
JamesJ
66b378087a
Remove close button from pcbnew search panel
...
For consistency with the other panels, removes the circular 'x' close
button from the search panel. Toggling visibility remains possible
through the View menu
2024-03-03 16:18:23 +00:00
Marek Roszko
0c8e08ed58
Move some language changes to a event on the frame
2024-03-03 11:02:26 -05:00
jean-pierre charras
0bde79bd6c
PCB_PAINTER: do not draw PCB_SHAPEs on netname layer in FP editor.
...
Fixes #17250
https://gitlab.com/kicad/code/kicad/-/issues/17250
2024-03-03 17:00:17 +01:00
Yon Uriarte
fe1c73ed7c
Performance: Cache BOARD::GetMaxClearanceValue
2024-03-03 13:54:46 +00:00
jean-pierre charras
f6cf78fd7c
plot_board_layers.cpp: when plotting pads, Save/restore corner radius ratio
...
instead of corner radius.
The corner radius comes from corner radius ratio, so saving/restoring the corner
radius can create rounding errors when trying to recalculate the ratio from the radius.
2024-03-03 11:56:41 +01:00
Jon Evans
ed18a9bcc2
Correctly handle footprint graphic knockouts for no-net case
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17223
2024-03-02 15:39:07 -05:00
Jon Evans
3a3ceb8ffc
Allow specifying a minimum for a via_count constraint
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17234
2024-03-02 15:26:28 -05:00
Roberto Fernandez Bautista
a4929f9c27
Step exporter: handle circles correctly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17137
2024-03-02 19:09:33 +01:00
Roberto Fernandez Bautista
d458bcad16
kicad_cli fp ugrade: create directory with extension
2024-03-02 18:21:13 +01:00
jean-pierre charras
d81605f4ea
DIALOG_PAD_PROPERTIES: fix a incorrect test to show a warning.
2024-03-02 17:16:27 +01:00
Roberto Fernandez Bautista
4508512343
Sanitise filename before saving footprint library
2024-03-02 13:06:23 +01:00
Roberto Fernandez Bautista
a4a99e3aff
kicad_cli: Allow upgrade of legacy and non-kicad footprint libraries
2024-03-02 13:06:23 +01:00
Jeff Young
bd1d449cd3
Check for NETINFO_ITEM before dereferencing it.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17230
2024-03-02 11:37:22 +00:00
jean-pierre charras
1ee49cca5e
FOOTPRINT_CHOOSER_FRAME: rework on bottom panel to allow a long string in
...
the check box for filter by FP names to be displayed without overlapping other
widgets.
2024-03-02 11:24:54 +01:00
Jan Wichmann
1297ddc88d
pcbnew: Added default master pad properties
...
CHANGED: Automatically selects the right pad type for the footprint type. Resets the pad properties if the master pad properties do not match the pad type.
https://gitlab.com/kicad/code/kicad/-/issues/16563
2024-03-02 00:13:39 +00:00
Seth Hillbrand
0129191ec0
Limit where the intersection of two lines can be
...
This avoids generating lines where we are unable to select them because
they get too close to the border
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16959
2024-03-01 15:57:24 -08:00
Jeff Young
8dddd9cc2c
Separate "use board stackup colors" into separate checkbox.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17085
2024-03-01 23:45:06 +00:00
Seth Hillbrand
14667e2033
Don't wait for unused events
...
We only need the UI update and mouse/keyboard while updating our DRC
window. Waiting for other events gets into a race condition with the
schematic editor that can cause a hang
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17003
2024-03-01 15:21:42 -08:00
Seth Hillbrand
d3334ed9f0
Do not re-number aperture pads
...
Aperture pads do not have numbers, so reserving space for them will
cause the actual numbered pads to become out of order
2024-03-01 13:04:19 -08:00
jean-pierre charras
005affd473
FOOTPRINT_CHOOSER_FRAME: Fix a UI problem specific to Linux
...
On the bottom on the frame, some widgets were not correctly placed.
Fixes #17217
https://gitlab.com/kicad/code/kicad/-/issues/17217
2024-03-01 19:56:22 +01:00
Ethan Chien
8d19d27483
Fix zone manager crash when no board is loaded
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17187
2024-03-01 15:58:01 +00:00
Alex Shvartzkop
defcb49ac8
Support Altium Schematic ASCII import
2024-02-29 20:49:20 +00:00
aris-kimi
24529e5242
ADDED: library tree context menu option to open sym/fp library files from the defined text editor.
...
Short description:
Works for Symbol and Footprint Editor behind an advanced config option.
For Symbol Editor it is shown for a single item selection (library or symbol).
For Footprint Editor it is shown for a footprint selection.
(fp editor allows a single tree item selection only).
Option stays hidden if current frame has been modified.
Also small fix(?) for similar action to the project manager.
(Call for the Execution has moved inside the file loop.)
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15736
2024-02-29 19:01:59 +00:00
Jeff Young
c23550dc0b
Unflip when going to viewport which isn't flipped.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13773
2024-02-29 17:37:48 +00:00
Alex Shvartzkop
39a0a81832
EasyEDA Std import: support multiline text on PCB.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17171
(cherry picked from commit 0dab086f0c
)
2024-02-29 00:54:46 +00:00
JamesJ
b8748c4ef8
Add import netclass color menu items to PCB appearance widget
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16908
ADDED: Context menu item in PCB appearances widget to import netclass
color from schematic.
ADDED: Context menu item to reset PCB netclass color (replicating
same menu item from Nets inspector)
2024-02-28 23:13:15 +00:00
Jeff Young
141de7ac11
Even up spacing in dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16391
2024-02-28 22:18:27 +00:00
Seth Hillbrand
6a8d2a7eb3
Store group id rather than group
...
We only need the group storage id for lookup. Storing the KIID instead
of a copy of the group avoids unneeded overhead
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17175
(cherry picked from commit 7d1adff071
)
2024-02-28 13:27:38 -08:00
Jeff Young
27031dd2c5
Check env vars when testing for unresolved variables.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17174
2024-02-28 17:16:58 +00:00
Jon Evans
9e7b4b7f89
Avoid nullptr dereference when loading group info
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17154
2024-02-27 19:43:21 -05:00
Jon Evans
0df5cf7f75
Expose grid origin action in more places
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17007
2024-02-27 18:50:44 -05:00
Seth Hillbrand
a8880fb63e
Fix memory leak in net inspector dialog
2024-02-27 19:49:13 +00:00
Seth Hillbrand
b2a25cb59e
Correct usage signature for PNS_NODE::Add()
...
When moving a unique_ptr, you are actually passing the object, not a
reference to the object. So we either std::move with the bare
unique_ptr parameter or we pass a reference. But we should never pass
an rvalue reference for this or we'll make a copy without holding the
tracking (because it was moved)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16839
2024-02-27 19:49:13 +00:00
Jeff Young
e6a2f3b87a
Eagle text anchor points and alignment aren't linked.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17135
2024-02-27 15:00:30 +00:00
Jeff Young
6e478f52f4
Fix wrong rotation centre.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17135
2024-02-27 15:00:27 +00:00
jean-pierre charras
ed4a4ec8ec
Add option to Footprint Chooser to switch between the selected fp or its 3D view
...
Fixes #16173
https://gitlab.com/kicad/code/kicad/-/issues/16173
2024-02-27 10:17:00 +01:00
Jeff Young
43c45f3ee8
Fix copy pasta.
2024-02-26 12:39:01 +00:00
Jon Evans
2f6c9d1f3a
ADDED: Selection filter for schematic editor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14988
2024-02-25 17:44:10 -05:00
Jeff Young
11774cc9fe
Fix some dialog layout issues.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16391
2024-02-25 22:10:51 +00:00
Jeff Young
9066e4b9d0
Reconcile solder_paste_ratio and solder_paste_margin_ratio.
2024-02-25 21:25:44 +00:00
Jeff Young
aef87b9796
Push thickness handling down into EDA_TEXT::SetBold().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17077
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14875
2024-02-25 17:28:52 +00:00
Jeff Young
be83f276c4
Add a couple more tooltips.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16391
2024-02-25 15:30:47 +00:00
Jeff Young
dba2fdb6d3
Don't import invalid polygons.
...
If we *do* get a 2-point polygon in SVG, import it as a segment.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17091
2024-02-25 12:28:19 +00:00
Jeff Young
4056428a08
Sigh. We use different tokens for FP and pad solder paste margin ratios.
...
Seriously? Afraid so: solder_paste_margin_ratio and solder_paste_ratio.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17108
2024-02-25 11:31:04 +00:00
Jeff Young
986dbfd235
Don't double-add pads to commit.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17087
2024-02-25 11:31:04 +00:00
Jeff Young
6bbac26fd3
Fix merge conflict.
2024-02-24 20:05:51 +00:00
Jeff Young
e27f859c11
Apply Pad Properties teardrop terminology to Via Properties.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17050
2024-02-24 20:05:51 +00:00
Jeff Young
f77de66f4e
Generalize ERCItem inspections.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10539
2024-02-24 20:05:51 +00:00
Jeff Young
fa0ead98d8
Split out table editing and table cell editing.
2024-02-24 20:05:51 +00:00
Jeff Young
3282e4bb66
Formatting.
2024-02-24 20:05:51 +00:00
Jeff Young
c3496e4af6
Implement min skew checking.
2024-02-24 20:05:51 +00:00
Jeff Young
782af3a918
Clear text before replacing in ImportSettingsFrom.
2024-02-24 20:05:51 +00:00
Jeff Young
e760317af6
ADDED: Implement footprint link checking in ERC.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16842
2024-02-24 20:05:51 +00:00
Jeff Young
6dc60598da
Cleanup array dialog.
2024-02-24 20:05:51 +00:00
Jeff Young
d7e4a8cebd
ADDED: ERC/DRC exclusion comments.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16020
2024-02-24 20:05:51 +00:00
Jeff Young
833ec402a0
Generalize DRCItem inspections.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10539
2024-02-24 20:05:51 +00:00
Jeff Young
4eefbc7815
ADDED: textbox and tablecell margins.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10672
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6806
2024-02-24 20:05:51 +00:00
Jeff Young
e445249720
ADDED: PCB tables.
2024-02-24 20:05:51 +00:00
Jeff Young
48f983826d
Tooltip for "Prefer zone connections".
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16587
2024-02-24 20:05:51 +00:00
Jeff Young
67cd446e6d
Add textbox text to description.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16573
2024-02-24 20:05:51 +00:00
Jeff Young
ee3be0802c
Move PCBNew overrides to nullable properties.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5562
2024-02-24 20:05:51 +00:00
Jeff Young
4c5dbcd7f4
ADDED override locks checkbox for update from schematic.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16471
2024-02-24 20:05:50 +00:00
Jeff Young
4a9df1e18e
ADDED: actions for left-, center-, and right-justifying text items.
...
(For both PCBNew and EESchema.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12375
2024-02-24 20:05:50 +00:00
Stefan
ed6f900b70
adding No Layers to apprearance manger presets, fix #15625
2024-02-24 15:44:26 +00:00
Alex Shvartzkop
6347cb043e
Add bottom panel to have correct background in fp/sym chooser frames.
...
See https://gitlab.com/kicad/code/kicad/-/issues/15810
(cherry picked from commit 97ff48b426
)
2024-02-24 18:20:16 +03:00
Alex Shvartzkop
5578b2c954
Hide unused message panel in footprint/symbol chooser frames.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15810
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15889
(cherry picked from commit badc4e7411
)
2024-02-24 18:20:16 +03:00
Ethan Chien
d72491a4a5
ADDED: zone manager
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9636
2024-02-24 15:10:50 +00:00
Alex Shvartzkop
5900f6baa4
Do not call MakeShapes in AddCopperPolygonShapes when polyset is empty.
...
Ease of debugging.
(cherry picked from commit 0184dfb625
)
2024-02-23 22:15:17 +03:00
Alex Shvartzkop
d04d74c511
Highlight nets and show length tuning status when adding tuning patterns.
...
Also fixes length preview when hovering over joints.
Also prevents asserts when hovering over arcs.
Also prevents adding a tuning pattern on other tuning pattern.
(cherry picked from commit 711c6141a8
)
2024-02-23 20:29:18 +03:00
Jeff Young
c3bcbb6238
Update Edit Teardrops dialog to match other teardrop terminology.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17050
(cherry picked from commit c8b06d54cb
)
2024-02-23 16:53:36 +01:00
Jeff Young
dfd97003ac
Rule areas should be allowed on user layers.
...
Non-board tech layers too. We don't know how people will
write their custom DRC rules.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17034
(cherry picked from commit 01d668c09d
)
2024-02-23 16:53:34 +01:00
Jeff Young
7b17646b71
Make sure nets get reassigned when name is changed.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17025
(cherry picked from commit f4a3613561
)
2024-02-23 16:53:34 +01:00
Jeff Young
5c026db27a
Report fp library loading errors with libName & fpName.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16975
(cherry picked from commit 12922d9434
)
2024-02-23 16:53:34 +01:00
Jeff Young
ca3cd706e5
Show friendly name in toolbar button tooltips.
...
(Don't require the same text to be put into the tooltip.
It's error-prone and also disallows us from having a separate
tooltip for toolbar buttons.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17009
(cherry picked from commit f4a085575a
)
2024-02-23 16:53:33 +01:00
Jeff Young
a156b49e2c
Comments.
...
(cherry picked from commit 8a3cbce8f8
)
2024-02-23 16:53:33 +01:00
Jeff Young
3938c35f17
Repair copy/paste of footprint fields.
...
Some of the code got lost in the move to PCB_FIELDs.
(cherry picked from commit a9c4a17c38
)
2024-02-23 16:53:33 +01:00
Jeff Young
e7f18e7eab
Warp after context menu only if actively drawing.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11080
(cherry picked from commit 1a7152d3eb
)
2024-02-23 16:53:32 +01:00
Jeff Young
e68cd04d48
Don't modify reference point if already moving.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16524
(cherry picked from commit 08da9a4494
)
2024-02-23 16:53:32 +01:00
Jeff Young
898f60ea2f
Add help text for DRC assertion clauses.
...
(cherry picked from commit d36f189192
)
2024-02-23 16:53:31 +01:00
Jeff Young
345645bd8c
Help documentation for "assertion" constraints.
...
(cherry picked from commit 152c458b9c
)
2024-02-23 16:53:31 +01:00
Jeff Young
900962f9f1
Update syntax help for memberOfFootprint.
...
(cherry picked from commit 7ae14f9630
)
2024-02-23 16:53:31 +01:00
Jeff Young
57dcf285c5
Various string issues held over from 8.0 string freeze.
...
(cherry picked from commit a610542a19
)
2024-02-23 16:53:31 +01:00
Jeff Young
23c2104ffa
Improve alignment tooltips.
...
(cherry picked from commit 2ab492474e
)
2024-02-23 16:53:31 +01:00
Jeff Young
9ff66d0e71
Don't capture references to local variables for CallAfter.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16934
(cherry picked from commit 9d40374baf
)
2024-02-23 16:53:30 +01:00
Jeff Young
276171b85e
Handle holes in shapes when creating bounding hulls.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16347
(cherry picked from commit 0ead8a14a1
)
2024-02-23 16:53:30 +01:00
jean-pierre charras
ef6a5b6252
teardrops: calculate better points on track for track arc.
...
Previously, a reference point to calculate teardrop length was calculated
using a track segment. It can create significant position error with track arcs.
Now a arc is used to find this reference point.
2024-02-23 11:36:14 +01:00
Alex Shvartzkop
6ceea747b2
Swap to capitalized strings (translated).
2024-02-22 11:54:52 +03:00
Alex Shvartzkop
dd6213051d
Pick DP coupled segment closest to start item and baseline.
2024-02-20 22:06:00 +03:00
jean-pierre charras
01327b24b4
PANEL_SETUP_LAYERS: when removing a layer, do not delete items owned by footprints.
...
Items owned by footprints are allowed to be on non existing layers on board.
Moreover, items owned by footprint cannot be deleted by the board editor.
Fixes #17038
https://gitlab.com/kicad/code/kicad/-/issues/17038
2024-02-20 18:38:48 +01:00
Jeff Young
012b32e989
Don't leave dangling net pointers on PCB_SHAPEs.
...
Also makes it harder for this type of error to occur in
future.
2024-02-20 17:36:54 +00:00
Alex Shvartzkop
2e97d5d7cc
Add missing check in tuning pattern outline.
2024-02-20 20:32:07 +03:00
Alex Shvartzkop
cbfd757d28
Reduce amplitude snap value of tuning patterns.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
10e6ca8740
Show tuning pattern baselines when not editing them.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
59a0635b09
Disable local ratsnest when moving generators (tuning patterns).
...
They're not moving like normal objects, leaving ghost ratsnest.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
ed712faf41
Disallow duplicating tuning patterns alone.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
5e5effaf3a
Ensure minimum outline size in tuning patterns.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16847
2024-02-20 03:20:08 +00:00
Tomasz Wlostowski
82312a0fae
router: SplitAdjacentSegments() should check if the end segment we are about to split is in the same net that the head segment
...
Otherwise, the router might add bogus segments to the node. The root of the problem is somewhere in the logic that delivers aEndItem to ROUTER::Move() though - as the end item (in line placement mode at least) should always be an item within the same net as the head and not belonging to the current head...
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
8d76e4e171
Allow DP meanders to (mostly) fit on adjacent segments.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
943c5fea59
Fix length calculations in DP meander placer.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
29188bdc53
Fix some edge-cases in DP tuning pattern outline.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
4227b1add9
Improve tuning pattern robustness.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
1a65c0091f
Tweak default meander settings.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
35e73d7dee
Restore green router collision color.
2024-02-20 03:20:08 +00:00
Alex Shvartzkop
e9a881ed01
Reset placer when routing start fails to prevent crash on next usage.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17008
2024-02-20 03:20:08 +00:00
Seth Hillbrand
89592d08bf
Revise teardrop graphics sizes
...
Sizes were too large on many systems. Revised panel uses 615px on Linux
instead of 742. Adjusted line sizes to remain minimum visible width at
new height.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17018
2024-02-19 12:48:36 -08:00
Mike Williams
60fe87a73c
PCB: always parse ki_fp_filters as a property, not a field
2024-02-19 09:41:27 -05:00
Ian McInerney
d3befd8bb8
Remove dummy items from group before they are deleted
...
Board items should not be in a group when they are deleted, but these
are dummy ones, so their group membership doesn't matter.
Fixes KICAD-7P0
Fixes KICAD-6VX
Fixes KICAD-7KK
Fixes KICAD-6VH
2024-02-16 12:20:00 +00:00
Marek Roszko
b2c6e2de1f
Fix file not found msg contents for step resolving
2024-02-15 23:10:57 -05:00
Marek Roszko
762c159b96
Fix KIPRJMOD by setting the project as active by modifying the board loading helper
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16973
2024-02-15 23:06:41 -05:00
Seth Hillbrand
08bdf1abae
Avoid drawing netnames when not in board editor
...
Shouldn't be needed if we properly clear the netinfo but there's no
reason to keep netnames so better to avoid possible issues
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16981
2024-02-15 17:17:22 -08:00
Marek Roszko
c48fc7ebff
Fix crash due to PCB_SHAPEs not being returned by BOARD::AllConnectedItems
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16981
2024-02-15 19:58:21 -05:00
Jon Evans
4ec390838b
Re-enable non-KiCad board import when non-standalone
...
Partial revert of ec2cd99405
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16978
2024-02-15 12:14:32 -05:00
Jon Evans
7b0bb59b37
Remove hard-coded versioned env vars in most places
2024-02-15 15:31:08 +00:00
Mike Williams
6c1273ca12
PCB Parsing: only parse old properties before PCB fields addition
2024-02-14 09:35:10 -05:00
jean-pierre charras
8e6fe0eaf0
Gerbview settings: store option "Page Limits" in gerbview config.
...
Previously this appearance option in Layer Manager was not stored.
2024-02-14 11:21:55 +01:00
jean-pierre charras
0d1945def7
Gerber drill file: do not flash oblong holes: they must be routed.
...
Fixes #16962
https://gitlab.com/kicad/code/kicad/-/issues/16962
2024-02-14 09:22:49 +01:00
Marek Roszko
f73d45b0cf
Add $schema prop to drc/erc
2024-02-13 19:08:55 -05:00
Ian McInerney
b86bf19328
Make shape properties layer selection obey cancel command
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16735
2024-02-13 20:31:05 +00:00
Mike Williams
3cd61a2d39
PCB: appending boards should not select existing generators
2024-02-13 10:15:30 -05:00
Jeff Young
0cf433b28e
CONVERT_TOOL::CreateLines() doesn't use SKIP_STRUCT flag.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16930
2024-02-12 23:59:33 +00:00
Roberto Fernandez Bautista
ca148fb4d1
pns_debug_tool: Fix "save as" to save log file with new router state
2024-02-12 21:22:57 +01:00
jean-pierre charras
7e4e80a2e5
DRC library parity attribute tests: disable DNP and EXCLUDE from BOM.
...
They are related to a design, not to a footprint, and are tested in
schematic parity tests.
2024-02-12 10:55:56 +01:00
Marek Roszko
2afe4db945
Add some missing newlines in cli output without changing strings
2024-02-11 21:12:21 -05:00
Marek Roszko
6a37f99e94
Fix crash if we exit lib table setup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16917
2024-02-11 21:05:23 -05:00
Marek Roszko
d694bb5960
Use file name rather than path for erc/drc json and text reports
2024-02-11 20:16:22 -05:00
Jon Evans
622c2f1316
Make sure connectivity is updated in undo/redo
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16945
2024-02-11 20:01:15 -05:00
Marek Roszko
e51ddc52b7
Fix crash writing json drc report
2024-02-11 17:36:56 -05:00
Alex
b5982f7319
EasyEDA import: force close some line chains.
2024-02-11 23:52:56 +03:00
jean-pierre charras
fe1579ebbd
BOARD_NETLIST_UPDATER: fix issue when reading net-lists having no FOOTPRINT_FIELD
...
they can be old net-lists or non Kicad net-lists.
Fixes #16931
https://gitlab.com/kicad/code/kicad/-/issues/16931
2024-02-11 21:03:00 +01:00
Jon Evans
e9be95741b
Deconflict hotkey for Route from Other End
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16415
2024-02-11 10:58:38 -05:00
Jon Evans
ec2cd99405
Guard actions that change project against running in non-standalone mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16942
2024-02-11 09:36:17 -05:00
Roberto Fernandez Bautista
3a6d74a3b3
Allow user to select location to save router event log
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16904
Note: no new strings added
"Unable to write '%s'." is from pagelayout_editor/files.cpp(182)
2024-02-11 13:43:55 +01:00
Alex Shvartzkop
2b295f85f5
Fix corner radius for 0 amplitude meanders.
2024-02-10 08:36:50 +03:00
Alex Shvartzkop
ff17a22e31
Internationalize Image Properties dialogs.
2024-02-10 08:34:19 +03:00
Seth Hillbrand
cd548e392a
Add document type icons
...
Update Macos script to use doctype icons for icns builds
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14754
2024-02-09 15:55:57 -08:00
Seth Hillbrand
f303996f9c
Add new icons for tools
...
Align elements to grid
Cleanup graphics
Cleanup tracks/vias
Drag
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16206
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16205
2024-02-09 15:55:57 -08:00
Seth Hillbrand
cabbab9a5f
Move pcbnew drag to move specific icon
2024-02-09 15:55:57 -08:00
Alex Shvartzkop
fcdd34f58b
Reserve strings for Tune Length
2024-02-10 02:44:05 +03:00
Alex Shvartzkop
2121227194
Fix nullptr group assert in tracks cleaner.
2024-02-10 00:44:05 +03:00
Alex Shvartzkop
d4e89543de
Length-tuning fixes/improvements:
...
- Ensure correct amplitude values in tuning patterns.
- Support lower amplitudes in DP length tuning
- Ensure correct minimal inner radius in DP length tuning
2024-02-10 00:44:05 +03:00
Lucas Dumont
2933cdf636
Extend NETLIST lifetime for JobExportDrc
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16925
2024-02-09 22:14:36 +01:00
Alex Shvartzkop
453e185613
Increase unconstrained tuning length to 1km.
2024-02-09 19:25:46 +03:00
Jeff Young
63fc89cafd
Import graphic items on copper layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16916
2024-02-09 13:56:01 +00:00
Jeff Young
91e15634fc
Re-use ERC's delete-exclusions-query dialog for DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16914
2024-02-09 11:21:06 +00:00
Jeff Young
4905c37712
Streamline explodePad undo.
...
Also fixes a bug where new shapes were added to the view
twice.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16888
2024-02-09 10:08:37 +00:00
Jon Evans
037f349585
Make expand connection work on generated tracks
2024-02-08 19:28:28 -05:00
Jeff Young
53d048921a
Fix merge conflicts.
2024-02-09 00:04:43 +00:00
Jon Evans
7929d7cda2
Fix build
2024-02-08 17:33:34 -05:00
Jeff Young
ecbe1df7c1
Update target length/skew to std::optional.
...
Also fixes a bug in the router where the target length would
get trashed if set to maxLongLongInt. (We'd add the default
tolerance to it sending it negative.)
2024-02-08 18:14:31 +00:00
Jeff Young
e62b4f8ff4
Add nullable int and double to property system.
2024-02-08 18:14:31 +00:00
Alex Shvartzkop
876449b83d
Set DP skew meanders max length to INT32_MAX instead of 100 mm.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16860
2024-02-08 19:34:17 +03:00
Alex Shvartzkop
f4cf23e5cf
Length tuning: fix status popup display when unconstrained.
2024-02-08 18:55:42 +03:00
Mike Williams
b979f52364
FP Editor: show hidden texts when we should
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/16909
2024-02-08 10:28:23 -05:00
arturo182
abb1915114
Missed a checkbox for Select All in Import Settings
2024-02-08 15:01:23 +00:00
Alex Shvartzkop
f1caa262a6
Separate actions for single track and differential pair length tuning.
2024-02-08 14:58:28 +00:00
Seth Hillbrand
6e0d97df76
Do not cache invisible text objects
...
In some cases, extremely long, invisible texts can fill and crash opengl
buffers
2024-02-07 15:26:41 -08:00
Jeff Young
bce372c8a3
Don't clear the undo/redo list when we're just trimming it.
...
We only allow a certain number of commands on the lists
and trim them when they overflow. PCB_BASE_EDIT_FRAME and
PL_EDITOR_FRAME implemented this correctly; SCH_EDIT_FRAME
and SYMBOL_EDIT_FRAME did not.
2024-02-07 14:52:10 +00:00
Jeff Young
1e6986d2f5
Don't report starved thermals when connected only to isolated islands.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16866
2024-02-07 14:09:03 +00:00
Jeff Young
e6929b2184
Tooltip for "Prefer zone connections".
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16587
2024-02-05 19:22:41 +00:00
Jeff Young
d30361b425
Increase artificial via preference further.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16880
2024-02-05 19:20:33 +00:00
Jeff Young
1ff36f23b8
Clean up stale TODOs.
2024-02-05 15:49:57 +00:00
Jeff Young
da46a96623
Update a few strings based on new string freeze policy.
2024-02-05 15:49:57 +00:00
Ian McInerney
7ea1568802
Fix selection tool behavior in footprint viewer
...
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
2024-02-05 14:50:17 +00:00
Marek Roszko
835500bf1c
Hide the color prop from pcb editor
2024-02-05 01:13:16 -05:00
Marek Roszko
3960c53225
A few tweaks for hidpi
2024-02-05 00:52:11 -05:00
Jeff Young
0370db43ae
A footprint does it's own child hit testing.
...
We only need to add it for groups.
2024-02-04 23:16:43 +00:00
Jeff Young
77c19fa99a
Fill in missing zone properties.
...
Also fixes some bugs with hatch properties being available
on rule areas.
2024-02-04 23:01:31 +00:00
Marek Roszko
5d0abd3b01
Use CallAfter instead of Idle event hack for drc dialog item selection
2024-02-04 12:37:56 -05:00
Jeff Young
cab351d249
Don't do a sided-test on a footprint which has no side.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15284
2024-02-04 15:18:23 +00:00
Jeff Young
4e0b48a03a
ZONE_SETTINGS init belongs in ZONE_SETTINGS's ctor.
...
(Not in ZONE's ctor.)
2024-02-03 20:17:31 +00:00
Jeff Young
5379a1d863
Nullptr protection.
2024-02-03 20:17:31 +00:00
Ian McInerney
2fc96c1d11
Ensure stackup material returned is correct after list item deletion
2024-02-03 18:06:40 +00:00
Alex
5c86247e21
Fix inactive cells being black in default settings panels on MSW.
2024-02-03 21:00:28 +03:00
Ian McInerney
dc6fb73b40
Fix mistake in 7edda82b
where any key could delete the material
2024-02-03 17:01:57 +00:00
Ian McInerney
7edda82b2a
Hook up delete key in stackup materials list box
...
Allow the delete key to delete a material from the stackup list, since
otherwise there is no way to delete materials from the list.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16854
2024-02-03 16:39:56 +00:00
Wayne Stambaugh
92c2ddf77a
Do not parent dialogs to non top level windows in panels or widgets.
2024-02-03 10:40:28 -05:00
Jeff Young
4d49762714
Remove Export Settings to Other Similar Zones.
...
The UI for it is clunky (Cancel afterwards doesn't do what
you think it might), the undo code is all hand-rolled (and
possibly buggy?), and we have the Property Inspector now
for this type of stuff.
2024-02-03 13:22:16 +00:00
Jeff Young
0890ac57dd
Improve clarity of default zone settings.
2024-02-03 13:22:16 +00:00
Subaru Arai
d9737a39bf
remove qr footprint generator min pixel size
...
The minimum pixel width should be left for the user to decide, since it
depends on the manufacturer and layer.
2024-02-03 09:37:29 +00:00
Marek Roszko
239cbb4637
Use Fit to size the layer box after sitting min size
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16862
2024-02-02 23:43:05 -05:00
Mark Roszko
b354b24182
Revert "Call Layout after calculating layer combobox size to ensure it takes effect"
...
This reverts commit cd8eb23c3e
2024-02-03 04:32:36 +00:00
Marek Roszko
cd8eb23c3e
Call Layout after calculating layer combobox size to ensure it takes effect
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16862
2024-02-02 23:11:48 -05:00
Jeff Young
7cc663ad77
Schematic parity checking for CLI DRC.
2024-02-02 23:05:37 +00:00
Wayne Stambaugh
2b1bf369f2
Do not parent file or directory dialogs to panels.
...
Parenting dialogs to child windows of top level windows is most likely
not defined behavior. It's also likely that this behavior varies across
platforms so it' best not to risk doing it. wxWidgets does not check if
the dialog parent is actually a top level window. There may be other
places we are doing this with our message dialogs so we should do an
audit.
2024-02-02 09:20:36 -05:00
Alex Shvartzkop
4a1245e85a
STEP: export copper plating for vias/pads (25 micrometers).
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16694
2024-02-02 00:29:03 +03:00
Jeff Young
a485a4815c
Clear text before replacing in ImportSettingsFrom.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16851
2024-02-01 17:37:27 +00:00
Alex
285067dad1
Altium PCB: support polygon id 65534 for keepout tracks on board outline.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16849
2024-02-01 12:15:06 +03:00
Ma Han
7c6ee16b22
removed the dots for several strings in the settings dialog
...
https://gitlab.com/kicad/code/kicad/-/issues/16651
2024-02-01 08:52:57 +00:00