Commit Graph

13796 Commits

Author SHA1 Message Date
Seth Hillbrand 0cb5abd7f7 Fix highlight on route again
Added a clarifying comment that will hopefully keep the required code
block in place
2022-07-08 20:14:46 -07:00
Jeff Young c7746fa000 Fix copy pasta error.
Fixes https://gitlab.com/kicad/code/kicad/issues/11986
2022-07-08 17:44:36 -06:00
Jeff Young ded611aed5 Patch annoying large checkbox cols in wxWidgets 3.1.x on OSX. 2022-07-08 17:27:05 -06:00
Jeff Young 521b231873 Don't zero out width of shapes on Margin, only Edge_Cuts.
Fixes https://gitlab.com/kicad/code/kicad/issues/11967
2022-07-08 17:27:05 -06:00
Jeff Young 654740b90d Add newly-drawn objects to any entered group.
Fixes https://gitlab.com/kicad/code/kicad/issues/11912
2022-07-08 17:27:05 -06:00
Jeff Young 8a9bf02b7e Smarten up silk clearance & tented item handling.
The inspection tool will report whether or not the item is tented
(indicating in that case that any clearance will only be applied
to any hole).

The DRC test ignores tented items without a hole, and runs the
clearance test against the hole for items with a hole.

Fixes https://gitlab.com/kicad/code/kicad/issues/11954

Fixes https://gitlab.com/kicad/code/kicad/issues/11951
2022-07-08 17:27:05 -06:00
Jeff Young f611f9f5d3 Allow zone connection rules to target footprints.
If the pad is set to inherit and a rule targets its parent footprint,
then that rule should fire.
2022-07-08 17:27:05 -06:00
Jeff Young fa2e43f696 Reduce noise in board <-> library footprint tests. 2022-07-08 17:27:04 -06:00
Seth Hillbrand 0c47a09517 Ensure rectangles are normalized
Normalize on creation and fixup rectangles previously saved with
inverted coordinates

Fixes https://gitlab.com/kicad/code/kicad/issues/11965
2022-07-07 10:40:18 -07:00
jean-pierre charras 7b28804f67 Fix a minor compil and Coverity warning 2022-07-06 13:54:17 +02:00
Seth Hillbrand 7f9f37e507 Avoid double-caching FP zones
Leads to crashes/invalid data when multi-threading hits both at same
time
2022-07-05 20:07:18 -07:00
jean-pierre charras f00de04336 FP editor: fix incorrect mirroring of zones in footprint.
This is due to a call to Mirror() with incorrect parameter.
Unfortunately, depending on FP items, one Mirror parameter has the opposite
meaning about mirror axis.
Fixes #11952
https://gitlab.com/kicad/code/kicad/issues/11952
2022-07-04 11:14:47 +02:00
Tomasz Wlostowski 3111b7679d router: bring back the snap-to-hull behaviour in Mark Obstacles mode 2022-07-03 23:59:27 +02:00
jean-pierre charras d41e47609c Pcbnew: fix plot issue for non filled polygons in footprints.
Fixes #11959
https://gitlab.com/kicad/code/kicad/issues/11959
2022-07-03 11:24:23 +02:00
Seth Hillbrand cde30d3dba Clarify cross-probing options
Previous the cross-probing options were mixed between sending and
receiving cross-probe events.  This clarifies so that all of the pcbnew
cross-probe options deal with whether the cross-probe is seen in pcbnew
and all of the eeschema options deal with seeing the event in eeschema.

Also updates the wording in the options panels to be the same where
possible and adds tooltips

Fixes https://gitlab.com/kicad/code/kicad/issues/11454
2022-07-01 16:47:09 -07:00
Seth Hillbrand 907d8fc018 Revert "Fix Swatch sizes"
This reverts commit 25c3a4681f.

Windows default sizes are too big when they are the correct size on
Linux.  We need the DU scaling for swatches
2022-07-01 11:37:55 -07:00
Seth Hillbrand 25c3a4681f Fix Swatch sizes
The swatches are surrounded by non-scaling icons.  We should not scale
the swatches unless we also scale the icons.  This patch makes all
elements in the appearance panel equally non-scaling

This relates to https://gitlab.com/kicad/code/kicad/-/issues/11880
2022-07-01 10:56:13 -07:00
jean-pierre charras 2ff2a6ffcd Kicad2step: fix STEP export from Pcbnew, broken by changes in commit 8456d6c
also: DIALOG_EXPORT_STEP: remember tolerance option during a session.
2022-07-01 09:56:15 +02:00
Seth Hillbrand 0c796697b4 Avoid documentation in dialogs
If the nomenclature is unclear, we should rework the dialog rather than
adding documentation strings to a crowded dialog.

This also prevents new strings from appearing in v6
2022-06-30 10:57:56 -07:00
luz paz af6ba1a16e Fix typos in pcbnew sub-directory
Found via `codespell -q 3 -S *.po,./thirdparty,./Documentation/changelogs -L aactual,acount,aline,alocation,alog,anormal,anumber,aother,apoints,aparent,aray,ba,busses,dout,einstance,leaded,modul,ontext,ot,overide,serie,te,,tesselate,tesselator,tht`
2022-06-30 09:39:45 -04:00
Jeff Young f48ed79039 Rely on DRC rules when items might overlap.
Fixes https://gitlab.com/kicad/code/kicad/issues/1790
2022-06-29 13:43:44 -06:00
Seth Hillbrand 802745398a Python add param to change UUIDs on fp load
By default, we load all footprints with a new UUID set to allow them to
be added to the board as unique objects.  But when editing footprints,
we want to maintain the same UUID.

Fixes https://gitlab.com/kicad/code/kicad/issues/11870
2022-06-29 12:10:24 -07:00
Seth Hillbrand f1a054e6af Correct SWIG call for board design settings
Use the backend call rather than rely on the naming of internal
variables

Fixes https://gitlab.com/kicad/code/kicad/issues/11924

