Mike Williams
39cc686dc4
Back Annotation: add support for DNP and Exclude from BOM attributes
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14584
2023-05-01 08:54:14 -04:00
Jeff Young
c31fb435e6
Add missing setting to Dimension Properties dialog.
...
Also fixes a bug where during file save we were calling
GetPosition() on the PCB_TEXT but getting the DIMENSION's
version.
Fixes https://gitlab.com/kicad/code/kicad/issues/8447
2023-04-30 22:45:19 +01:00
Jeff Young
2f9889ff62
Add settings for plotting PDF property popups.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14450
2023-04-30 18:10:04 +01:00
jean-pierre charras
096af19d9a
Minor fix and cosmetic change:
...
- SCH_SYMBOL::GetMsgPanelInfo(): slighly change the displayed lines to allow
longer strings in Description and Keywords
- panel_setup_rules_help.md: fix incorrect html link (URI), creating ERR 404
2023-04-30 17:37:30 +02:00
Jeff Young
1c6b765ba5
Formatting and cleanup.
2023-04-30 13:43:25 +01:00
Jeff Young
af7753c7cd
Record parent rule for DRC assertions.
...
(Particularly important if the rule specified a severity.)
Also fixes a bug looking up LSET layer names in the
GetStandardLayerNames array (which aren't the same).
https://forum.kicad.info/t/a-few-questions-about-custom-rules-syntax/40068/7
2023-04-30 13:01:09 +01:00
Seth Hillbrand
f4b43617e7
Add COMMIT structure to Schematic and Symbol editors
...
Provides a single-point access for modifying the schematic and symbol
elements that allows chaining updates and reverting partial changes.
Standardizes the undo hierarchy between pcb and schematic editors
As this is another layer on the existing undo/redo structure, the
initial commit does not replace all undo/redo calls currently existing.
These will be handled in a series of follow-on commits
2023-04-28 17:05:47 -07:00
Jeff Young
251161dbeb
Bring inspection reporting in line with zone filler
...
1) "clearance" rules don't apply to NPTH holes with no copper
2) local zone clearance applies even if other item has no copper
Fixes https://gitlab.com/kicad/code/kicad/issues/14575
2023-04-28 22:15:10 +01:00
Jeff Young
16e000f2b0
Use Net() accessor uniformly; init hole parent in VIA::Clone()
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14603
2023-04-28 18:32:58 +01:00
Jeff Young
6807ca6f9f
Allow text input to Convert to Polygon/Zone/Keepout.
...
Also fixes non-copper zone filler to honor fill keepouts.
Fixes https://gitlab.com/kicad/code/kicad/issues/14566
2023-04-28 17:43:08 +01:00
Lucas Dumont
b1a4353c34
Update collide for hole
...
As hole don't keep track of the net, update the collide function to keep it working
2023-04-28 10:20:55 +00:00
Jeff Young
b2a45023bc
Tighten ownership model of PNS::ITEM.
...
In particular, ownership must be explicitly set. It is
no longer inherited through copy/clone/etc.
2023-04-28 11:05:39 +01:00
Jeff Young
9646e3c1c0
Simplify PNS::VIA construction.
2023-04-28 00:32:49 +01:00
Lucas Dumont
c781fde236
pcbnew: don't move twice
...
In pcbnew, if you press M to move your selection and press M again, then escape, you will trigger the https://gitlab.com/kicad/code/kicad/-/blob/master/common/tool/tools_holder.cpp#L106 assert
2023-04-26 15:37:18 +00:00
Lucas Dumont
2992d7c68b
Fix typo in QueryConstraint switch
2023-04-26 13:20:32 +00:00
jean-pierre charras
2f392352b5
EDIT_TOOL::doMoveSelection(): avoid calling PushTool() and, just after,PopTool()
...
for the *same* event: TOOLS_HOLDER::PopTool() does not work fine in this case.
2023-04-26 13:00:50 +02:00
Seth Hillbrand
f7f52d77e4
Rework Copper Sliver check
...
Adds QA checks to copper sliver tests. Adds the following checks:
- Dot product between two arms (quickly avoids checks for >90°)
- Checks the sliver is convex (area test)
- Eliminates minor slivers with angles that are approximately 0 and ones
with the opposite side width beneath a configurable level
- Updates Clipper2 to fix a couple of jagged edges on inflate
- Adds simplify during zone fill inflation to limit jaggies
Fixes https://gitlab.com/kicad/code/kicad/issues/14549
2023-04-25 10:32:46 -07:00
jean-pierre charras
b9ed84b7db
Fix minor compil warnings
2023-04-25 12:43:15 +02:00
Lucas Dumont
e2e901de1d
Don't override clearance when routing
...
The default `m_overrideClearance = -1` used here was changed to 1.
Reseting it to -1 to solve linked issue
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14595
2023-04-25 09:18:53 +00:00
Jeff Young
676a15df65
Don't try to keep track of a HOLE's net.
...
Keep track of it's parentPadVia instead.
Fixes https://gitlab.com/kicad/code/kicad/issues/14603
2023-04-24 18:32:17 +01:00
jean-pierre charras
d180ce7865
Pcbnew, minor fix: make Image Properties dialog re-sizable.
2023-04-24 10:21:31 +02:00
jean-pierre charras
8fc70d577f
better QFNWizard.
2023-04-23 17:34:21 +02:00
jean-pierre charras
c617abe8e9
SCH_BITMAP and PCB_BITMAP: rename m_image to m_bitmapBase. Add more info
...
in GetMsgPanelInfo() (PPI, scale).
m_image name was confusing: it is not a wxImage, but a BITMAP_BASE item,
and m_image name was already in use in BITMAP_BASE, used inside SCH_IMAGE.
Bitmap properties dialog: show PPI value and add Title to dialog.
2023-04-22 17:28:06 +02:00
jean-pierre charras
0c544f1f45
FOOTPRINT_EDIT_FRAME: do not delete settings when closing the frame.
...
They now are read when starting kicad, and must be not deleted.
2023-04-22 11:46:52 +02:00
Marek Roszko
dbed94e4b1
Fix gerbers and drill plot not logging errors
...
Partial fix for https://gitlab.com/kicad/code/kicad/-/issues/14437
2023-04-20 23:39:59 -04:00
Marek Roszko
9f64c7f354
Load custom drawing sheets for pcb cli
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14171
2023-04-20 23:17:52 -04:00
Seth Hillbrand
990641d2eb
Cleanup printf bits
2023-04-20 15:19:04 -07:00
Seth Hillbrand
4b91c0c8ee
Handle multiple holes in footprints
...
Our basic logic for whether we have a hole or an outline in a footprint
checks if there is copper pads outside of the closed edge. This misses
the case where the footprint is used to align multiple holes but has no
copper. Since we do not support multiple outlines in a board, we can
safely assume that multiple, closed edges in a footprint represent holes
and not outlines
Fixes https://gitlab.com/kicad/code/kicad/issues/14468
2023-04-20 14:56:36 -07:00
Seth Hillbrand
b56db30019
Ensure that even open paths with fills are filled
...
SVG paths that are "open" can still have a fill internally, so avoid
dropping fills for these non-standard polygons
Fixes https://gitlab.com/kicad/code/kicad/issues/14518
2023-04-20 12:31:04 -07:00
jean-pierre charras
d4cf063e40
Fix a few more doxygen errors (no actual code change)
2023-04-19 20:24:42 +02:00
jean-pierre charras
a20f757d8c
undo a change (it was only a test) committed by mistake.
2023-04-19 16:57:35 +02:00
jean-pierre charras
1406341d2d
Fix a few doxygen errors (no actual code change)
2023-04-19 16:20:24 +02:00
Marek Roszko
ea077bc34d
Banish ignore.h to core
2023-04-18 22:44:04 -04:00
Seth Hillbrand
32d17547e5
Fixup settings loading
...
Settings loading needs to account for potential chaining, so each
instance should be created before being Load()ed. Additionally, add the
settings loading to QA
2023-04-18 16:00:31 -07:00
Seth Hillbrand
e6ab9a88ce
Remove locks from settings
...
Settings should be initialized on start-up. This removes the option of
lazily loading the settings from file and instead requires all settings
needed to be loaded on KiFACE start before requesting data from the
settings object
2023-04-18 13:40:25 -07:00
Jeff Young
c682d11fa0
Trim VRML export layers to board outline.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14557
2023-04-18 17:31:29 +01:00
jean-pierre charras
ba12f00c15
Pcbnew: re-add draw umbilical line for texts in footprints.
...
It was lost after removing FP_TEXT in code.
2023-04-18 09:48:46 +02:00
Jeff Young
7e5fedef6a
Markup fixes.
...
1) allow escape sequences inside markup sequences
2) keep overbar when inside nested markup
3) always place overbar at full height, not sub/superscript height
Fixes https://gitlab.com/kicad/code/kicad/issues/14553
Fixes https://gitlab.com/kicad/code/kicad/issues/13449
2023-04-17 17:56:54 +01:00
qu1ck
9b58f50c68
Add usable PCB_GROUP::GetItems() swig wrapper
2023-04-17 15:41:49 +00:00
Nimish Telang
51e55dd750
Convert sprintf to snprintf in most files
2023-04-17 15:39:34 +00:00
jean-pierre charras
d0676118c1
BOARD_NETLIST_UPDATER: better warning message (I hope...) in Report.
...
Fixes #14548
https://gitlab.com/kicad/code/kicad/issues/14548
2023-04-17 14:30:47 +02:00
Lucas Dumont
469fe76994
pcbnew: Fix crash with differential routing
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14537
2023-04-17 14:17:14 +12:00
jean-pierre charras
725c2fd661
footprint wizards: fix for my previous commit 50502c4
2023-04-16 17:16:54 +02:00
jean-pierre charras
50502c450f
footprint wizards: fixes and enhancements
2023-04-16 17:03:32 +02:00
Jeff Young
b76ef8c7e2
Multi-threading safety.
...
(Possible fix for KICAD-74.)
2023-04-16 15:36:21 +01:00
Jeff Young
2793bb1d68
Performance.
2023-04-16 15:36:21 +01:00
Jeff Young
26c14271f2
Formatting and warnings cleanup. (No functional changes.)
2023-04-16 15:36:21 +01:00
jean-pierre charras
7545097d7f
Fix a compil issue on msys2/gcc12.2, due to changes in commit dd1c58dc
2023-04-16 15:28:34 +02:00
Marek Roszko
dd1c58dcf5
Fix MSVC C4840 warning
...
va_start requires trivially copy able classes.
wxString is not trivial. The correct thing to do is to use wxChar*
2023-04-16 07:36:41 -04:00
Jeff Young
299c88cfec
Allow setting 0 to min width, min track width, min via annular width, etc.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13822
2023-04-15 13:20:34 +01:00