(cherry picked from commit 9cebea5f11)
2022-06-28 14:03:43 -07:00
jean-pierre charras 7d8fe98d53 Pcbnew, exporter VRML: code refactor and remove unuded code.
It should help later, to use EXPORTER_VRML in python scripting helpers.
Mainly, EXPORTER_VRML avoid to expose the actual exporter VRML internal code.
2022-06-28 18:59:50 +02:00
Mike Williams 64b89639cf PCB Editor: Make Ctrl-Click net highlighting configurable
Defaults to ctrl-click is exclusive or selection like other
applications. Footprint editor can only be exclusive or.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10810
2022-06-28 16:29:14 +00:00
Jeff Young ab9c42d427 Fix a typo which leads to a bogus type-cast.
Fixes https://gitlab.com/kicad/code/kicad/issues/11886
2022-06-27 23:07:06 -06:00
Jeff Young 833dc70bff Add edge-exclusions to router (for castellated pads).
Fixes https://gitlab.com/kicad/code/kicad/issues/1790
2022-06-27 15:16:37 -06:00
Ian McInerney 4e4b0962db Create python subdirectory in pcbnew build for the symlink 2022-06-25 01:10:20 +01:00
Seth Hillbrand 03c279ffd4 ADDED: Threadpool
Thread pools are long-lasting executors that have close to zero overhead
when launching new jobs.  This is advantageous over creating new threads
as we can use this for threading smalling jobs and smaller quanta.  It
also avoids the heuristics needed to determine the optimal number of
threads to spawn
2022-06-24 22:59:24 +00:00
Seth Hillbrand 8418fe12d8 Allow board saves without modifying project files
Without the project files, certain settings will not be saved by this
python call.  This defaults to false (current behavior) but setting the
`aSkipSettings` to true will revert to v5 behavior

Fixes https://gitlab.com/kicad/code/kicad/issues/11323
2022-06-24 15:28:56 -07:00
jean-pierre charras 35375a98c6 FP editor, dialog leader dimension: fix text frame setting not saved
Fixes #11900
https://gitlab.com/kicad/code/kicad/issues/11900
2022-06-24 17:45:51 +02:00
jean-pierre charras 3fcd959757 Gerbview: minor cosmetic enhancement: show if the file is X1 or X2 format. 2022-06-24 15:44:13 +02:00
Ian McInerney f303d78723 Fix install of _pcbnew.so to allow DESTDIR to be used with it
We need to use the install directive to do an install so that the
install process uses all the variables correctly. So create a temporary
symlink in the build directory that points to nowhere and then install
that.
2022-06-23 23:15:49 +01:00
jean-pierre charras c3f90d914b Gen Drill map: Re-add Gerber option but only using X2 format.
Only the X2 format allows the TF.FileFunction option, mandatory to
avoid mistakes about this file that is not a standard Gerber file.
2022-06-23 11:56:27 +02:00
Ian McInerney 44a8f1e6e6 Create the symlink for the python module in the build tree as well
The unit tests need the python module to be loadable, so there needs to
also be a symlink to the kiface inside the build directory.
2022-06-23 00:27:35 +01:00
Ian McInerney 9bb5beb264 Use symlink to pcbnew kiface for python module on Linux
Instead of installing an identical shared library into the Python
folder, just use a link to the existing library instead.

Fixes https://gitlab.com/kicad/code/kicad/issues/9974
2022-06-22 23:40:29 +01:00
Ian McInerney b51d8c9825 Introduce new CMake variable to store kiface install location 2022-06-22 23:40:25 +01:00
Seth Hillbrand 3ddd287004 Revert "Fixup python module install"
This reverts commit 6fd60c5561.

Worked only for a single make.  Second run fails due to missing file
2022-06-22 14:11:59 -07:00
Seth Hillbrand 6fd60c5561 Fixup python module install
INSTALL(FILE) does not handle setting linux-specific attributes in the
same way that INSTALL(TARGET) does.  This patch is suggested by
StefanBruens

Fixes https://gitlab.com/kicad/code/kicad/issues/9974
2022-06-22 13:29:08 -07:00
Seth Hillbrand a43fcd045f Hyperlynx arcs are always CW
Previous test comparing start/end angles doesn't account for all cases.
This adds a more robust test to ensure all arcs are output in CW fashion

Fixes https://gitlab.com/kicad/code/kicad/issues/10782
2022-06-22 09:59:37 -07:00
jean-pierre charras 32c5a4d1ea gen drill maps: remove unusable format (HPGL and GERBER) for map files.
Especially, on a regular basis, map files in gerber format create problems
for board house.
2022-06-22 11:13:06 +02:00
jean-pierre charras 82b2df67be Add 2 automatically generated files to the source tree.
These files are needed by translators, so it is better to add them to the source
without need to build kicad.
2022-06-22 08:51:04 +02:00
Seth Hillbrand a852286eb5 Cleanup compile warnings 2022-06-21 17:04:56 -07:00
Miklós Márton f2382a7bd1 Add Make selected active/inactive actions to the symbol libraries
context menu

Fixes #11372
2022-06-21 23:32:02 +00:00
jean-pierre charras b54bb90975 DIALOG_FOOTPRINT_WIZARD_LIST_BASE: use a monospaced font to show the wizard errors.
A proportional font does not allow to correctly show the error message and the
marker showing the exact position of the error in the printed line.
2022-06-21 09:42:21 +02:00
jean-pierre charras e73dd40f26 APPEARANCE_CONTROLS: fix incorrect behavior of Preset layers widget:
In non English languages, the selection of a previous choice was broken
due to the fact fixed (read only) presets have a English name, but the
UI list uses translated names, so the actual selection was not correctly
displayed.
2022-06-21 08:57:16 +02:00
Jeff Young aad85a83da Improvements to rotation/mirroring of dimensions inside footprints.
Fixes https://gitlab.com/kicad/code/kicad/issues/11861
2022-06-20 22:25:39 +01:00
Jeff Young 23e8bafd9c Don't run courtyard conflicts in footprint editor. 2022-06-20 22:25:39 +01:00
Miklos Marton 426c46abb1 pcbnew: pad editor UI fixes
When editing a pad with circular hole the Y dimension is hidden
and Diameter is shown instead of Size X when opening the properties
of an existing pad.
Adjusted Pad shape: label to be vertically aligned to the pad shape
combobox.
2022-06-20 19:15:41 +00:00
jean-pierre charras 6679decc8d Fix syntax issues in footprint wizards
Fixes #11867
https://gitlab.com/kicad/code/kicad/issues/11867
2022-06-20 20:31:18 +02:00
Jeff Young 048f277b1e Don't reset Footprint Tests Run if the board didn't change.
Fixes https://gitlab.com/kicad/code/kicad/issues/11844
2022-06-20 17:25:43 +01:00
Jeff Young d69e3fdb5e Specify a winding for Hyperlynx arcs.
I can't test it, so it's a 50:50 guess.  We may need to flip the
test....
2022-06-20 17:03:37 +01:00
Jeff Young 298edb09c3 Initialize TEXT_ATTRIBUTES justifications for text & textboxes.
Fixes https://gitlab.com/kicad/code/kicad/issues/11805
2022-06-20 17:03:37 +01:00
jean-pierre charras 9db907cc70 pcbnew, plot footprint: fix typo that prevent ploting dimensions
Fixes #11860
https://gitlab.com/kicad/code/kicad/issues/11860
2022-06-20 17:20:56 +02:00
jean-pierre charras d19705ac8c FOOTPRINT::Flip(): add missing handle of dimensions. 2022-06-20 11:37:25 +02:00
jean-pierre charras c8ce01ce8e pcb_parser: fix an incorrect CHECK_MSG when parsing a dimension in a footprint.
this incorrect CHECK_MSG created a crash.
Fixes #11859
https://gitlab.com/kicad/code/kicad/issues/11859
2022-06-20 10:42:19 +02:00
Jeff Young 73836b50fc Add proper collision test to via placer.
Also moves DISALLOW constraint processing outside the loop as it
performs it's own loop over any objects referenced by the rules.

Fixes https://gitlab.com/kicad/code/kicad/issues/11832
2022-06-19 21:57:49 +01:00
Jeff Young 801a98a302 Don't clear marker counts when closing DRC dialog.
Fixes https://gitlab.com/kicad/code/kicad/issues/11844
2022-06-19 20:51:45 +01:00
Jeff Young 231ac567b8 Bug fixes for printing vias.
Blind/buried and microvias didn't get their layers trimmed properly,
nor did through vias with dropped pads.

Fixes https://gitlab.com/kicad/code/kicad/issues/11851
2022-06-19 11:58:21 +01:00
Jeff Young 82ebc247b8 More performance enhancements for DRC. 2022-06-18 19:47:11 +01:00
Jeff Young 5da817649b Fix nullptr bug. 2022-06-18 13:04:06 +01:00
Jeff Young 97b0005780 More caching for DRC.
Also fixes a bug where some physical clearance tests would be run even
if the clearance was 0 (or if the rule was set to IGNORE).
2022-06-17 23:58:31 +01:00
jean-pierre charras f20cb0fda8 Activate teardrops: remove advanced config option and add teardrop keywords in files. (the ability to read teardrop keywords was added some time ago) 2022-06-17 19:42:27 +02:00
Miklós Márton b912bef2f6 pcbnew: Display Diameter when circular shape selected in pad editor 2022-06-16 20:26:42 +00:00
Fabien Corona bd8f0ae81a Ibis: Fix coverity issues 2022-06-16 20:09:50 +00:00
Seth Hillbrand 4043dca613 Push wxString allocation to smaller context
Prevents creation of new wxString on stack for each clearance check
2022-06-16 08:26:28 -07:00
Seth Hillbrand 359d66bc81 Protect against invalid pads
Before dereferencing the front of the sequence, we have to ensure that
the pad exists on any layer.  If not, just return the default (probably
F_Cu) for the element
2022-06-16 08:20:47 -07:00
Seth Hillbrand 5327b10064 Remove shared wxString instance in DRC
Threaded DRC access will write to this string, re-allocating the memory
without any synchronization between threads using the string.  Comment
adding this listed performance as a reason for using shared strings.
Measured performance does not seem noticeably different in either case,
even with high-error count boards.  If there is a case where the
performance is limiting, we can replace these wxStrings with
std::wstring and utilize fmt

Fixes https://gitlab.com/kicad/code/kicad/issues/9888
2022-06-15 16:46:03 -07:00
Jeff Young d40664d171 Handle double-click in dimension drawing tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/11815
2022-06-15 18:07:50 +01:00
Jeff Young 5e80e2a421 58f553a9ca requires that cache be layer-sensitive.
Fixes https://gitlab.com/kicad/code/kicad/issues/11814
2022-06-15 00:30:11 +01:00
Fabien Corona bf62d6e9ee Ibis: Coverity issues 2022-06-13 19:31:57 +00:00
jean-pierre charras 9fd5ee5a2f paper min size set to 1 inch (previously 0.1 inch, very small indeed)
Avoid using magic numbers in file pcb_parser.cpp.
Fixes #11807
https://gitlab.com/kicad/code/kicad/issues/11807
2022-06-13 17:51:29 +02:00
Jeff Young 52bc2511cd Add a radioButton mode to IMAGE_BUTTON.
Fixes https://gitlab.com/kicad/code/kicad/issues/11797
2022-06-12 20:09:46 +01:00
Marek Roszko 87f10ea206 Split off the netlist export content helper but it's advancedcfg 2022-06-11 23:09:47 -04:00
Marek Roszko cb44d97ed4 Update pcbnew to the new filedlg customize 2022-06-11 22:10:49 -04:00
Jon Evans e5ece4e460 ibis_parser: fixes to build on MSVC
Use stringstream instead of C arrays for formatting std::string
std::isnan(int) is invalid

Also fix a few report severities that seemed inconsistent
2022-06-11 18:09:17 -04:00
Jeff Young 9b70308f5c Nullptr defensive code.
Fixes https://gitlab.com/kicad/code/kicad/issues/11690
2022-06-11 22:32:12 +01:00
Jeff Young 4f3cfdc92e Clang says nan and isnan aren't in std namespace.... 2022-06-11 22:14:14 +01:00
Jeff Young f22cf1cc3a Fill in missing bits of LAYER variable for printing/plotting.
Fixes https://gitlab.com/kicad/code/kicad/issues/11788
2022-06-10 22:38:01 +01:00
Seth Hillbrand 20f4e62176 Rename signalIntegrity to ibis
We do not use camelCase in KiCad
2022-06-10 13:35:48 -07:00
Tomasz Wlostowski f5fe1d5462 router: another attempt at improving 'kink' robustness of the hull generator 2022-06-09 20:51:21 +02:00
Fabien Corona 0d35d69f70 ADDED: Read IBIS files 2022-06-09 18:30:51 +00:00
Seth Hillbrand ac0f95683f Sort PCAD layers
Better fix for 11750.  Instead of figeting with layer values, we sort
our map based on the layer numbers in the PCAD file.  F_Cu is always
layer 1 and B_Cu is always layer 2.

Fixes https://gitlab.com/kicad/code/kicad/issues/11750
2022-06-09 11:10:34 -07:00
Seth Hillbrand e857622dd4 Handle B_Cu ordering
Stopgap until we introduce multi-layer mapping widget

Fixes https://gitlab.com/kicad/code/kicad/issues/11750

(cherry picked from commit 32aabaf010)
2022-06-08 17:19:37 -07:00
Seth Hillbrand 124bdb6673 Check for older tags in pcad import
The pourOutline/planeOutline do not include support for fillets

Fixes https://gitlab.com/kicad/code/kicad/issues/11749

(cherry picked from commit 72b7f9fe10)
2022-06-08 16:27:17 -07:00
Jeff Young f2c26ae528 Formatting. 2022-06-08 23:53:18 +01:00
Tomasz Wlostowski 56df462474 router: fix SegmentHull() corner case when it 'chamfers' more than the clearance permits (corner case for 0-length segments, which we use
for representing holes)
2022-06-09 00:33:08 +02:00
Tomasz Wlostowski 990281a897 router: use either copper or hole clearance, whichever is larger, when checking track -> hole collisions 2022-06-09 00:31:47 +02:00
Tomasz Wlostowski 4192c0a709 router: move IsFlashedOnLayer to the IFACE_BASE class so that it can be used in the debugger tool 2022-06-09 00:30:57 +02:00
Tomasz Wlostowski bcfe12ce47 router: improvements in robustness of SegmentHull()
- ensure the 'chamfer' radius and clearance is rounded before computing the actual hull vertices
- for small, non-45 degree line segments (present in many boards), generate a slightly larger but still axis-aligned 45 degree hull instead of following exactly the segment direction
2022-06-08 14:28:31 +02:00
Tomasz Wlostowski e90ab055b9 router: remove unused LINE::Is45Degree() 2022-06-08 14:28:31 +02:00
Jon Evans dc6c27b686 Don't wipe out visibility state when changing layer count
(cherry picked from commit 7053981835)
2022-06-08 03:01:02 +00:00
Jon Evans 30fb298ed3 PNS: Re-enable hole clearance for non-flashed pads/vias
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11098
2022-06-07 19:49:38 -04:00
Jon Evans 23596812b6 PNS: Implement HoleHull for VIA 2022-06-07 19:49:38 -04:00
Jeff Young bf71cada4e ADDED: User viewports for 3D viewer.
Fixes https://gitlab.com/kicad/code/kicad/issues/5724
2022-06-06 22:24:02 +01:00
Jeff Young 244042ce51 Keep footprint selection in Symbol Chooser history list.
Fixes https://gitlab.com/kicad/code/kicad/issues/1841
2022-06-06 22:24:02 +01:00
jean-pierre charras 9f38fa43cd Fix some minor compil and Coverity warnings. 2022-06-05 11:44:49 +02:00
Jeff Young d14fd5a9da Fix logic error with silk overlap test. 2022-06-04 19:34:24 +01:00
Jon Evans 3747369aaa PNS: Remove offsets from hull generation
This is likely an old workaround to numerical precision issues
in the DRC system that no longer exist.  Removing this is necessary
for "exact" hull generation to produce walkaround results that
look nice (paths falling exactly on the grid lines)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/10710

(cherry picked from commit 5d4e2aa595)
2022-06-04 00:04:03 -04:00
Jon Evans 9a2950cca1 PNS: Use exact hulls for walkaround path generation
When we generate hulls, by default we subtract the clearance epsilon
to prevent false collisions in the router that wouldn't be flagged
by DRC.  However, we need to use the actual hull with no epsilon
when generating hulls for pathfinding in the walkaround system.

Without this change, it is possible for the walkaround to generate
a valid-seeming path that results in a DRC violation, for example
when dragging a drag against a board edge.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/10536
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11365
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10710

(cherry picked from commit 2a91ba35c1)
2022-06-04 00:04:03 -04:00
Jeff Young 8b75a32cfa We only want "actual" shapes, not anything derived from SHAPE.
Also fixes a bug where GetParentFootprint would get confused by
groups.

Fixes https://gitlab.com/kicad/code/kicad/issues/11741
2022-06-04 00:24:27 +01:00
Jeff Young d2a9cbe6e8 Use effective width for DRC.
Fixes https://gitlab.com/kicad/code/kicad/issues/11740
2022-06-03 23:27:10 +01:00
Tomasz Wlostowski c8b93c39b6 router: remove some old cruft from the WALKAROUND class 2022-06-03 23:28:41 +02:00
Tomasz Wlostowski 0bd7f603a3 router: consider mouse drag event a valid route start/end event
L-clicks during routing operation while the mouse is moving (even slightly) were ignored, which was annoying to some users (myself included). Now the router
always fixes the track upon mouse click.
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski eaee610fd9 router: save project settings together with the debug log 2022-06-03 23:28:41 +02:00
Tomasz Wlostowski f73acbb206 router: derive VIA class from LINKED_ITEM interface 2022-06-03 23:28:41 +02:00
Tomasz Wlostowski cab08f859a router: cluster extraction should only consider objects that are touching (instead of checking clearance) 2022-06-03 23:28:41 +02:00
Tomasz Wlostowski 297c60923e router: return routing status from ROUTER::Move() 2022-06-03 23:28:41 +02:00
Tomasz Wlostowski 54f4f765b9 router: NODE|ITEM::QueryColliding() now can override clearance
Needed for clustering algorithm (to be committed later... ;-)
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski aca9cce5d5 router: more verbose debug messages for the debugger tool 2022-06-03 23:28:41 +02:00
Tomasz Wlostowski 2a0accd184 router: shove algorithm now considers cases where a small via sits 'inside' a fanout of wide (width > via diameter) segments.
The shove algorithm can't move the loose track ends. It always needs a via. In case of wide segments stitched with
a small via, the collision search finds only colliding segments and does not consider the via. This leads to frequent shove falilures
or 'choppy' behaviour when the head line only slightly overlaps with an end of a thick trace. This patch attempts at improving this behaviour
by considering the 'tiny via in wide segment' case explicitly.
2022-06-03 23:28:41 +02:00
Tomasz Wlostowski 08647bf035 router: temporarily disable via hole clearance check in the shove algorithm.
- needs refinements and additional checks for corner cases.
- disabled also to facilitate debugging of other shove bugs
2022-06-03 23:28:40 +02:00
Tomasz Wlostowski 8cb65a8a13 router: default values for LOGGER::Log() 2022-06-03 23:28:40 +02:00
Tomasz Wlostowski 752ba2ed76 router: log via toggle events 2022-06-03 23:28:40 +02:00
Tomasz Wlostowski a4ad47cd08 router: use SHAPEs and PNS::ITEMs only in the ROUTER_PREVIEW_ITEM 2022-06-03 23:28:40 +02:00
Tomasz Wlostowski b08280d00c router: enable Hole Clearance rule only in Mark Obstacles mode
(it will be brought back to Walk/Shove modes as soon as all the underlying issues are fixed)
2022-06-03 23:28:40 +02:00
Jeff Young d31bd4ea3e Use default text properties for textboxes.
Also make sure text is mirrored when placed on back of board.

Fixes https://gitlab.com/kicad/code/kicad/issues/11739
2022-06-03 18:48:09 +01:00
qu1ck 13bece06cf Fix swig wrapper for footprint 3d models 2022-06-03 17:35:40 +00:00
Mike Williams 857990a883 Hierarchy: turn into a left side pane
Drop auto-closing option as well.
2022-06-02 21:56:17 +00:00
Jeff Young bd51b33f65 Clear point editor before recombining pad.
Fixes https://gitlab.com/kicad/code/kicad/issues/11731
2022-06-02 15:55:35 +01:00
Jeff Young de12c63de6 Repair point editing of rotated text boxes.
Fixes https://gitlab.com/kicad/code/kicad/issues/11432
2022-06-02 10:42:57 +01:00
Jeff Young f8829de5ea Formatting. 2022-06-02 10:42:57 +01:00
Jon Evans 40593930d0 PNS: Fix off-by-one in dragCornerInternal
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10919


(cherry picked from commit 8d8f96b094)
2022-06-01 21:13:05 +00:00
Jeff Young dee22a31d9 Expose footprint ID, description and keywords to property system. 2022-06-01 12:47:37 +01:00
Jeff Young 38bc653ce9 Add arc support to HyperLynx export.
Fixes https://gitlab.com/kicad/code/kicad/issues/10782
2022-06-01 12:47:37 +01:00
Jon Evans 6fd14ac945 [PNS] Fix invalid assumption in IsLineCorner
(cherry picked from commit a4aa447b95)
2022-05-31 20:24:54 -04:00
Jon Evans 9470bd15a1 PNS: Fix skew calculation with pad-to-die specified
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11710

(cherry picked from commit 53dbd3bb02)
2022-05-31 20:24:54 -04:00
Seth Hillbrand 6c0856c384 Fix PCAD silk layer for solder-side fp
The layer should be flipped based on the footprint mirror value rather
than the text mirror value (which is independent)

Fixes https://gitlab.com/kicad/code/kicad/issues/11652
2022-05-31 13:03:32 -07:00
Jeff Young 155620cc9a Move H/V/45 mode from zone properties to toolbar.
Fixes https://gitlab.com/kicad/code/kicad/issues/8587
2022-05-29 21:30:15 +01:00
Jeff Young 1fb7532859 Prepare for a more uniform implementation of H/V/45 mode. 2022-05-29 21:30:14 +01:00
Jeff Young b056bbd9b9 Initialize enabled state of dimension text orientation combobox.
Fixes https://gitlab.com/kicad/code/kicad/issues/11674
2022-05-28 19:42:06 +01:00
Jeff Young 80124d2463 Write out partial pad-stacks for blind/buried/microvias.
Fixes https://gitlab.com/kicad/code/kicad/issues/11692
2022-05-28 00:19:13 +01:00
Jeff Young 2a525cf986 Coding standards. 2022-05-28 00:09:47 +01:00
Seth Hillbrand 35b79c2ec9 Make PCAD import case-insensitive
According to the PCAD specification, all tags are case insensitive.
Most exporters honor the defaults but there is always an outlier or two

Fixes https://gitlab.com/kicad/code/kicad/issues/11652
2022-05-27 10:09:40 -07:00
Mike Williams 21a7e050ab REMOVED: PCB Editor Layer Alignment Target
No longer used by modern PCB processes.

Only the code to add the target to the board has been removed. Parsing
code for existing designs with targets is left in place.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10006
2022-05-26 08:47:02 -04:00
Jeff Young ae1ece7a78 Fix duplicate spaces before units.
Fixes https://gitlab.com/kicad/code/kicad/issues/11675
2022-05-26 10:54:08 +01:00
Jeff Young 4afca58ce7 Eagle octagonal pads are regular (~29% chamfered).
Also cleans up setting of KeepTopBottom (which is ignored unless
we're doing optional flahing -- which we're not for Eagle imports).

Fixes https://gitlab.com/kicad/code/kicad/issues/11664
2022-05-23 10:43:34 +01:00
Jeff Young 24ddf1ad20 Don't use zone connections to control optional via flashing.
Fixes https://gitlab.com/kicad/code/kicad/issues/11299
2022-05-23 10:26:52 +01:00
Jeff Young 3f502b313d Don't return false when a particular item doesn't connect.
We still have to search all the other items, as they might connect.
2022-05-23 10:26:18 +01:00
Jeff Young a33e5c53be Replace missing setting.
Fixes https://gitlab.com/kicad/code/kicad/issues/11453
2022-05-20 22:41:48 +01:00
Jeff Young f7fcc310f8 Select next/prev copper layer whether we start on copper or not.
Fixes https://gitlab.com/kicad/code/kicad/issues/11600
2022-05-20 15:59:29 +01:00
jean-pierre charras a09bd4ae12 Fix a bug in commit 57e59a49 2022-05-20 15:08:50 +02:00
Jeff Young fa11e1c097 Take text height into account as well as thickness for knockout margin.
Also centralizes calculation so all clients will get the same answer.

Fixes https://gitlab.com/kicad/code/kicad/issues/11636
2022-05-20 12:29:01 +01:00
jean-pierre charras e54ba87895 fix FootprintWizardBase.py compatibility with recent code. 2022-05-20 12:58:07 +02:00
jean-pierre charras 57e59a4959 Pcbnew, on line DRC when moving footprints: add visible collisions between courtyards 2022-05-20 12:58:05 +02:00
Jeff Young deeb7d4d6d Make use of board stackup data when exporting VRML.
Specifically layer colors and board thickness.

Fixes https://gitlab.com/kicad/code/kicad/issues/11627
2022-05-19 23:58:33 +01:00
Jeff Young 294b8e9051 Treat a textbox as filled when knocking out (whether it is or not).
Fixes https://gitlab.com/kicad/code/kicad/issues/11628
2022-05-18 17:14:57 +01:00
Jeff Young cc86d3da2a Give up trying to find a one-size-fits-all boudningBox for text.
Fixes https://gitlab.com/kicad/code/kicad/issues/11636
2022-05-18 17:14:57 +01:00
Jeff Young 23fb4c7433 Uniformly use a single facility for location-less prime events.
Also implements a uniform mechanism for avoiding auto-scroll after
a prime event or dialog which results in a mouse position at the
edge of the canvas.

Fixes https://gitlab.com/kicad/code/kicad/issues/11057
2022-05-16 23:43:00 +01:00
Seth Hillbrand b00bf2bc6b Make sure that we have a visible layer
Before setting the active layer to our visible sequence, make sure that
the sequence is not empty (leads to invalid layer id->crash)

Fixes https://gitlab.com/kicad/code/kicad/issues/11629

(cherry picked from commit 0d93be0af2)
2022-05-16 15:26:05 -07:00
Jeff Young 4b668269b7 Don't try and use zone fill before it's been calculated. 2022-05-16 15:20:01 +01:00
Jeff Young f2fc78f380 Don't copy modifiers to prime events.
The modifiers go with the hotkey, not with the action.

Fixes https://gitlab.com/kicad/code/kicad/issues/11618
2022-05-16 13:51:40 +01:00
jean-pierre charras 1f088984ce gerber_placefile_writer: fix angle rotation for flipped footprints.
According to latest Gerber documents (rev 2022.02), the previous angle was
missing a +180 rotation
Fixes #11621
https://gitlab.com/kicad/code/kicad/issues/11621
2022-05-16 10:24:13 +02:00
jean-pierre charras 97a8bfc27d Pcbnew DIALOG_PLOT: fix incorrect association of LAYER_ID in Plot on All Layers list
The order of items in wxRearrangeList and the order of LAYER_ID values was incorrect,
at least on W10/msys2
The order of items in wxRearrangeList is no longer used to avoid issues.
2022-05-15 10:52:08 +02:00
Marek Roszko 88c7322a0d EDA_TEXT Get/SetTextSize should use VECTOR2I 2022-05-14 08:16:15 -04:00
jean-pierre charras 5c7a79e287 (WIP) Teardrop: use a specific attribute in .kicad_pcb file to identify teardrops
the new attribute is:
"(attr (teardrop type padvia)))" or "(attr (teardrop (type track_end)))"
However (Work in Progress) writing this attribute in file is temporarily disabled.
2022-05-14 09:50:00 +02:00
Jeff Young 37838dffb9 Make sure physical_clearance rules are run against courtyard layers. 2022-05-10 23:02:53 +01:00
dsa-t ad066ef09a Fix cross-probing in complex hierarchies, remove unused code.
Fixes https://gitlab.com/kicad/code/kicad/issues/11493
2022-05-09 23:22:03 +03:00
Mike Williams b7a77a9498 Schematic: Add CSV export to Symbol Fields Table 2022-05-09 12:02:12 -04:00
Jeff Young 8f937b17a2 Remove wxWidgets 3.0.x hack.
Fixes https://gitlab.com/kicad/code/kicad/issues/11540
2022-05-07 23:24:55 +01:00
Jeff Young ecf6773f74 Remove dead code. 2022-05-07 21:10:04 +01:00
Jeff Young 492259a1d4 Outline font bug fixes for PCBNew dimensions.
Fixes https://gitlab.com/kicad/code/kicad/issues/11583
2022-05-06 18:14:25 +01:00
Jeff Young 30ecca464d Rename mechanical_clearance -> physical_clearance.
Fixes https://gitlab.com/kicad/code/kicad/issues/11554
2022-05-06 15:54:46 +01:00
Jeff Young dfdedfa605 Fix some issue with NPTH pads with holes same size as pad. 2022-05-06 00:06:00 +01:00
Jeff Young f590dcf513 Fix a couple of typos. 2022-05-06 00:06:00 +01:00
Jeff Young 371091a09b Make zone filler respect mechanical clearances. 2022-05-06 00:06:00 +01:00
Jeff Young 5d0d2201f3 Improve clearance report messages.
Removes some duplicated terms; puts in some more headers to make
visual parsing easier, and makes non-connected-pads report the correct
data.

Also fixes a bug where zone-connection overrides of none weren't getting
handled correctly.

Fixes https://gitlab.com/kicad/code/kicad/issues/11544
2022-05-03 16:30:04 +01:00
Jeff Young bf2566a44f Post-process board min clearance rather than building it in to netclasses.
The later makes the diagnostic messages harder to decipher.
2022-05-03 13:39:14 +01:00
Jeff Young 6b557d8631 Remove special-case processing of ${REFERENCE} and ${VALUE}.
Fixes https://gitlab.com/kicad/code/kicad/issues/11476
2022-04-30 23:02:04 +01:00
Jeff Young 4f63611ee5 SetWidth as well as SetMinWidth for MSW.
Fixes https://gitlab.com/kicad/code/kicad/issues/11467
2022-04-30 14:09:30 +01:00
Jeff Young d72b9861f7 Translate net inspector column names on the fly.
Fixes https://gitlab.com/kicad/code/kicad/issues/11467
2022-04-30 00:22:27 +01:00
Jeff Young 5f10c15a87 Fix zone merge intersection algorithm.
Fixes https://gitlab.com/kicad/code/kicad/issues/11492
2022-04-29 22:17:53 +01:00
Jeff Young 37aa42d1e3 Don't allow Edge_Cuts or Margin in footprint private layers.
Fixes https://gitlab.com/kicad/code/kicad/issues/11431
2022-04-27 17:14:33 +01:00
jean-pierre charras 0177613ad3 footprint wizard touch_slider_wizard.py: fix compatibility with current code. 2022-04-27 10:03:38 +02:00
Jeff Young 8a97a46e6b Release file before re-loading it for Revert.
Fixes https://gitlab.com/kicad/code/kicad/issues/11481
2022-04-26 22:28:35 +01:00
Jeff Young e7f5deedb8 All via pad layers need checking for copper.
Fixes https://gitlab.com/kicad/code/kicad/issues/11429
2022-04-26 20:54:31 +01:00
Jeff Young 47e002a33d Add font to status bar for text objects. 2022-04-26 18:52:53 +01:00
Jeff Young e6f11c5c39 Reset outline font if bold or italic changed.
Fixes https://gitlab.com/kicad/code/kicad/issues/11462
2022-04-26 12:52:29 +01:00
Jeff Young f5d612eaed Switch <insert> replacement on OSX to <f1>.
Fixes https://gitlab.com/kicad/code/kicad/issues/11413
2022-04-25 10:01:33 +01:00
Jeff Young d192d3c31d Better violation title for disabled layers check.
Fixes https://gitlab.com/kicad/code/kicad/issues/11451
2022-04-25 09:39:49 +01:00
Jeff Young 3a47d50df4 Fix capitalization error. 2022-04-24 23:51:54 +01:00
Jeff Young 3bdae40881 Remove extra layer of parens. 2022-04-24 23:44:02 +01:00
Jeff Young 90bfe2d94b Remove Save Copy As from fp editor, and rename to Save a Copy elsewhere.
It's still used by Eeschema and PCBNew when not in stand-alone mode.

Fixes https://gitlab.com/kicad/code/kicad/issues/9185
2022-04-24 19:46:57 +01:00
Jeff Young 3304ad75ca Add on-the-fly i18n update for m_inactiveLayersLabel.
Fixes https://gitlab.com/kicad/code/kicad/issues/11435
2022-04-24 19:46:57 +01:00
Jeff Young b04f1b2d93 Change pad-type-matches-hole-presence from warning to error.
Fixes https://gitlab.com/kicad/code/kicad/issues/11452
2022-04-24 14:14:35 +01:00
Jeff Young 4cd48cd5c9 Fix some test issues. 2022-04-23 22:15:39 +01:00
Jeff Young f0dab2e07b Fix some layer handling issues. 2022-04-23 21:29:46 +01:00
Jeff Young dd561f1e4d Improve Cleanup Tracks and Vias messages. 2022-04-23 21:04:43 +01:00
Jeff Young e6684bf7c7 Add footprint checks to board-level DRC.
Fixes https://gitlab.com/kicad/code/kicad/issues/11437
2022-04-23 11:34:18 +01:00
Jeff Young 4525b1f085 More consistency in DRC error messages. 2022-04-23 09:39:34 +01:00
Jeff Young c6f83b6dec ADDED Duplicate Footprint, Rename Symbol and Rename Footprint. 2022-04-22 22:06:51 +01:00
Mike Williams b42365190e Schematic/PCB: deleting fields sets them to invisible 2022-04-21 16:20:23 +00:00
jean-pierre charras 1e80f3a65a pcad importer: fix a truncation when converting mils to IU. The value in mils is a double, but the function to convert in IU uses int. Fixes #11380 https://gitlab.com/kicad/code/kicad/issues/11380 2022-04-21 10:01:59 +02:00
jean-pierre charras 4afe4c0aa0 Fp editor: Add automatic zoom when loading a fp from library.
When loading from a board, the automatic zoom was already in play.
2022-04-21 09:00:04 +02:00
Jeff Young 7cb7a68b0e Make sure Type regex doesn't match before Pad_Type or Pin_Type.
Fixes https://gitlab.com/kicad/code/kicad/issues/11423
2022-04-20 17:32:07 +01:00
Marcus A. Romer df3e02d9b9 Fix initialisation of default line width settings 2022-04-20 15:57:55 +00:00
Jeff Young 4ab2c93070 Update Selection Filter title bar with language changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/11421
2022-04-19 21:12:13 +01:00
Jeff Young 08f15fe587 ADDED New Library functionality to Footprint/Symbol Save As.
Fixes https://gitlab.com/kicad/code/kicad/issues/2343
2022-04-19 19:55:30 +01:00
Jeff Young c619a63c06 Fix backwards layer order and minor layout issue. 2022-04-19 19:55:30 +01:00
jean-pierre charras c38ec9344f DIALOG_NET_INSPECTOR_BASE: fix a truncation text in a wxComboBox.
Probably Windows only: the size was fixed, and can create issues in non English languages
2022-04-19 09:43:24 +02:00
Jeff Young c3bed8f6ee Resolve textvars before opening file browser.
Fixes https://gitlab.com/kicad/code/kicad/issues/6436
2022-04-18 22:45:02 +01:00
Jeff Young ab131859f6 Bring footprint textvars in line with symbol textvars.
ADDED ${FOOTPRINT_LIBRARY} and ${FOOTPRINT_NAME} resolution.
2022-04-18 22:45:02 +01:00
jean-pierre charras 26370583fa French translation update and fix a typo. 2022-04-18 11:25:51 +02:00
jean-pierre charras 0211d07060 Footprint viewers: fix regression: re-add automatic zoom option when loading a new footprint
Fixes #11402
https://gitlab.com/kicad/code/kicad/issues/11402
2022-04-18 11:15:14 +02:00
Jeff Young 71c2cb3180 ADDED revert for pcbnew and eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/6802
2022-04-17 20:02:58 +01:00
Jeff Young 9b087a3c25 Add automatic precision choices for dimensions.
Fixes https://gitlab.com/kicad/code/kicad/issues/6690
2022-04-17 20:02:58 +01:00
Jeff Young e09147db30 Cross-probing for ERC dialog.
Fixes https://gitlab.com/kicad/code/kicad/issues/11411
2022-04-17 00:33:56 +01:00
Jeff Young 9ff1ae5bdc Better inspection reporting for netclasses, custom rules and DRC. 2022-04-17 00:33:56 +01:00
Seth Hillbrand 2f2e956921 Sync via/pad flashing for null boards
Pads return true by default and so should vias

(cherry picked from commit bfa1661edf)
2022-04-15 15:15:07 -07:00
Jeff Young 7f3a75bccd Add a bunch more inspections for rule resolution. 2022-04-15 22:10:13 +01:00
Seth Hillbrand be7e9d300e Handle updated document description format
parentheses are rarely if ever used independently, so trim the unmatched
ones regardless of whether we find the starting parenthesis in the
description

Fixes https://gitlab.com/kicad/code/kicad/issues/11403
2022-04-15 11:17:01 -07:00
Jeff Young 18ac4ed842 Fix crash when selecting DRC marker (as opposed to one of its children). 2022-04-15 13:57:19 +01:00
jean-pierre charras e9da8c3a00 Ensure net_code is not used by non copper zones when saving the board file.
For some obscure reason, non copper zones inside footprints can have non 0 netcode.
Fixes #11395
https://gitlab.com/kicad/code/kicad/issues/11395
2022-04-15 13:19:35 +02:00
Jeff Young dbee441328 We've probably smoked out enough of the GetLayer() issues.
... and GetProperty() can query GetLayer() in user scripts.
2022-04-14 17:09:27 +01:00
Jeff Young c78a47c3fb Remove extra test.
Fixes https://gitlab.com/kicad/code/kicad/issues/10364

Fixes https://gitlab.com/kicad/code/kicad/issues/10364
2022-04-14 17:09:27 +01:00
Jeff Young 378a2de37c Formatting. 2022-04-14 17:09:27 +01:00
Jeff Young 604a148f40 Don't apply electrical clearance to shapes on Edge.Cuts.
Also don't apply them to NPTH holes.
2022-04-13 23:38:45 +01:00
Jeff Young a33e23e25a Import radial dimensions from Eagle.
Fixes https://gitlab.com/kicad/code/kicad/issues/10763
2022-04-12 15:47:39 +01:00
Jeff Young 739f4d0a1e Improvements to Eagle dimension importing.
1) Import leaders
2) Drop radius and angle dimensions
3) Import dimension text sizes
4) Correctly interpret which side dimension offset is on
5) Correclty handle offsets for non-cardinal dimensions

Fixes https://gitlab.com/kicad/code/kicad/issues/10763
2022-04-12 15:47:39 +01:00
jean-pierre charras 74c3ad0b3a Shadow on locked fp: do not show if LAYER_MOD_FR or LAYER_MOD_BK is not shown 2022-04-12 11:17:04 +02:00
Seth Hillbrand 819276bd98 DP tolerance needs to be 1IU on each axis
ApproximatelyParallel will only check for parallel within 1 IU, so a 1x1
SEG will always be parallel and the projection is invalid

(cherry picked from commit d0796399a2)
2022-04-11 16:58:10 -07:00
Marek Roszko f88e0481c8 Change the behavior of ACTION_MENU::Add to require clones if required outside the function
This reverts commit 2a5769607f.
2022-04-11 19:03:01 -04:00
Jeff Young 830f1891c2 Don't forget Pos0 when updating position.
Fixes https://gitlab.com/kicad/code/kicad/issues/11373
2022-04-11 20:01:32 +01:00
Seth Hillbrand 2a5769607f Revert "Change the behavior of ACTION_MENU::Add to require clones if required outside the function"
This reverts commit 403992a6f4.
2022-04-11 11:39:03 -07:00
jean-pierre charras f0f10a43a2 Ensure "Clear Recent Files" menuitem titles are updated after language change.
(missing fixes in commit ac8e2d076)
2022-04-11 18:11:17 +02:00
Jeff Young a49bb792bd Insert chevrons when placing vias near tracks.
Fixes https://gitlab.com/kicad/code/kicad/issues/10898
2022-04-11 16:26:36 +01:00
jean-pierre charras ac8e2d0768 Ensure "Open Recent" and "Clear files" menu titles are updated after language change. 2022-04-11 11:09:05 +02:00
Marek Roszko 403992a6f4 Change the behavior of ACTION_MENU::Add to require clones if required outside the function
Fix https://gitlab.com/kicad/code/kicad/-/issues/10994
2022-04-10 22:38:13 -04:00
Marek Roszko 5bb2cdf73d Revert "Stop leaking submenu items"
This reverts commit 34c70a51ea.
2022-04-10 22:33:43 -04:00
Marek Roszko 34c70a51ea Stop leaking submenu items
Our menu bar code is interestingly complex. But we were throwing away newly made menu items to the void in the cases of constructed on the fly submenus
2022-04-10 22:04:48 -04:00
Jeff Young 29eb5931c2 Be more careful with forced cursor positions.
Fixes https://gitlab.com/kicad/code/kicad/issues/9977
2022-04-10 23:14:57 +01:00
Jeff Young 32a2490677 Prefer -90 to 270 for text rotation in dialog boxes.
Fixes https://gitlab.com/kicad/code/kicad/issues/9868
2022-04-10 22:43:44 +01:00
Jeff Young 1dae5eb7c4 A better blob vs web detector.
Since we're in a deflated state, a long web *could* still have a very
small area.  So check max extents instead.
2022-04-10 19:48:45 +01:00
Jeff Young 1a2e0d8226 Apply the min-width-by-min-width test to islands after pruning.
We're looking for minimum *web* width.  A blob does not a web make.

Fixes https://gitlab.com/kicad/code/kicad/issues/6907
2022-04-10 18:21:31 +01:00
Jeff Young 2663ad5340 Implement Eagle text variables.
Also fixes two bugs:
1) subsequent text items that are marked >NAME or >VALUE will now get
imported as text items with ${REFERENCE} or ${VALUE} (instead of overwriting
the previous text item)

2) we no longer (accidentally) capitalize all text items.

Fixes https://gitlab.com/kicad/code/kicad/issues/11321
2022-04-10 17:29:47 +01:00
Jeff Young a23399a1af Formatting. 2022-04-10 17:29:47 +01:00
Jeff Young 82820d4b1c Cleanup. 2022-04-09 20:39:35 +01:00
Jeff Young 18fb2ddff6 Coverity fixes. 2022-04-09 20:12:29 +01:00
Jeff Young 8fc652270e Cleanup. 2022-04-09 20:12:29 +01:00
Roberto Fernandez Bautista 0015574a60 ${SHEETNAME} represents the sheet name + introduce ${SHEETPATH}
CHANGED: The text variable ${SHEETNAME} now always represents the name of the
sheet when used anywhere in the schematic editor, including the title block

ADDED: A new text variable ${SHEETPATH} which is replaced with the path to the
current sheet - e.g. "/Sheet 1/Sheet 2".

To ensure backward compatibility, the default drawing sheet now uses
${SHEETPATH}. Custom drawing sheets will need to be manually edited.
2022-04-09 15:45:58 +01:00
jean-pierre charras 5e52539939 eagle importer: fix incorrect conversion UTF8/wxString.
When importing a eagle board file using wxXmlDocument, the strings in eagle BOARD
(UTF8 encoded) are correctly converted to wxString (using unicode wide chars)
So trying to reconvert these strings using FROM_UTF8( <wxString>.c_str() )
is incorrect and can break initial string if non ASCII7 chars are found
2022-04-09 15:33:01 +02:00
jean-pierre charras 1d5be1adeb Cairo GAL: fix incorrect size and thickness of text drawn by GAL::BitmapText() 2022-04-08 18:40:26 +02:00
Jeff Young 722b2588f4 Better error reporting for DP uncoupled length.
Fixes https://gitlab.com/kicad/code/kicad/issues/10087
2022-04-08 11:40:53 +01:00
Jeff Young c17b90c8dc Run pinning on sides as well as corners.
Also fixes a bug in LIB_SHAPE's Normalize() which wasn't handling the
upside-down coordinate system.

Fixes https://gitlab.com/kicad/code/kicad/issues/11339
2022-04-07 11:51:58 +01:00
Seth Hillbrand 9fcc641808 Don't set the dirty bit when running DRC
Dirty bit is set in the zone filler separately, there is no action in
the DRC that needs to be saved

Fixes https://gitlab.com/kicad/code/kicad/issues/11344

(cherry picked from commit 821fe6ea42)
2022-04-06 17:05:19 -07:00
Seth Hillbrand b66df1e4f3 Remove dead code 2022-04-05 16:26:08 -07:00
Jeff Young 0bd3341f0f Allow textboxes to have no text. (They still have a defined box.)
Fixes https://gitlab.com/kicad/code/kicad/issues/11286
2022-04-05 16:29:21 +01:00
Jeff Young c591e19e9f Smarten textbox conversion back to cardinal rectangle.
Fixes https://gitlab.com/kicad/code/kicad/issues/11302
2022-04-05 15:12:56 +01:00
Jeff Young 68ca385e07 On-the-fly translations for pin electrical types.
Also add on-the-fly translation for editor title bars.

Fixes https://gitlab.com/kicad/code/kicad/issues/11324
2022-04-05 13:57:28 +01:00
Jeff Young a118249093 NPTHs obey HOLE_CLEARANCE, not CLEARANCE.
Also, plating thickness appears on both walls, so diameter is drill
plus 2X plating thickness.
2022-04-04 20:43:08 +01:00