Jeff Young
69fd0b38ff
Remove a couple of unused OnUpdateUI handlers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
2021-04-06 13:47:15 +01:00
Jeff Young
daaf738c7f
Add save-as files to file history.
...
Also fixes where lock wasn't getting reset on a Save As.
Fixes https://gitlab.com/kicad/code/kicad/issues/8111
2021-04-06 13:35:26 +01:00
david-beinder
b2f788adc1
PNS: Fix UseConnectedTrackWidth when starting from ARCs
2021-04-06 01:27:13 +00:00
Jon Evans
e46c9d35ac
Add undo/redo handling to length tuner event loop
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8129
2021-04-05 19:58:14 -04:00
Jon Evans
24cd174a23
Don't dereference a possibly-invalid optional
2021-04-05 19:34:57 -04:00
Jeff Young
ec45855aed
Make sure drawing layer is visible.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8106
2021-04-06 00:06:23 +01:00
Roberto Fernandez Bautista
9a764126ce
CADSTAR PCB: Keep all tracks as a single chain where possible
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8119
2021-04-05 20:15:09 +01:00
Jon Evans
a6c3d74a73
Pass active layer to StartRouting in length tuner
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7857
2021-04-04 21:51:54 -04:00
Jon Evans
a24bc34b66
Better colors for length tuning popup in dark mode
2021-04-04 20:33:59 -04:00
Jon Evans
c7ecb51f77
Update PNS length tuning algorithm to match the new BOARD algorithm
...
Now tracks inside pads are optimized to give a more accurate length.
Also, the start/end of the assembled line is used to identify the right
pad joints for pad-to-die length calculation.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4204
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1765
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6877
2021-04-04 20:27:22 -04:00
Jon Evans
41c54d383e
Fix some edge cases with length calculation
2021-04-04 19:38:54 -04:00
Jon Evans
cdfb014ab6
CHANGED: Account for via height in track length calculations
2021-04-04 13:59:18 -04:00
Jon Evans
80728f8d78
Improve algorithm for calculating net length; use it for netinfo message panel
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4258
2021-04-04 12:27:09 -04:00
Jon Evans
6b24abac8f
PNS: Don't snap to end items if snapping is disabled by modifier key
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8033
2021-04-04 10:22:23 -04:00
Jeff Young
52ca7ed27c
Naming conventions.
2021-04-04 10:43:56 +01:00
Jeff Young
c1df77f59b
Terminology.
2021-04-04 10:32:24 +01:00
Jeff Young
98e6a089ab
Treat board edges same as graphics for locked/unlocked.
...
It would appear that not using the locked/unlocked graphics filters
is confusing too (see deleted comments in code).
Fixes https://gitlab.com/kicad/code/kicad/issues/8114
2021-04-04 10:27:26 +01:00
Jeff Young
2c3ee0d85f
Don't forget CommitPendingChanges.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8083
2021-04-04 01:02:31 +01:00
Ian McInerney
83ae28f04f
Fix selection when pasting/duplicating items
...
The item flags weren't getting reset after placing
the new items, so the next operation on them was
having weird behavior.
Fixes https://gitlab.com/kicad/code/kicad/issues/7528
2021-04-03 19:09:21 +01:00
Carsten Schoenert
cb17c9f3dd
Typo fix: Correct various misspelled words
...
agressive -> aggressive
decription -> description
miscellanous-> miscellaneous
rectange -> rectangle
Unkown -> Unknown
2021-04-03 13:39:50 +00:00
Carsten Schoenert
8dff3725ac
Typo fix: Correct 'allow to' -> 'allows one to'
2021-04-03 13:39:50 +00:00
Jeff Young
52aea0a2c9
Consistent terminology.
2021-04-03 11:15:11 +01:00
Jeff Young
c5536b2cab
Title case in menus.
2021-04-03 11:15:11 +01:00
Mikolaj Wielgus
aa09d6448a
Pcbnew: Allow Create Array on groups
...
Also removes possible null pointer dereferencing.
Fixes https://gitlab.com/kicad/code/kicad/issues/7515
2021-04-03 09:06:49 +00:00
Jon Evans
a8896ebd73
Don't show leading ratline for unconnected net
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8040
2021-04-02 20:29:25 -04:00
Mikolaj Wielgus
d7a95e2af4
Rotate FP_TEST properly when flipping
...
The angle was `-angle` instead of `180 deg - angle` when flipping top to
bottom.
Fixing that, in turn, created some problems with justification, which
was modified both by `FP_TEXT::Flip()` and `FP_TEXT::KeepUpright()`.
What's worse, `FP_TEXT` has another mechanism for keeping the text
upright: `FP_TEXT::GetDrawRotation()` returns different angles if the
"keep upright" flag is set. But there is no analogous behavior for
justification, so the text would sometimes get shifted, and sometimes
not, depending on which mechanism was engaged. And both are used,
apparently.
Clearly, such an arrangement an open invitation to bugs and
inconsistencies. One of these mechanisms should be removed. I haven't
done this yet, and would prefer to postpone this until V6 is out.
I've fixed the justification problems, but this was by trial-and-error,
and I don't feel I really understand the behavior responsible. But I
think it's a good sign that most of my changes are line removals, not
additions. Flipping is a simple operation, it's just mirroring and layer
change. If something simple has a complicated routine, then it's
probably full of hacks.
Fixes https://gitlab.com/kicad/code/kicad/issues/7289
2021-04-02 21:13:21 +00:00
Mikolaj Wielgus
0a660c2364
Pcbnew: Remove 180 deg rotation when flipping PCB_TEXT in some cases
2021-04-02 21:13:21 +00:00
Mikolaj Wielgus
99fd872fce
Pcbnew: Do not move footprint fields twice in align/distribution tools
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8094
2021-04-02 21:09:36 +00:00
Mikolaj Wielgus
7655533412
Do not move footprint fields twice when performing Move Exactly
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8062
2021-04-02 21:07:59 +00:00
Ian McInerney
1931677316
Ensure the layer dropdowns are correctly sized
...
On GTK, the layer dropdown was sized based on an empty list,
so for non-default fonts it would be undersized and cutoff
the font.
2021-04-02 21:33:31 +01:00
Ian McInerney
1db5e2bc96
Don't force an entire refresh of toolbars to update sizes
...
Forcing an entire refresh of the toolbars is wasteful,
so instead just update the sizers directly.
2021-04-02 19:12:21 +01:00
jean-pierre charras
d3bf20e80b
Pcbnew, place free via: take netcode from the pad, if the via is inside a pad.
...
Fixes #8089
https://gitlab.com/kicad/code/kicad/issues/8089
2021-04-02 17:19:44 +02:00
Jeff Young
f88d39b4f0
Fix state issue in router's switch layer handling.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7590
2021-04-01 18:10:04 +01:00
Jeff Young
f6f31b7654
Get rid of save warning after Footprint Editor Save As.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8084
2021-04-01 11:17:24 +01:00
Jeff Young
94470bfa15
Minor cleanup.
2021-04-01 11:10:01 +01:00
Jeff Young
0c4184f1a4
Split lib tree initialization into a two-pass affair.
...
This is under the supposition that we can't set the column widths
on some Mac instances because the host controls haven't yet been
created. This is primarily conjecture based on looking at things
that have the *possibility* of going wrong. Why this only happens
in some installs is beyond me.
Fixes https://gitlab.com/kicad/code/kicad/issues/5479
2021-04-01 10:51:29 +01:00
jean-pierre charras
90abc8ba8b
Excellon drill files: slightly change comments inside files
2021-04-01 07:38:00 +02:00
Jeff Young
b6f2941a06
Another try a allowing touching courtyards.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8076
2021-03-31 22:54:30 +01:00
Roberto Fernandez Bautista
a530c22eff
Shorten "Allow free pads" tooltip and rename button "Skip Locked Items"
2021-03-31 18:28:18 +00:00
Roberto Fernandez Bautista
7077e59395
Make moving pads independent of footprint much harder with new setting
...
It is still possible to move a pad independent of footprint through
the pad properties dialog. This is a much more conscious decision
than using the move tools.
ADDED: "Allow free pads" preference setting in pcbnew, default to off.
When enabled, allows moving unlocked pads independent of the footprint
(i.e. previous behaviour). When disabled (default), any attempt to move
a pad will move the parent footprint instead.
REMOVED: "Lock pads of newly added footprints" preference setting in
pcbnew. (Pad lock state is now loaded from the footprint definition)
CHANGED: There are now only two possible lock states for a footprint:
locked and unlocked. The lock state of the pads in the footprint is
now independent of the footprint lock state.
Also fixed a latent bug that would allow a pad to be moved when the
parent footprint was locked (see m_selectionTool->RequestSelection
lambdas in edit_tool.cpp)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7739
2021-03-31 18:28:18 +00:00
Jeff Young
737262ffa8
Allow touching courtyards.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8076
2021-03-31 10:44:59 +01:00
Ian McInerney
0a0935e0f3
Remove ACTIONS::TranslateLegacyId and TOOL_DISPATCHER::DispatchWxCommand
...
After commit 9535153f9e
there were no more IDs inside the legacy ID
system. Therefore the entire system for dispatching and looking up
the legacy ideas and handling those events can now be removed and
the tool dispatcher simplified (it no longer needs to know about
the ACTIONS class).
2021-03-30 23:20:22 +00:00
Jeff Young
8cb6f15687
Warn when diff pair router can't start due to too-small-gap.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7795
2021-03-30 19:49:23 +01:00
Roberto Fernandez Bautista
b151dd02b9
CADSTAR PCB: Fix incorrect solder mask/paste clearance
...
Need to divide by two as this is a clearance, not diameter.
2021-03-30 13:03:56 +00:00
Roberto Fernandez Bautista
ad2043eda6
CADSTAR PCB: DrillXoffset and DrillYoffset are zero when not specified
...
Fixes an issue that resulted in pads being loaded 100nm off from the
original CADSTAR position.
2021-03-30 13:03:56 +00:00
jean-pierre charras
6eb2e2a6e3
Fp editor: do not change item UUIDs when loading a footprint from library.
...
Fixes #8066
https://gitlab.com/kicad/code/kicad/issues/8066
2021-03-30 12:58:22 +02:00
Jon Evans
78a60e9dfb
PNS: Put polygon error outside pad shapes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7672
2021-03-29 19:49:59 -04:00
Jon Evans
6cbc3fb97d
Fix a minor inconsistency between router and DRC
...
Also make sure collision highlighting runs at the starting
location of a drag.
See: https://gitlab.com/kicad/code/kicad/-/issues/7672
2021-03-29 19:41:17 -04:00
Jon Evans
8be9832153
PNS: Don't highlight Net 0 (the unconnected net)
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8040
2021-03-29 17:45:07 -04:00
Wayne Stambaugh
38c849bde7
Pcbnew: load write board netlist to file tool action dynamically.
...
Loading this advanced configuration option statically will cause it to
show up in the hotkey list even when the option is disabled. Creating
the tool action at run time resolves this issue.
2021-03-29 09:04:55 -04:00
jean-pierre charras
3c51964c57
drill report: use more digits in float values for diameters.
...
(Use same resolution in map and rpt files)
2021-03-29 13:02:43 +02:00
Jeff Young
f2e68e68d0
Add "Hide Tree" context menu options when tree has no selection.
...
Also cleans up some other code to be more consistent between symbol
editor and footprint editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/8052
2021-03-29 12:02:00 +01:00
Wayne Stambaugh
6d2f80b4cf
Pcbnew: add write board netlist to file support.
...
This is hidden behind an advanced configuration setting and is primarily
useful for developers trying to troubleshoot the netlist payload sent
from the board editor to the schematic editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/8051
2021-03-28 08:38:29 -04:00
Ian McInerney
475ac3697f
Ensure toolbar controls have the correct width on frame creation
...
Otherwise they could be slightly too small and then look odd.
2021-03-28 13:07:56 +01:00
Jon Evans
d0d6352a25
Fix crash launching footprint editor frame
...
Apparently we get this event before the frame is fully-baked
2021-03-27 23:48:07 -04:00
Ian McInerney
42c6af4bd8
Cleanup ACTION_MENU creation in some places
...
The ACTION_MENU constructor now takes the tool as an argument,
so the call to SetTool() immediately following it can be removed
and the tool just passed into the constructor.
2021-03-27 19:16:58 +00:00
Ian McInerney
9535153f9e
Move the import graphics menu item to the action
2021-03-27 19:04:16 +00:00
Ian McInerney
7bfa8575fa
Remove redundant information from import/export menu item labels
...
Saying "Import/Export" on the labels when the submenu has "Import"
or "Export" in it is redundant.
Note that we can't just update the action text with the new name,
because that is used in the hotkey list and would become too confusing
without the "Import"/"Export" text.
2021-03-27 18:50:35 +00:00
Konstantin Baranovskiy
eb8744816e
pcbnew: fix the i18n of the rules syntax help
2021-03-27 16:26:13 +00:00
Ian McInerney
f6041fb52d
Force update of some text when activation status changes
...
The text areas aren't always redrawn when the window is activated
or deactivated, so we need to force a refresh of the text to ensure
it is the correct font color.
2021-03-26 15:50:56 +00:00
jean-pierre charras
d18323dcf0
Excellon file writer: remove not very useful comments outsider the header section.
...
Looks like comments outside header section can create problems in some readers.
Note: comments inside header section are clearly allowed in Excellon file format)
(trial to fix bug 8032)
2021-03-26 09:46:32 +01:00
Jon Evans
132ec37b56
Handle arc in buildHullForPrimitiveShape
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8008
2021-03-25 21:25:30 -04:00
Roberto Fernandez Bautista
34a435cd56
CADSTAR PCB: Handle import of pads with different paste and mask sizes
...
KiCad doesn't yet support full padstacks, but at least we can use the
solder mask / solder paste expansion to import a better result. Also
we can disable the specific layer if the shape has a size of zero.
2021-03-25 17:54:56 +00:00
Roberto Fernandez Bautista
107a1990c9
CADSTAR PCB: Handle route offset
...
The CADSTAR post processor has a peculiar feature called "route offset"
which effectively shortens tracks when the pad, track or via that it
connects to has a smaller width. This operation is not saved in the
design itself, but applied as a post processing operation meaning that
the importer has to apply it when loading on the board.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6648
2021-03-25 17:50:33 +00:00
Roberto Fernandez Bautista
1468764f83
CADSTAR PCB: Lock footprint pads after import
2021-03-25 17:50:33 +00:00
Jeff Young
3279e295ac
Don't start filling zones with possibly stale caches.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8014
2021-03-25 17:20:08 +00:00
Jeff Young
a2ffb45698
Update diff pair rule syntax to be clearer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8010
2021-03-25 10:29:38 +00:00
jean-pierre charras
bbd7b4ca8c
Eeschema, selection tool: uniformize the cursor shape and the actual modifiers.
...
SHIFT, CTRL, ALT modifier keys were handled in 2 different codes, one for
the selection tool and another to modify the mouse cursor shape, with 2
different configs.
Now the modifiers are managed from only one function.
Pcbnew: group also SHIFT, CTRL, ALT modifier keys management to a specific function.
Fixes #8021
https://gitlab.com/kicad/code/kicad/issues/8021
2021-03-25 10:28:20 +01:00
jean-pierre charras
9a0f9575b6
Fix minor Coverity warnings
2021-03-25 09:12:24 +01:00
firebladed
41839f7e3f
Update panel_setup_rules_help.md diff pair clearance example to use new A.isCoupledDiffPair() function
2021-03-25 03:33:19 +00:00
Jon Evans
cb722c6bfa
Code style
2021-03-24 18:11:32 -04:00
qu1ck
75819206a0
Add support for dark theme in plugin icons
...
Action plugin authors can specify alternative icon path for dark theme.
If it's not specified then standard icon will be used for both light and
dark themes. If neither icon is specified then the default puzzle piece
icon is used.
Fixes #7984
2021-03-24 21:59:30 +00:00
Wayne Stambaugh
b37b7d53b4
Fix geographic annotation bug when back annotating to schematic.
...
For some reason, the footprint UUID was being prefixed to the sheet path
which caused the symbol look up by sheet path to fail. An option was
added to not do this when the geographical back annotation to the schematic
is performed.
2021-03-24 09:57:36 -04:00
Marek Roszko
e409b04538
More gracefully handle tinyspline not liking a spline definition
...
Partial fix for #6634
2021-03-24 00:37:01 -04:00
Jon Evans
f57dcf2a34
Fix connectivity to only resolve conflicts on netlist load
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8007
2021-03-23 17:43:24 -04:00
Jeff Young
a94ce75c02
Fix multiple filter calls that were producing false cache positives.
...
When processing a compound shape we'd decide the first of them didn't
collide and then put false into the cache. The cache value would then
be used for all the other shapes in the compound shape, which very well
might actually collide.
Fixes https://gitlab.com/kicad/code/kicad/issues/8003
2021-03-23 21:06:16 +00:00
Ian McInerney
a94a481574
Fix compile warnings
...
Some simple warnings and also a deprecation warning from wx
because they felt that a function should be renamed...
2021-03-23 19:46:49 +00:00
Jon Evans
4dbeb15024
Use a worker thread to send socket commands
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6503
2021-03-23 03:20:40 +00:00
Jon Evans
381cc27548
Add missing include
2021-03-22 21:25:03 -04:00
Jeff Young
49b1aceb8b
Handle doc urls enclosed in parens.
...
It seems this has become a common pattern in at least some of our
libraries.
Fixes https://gitlab.com/kicad/code/kicad/issues/7963
2021-03-22 21:20:54 +00:00
Jeff Young
f24f0d93a5
Make OK default in inspectors (and hook up to close window).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7831
2021-03-22 21:20:54 +00:00
Jonathan Haas
a677998f47
Don't select new items after cancelling move following item duplication
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7956
2021-03-22 18:49:43 +01:00
Jon Evans
9ce34102af
Make sure projects get created for boards migrated from 5.x
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6886
2021-03-21 16:21:44 -04:00
Jeff Young
8be213e36f
Trim includes (and use consistent terminology in error messages).
2021-03-21 20:15:47 +00:00
Roberto Fernandez Bautista
a9eb83201e
Remove ZONE::ClearFilledPolysList() and fix ZONE::Unfill()
...
ClearFilledPolysList is redundant and Unfill() was missing the clearing
of m_insulatedIslands
This fixes potential latent bugs in zone unfilling.
2021-03-21 20:13:20 +00:00
Roberto Fernandez Bautista
50aafb9d2a
Do not auto-refill zones when added or edited
...
The only exception is when using the Zone Properties Dialog and
user preference is enabled
2021-03-21 20:13:20 +00:00
Roberto Fernandez Bautista
7a255edc5f
Panel Edit Options: Fix "Show Page Limits" tooltip message
2021-03-21 20:13:20 +00:00
Roberto Fernandez Bautista
f6c4677189
ADDED Option to disable automatic zone filling in pcbnew
...
The new setting is stored as 'editing.auto_fill_zones' and controls
whether zones should be refilled after certain actions or not.
2021-03-21 20:13:20 +00:00
Roberto Fernandez Bautista
a743e0c52b
Add Zone fill to undo stack
...
Allows undoing zone filling and reverting to previous fill state.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7440
2021-03-21 20:13:20 +00:00
Jon Evans
5e0b65c3a8
Change wording of corner rounding action
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4505
2021-03-21 15:55:56 -04:00
Jon Evans
37242f67e0
Connectivity: just pick the most popular net to update conflicting clusters
...
CHANGED: when pad net assignments are changed in a conflicting way (i.e.,
tracks exist that short out more than one net after the change,
track nets will be updated to the net with the most pads).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7929
2021-03-21 15:31:37 -04:00
jean-pierre charras
f0ed5fab39
add missing include for wxWidgets 3.1.4
2021-03-21 17:35:20 +01:00
Jon Evans
e1840ccbd3
Handle exceptions thrown by footprint library table
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7973
2021-03-21 11:43:24 -04:00
Thomas Pointhuber
68f3d09ac1
altium: introduce tokenizer for query language
...
Based on this tokenizer, a LL1 parser will be built in the future.
2021-03-21 16:39:23 +01:00
Jeff Young
fe196771d8
Implement isCoupledDiffPair() DRC rule function.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7975
2021-03-20 23:07:36 +00:00
Jeff Young
44e2151ade
Allow diffpair gap to override netclass clearance value.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7975
2021-03-20 21:53:30 +00:00
Jeff Young
ce46fe6581
Add insideFrontCourtyard and insideBackCourtyard DRC functions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7972
2021-03-20 21:53:30 +00:00
Jeff Young
07aea4339d
Formatting.
2021-03-20 21:53:29 +00:00
jean-pierre charras
4a53917efa
wrml exporter: optimize circle to segment approximation.
2021-03-20 18:16:58 +01:00
Jon Evans
f1c599fa4d
Tweak PCB selection behavior to reduce unintuitive behavior
...
We were discarding shapes too aggressively for having a
larger area than a shape underneath.
Let's also try showing fewer disambiguation menus, in particular
always preferring items on the active layer when the candidates
include overlapping items of similar area on other layers.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7949
2021-03-20 13:11:51 -04:00
Jon Evans
6924b98bc3
Remove deprecated BRIGHT_BOX preview item
2021-03-20 12:09:20 -04:00
Jon Evans
c04e19f9ac
Include optimization: move some things from common.h to point-of-use
2021-03-20 12:09:18 -04:00
jean-pierre charras
6d5536707c
wrml exporter: remove all duplicate code with Pcbnew. Especially, converting layers to polygons exist in Pcbnew, so no need to rebuild item shapes in the exporter. Moreover, in exporter, rebuilding shapes was not up to date and did not include changes in Pcbnew.
2021-03-20 13:44:52 +01:00
jean-pierre charras
4073153e75
vrml exporter: fix incorrect export of zones on solder mask layers. minor changes in colors.
2021-03-20 11:13:55 +01:00
Jon Evans
7a8abcadd2
PCB_SHAPE: Use SHAPE_ARC as the effective shape of an arc
2021-03-19 22:43:43 -04:00
Jeff Young
6c3b02aabe
Cleanup (no functional changes).
2021-03-19 16:14:34 +00:00
jean-pierre charras
3fec3a3a15
Fix a minor Coverity warning
2021-03-19 15:01:16 +01:00
Jeff Young
90742bba9f
Adjust constraints after editing other points.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7103
2021-03-19 11:35:17 +00:00
Jeff Young
4034fcb7ac
Fix yet another edge case in B&W printing of holes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7944
2021-03-18 23:50:04 +00:00
jean-pierre charras
af88b01068
export_vrml: Better export of pad shapes, both on copper and paste layers.
...
It removes duplicate code between Pcbnew and the vrml exporter.
Remove also an useless option (plain board) that exported just the board body.
2021-03-18 20:43:27 +01:00
jean-pierre charras
8d5161dae2
export_vrml: more code cleanup and export solder mask
2021-03-18 16:44:28 +01:00
Jonathan Haas
95051c4786
Also duplicate arcs in pcbnew
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7943
2021-03-18 13:35:30 +00:00
Jean-Samuel Reynaud
e377f2667e
Adding COMMIT support before/after invocation of a python script
...
Allows undo/redo of ACTION_SCRIPT commands
2021-03-18 12:52:17 +00:00
jean-pierre charras
16ef1910ff
export_vrml: more code cleanup and fix incorrect shape of round chamfered pads
2021-03-18 13:35:06 +01:00
jean-pierre charras
074f0432f0
vrml exporter: more cleaning code and enhancements. Dialog exporter: Add option to use board center as coord origin.
2021-03-18 09:52:04 +01:00
jean-pierre charras
b050823c98
export_vrml.cpp: mainly clean code and add some fixes.
2021-03-18 09:52:03 +01:00
Jeff Young
36259b1f6b
Refresh lib trees after editing library tables.
...
Also make sure that we grab the library item descriptions from their
source rather than just the cached tree copy.
Fixes https://gitlab.com/kicad/code/kicad/issues/7875
2021-03-17 14:54:18 +00:00
Jeff Young
46d71f0d23
Go back to validate-on-OK, but stop doing design checks.
...
If we keep doing design validations at two different places, they can
only start to drift apart. Board Setup should validate for malformed
data ONLY; everything else is the business of DRC.
This also fixes a bug where implementation validations would not allow
OK in the dialog, but wouldn't put up a message to say why. We now use
the InfoBar impl from Jon's commit for that.
2021-03-16 14:49:03 +00:00
pgvoorhees
bb8d31cd06
Fix context item selection filter type omissions
...
Fixes #7839
2021-03-16 13:08:50 +00:00
Jeff Young
cad1cb0262
Improve naming.
2021-03-16 12:07:06 +00:00
Jeff Young
c7648b4dba
Formatting.
2021-03-16 12:07:06 +00:00
Jeff Young
2ad9da582a
Refresh geometry when clearance changes if clearance lines are shown.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7906
2021-03-16 12:07:06 +00:00
Mikolaj Wielgus
c3c3649211
Stop text from causing a shift during flip when >1 items are selected
...
1e1be730
fixed this only for one item.
Fixes https://gitlab.com/kicad/code/kicad/issues/7304
2021-03-15 21:24:16 +00:00
Jeff Young
b2ac9cc29f
Formatting & naming conventions.
2021-03-15 19:04:59 +00:00
Fabien-B
a086795ac9
Pcbnew: fix dimensions text rotation and position.
...
Issue #6940 is not addressed, as being able to
rotate a dimension with a group is preferred over
easily rotating the text.
Fixes https://gitlab.com/kicad/code/kicad/issues/3847
2021-03-15 15:44:36 +00:00
jean-pierre charras
cb451dc4b2
Pcbnew: Fix memory leaks and fix inefficient code.
2021-03-14 20:27:59 +01:00
Jon Evans
52e2bf0000
Keep focus on filter boxes in footprint viewer
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4884
2021-03-14 15:10:20 -04:00
jean-pierre charras
a1b4bcc210
Refinements (add icons to menuitems and better help strings)
2021-03-14 18:44:31 +01:00
jean-pierre charras
c763b0088e
Fix some issues in drawing_stackup_table_tool.cpp
2021-03-14 17:44:16 +01:00
jean-pierre charras
3ba7fc0cc2
Move board stackup table drawing code from drawing_tool.cpp to drawing_stackup_table_tool.cpp
...
This avoid a too large drawing_tool.cpp file.
Remove also values in internal units and convert them to mm.
2021-03-14 17:44:16 +01:00
Jon Evans
521982cbf6
Avoid double-redraw on board load
2021-03-14 11:42:09 -04:00
Jon Evans
2cbd7b5043
Reduce scope of some view repaints to improve performance
2021-03-14 11:42:09 -04:00
jean-pierre charras
2528e1fc98
EXCELLON_WRITER: update info in comments.
2021-03-14 12:38:03 +01:00
jean-pierre charras
953279ce70
Gerber plot: fix missing AperFunction attribute for texts.
...
Fix also a incorrect AperFunction attribute for graphic items on Edge.Cuts
in footprints
2021-03-14 12:37:13 +01:00
Fabien Corona
f428ce03f2
ADDED: pcbnew - stackup / characteristics table
2021-03-13 20:19:46 +00:00
Jeff Young
18470693fe
Copy linewidths when coverting to polygons.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7893
2021-03-13 17:06:49 +00:00
Jeff Young
93db7a130a
Offset 3D models when moving footprint origin.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7868
2021-03-12 17:37:38 +00:00
Jeff Young
faf9cca938
Fix many cases of old mils flag getting interpreted as allowEval flag.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7883
2021-03-12 15:15:50 +00:00
Jeff Young
24fd326cd1
Make sure we have different strings for past & future tense.
...
(In English both were 'Set', but that means our translation framework
won't support two different strings in other languages. Changed to
'Add' and 'Added'.)
Fixes https://gitlab.com/kicad/code/kicad/issues/7888
2021-03-12 14:59:38 +00:00
Jeff Young
ba46a8d12d
Fix some layout issues resulting from wxWidgets version bump.
2021-03-12 14:54:54 +00:00
Jeff Young
a01bd52571
Use default line width when creating polygons.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7876
2021-03-12 14:54:54 +00:00
Jon Evans
18037e2f65
Rework bitmap system to load from archived PNGs
...
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
Jeff Young
4db10d419d
Implement future & past tenses for dry-run vs. changes made report.
...
Also improves zone reporting to list either the zone name or the layer
and coordinates.
Fixes https://gitlab.com/kicad/code/kicad/issues/7851
2021-03-11 12:34:02 +00:00
Jeff Young
ea9c269914
Don't fill polygons converted from lines.
...
The lines couldn't have been filled, so the polygon shouldn't start
out filled either. The user can set it to filled if they want.
Fixes https://gitlab.com/kicad/code/kicad/issues/7867
2021-03-11 10:42:21 +00:00
Jeff Young
4b88d4beed
Don't police the user.
...
There are too many holes and the police-state just makes it harder to
get back from error conditions.
Fixes https://gitlab.com/kicad/code/kicad/issues/7867
2021-03-11 10:38:32 +00:00
Jeff Young
e48f86bfd6
Move default assignment on Mac.
...
CHANGED: add corner and repeat last command now default to 'I' instead
of '<insert>' on Mac.
1) wxWidgets doesn't currently display the correct graphic in the menu
for the insert key
2) Mac laptops don't have an instert key
Fixes https://gitlab.com/kicad/code/kicad/issues/5016
2021-03-10 13:35:04 +00:00
Wayne Stambaugh
d4231d8e9f
Pcbnew: add footprint keepouts to Specctra DSN exporter.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7684
2021-03-10 07:18:37 -05:00
Marek Roszko
3d4ac9af03
Relocate win32 resource files to the central folder for further consolidation
2021-03-09 21:48:14 -05:00
Wayne Stambaugh
d160b30ff1
Pcbnew: add keepout helper methods to ZONE object.
2021-03-09 08:13:06 -05:00
Jeff Young
60b17e727a
Make sure pad locked flags get transferred on ExchangeFootprint.
...
They used to be in the footprint but were moved to the individual
pads a few months ago.
Also applies to text items.
Fixes https://gitlab.com/kicad/code/kicad/issues/7844
2021-03-09 12:29:14 +00:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Jeff Young
2bc10d58b5
Fix some cases where PCB_FP_ZONE_T was left out.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7615
2021-03-08 13:00:46 +00:00
Jonathan Haas
274d4e2eb4
Fix orientation of orthogonal dimensions
...
When drawing and editing orthogonal dimensions, take distance and
relative position to the end points into account.
Fixes https://gitlab.com/kicad/code/kicad/issues/7243
Fixes https://gitlab.com/kicad/code/kicad/issues/7189
2021-03-08 00:13:38 +00:00
Mikolaj Wielgus
0f22b54cd8
Clip the leader lines properly when using circular text frame
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7810
2021-03-07 21:19:19 +00:00
Jon Evans
720147d272
Remove transitive inclusion of bitmaps.h
2021-03-07 16:08:57 -05:00
david-beinder
df99ee39d9
PNS: new through vias should span all copper layers
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7576
2021-03-07 17:58:43 +00:00
Jeff Young
47145d349b
Don't run insideArea on ruleAreas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7826
2021-03-07 17:55:30 +00:00
jean-pierre charras
e0cbcc3330
Excellon drill files: add structured comments to identify via holes and pad holes.
...
This is useful for CAM tools because constraints for via holes and pad holes are
not the same
2021-03-07 17:47:37 +01:00
jean-pierre charras
fde22da478
Greber drill files: Enable using flashed shapes for oval holes.
2021-03-07 17:44:59 +01:00
Jeff Young
0fde536223
Adjust zones when moving footprint origin.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7825
2021-03-07 15:04:01 +00:00
jean-pierre charras
d57f5b1a2c
DIALOG_GENDRILL: fix incorrect initialization of drill coord origin option
...
Fix also missing board change mark when drill plot settings are modified.
2021-03-06 09:47:42 +01:00
Jeff Young
b691c18bfc
Allow netclass assignents to unnamed nets.
...
Most of the code had already moved over to this, but there were a few
hold-outs.
Fixes https://gitlab.com/kicad/code/kicad/issues/7802
2021-03-05 19:16:09 +00:00
Jeff Young
3e9eb3c8ac
More complete fix for crasher JP found.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7806
2021-03-05 15:30:52 +00:00
Jon Evans
68f958145d
Gracefully handle lack of diff pair settings
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7806
2021-03-05 09:09:56 -05:00
Jon Evans
4ddb942ec0
Do not allow drag selection or drag move when already moving something
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7800
2021-03-04 19:01:31 -05:00
Jeff Young
c85c14e6e4
Don't allow exponential notation in specctra export.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7786
2021-03-04 22:39:33 +00:00
Jeff Young
bbf02a5f08
Formatting.
2021-03-04 21:23:45 +00:00
Jeff Young
528f933ad5
Don't revert commit after user has OK'ed the dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7799
2021-03-04 19:16:43 +00:00
Jeff Young
d18afa42cd
Resync nets & netclasses after updateFromPCB.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7793
2021-03-04 15:05:06 +00:00
Jeff Young
91350ec9ea
Don't update thickness unless it really changed.
...
Otherwise we're going to generate a continuous stream of OnUpdateUI
events....
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
2021-03-04 14:15:39 +00:00
Marek Roszko
8831c5567c
Add win32 version manifest block
2021-03-04 00:34:48 -05:00
Jon Evans
1fc399fa31
Fix a few more cases of picking up wrong mouse positions
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7745
2021-03-03 20:09:24 -05:00
Mikolaj Wielgus
1e1be730d8
Do not recalculate center from boundaries when flipping
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7304
2021-03-03 23:33:31 +00:00
Jeff Young
b9d26a55f2
Show variable references of text in status bar.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7790
2021-03-03 18:58:04 +00:00
Jeff Young
fcb9af2b12
When saving footprint to library don't detach from board too early.
...
In particular, make sure it's been flipped to the front layer first.
We need to know the layers to do the flip.
Fixes https://gitlab.com/kicad/code/kicad/issues/7780
2021-03-03 15:07:01 +00:00
Ian McInerney
51d445007f
Switch to using make_shared in another place
2021-03-03 02:19:46 +00:00
Ian McInerney
908de37e7c
Don't hardcode the file extensions where possible
2021-03-03 01:13:59 +00:00
Mikolaj Wielgus
81570e02f3
Do not change orientation when moving orthogonal dimensions
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7727
2021-03-02 19:59:16 +00:00
WhiteChairFromIkea
bbd6a1db0e
Formatting
2021-03-02 19:57:19 +00:00
WhiteChairFromIkea
b33ec125ac
use "pattern" instead of "sourcelibreference" for footprints
2021-03-02 19:57:19 +00:00
WhiteChairFromIkea
a9ca1e4ebd
use "pattern" instead of "sourcelibreference" for footprints
2021-03-02 19:57:19 +00:00
WhiteChairFromIkea
6533b47f0a
use "pattern" instead of "sourcelibreference" for footprints
2021-03-02 19:57:19 +00:00
Jonathan Haas
f90164f7cf
Fix some typos and improve wording
2021-03-02 19:13:49 +01:00
qu1ck
3199a88d54
Fix pcbnewshell not showing namespace inspector tools
...
on msvc build with recent wxpython
2021-03-02 17:12:57 +00:00
Wayne Stambaugh
79a9d69ff5
Coverity fixes for issues 314755, 316287, 324536, 324539, and 324539.
2021-03-02 08:10:37 -05:00
Jeff Young
d06e8ef01c
Honour pre-defined-size selections for diff pairs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7759
2021-03-02 12:12:05 +00:00
Jeff Young
7760570d76
Treat action buttons in Symbol/Footprint Properties as OK, not Cancel.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7001
2021-03-01 20:37:04 +00:00
Jeff Young
57e948ff08
Make sure axesEnabled is set before saving config.
...
We don't actually allow the user to change this at present, so one
could argue that we should remove it from what is saved out of the
config. But this is a smaller, safer change.
Fixes https://gitlab.com/kicad/code/kicad/issues/7666
2021-03-01 20:37:04 +00:00
qu1ck
cc6df515a1
Make ARCs accessible from python
2021-03-01 17:34:47 +00:00
Jeff Young
f4cc9b86e3
Inform user (and bail on UpdatePCB) if annotation failed.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7310
2021-03-01 16:57:29 +00:00
Jeff Young
1a9f55872c
Don't leave a pad with a netinfo pointer from the footprint editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7766
2021-03-01 11:12:51 +00:00
Jeff Young
83d07dc7f7
Comments.
2021-03-01 11:12:51 +00:00
Jon Evans
63b5d8db43
Pcbnew: use MRU path when opening files in standalone mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7734
2021-02-28 14:30:16 -05:00
Jon Evans
dbb6d0fb4a
Move paste and mask clearance settings back to board file
...
These are needed for correct Gerber plotting so need to be stored
along with the board file
2021-02-28 14:04:28 -05:00
Marek Roszko
4debfbcc53
Fix pcbnew cross probing ignoring the disabling of the cross probing zoom to fit setting
2021-02-28 10:39:51 -05:00
Jon Evans
cd7a2cd807
Fix shadowing fix that caused logic bug and different shadowing
2021-02-27 20:01:14 -05:00
Jon Evans
65531accf6
DRC: allow testing against particular diff pair membership
2021-02-27 19:54:55 -05:00
Jeff Young
061218e567
Take a stab at fixing Python build issue.
2021-02-27 23:56:47 +00:00
Jeff Young
3538c8a963
Thread safety for new caches (which are also used during zone fill).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7749
2021-02-27 21:33:30 +00:00
Jeff Young
2606ecc619
Add isDiffPair() to custom rule syntax examples.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7746
2021-02-27 19:45:03 +00:00
Jon Evans
ccba4b1462
Pcbnew: don't show project warning on stackup pages
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5568
2021-02-27 14:28:24 -05:00
Jeff Young
14e670408e
Fix some bugs in rule examples and add some more examples.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7744
Fixes https://gitlab.com/kicad/code/kicad/issues/6884
2021-02-27 19:21:41 +00:00
Jon Evans
d269778cd4
PNS: disable smart pads in walkaround if posture is forced
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7710
2021-02-27 13:48:01 -05:00
Wayne Stambaugh
5ca25a609e
Pcbnew: fix shadow variable in expression evaluator.
2021-02-27 12:09:06 -05:00
Seth Hillbrand
f952434aee
Replace "pours" with "fill" in Rule Area
...
KiCad terminology refers to copper "Fill" rather than copper "Pour".
Also adds some tooltips for the various options
Fixes https://gitlab.com/kicad/code/kicad/issues/7740
2021-02-27 08:32:05 -08:00
Seth Hillbrand
bcc3767c2a
FABMASTER: Fill both kinds of silk polys
...
Silkscreen polygons are always filled (I think) in FABMASTER. Other
layer polygons are not
2021-02-27 06:58:04 -08:00
Jon Evans
eae9e954c3
Hide BOARD internals that shouldn't be wrapped from swig
2021-02-27 08:54:21 -05:00
Jeff Young
6d6765cdaf
Improve DRC status reporting.
...
1) Don't report on tests not run.
2) Don't cancel subsequent tests because the current test didn't
have any constraints
3) Exit a little bit quicker when cancelled
Fixes https://gitlab.com/kicad/code/kicad/issues/7724
2021-02-27 13:44:45 +00:00
Jeff Young
4ede4e061e
More DRC performance work.
...
Push DRC zone RTrees into BOARD so that they can also be used by
insideArea.
All these caches are a bit of an encapsulation leak, but they make a
significant impact on performance.
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-27 11:45:04 +00:00
Seth Hillbrand
283d176cdc
Use std::locale::classic() globally
...
This is a better alternative when imbuing streams
2021-02-26 17:21:55 -08:00
Seth Hillbrand
5d352d2373
FABMASTER: Enforce KiCad limits on line width
...
We require unfilled polygons to have positive width
2021-02-26 17:16:54 -08:00
Seth Hillbrand
7e0168a99d
FABMASTER: Process newer outline tag
...
Allegro uses the subclass "DESIGN_OUTLINE" in newer version for their
edge cuts instead of just "OUTLINE". This handles both.
Fixes https://gitlab.com/kicad/code/kicad/issues/7735
2021-02-26 17:06:56 -08:00
Seth Hillbrand
c9b39aaaed
FABMASTER: Process REFDES position
...
The reference designator is stored separately with the Tracks, so we
need to extract position/size data from it there and match back to the
components later.
Fixes https://gitlab.com/kicad/code/kicad/issues/7733
2021-02-26 17:04:21 -08:00
Marek Roszko
b82fcbcad6
More exception var disuse warnings
2021-02-26 19:30:58 -05:00
Seth Hillbrand
75c525af4f
FABMASTER: Handle polygons better
...
Polygons in non-etch layers need special handling to ensure they get
treated the same.
Fixes https://gitlab.com/kicad/code/kicad/issues/7731
2021-02-26 14:01:04 -08:00
Seth Hillbrand
2d5015c217
FABMASTER: Try harder to figure out nets
...
Find all intersecting points both forward and back between the filled
areas and the outlines in order to determine the proper net assignment
for the zones
Also creates rule areas for special zones instead of filled zones
Fixes https://gitlab.com/kicad/code/kicad/issues/7732
2021-02-26 13:06:06 -08:00
jean-pierre charras
b31bf1e40f
Always store via drill value in .kicad_pcb file.
...
Old boards were using UNDEFINED_DRILL_DIAMETER value in file for via drill when
the via drill value was the netclass value.
Recent boards always set the via drill to the actual value, but now we need
to be sure always store the drill value, because netclass value is not stored
in the board file. Otherwise the drill value of some (old) vias can be unknown
2021-02-26 20:57:43 +01:00
Seth Hillbrand
73dd93701a
FABMASTER: demote odd graphics warning
...
Drill layers have many different shapes in FABMASTER. These are not
used for board information, so we can ignore them.
2021-02-26 11:37:21 -08:00
Seth Hillbrand
ae2a9ef538
Use std::locale::classic static local
...
Prevents performance issues when creating new locales under MSVC
2021-02-26 11:37:21 -08:00
Seth Hillbrand
103dde67f6
FABMASTER: Handle rotated/flipped custom pads
...
The rotate mirror actions need to line up with the expectation.
FABMASTER keeps elements board-referenced while KiCad has some elements
referenced to the board and some referenced to the footprint
2021-02-26 11:37:21 -08:00
Seth Hillbrand
ff1300d13b
FABMASTER: Preallocate vectors
...
Reserves memory for vector elements based on file size. This helps
reduce the number of re-allocations needed when reading large files
2021-02-26 11:37:21 -08:00
Jeff Young
f226373324
Add cache for insideArea() and insideCourtyard().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 19:22:25 +00:00
Jeff Young
cb830f74b7
Bounding box caching comments.
2021-02-26 18:03:51 +00:00
Jeff Young
d523129929
Minor performance improvements.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 17:58:08 +00:00
Jeff Young
c716313a24
Fix footprint hittesting. (How in the world did that compile?)
2021-02-26 17:44:36 +00:00
Jeff Young
c7a71b44e5
Zones must be entirely inside for insideCourtyard.
...
This is a huge performance win as otherwise we're doing *lots* of
shape collisions with ground planes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 17:19:48 +00:00
Jeff Young
22005299af
Remove old hacks for UTF8 mode.
...
wxWidgets' UTF8 mode wasn't thread-safe, so we had to put mutex's on
a bunch of string operations, which meant that we couldn't return
references to strings. Now that we no longer use UTF8 mode anywhere
(and the mutex's were removed long ago), using references is a big
performance win in some places.
2021-02-26 17:19:48 +00:00
Jeff Young
86aaa2e9cb
Rationalize footprint bounding boxes and cache all of them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 13:50:27 +00:00
jean-pierre charras
da005bd2a6
Pcbnew, plot files: fix very poor shape of trapezoid pads having a non null
...
clearance on mask or solder mask layers.
2021-02-26 10:36:04 +01:00
Seth Hillbrand
c15a9e60d4
Used cached footprints without check in preview
...
Between the time the user loads the footprint preview in cvpcb or Add
Footprint in pcbnew, we don't need to verify cache integrity to display
the footprint. We use the cache copy when displaying until we close the
selection window and re-open. This limits our need to iterate over the
full directory on every footprint display.
Alternate solutions for v7 should include looking into libfswatch for
change detection
2021-02-25 15:46:52 -08:00
Jeff Young
b36e1c741d
Fix insidious bug which resets layer of SOLID when marking collision.
...
It's supposed to be setting the layer of the collsion display object,
not the host object, but there's a typo.
Fixes https://gitlab.com/kicad/code/kicad/issues/7712
2021-02-25 23:39:48 +00:00
Jeff Young
75032f3acd
Use the more-constrained layer when running rules.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7639
2021-02-25 22:58:07 +00:00
Seth Hillbrand
54539d2cd7
Calculate timestamp the same way both times
...
Timestamps were checked using a different routine than they were
generated with, leading to the cache always being out of date.
This uses the same routine for both. While it iterates over the
directory twice during the initial load, this will never be dominant
Fixes https://gitlab.com/kicad/code/kicad/issues/7711
2021-02-25 14:36:49 -08:00
Tomasz Wlostowski
87ea540953
Fix whitespace errors
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
c79610e132
router: post-rebase fixes
2021-02-25 17:18:23 +01:00
Marek Roszko
6948cdd8ef
router: Fix return type within pointInside2
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
9bdfc13155
router: improve locality of post-shove optimization
...
Fixes : #4359
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
e1d4bb777c
router: use new LINE::Walkaround in the walkaround algo
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
045d02f818
router: add strict/loose area restriction constraint. WIP
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
24574aa2f5
router: first insert intersections, then build graph in Walkaround()
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
61e75a838b
router: replace large stack variables with std::array
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
028f209126
router: more robust LINE::Walkaround() implementation
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
e9c55cd0e3
router: if the drag anchor is not reachable by the mouse, use the closest point on dragged trace for optimizer restriction
...
Fixes : #4056
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
a141ed3444
router: feed view size change events to the router engine
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
12dfb541fc
router: expose current view area to the router algorithms so that the optimizer could know not to mess with traces/vias not currently visible to the user (wip)
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
2831c7d24c
router: fix compile error in DRAGGER
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
b67e5768a6
router: feature to save debug event log & board dump for easier recreation of router bugs and misbehaviours
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
ebdc68ac1d
router: correctly handle line width in PREVIEW_ITEMs
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
34c037684b
router: partially migrate SHOVE algorithm to use new DEBUG_DECORATOR
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
0e6cf3f56e
router: fix board edge clearance queries
...
Fixes : #7254
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
4574f52eac
router: DRAGGER::CurrentNode() should always return non-null value
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
e221b11e3b
GRID_HELPER: fixed arithmetic issue in segment snap distance check disguised as 'excessive optimization' by the dragger in the router
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
325300bd76
router: don't use compound pad shapes if pad contains a single primitive shape
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
a4bd2ad8c6
router: drag in walkaround mode now works
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
f84836f51e
router: factor out POSTURE_SOLVER to more generic MOUSE_TRAIL_TRACER class
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
af95235f47
router: report debug log events from DRAGGER
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
0306d16748
router: make post-drag optimization less intrusive
...
Fixes : #5918
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
14ce7a0ad7
router: implement area constraint in optimizer
2021-02-25 17:18:23 +01:00
Tomasz Wlostowski
64cf593ee9
router: debug points now have variable size
2021-02-25 17:18:23 +01:00
Jeff Young
b8c95345d0
Make sure reporters have a better default path than /bin.
2021-02-25 15:05:26 +00:00
Jeff Young
caa18c8e16
Fix bugs in diffPair hole-to-hole logic and add rule resolution.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7697
2021-02-25 14:23:02 +00:00
Jeff Young
2c009906e5
Set unprinted layer colors to background.
...
This allows our Black&White special cases to still work when the
hole annular rings aren't being printed.
Fixes https://gitlab.com/kicad/code/kicad/issues/7692
2021-02-25 14:23:02 +00:00
Jon Evans
bba7fae104
Coverity fixes
2021-02-24 22:55:11 -05:00
Jeff Young
c077612163
Make sure custom shaped pad primitives get their parents set.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7696
2021-02-24 22:53:58 +00:00
Jeff Young
d384316335
Fix some layout issues in board stackup pane.
...
Also decided the extra paramaters on the right weren't working out
on smaller screens and so moved Board Finish to its own panel.
2021-02-24 21:42:00 +00:00
Jeff Young
fa89263c8f
Push hole-to-hole min processing down a level.
...
Also removes adding the track width to the via gap, which was
never right.
Fixes https://gitlab.com/kicad/code/kicad/issues/7173
2021-02-24 21:42:00 +00:00
Seth Hillbrand
0bab025832
Fixup toolchaining for immediate mode
...
The move tool can stack on others, so when we re-enter the previous tool
this caused another immediate action. We flag re-entry in the tool
stack to check for this and avoid unexpected tool starts
2021-02-24 10:44:54 -08:00
Jon Evans
3d7c202192
Fix pad clearance bounding box and initial display
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7673
2021-02-23 22:15:39 -05:00
Jon Evans
887ad1c30d
CHANGED: Copper layer count is now set on physical stackup page
...
REMOVED: Board layer stackup presets that were not very useful
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6765
2021-02-23 21:31:12 -05:00
Jon Evans
d087ede21d
Don't show ratsnest on layers hidden by contrast mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7667
2021-02-23 20:07:46 -05:00
Jon Evans
aedc65f20f
Fix footprint editor default grid
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7659
2021-02-23 20:07:46 -05:00
Seth Hillbrand
0518d9c546
Add more force-immediate tools
2021-02-23 17:05:03 -08:00
Seth Hillbrand
005622027f
Add component/footprint is always immediate
...
When a user clicks on the "Add Component", "Add Power" or "Add Footprint"
icon, they want to add the item. Requiring an extra click on the screen
before selecting the component/footprint is not needed.
2021-02-23 16:15:31 -08:00
Jeff Young
f30eab422e
Don't allow footprint text item columns to be resized.
...
We auto-size them in the code and doing both produces nothing but a
mess.
Also improves the auto-sizing for the layers drop-down (particularly
needed for the new, somewhat longer, layer names.
Fixes https://gitlab.com/kicad/code/kicad/issues/7671
2021-02-23 17:46:15 +00:00
Jeff Young
b48071015b
Don't reset focus flag yet on non-GTK platforms. It's required.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7671
2021-02-23 17:46:15 +00:00
Seth Hillbrand
154d56b4f4
If items exist on the "Rescue" layer, prompt user
...
Don't allow Rescue items to enter the board design. This prompts the
user to either delete them or move them to the Comments layer.
2021-02-23 09:25:00 -08:00
Jeff Young
7f892669cc
Consistent punctuation.
2021-02-23 12:46:27 +00:00
Jeff Young
b1943bf6b6
Don't shout at the user.
2021-02-23 12:45:37 +00:00
Jeff Young
a3b9e8ddb4
Round 2 of Worksheet -> Drawing Sheet.
2021-02-23 11:57:44 +00:00
Seth Hillbrand
2013a801d1
Fix zone merge undo
...
Also remove an implicit zone merge that was happening when the user
edited the zone parameters. This appears to have been a feature but it
happened without a) telling the user and b) having the option to prevent
it.
Fixes https://gitlab.com/kicad/code/kicad/issues/7661
2021-02-22 15:45:17 -08:00
Seth Hillbrand
b484c0787b
Disable commands in SingleTop
...
We cannot do forward/reverse annotation in Single Top mode because we
depend on shared memory access. This disables the menu options in this
case and replaces the toolbar update pcb icon with the import netlist,
which is more appropriate for single top mode
Fixes https://gitlab.com/kicad/code/kicad/issues/7637
2021-02-22 14:49:13 -08:00
Seth Hillbrand
bac7b3e77a
Protect against dynamic_cast
...
Items might not be FOOTPRINT, in which case the dynamic_cast will return
nullptr. Check for this in the subfunction
2021-02-22 10:12:54 -08:00
Seth Hillbrand
26995b10fb
Fix uninitialized ptr
2021-02-22 10:07:40 -08:00
Jeff Young
cad5198ab7
Worksheet -> (industry standard) Drawing Sheet.
2021-02-22 17:35:46 +00:00
Seth Hillbrand
a6263fc595
Remove superfluous "Rebuild Ratsnest" button
...
This happens when clicking OK already and there is nothing to change
before then.
2021-02-22 09:16:20 -08:00
david-beinder
c1aa50e522
Notify control when removing items without parent
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7441
2021-02-22 14:00:13 +00:00
Roberto Fernandez Bautista
09ebfcd650
CADSTAR Importer: Fix Code Style
...
- Rename member variable names to use the 'm_' prefix
- Rename a few object types that clashed with KiCad object names, such
as BOARD and SCHEMATIC, to avoid the use of '::' to access the KiCad
objects.
- Remove some unused code.
2021-02-22 13:24:00 +00:00
Jon Evans
67f16110af
Fix netlist QA after API changes in 8a12aa4e
2021-02-21 20:30:57 -05:00
Jeff Young
ba2d0cdd62
Nullptr safety.
2021-02-22 01:14:06 +00:00
Jon Evans
68b81c8271
Don't copy footprint text along with the footprint
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7647
2021-02-21 19:59:16 -05:00
Jon Evans
6fa0ac45af
Re-enable custom grid settings for Pcbnew
...
Add a reset button that will only show up if the user
edits the JSON configuration for grids. This is a temporary
measure until we have a real grid editor GUI in V7.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7595
2021-02-21 15:33:13 -05:00
Jeff Young
2d28ed8eda
Move canvas backend selection to Preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7630
2021-02-21 20:12:43 +00:00
Jon Evans
3bc9d7b95e
Rework GAL layer enum to fix visibility import from legacy boards
2021-02-21 13:41:43 -05:00
jean-pierre charras
fbf12cb85c
microwave tools: use ShowQuasiModal instead of ShowModal to display WX_TEXT_ENTRY_DIALOG dlgs
...
In some cases ShowModal does not work fine with our events handlers, at least on Windows.
Fixes #7641
https://gitlab.com/kicad/code/kicad/issues/7641
2021-02-21 16:01:53 +01:00
jean-pierre charras
8beeb368d2
Scripting: Fix missing utf8 to unicode string conversion in swig file
...
So non ASCII7 chars in .py filenames were non working, especially on Windows.
Fixes #5507
https://gitlab.com/kicad/code/kicad/issues/5507
2021-02-21 11:38:10 +01:00
Seth Hillbrand
8a12aa4e3a
Handle unit changes in the netlist
...
Each symbol unit in eeschema has a unique identifier. But we don't have
a unique identifier for the entire symbol. So changing which symbol
instance was unit A (our default base for matching), changed the UUID
that we were using to match the footprints.
This commit adds all UUIDs to the netlist, allowing us to match symbol
to footprint without worrying about which unit is referenced.
This still does not handle changing different units on different sheets.
Fixes https://gitlab.com/kicad/code/kicad/issues/7604
2021-02-20 20:11:49 -08:00
Mikolaj Wielgus
2a9d76f1e3
Pcbnew: Fix snapping segment traces and graphics when initiating move
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4746
2021-02-20 20:29:43 +00:00
Jeff Young
a6c5c40f02
Fix another case of treating a modal return result as a bool.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7629
2021-02-20 18:22:34 +00:00
Jeff Young
9dacd4abb7
Don't allow footprint children in groups outside their footprint.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7625
2021-02-20 18:09:56 +00:00
Marek Roszko
622baa6531
Silence more unused exception var warnings
2021-02-20 12:01:51 -05:00
Marek Roszko
c12666ec43
Fix arg type of NODE::followLine
2021-02-20 11:58:55 -05:00
Marek Roszko
6fce39607e
Fix return type within pointInside2
2021-02-20 11:58:55 -05:00
Marek Roszko
907e282347
Silence some msvc warnings
...
- exception variables that were unused
- RAYSEG2D improperly foward declared with class instead of struct
- unused vars
2021-02-20 11:58:55 -05:00
Jon Evans
ec334f172b
Fix some issues with reloading of action plugins
...
First issue: the C++ action plugins list should be cleared so that any
plugins that fail to reload do not hang around on the toolbar.
This is fixed on the C++ side.
Second issue: inner dependencies of plugins that are modules were not
reloaded before, which broke reloading for many plugin examples out there.
This is fixed on the Python side by keeping track of dependencies and
clearing them out before reloading a module (unfortunately there doesn't
seem to be a way to do this in the standard library)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7245
2021-02-20 11:19:33 -05:00
Jeff Young
91e876ce0d
Make sure the title is updated when file is saved/reverted/etc.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7626
2021-02-20 15:09:47 +00:00
Jeff Young
67c7e7c759
Formatting.
2021-02-20 15:09:47 +00:00
Jeff Young
d4e68a985c
Formatting.
2021-02-20 15:09:47 +00:00
Jeff Young
e89f9db438
Footprint disallow layer checking needs to be based on courtyards.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7620
2021-02-20 14:13:36 +00:00
Jeff Young
0337c42d25
Swap courtyards when flipping footprint.
2021-02-20 14:13:36 +00:00
Jeff Young
ba63ac801a
Don't make assumptions about what layers things are on.
2021-02-20 14:13:36 +00:00
Jeff Young
a1f09befe0
Vias are plated holes too....
2021-02-20 14:13:36 +00:00
jean-pierre charras
be25b7a132
Use ShowQuasiModal to show a few dialogs.
...
This change is mainly due to the fact Modal dialogs do not work when our
current tool is the tool used to create new item (text, zone, graphic).
If when this tool is active, one try to edit the properties of the new item
being created (or being placed) the modal dialog does not capture the event tool
and hangs (cannot be dismissed)
Our quasi modal dialogs have their own event loop and work.
Fixes #7585
https://gitlab.com/kicad/code/kicad/issues/7585
2021-02-20 14:24:57 +01:00
Zoltan Gyarmati
5a0a2a8366
pcbnew: only update cursor instead of activating selection tool when quiting delete tool
...
Fixes: https://gitlab.com/kicad/code/kicad/issues/7531
2021-02-20 06:40:00 +00:00
Jeff Young
881cb3182b
Move writable dir checking lower down.
...
(Well, it was already lower down, this really just removes the higher
up calls that were getting in the way.)
Fixes https://gitlab.com/kicad/code/kicad/issues/5937
2021-02-19 22:24:08 +00:00
Jeff Young
5994ce3711
Be more aggressive about updating title to show dirty status.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7613
2021-02-19 21:58:49 +00:00
Jeff Young
e3560e6414
Add parent property to footprint children.
2021-02-19 21:06:45 +00:00
Jeff Young
c2f68ca4da
Whittle down library tree context menus to be more contextual.
...
(From discussion on Zulip.)
2021-02-19 19:07:45 +00:00
jean-pierre charras
d0b91b1106
Router, place via: fix issue created by 45b2bc: cancelling via must be made
...
only when the select layer is called.
Fixes #7606
https://gitlab.com/kicad/code/kicad/issues/7606
2021-02-19 17:28:20 +01:00
Zoltan Gyarmati
bbe2ee39a0
pcbnew: actually reload DRC parity checkbox value in project mode
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7551
2021-02-19 00:37:29 +00:00
Seth Hillbrand
54282dffe3
Move preview items using FP orientation
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7600
2021-02-18 16:32:40 -08:00
Jeff Young
828cdacc6f
Add some missing tooltips.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7582
2021-02-18 18:33:52 +00:00
PJM
c001c26575
Pcbnew: Drag selections containing only tracks or vias
...
CHANGED: If the user made a selection and then tried dragging it, the
drag would only succeed if the selection contained at least one
footprint. Selections with only tracks and vias would instead make
KiCad drag a new selection box.
This MR allows routing of selections of a single track or via, while moving
selections containing more than one item, whether or not they also contain
a footprint.
Fixes https://gitlab.com/kicad/code/kicad/issues/7539
2021-02-18 17:49:48 +00:00
Jon Evans
b2cd97fd84
Don't rotate/flip footprint texts along with the footprint
2021-02-18 12:39:28 -05:00
Jeff Young
66b33834b5
Always enable save; move dirty bit to asterisk in title bar.
...
Also unifies PCB Editor and Schematic Editor names with other
locations in the GUI (which were still Pcbnew and Eeschema).
Fixes https://gitlab.com/kicad/code/kicad/issues/7587
Fixes https://gitlab.com/kicad/code/kicad/issues/7594
2021-02-18 16:05:42 +00:00
Jeff Young
45b2bce698
Cancel placement of via if user cancels layer selection.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7578
2021-02-18 11:53:36 +00:00
Jeff Young
59b81462ab
Fix button lay out issue on OSX.
2021-02-18 11:53:36 +00:00
Jeff Young
6a5bba2a80
We don't really want users hand-editing library table files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7591
2021-02-18 11:53:36 +00:00
Seth Hillbrand
25e78162c8
Cleanup icons
...
- Adjust group/ungroup
- Use Mirror triangles for rotate
- Smooth goto badge
2021-02-17 17:26:16 -08:00
Jeff Young
b2a4cbedda
Add conditions for rotate/group/lock items in toolbar.
...
Also fixes cut/copy/delete conditions to allow use in immediate mode.
2021-02-18 00:10:41 +00:00
jean-pierre charras
5d2dc0b50e
Fix a few (minor) issues:
...
- Make DIALOG_SHIM::SetPosition working)
- rename PCB_BASE_FRAME::SelectLayer() to PCB_BASE_FRAME::SelectOneLayer()
- PCB_BASE_FRAME::SelectOneLayer(): make dismiss dialog by escape key working.
Fixes #7578
https://gitlab.com/kicad/code/kicad/issues/7578
2021-02-17 20:56:43 +01:00
Jeff Young
34c2028e7b
Assign via net before running DRC checks.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7579
2021-02-17 19:39:56 +00:00
Jeff Young
0c2870c65f
Fix missing check against DELETED_BOARD_ITEM::GetInstance().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7575
2021-02-17 19:39:56 +00:00
Jeff Young
b6a7981e62
Write changes back to grid after using file explorer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7361
2021-02-17 14:08:53 +00:00
Jeff Young
d66de5bb35
Exclude footprints and groups from VIA_PLACER DRC testing.
...
(Their children need to get tested, but not the parent objects
themselves.)
Fixes https://gitlab.com/kicad/code/kicad/issues/7569
2021-02-17 14:08:53 +00:00
Jeff Young
cc11c8d45f
Fix change in preference panel name.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7563
2021-02-17 14:08:53 +00:00
Jeff Young
6f9ebcfdb5
Make sure a pad has a hole before running hole test on it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7567
2021-02-17 14:08:53 +00:00
Marek Roszko
b609c7dcd6
Kick the osx specific path helpers into PATHS
2021-02-16 23:29:26 -05:00
Jon Evans
ba6aa3e034
Pcbnew: allow multiple selection of footprint text
...
With the selection filter and other improvements, we no longer
need to use this workaround to prevent accidental selections.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7527
2021-02-16 22:40:23 -05:00
Jon Evans
34c2bbfe51
Don't rebuild the whole nets grid on show/hide
...
Besides being slow, this causes the scroll position
of the grid to be lost.
2021-02-16 22:31:09 -05:00
Jon Evans
0198d5a3bd
PNS: don't lose track of pad offset when dragging footprints
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7500
2021-02-16 19:47:52 -05:00
Seth Hillbrand
dbbe9cdee4
Hide infobar for save when saving
2021-02-16 15:54:43 -08:00
Jeff Young
2a7e60960a
Use standard mirror icons & terminology.
...
Also use standard group icons.
Also put both (and rotate commands) in toolbar.
Fixes https://gitlab.com/kicad/code/kicad/issues/7504
2021-02-16 21:11:36 +00:00
James Jackson
dd7030a28f
Keepout and graphic selection filters in footprint editor behave as per PCB editor
...
Fixes #7547
Fixes https://gitlab.com/kicad/code/kicad/issues/7545
2021-02-16 20:49:14 +00:00
Seth Hillbrand
fb5cd22cd0
Honor locking in cleanup ops
...
Assume that the user has locked tracks/vias for a reason and would very
much like them to remain in place, regardless of the operation
Fixes https://gitlab.com/kicad/code/kicad/issues/7562
2021-02-16 10:20:45 -08:00
Jeff Young
015c4d5779
Don't force disallow tests to a particular layer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7552
2021-02-16 16:24:37 +00:00
Jon Evans
14cba9723f
Allow selection filtering in global Pcbnew edits also
2021-02-15 22:14:28 -05:00
Seth Hillbrand
9212197c26
Grammar
2021-02-15 15:18:13 -08:00
Jeff Young
199ef61cdc
A footprint isn't "inside" itself.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7549
2021-02-15 22:52:12 +00:00
Seth Hillbrand
de7d9ef874
Fix tabs
2021-02-15 08:09:20 -08:00
Jeff Young
cf42d692bf
Remove some dead code. A little bit of comment cleanup as well.
2021-02-15 14:13:43 +00:00
Jeff Young
b08862e445
Fix group undo/redo bugs.
...
1) Don't remove items from group when the group is being deleted as
well. We need those pointers for undo/redo.
2) Flip the GROUP/UNGROUP undo status when undoing/redoing group and
ungroup actions.
3) Remove PCB_GROUP_T from the rebuild-netlists section. Nothing
about an item's group/ungrouped status changes its netlisting.
4) Add PCB_PAD_T to the rebuild-netlists section. It can probably
only happen in the footprint editor where we don't care about
netlisting, but it's conceptually more correct and who knows what
might change in the future....
Fixes https://gitlab.com/kicad/code/kicad/issues/7540
2021-02-15 14:13:43 +00:00
Jeff Young
6ee5476fba
Remove misleading help text for now.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7536
2021-02-14 23:51:51 +00:00
Jeff Young
b7672d3c92
Respece router Allow DRC Violations in free via placer.
...
Also don't check for collision on non-copper layers, but do check
for hole clearance violations.
Fixes https://gitlab.com/kicad/code/kicad/issues/7532
2021-02-14 22:32:12 +00:00
Jon Evans
1ab17dd2e7
MSVC: don't set python home when running from build dir
...
This allows you to specify your python home via the
environment and get a working python setup when running
in-place.
2021-02-14 09:34:25 -05:00
Jeff Young
60d4d5b846
Scale down netnames on tracks so overbars fit.
...
Also fixes a bug where the overbar ignored the color opacity.
Fixes https://gitlab.com/kicad/code/kicad/issues/7524
2021-02-14 12:15:26 +00:00
Mikolaj Wielgus
379c28340f
Pcbnew: Do not disable grid snap in copy to clipboard operation
...
This simple commit makes the Pcbnew copy to clipboard operation snap the
obtained cursor position to grid before the anchors are calculated. This
is also the way the move operation has been apparently working so far.
To be clear, this will not remove all cases where the copy reference
point is not aligned to the grid (see the linked Gitlab issue for
details about the problem). This will still occur for zone outlines that
are not axis-aligned. But such behavior has been so far also present in
the moving operation, so this may be as designed.
Fixes https://gitlab.com/kicad/code/kicad/issues/7507
2021-02-14 01:44:28 +00:00
Seth Hillbrand
55db1aa5f5
Fix minor Fabmaster issue
2021-02-13 16:32:39 -08:00
Jon Evans
d98daad835
Fix updating of preset MRU when overwriting presets
...
Also fix a few minor things about deleting presets
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7473
2021-02-13 11:33:01 -05:00
Jon Evans
00ab36092c
Fix margin layer being missing from draw order
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7159
2021-02-13 10:40:09 -05:00
Seth Hillbrand
8c2fe42ef0
More Undo/Redo Cleanup.
...
Don't need the reference point or container action type. Clearing this
command signatures to prevent future confusion/use
2021-02-12 11:26:48 -08:00
Seth Hillbrand
d244c09680
Cleanup undo/redo
...
Mirror/Rotate/etc were all just "Change" items in the undo/redo stack.
This removes the old calls
2021-02-12 10:25:14 -08:00
Jon Evans
ab34d94f36
Add a less-intrusive validation system to board setup
...
For some kinds of issues, we want a way to point them out but
we don't need to keep the user from being able to close the
dialog. A separate Validate button lets the user check for
issues if desired, but these issues are not "fatal" and can
be ignored if the user wishes.
2021-02-11 22:19:46 -05:00
Jon Evans
b708fd36ae
Add tooltips to netclass setup panel column headers
...
Change router tooltips to be more straightforward
2021-02-11 20:50:26 -05:00
Seth Hillbrand
10442b98df
Unify thickness
...
The removal of the pcbnew general section was meant for v6 but passed
the deadline. This removes the duplication of thickness. We do not
allow the thickness to be different between nominal and stackup, so
keeping separate text fields is unnecesarily confusing to users
2021-02-11 11:28:00 -08:00
Marek Roszko
20ec1fa354
Clear pythonpath and pythonhome vars on msvc like msys2 does
2021-02-10 23:58:58 -05:00
Marek Roszko
39c8922ff6
Block off setting pythonhome and pythonpath wrongly on MSVC
2021-02-10 23:54:35 -05:00
Marek Roszko
b21da9672f
Adjust py_sethome for the new path
2021-02-10 21:44:33 -05:00
Mikolaj Wielgus
1dc0ef01b3
Fix automatic wire tool in gridless mode
...
The automatic wire tool was not working in the gridless mode because the
grid snapping on/off logic present in `EE_GRID_HELPER`, based on the
value of `m_enableGrid`, was not taking into account that another check,
but for the global KiCad setting, would be performed in the `Align()`
method, which is inherited from `GRID_HELPER`.
I've modified all tests of `m_enableGrid` value to also take the global
setting into account, and moved checks for it to `Align()` method, as
it's more consistent this way.
I've also removed an override of the `Align()` method in the
`PCB_GRID_HELPER` class, as it was made redundant by my changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7402
2021-02-10 22:07:49 +00:00
Jeff Young
05ff0fb658
Add flip board view to footprint editor menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7484
2021-02-10 21:55:14 +00:00
Roberto Fernandez Bautista
19d786852a
CADSTAR PCB Archive Loader: Fix loading of zero sized pads
...
Some CADSTAR designs use zero sized pads because CADSTAR did not allow
arbitrarily assigning pad numbers: they had to be sequential. The
workaround to this was to use zero sized pads. However this causes DRC
errors in KiCad, so we load them just in a mask layer.
2021-02-10 18:49:21 +00:00
Roberto Fernandez Bautista
aabe9c063f
CADSTAR PCB Archive Loader: Some fixes to design rules
...
1. Make sure to convert to KiCad units
2. There are some KiCad rules that have no CADSTAR equivalent.
Make a guess as to what an appropriate rule could be.
2021-02-10 18:49:21 +00:00
Roberto Fernandez Bautista
2d66abdc89
CADSTAR PCB Archive Importer: More improvements to loading of zones
...
Adds a new function Area() to SHAPE_POLY_SET
2021-02-10 18:49:21 +00:00
Roberto Fernandez Bautista
06c420a2a3
CADSTAR PCB Archive Importer: Improve loading of zones
...
Load fill state and guess zone priorities from fill state
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
80d8974f87
CADSTAR Archive Importer: Fix loading of non-cadstar font text sizes
...
Non-cadstar fonts use a width of 0.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
f559e94b00
Non-Kicad Project Importers: Fix the creation of project fp libraries
...
Adds a new function to PLUGIN GetImportedCachedLibraryFootprints() that
loads the library footprints of the board design that was imported
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7449
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
297ff282f1
CADSTAR Importer: Update copyright years and remove white spaces
2021-02-10 18:49:20 +00:00
Jeff Young
20338c92e8
Move Flip board view to a shared tool (for FP Editor).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6687
2021-02-10 17:06:19 +00:00
Jeff Young
4679682fe9
Don't treat success == true as "we got an outline".
...
It just means the outline wasn't malformed. It might still be
empty.
[Edit: my fix collided with JP's, so all this really is now is a
couple of slight performance improvements.]
2021-02-10 12:38:06 +00:00
Jeff Young
05d2053ded
Put MSW bug fix back in.
2021-02-10 12:37:13 +00:00
jean-pierre charras
d738c91dd7
minor fix in DIALOG_SYMBOL_PROPERTIES: make m_cbPreservePads ON the default
...
Keep Through Hole pads on external layers should be ON by default, because
such a pad does not allow soldering/unsoldering, if this option this option is OFF
Also rename dialog_enum_pads.fbp as dialog_enum_pads_base.fbp, as usual
2021-02-10 12:47:11 +01:00
jean-pierre charras
5079881f3f
BuildFootprintPolygonOutlines(): fix incorrect outlines when no pad in the footprint.
...
It is used in 3D viewer to build a "board" polygonal outlines.
The polygon was empty when no pad and no item on ede cuts found (i.e. logos)
Fixes #7448
https://gitlab.com/kicad/code/kicad/issues/7448
2021-02-10 08:45:17 +01:00
Marek Roszko
872184fe8b
Revert "Bump minimum required CMake version to 3.10"
...
This reverts commit a475f45753
.
2021-02-09 18:46:13 -05:00
Seth Hillbrand
09be44a352
Use Jeff's method+font for monospace
2021-02-09 12:14:17 -08:00
Seth Hillbrand
505844f68c
Generalize the Ctrl-Q to all frames
...
Rather than adding our handler to each frame separately, we initialize
the Ctrl-Q quit action at the base frame to be consistent
2021-02-09 11:43:42 -08:00
Jeff Young
65c41cff42
Another way to set fixed-width font (that works on OSX).
2021-02-09 18:46:04 +00:00
Wayne Stambaugh
5ecef204cd
Coding policy fixes.
...
Using "this->" violates coding policy section 2.7.
2021-02-09 11:35:43 -05:00
Jeff Young
a49a6c2f52
Refresh zone layers when copper layers change opacity.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7468
2021-02-09 12:26:46 +00:00
Jeff Young
618e824b0f
Cleanup includes and formatting.
2021-02-09 12:26:46 +00:00
Seth Hillbrand
6f0424d742
Use monospace font for textboxes
...
Matches the spacing of our stroke font so the tabs are correctly
displayed in WYSIWYG
Fixes https://gitlab.com/kicad/code/kicad/issues/1807
2021-02-08 15:59:58 -08:00
Jeff Young
e2f8b1a4b1
Interpreting wxDialog::ShowModal()'s retval as bool is never what you want.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7454
2021-02-08 17:40:57 +00:00
Mikolaj Wielgus
5aaedd86ed
Add "Limit graphic lines to 45 deg" to line drawing tool context menu
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7181
2021-02-08 16:20:38 +00:00
Jeff Young
6272b48481
Make sure layer gets passed in to rules evaluation.
2021-02-08 14:53:49 +00:00
Jeff Young
7aa7e3fd43
Push undo/redo blocking down a level in LengthTuner tool.
...
This way it's active only while tuning a single line, rather than
while the tool is selected.
Fixes https://gitlab.com/kicad/code/kicad/issues/7462
2021-02-08 14:15:46 +00:00
Simon Richter
a475f45753
Bump minimum required CMake version to 3.10
...
This allows us to remove even more workarounds
2021-02-08 12:23:08 +00:00
jean-pierre charras
34d7c3e31f
fp shape, ARC: fix incorrect arc end position after flipping/mirroring.
...
Add also comments in FP_SHAPE::SetAngle() to avoid a similar issue.
2021-02-08 10:11:04 +01:00
Seth Hillbrand
81b83a8f5b
Remove unused line width parameter
2021-02-07 17:11:05 -08:00
Seth Hillbrand
792904557e
Remember Parent data when routing
...
Keeps parent information such as UUID and pad removal options for
elements that are just updated in routing rather than created fresh or
fully destroyed.
Fixes https://gitlab.com/kicad/code/kicad/issues/7460
2021-02-07 17:08:43 -08:00
Jeff Young
0ca76571ce
Add footprint zones to paste routine.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7442
2021-02-07 11:50:59 +00:00
Thomas Pointhuber
088ff5b2bb
altiium: set fill version, which allows us to do a copper pour without a line
2021-02-06 23:58:30 +01:00
Michael Kavanagh
7cc28a5a02
Shrink appearance manager bitmap buttons to 16x16
...
Finish off 38cc2f106b
2021-02-06 22:51:56 +00:00
Thomas Pointhuber
8ee6694c57
altium: Set smaller zone MinThickness by default to better account for missing design rules
2021-02-06 23:45:28 +01:00
Thomas Pointhuber
d444ed80a5
altium: parse Regions6 to fill zone on import
2021-02-06 23:06:59 +01:00
Seth Hillbrand
624a231cc0
Remove unused line width option
...
You had to set the line width in the SVG export dialog in order to
change the displayed line width in the 3d viewer. The line width did
not affect the SVG export. Removing in favor of the Board design
settings for line widths
2021-02-06 06:44:53 -08:00
Jeff Young
c2dbd28101
Simplify and harmonize symbol editor and footprint editor menus.
...
Some differences are due to difference between libraries being files
in symbol editor and directories in footprint editor, but this unifies
most of the rest.
It also dispenses with the save-to-library vs save-to-document distinction
in the GUI because it makes for too much variability in the GUI, was
implemented differently between the two editors, and isn't needed as much
anymore now that we have the highly visible infobar.
There was also an issue that the save-to-board icon occupies the same
location and has the same size/shape/colours as the Board Setup icon in
PCBNew.
Fixes https://gitlab.com/kicad/code/kicad/issues/7215
2021-02-06 14:33:16 +00:00
Jeff Young
49a09f4c1c
Pad selectability fix.
...
Physical layer test needs to be board-visible-layers, not pad-layers.
Also cleans up the tests so that LOD factors in. (When things
disappear due to zoom level they should not be selectable.)
Fixes https://gitlab.com/kicad/code/kicad/issues/7238
2021-02-06 13:57:40 +00:00
jean-pierre charras
d2213708eb
FOOTPRINT_WIZARD_FRAME: minor fixes.
...
Fixes #7435
https://gitlab.com/kicad/code/kicad/issues/7435
2021-02-06 08:10:13 +01:00
Seth Hillbrand
016bffc899
Remove some more unneeded atof() calls
2021-02-05 10:18:34 -08:00
qu1ck
5c3ee0443c
Make footprint properties accessible from python
...
Now that footprint properties inherit custom fields from schematic
they are very useful.
Setting custom properties from python will also be handy in plugins
that need to somehow mark their own objects.
2021-02-05 02:31:48 +00:00
Seth Hillbrand
2e67cd2db8
Fix locale issue in Fabmaster import
2021-02-04 16:32:02 -08:00
Seth Hillbrand
55a6013a32
Remove errant printf
2021-02-04 15:58:59 -08:00
Seth Hillbrand
aa0db969ca
Caching ConvexHull routine
...
Stores a cache of the convex hull similar to the bounding box. Modifies
the hull based on actions to allow complex footprint graphics without delay
Fixes https://gitlab.com/kicad/code/kicad/issues/7341
2021-02-04 15:56:52 -08:00
Jeff Young
78ba87be8f
More explicit error message for unconnected items.
2021-02-04 22:47:37 +00:00
Jeff Young
7b9700d871
Convert insideArea test for zones to be "any copper inside".
...
The test used to be "entire zone inside", but that didn't work when
we use it to implement "copper pour" keepout areas.
Fixes https://gitlab.com/kicad/code/kicad/issues/7420
2021-02-04 13:43:50 +00:00
jean-pierre charras
0de3d48db5
typo
2021-02-04 09:00:35 +01:00
Jon Evans
721bf82603
Handle malformed lines in dragCornerInternal
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7398
2021-02-03 20:55:22 -05:00
Jon Evans
f7e21682ec
Update model in APPEARANCE_CONTROLS::SetObjectVisible
...
Don't make the caller remember to do so
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7411
2021-02-03 20:18:13 -05:00
Jeff Young
da8d0472f5
Layer must be between 0 and PCB_LAYER_ID_COUNT.
2021-02-04 01:00:20 +00:00
Jon Evans
3ac5fd6342
Get rid of wx popups when opening a read-only project
2021-02-03 19:17:32 -05:00
Jon Evans
b314e0828c
Don't create project files unconditionally when importing boards
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7368
2021-02-03 19:17:32 -05:00
Jeff Young
065a16b48c
Careful that we don't move the wrong end of the arc.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7409
2021-02-03 23:53:11 +00:00
Jeff Young
90b3d0c96d
Implement TransformShapeWithClearanceToPolygon for DIMENSIONs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6890
2021-02-03 23:34:17 +00:00
Jeff Young
e26c912b86
Don't apply electrical clearance to non-copper zones.
...
Also removes a very old (and somewhat confusing) comment.
Fixes https://gitlab.com/kicad/code/kicad/issues/7404
2021-02-03 11:56:43 +00:00
Jeff Young
6dee7f30fa
Whack-a-mole on another case of "module".
2021-02-03 10:53:24 +00:00
Seth Hillbrand
22d78a5827
FABMASTER: Handle flipped custom pads and rounded rects
...
Adds error messages for more cases and fallback for custom pads to
prevent invalid pad generation
2021-02-02 19:33:18 -08:00
Roberto Fernandez Bautista
c25cab0cf8
Fix typo
2021-02-03 01:55:05 +00:00
Roberto Fernandez Bautista
9aedeae5c3
Don't log error messages when using the clipboard
...
wxClipboard::GetData()and wxClipboard::SetData() both log a "wxLogSysError" error-level message (see for example: https://github.com/wxWidgets/wxWidgets/blob/v3.1.4/src/msw/clipbrd.cpp#L703 ). This logged message gets displayed as a messagebox to the user.
The logging can be disabled temporarily by creating a wxLogNull object. See https://docs.wxwidgets.org/3.0/classwx_log_null.html
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6956
2021-02-03 01:55:05 +00:00
Jeff Young
46658076bd
Minor cleanup.
2021-02-02 22:55:18 +00:00
Jeff Young
d7ddc62d7e
Fix mouse warping and dialog placement for layer switcher.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2607
2021-02-02 17:20:01 +00:00
Jeff Young
b8e97bb6b6
Only apply B&W printer fixes when printing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7388
2021-02-02 15:37:30 +00:00
Jeff Young
90519c8324
Allow pads with holes to be selected when hole is visible.
2021-02-02 14:23:29 +00:00
Jeff Young
d261fa3792
Make sure items are removed from groups when deleted.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7387
2021-02-02 14:23:29 +00:00
jean-pierre charras
c98c7cf200
Fix minor wxWidgets alerts
2021-02-02 10:01:19 +01:00
jean-pierre charras
e3e03e09d0
detect_file_type(): update detection to handle last change in .kicad_mod files
...
These files can start now by "(module" or "(footprint".
2021-02-02 09:53:30 +01:00
Marek Roszko
9695717a46
Fix assert in SwapItemData
2021-02-01 19:29:58 -05:00
Marek Roszko
ee2c5bb489
Remove memory leak when importing settings for a board
2021-02-01 19:23:23 -05:00
Jeff Young
8f4d2cf33b
Fix typo in footprint flip code.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7224
2021-02-02 00:07:29 +00:00
Jeff Young
8571687f51
Upgrade place via tool to new DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7358
2021-02-01 23:00:13 +00:00
Seth Hillbrand
29632e8b6f
Include footprint center as snap point
...
Only when footprint center isn't approximate the footprint origin as
well. This can help when moving/aligning THT footprints
Fixes https://gitlab.com/kicad/code/kicad/issues/7385
2021-02-01 12:03:26 -08:00
Seth Hillbrand
54f5a47208
Remove confusing GetFirstPad() call
...
This no longer returns the first pad, just the first by pad sort order
in output. The call is not used correctly in pcbnew, so removing to
prevent future misuse
2021-02-01 12:03:26 -08:00
Seth Hillbrand
23c6dbff38
Need to check track/track clearance
...
The misplaced else prevented non-track/track intersection clearances
from being reported
Fixes https://gitlab.com/kicad/code/kicad/issues/7376
2021-02-01 10:08:27 -08:00
Jeff Young
1f27b7e7df
Don't render hole walls when no physical layers are visible.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7369
2021-02-01 17:14:30 +00:00
Marek Roszko
dc4b73fcef
Correct m_board check location in PNS_KICAD_IFACE_BASE::SyncWorld
2021-02-01 11:58:22 -05:00
Marek Roszko
9d0b16e814
bool/int type safety
2021-01-31 19:54:32 -05:00
Jeff Young
89d3b0b670
Remove breakage of corner pinning in point editor.
...
For some reason the post-pinned local variable references were replaced
with calls to the points themselves (which are the pre-pinned values).
Fixes https://gitlab.com/kicad/code/kicad/issues/7291
2021-02-01 00:35:45 +00:00
Seth Hillbrand
8778599c0d
Apply same nettie hack to zone filler
...
The nettie hack is used in DRC but we also need to use it in zone filler
to allow zones to be used with netties. We limit this to the
appropriate nets in the nettie
Fixes https://gitlab.com/kicad/code/kicad/issues/7351
2021-01-31 16:16:48 -08:00
Marek Roszko
991c8fbf8f
Use the new nudge path for the footprint lib table, save global and project mru differently
2021-01-31 19:01:33 -05:00
Seth Hillbrand
1a3ab551cf
Cleanup
...
FindLineSegmentIntersection() was refactored in 2012 but there are a few
uses that didn't get updated. This finalizes the cleanup
Fixes https://gitlab.com/kicad/code/kicad/issues/7365
2021-01-31 15:55:52 -08:00
Seth Hillbrand
8567739a7a
Remove conditions from common immediate-mode keys
...
The conditions prevent use in immediate mode for common actions. While
this makes enable/disable easier in menu items, this fix is a patch
until we refactor the action framework to distinguish between immediate
mode hotkeys that should start without selections and menu items that
need a selection before running.
Fixes https://gitlab.com/kicad/code/kicad/issues/5333
2021-01-31 14:45:24 -08:00
Seth Hillbrand
b54e951ed8
Fix a couple of checks in Fabmaster
2021-01-31 14:12:40 -08:00
Marek Roszko
8f21034254
Fix invalid windows macro
...
Missing one underscore at the end
2021-01-31 16:15:50 -05:00
Marek Roszko
051621a2ca
Use M_SQRT1_2 in place of the number
2021-01-31 15:47:23 -05:00
Marek Roszko
3d45668354
Fix typo in TRACK::GetEndY
2021-01-31 15:43:12 -05:00
Marek Roszko
21fe8542df
Remove shadowing of identical base m_parser member
2021-01-31 12:56:27 -05:00
Jon Evans
abf0a46dce
Refactor PICKER_TOOL and push up snapping disable functionality
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7348
2021-01-31 09:50:41 -05:00
Jon Evans
a45b86d2ba
Fix Coverity warning
2021-01-31 09:50:41 -05:00
Jeff Young
a868fb97b6
Preserve Uuids when editing board footprints.
...
One way to do this would have been to keep the Uuids in the editor
copy. However, this opens us up to errors if we forget a Save As or
export path and end up writing the Uuids out somewhere else.
In the end, it felt safer to store a map of the original Uuids and
restore them if we happen to save the editor footprint back to the
board.
Fixes https://gitlab.com/kicad/code/kicad/issues/7312
2021-01-31 14:09:59 +00:00
Thomas Pointhuber
70e6d0e79f
altium: use those new fancy user definable layers and import the name from Altium
2021-01-31 11:15:08 +01:00
Jeff Young
56ea55ae9c
Make sure that NPTH pads still get handled in copper clearance checker.
...
... because that's where we do hole-to-copper clearance testing.
Also augments the Clearance Resolution reporter to report on said
hole clearances.
And changes the interpretation of HOLE_CLEARANCE_CONSTRAINT to include
local pad clearance overrides.
Fixes https://gitlab.com/kicad/code/kicad/issues/7325
2021-01-31 00:33:35 +00:00
Thomas Pointhuber
6a9e1ecf9e
altium: Center board after import
2021-01-30 17:43:02 +01:00
Jeff Young
41234a8373
Implement more precise annotation-required messages.
...
Also moves the message to an infobar so it's more noticeable.
Fixes https://gitlab.com/kicad/code/kicad/issues/7332
2021-01-30 16:31:27 +00:00
Jeff Young
a235103e48
Redo pad & via painting (again).
...
New strategy isolates all draw/don't draw decisions to the ViewGetLOD
routines, and all dimmed/not dimmed to PCB_RENDER_SETTINGS::GetColor.
The actual drawing in PCB_PAINTER is more-or-less conditon free.
Also adds new layers for pad and via hole walls so that they can be
controlled for high-contrast mode.
Also changes the drawing paradigm so that the pads are drawn even when
not on the high contrast layer, just in low contrast. The hole wall
is drawn in high contrast. This actually makes things clearer to the
user (although to be honest was done to keep from having to re-render
pads when the high contrast layer changes since we have two separate
layers now that we can adjut colours on).
Fixes https://gitlab.com/kicad/code/kicad/issues/7328
2021-01-30 16:31:27 +00:00
Jeff Young
488a5b7567
Draw via holes in high contrast when they cross a high contrast layer.
2021-01-30 16:31:27 +00:00
Seth Hillbrand
6b685dfb3f
Fix the knockout conditions
...
We need to knock out thermal clearance for same net pads but this
doesn't need to be placed in the regular clearance area (probably).
Fixes https://gitlab.com/kicad/code/kicad/issues/7321
Fixes https://gitlab.com/kicad/code/kicad/issues/7340
2021-01-30 08:15:00 -08:00
Seth Hillbrand
73886aecb1
Ensure partially triangulated polys are not valid
...
Moves rule area triangulation outside of layer iterator and keeps the
triangulation_valid flag false until the triangulation has been
completed.
Fixes https://gitlab.com/kicad/code/kicad/issues/7032
2021-01-29 16:33:57 -08:00
Seth Hillbrand
386ead30c5
All circle and arc tools to select all at first
...
Non-layer elements can be logical centers for the circle and arc tools.
We allow the non-layer to snap for the center points and revert to only
on-layer elements after
Fixes https://gitlab.com/kicad/code/kicad/issues/7327
2021-01-29 10:14:44 -08:00
Seth Hillbrand
553166f932
Handle ARC bbox in tracks
...
Need to handle arcs separately to ensure we get the full bounding box
Fixes https://gitlab.com/kicad/code/kicad/issues/7318
2021-01-29 09:07:23 -08:00
Marek Roszko
30ba3aa240
Get python loading the new "user scripting" paths
2021-01-28 23:45:53 -05:00
Marek Roszko
43fd416d13
Flip the footprint new library flow to prompt global or project first
2021-01-28 20:15:44 -05:00
Jon Evans
b5e9a949bc
Selection: skip sloppiness pruning if invalid
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7320
2021-01-28 19:51:29 -05:00
Jeff Young
74a5db64c2
Update pad netnames (and numbers) to the new visibility architecture.
2021-01-28 23:31:38 +00:00
Jeff Young
21bec6c016
Comment.
2021-01-28 23:31:38 +00:00
Jeff Young
6983bcd55b
Push addition of shape width down into computeArcBBox.
...
Also improves performance by calling GetBoundingBox only once (this
is not always an inexpensive routine for some items, such as
polygons).
2021-01-28 22:29:28 +00:00
Seth Hillbrand
1733a23ac7
Take width into viewBBox account
...
Don't let objects disappear until their full extend has been removed
from view.
Fixes https://gitlab.com/kicad/code/kicad/issues/7318
2021-01-28 14:20:13 -08:00
Seth Hillbrand
714430fefa
Flash pads when connected by zone
...
Zone connections (even half-connections) should trigger the connected
logic in flashPads. This removes the double-standard for painting pads
and imposes thermal standoff based on the net connection to the pad if
it shares a net, not just if connected
2021-01-28 13:21:22 -08:00
Jeff Young
1a7b7e84c6
Use consistent terminology for component placement files.
...
CHANGED footprint positions files -> component placement files.
Not all footprints get placed, so component is a more neutral word.
Use of "placement" instead of "positions" removes the double-plural
that makes footprint positions files such a mouth-full.
Fixes https://gitlab.com/kicad/code/kicad/issues/7097
2021-01-28 19:24:55 +00:00
Jeff Young
636ae012ed
Overhaul the pad drawing special cases yet again.
...
New strategy is to draw the hole wall cylinder if the pad (or via)
isn't flashed on a particular layer. This is (1) more correct,
(2) keeps pads which aren't flashed on any layer from disappearing,
and (3) allows us to remove a bunch of the other special cases.
Or at least I think it does. The proof will be in the (lack of)
follow-on bug reports....
Also fixes a bug where via annular rings weren't highlighted in
high contrast mode.
Fixes https://gitlab.com/kicad/code/kicad/issues/7279
2021-01-28 17:02:42 +00:00
Seth Hillbrand
2ef00e9de4
Rebuild ratsnest when importing netlist
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7287
2021-01-27 17:57:00 -08:00
Seth Hillbrand
89a72df0b1
Fix a few FABMASTER issues
...
- Custom pads now properly supported with offset/rotation
- Fix missing pads from alternate layers
Fixes https://gitlab.com/kicad/code/kicad/issues/7299
2021-01-27 17:50:14 -08:00
Ian McInerney
beb50c529e
Reorganize the CMake folder to separate build and configure steps
...
The BuildSteps folder now contains the CMake scripts that are
called during the build process as individual stages, while
the root CMakeModules directory contains the CMake files used
during the configuration phase.
2021-01-28 00:24:22 +00:00
Marek Roszko
2807a37fc0
Create a stock scripting path helper
2021-01-27 19:12:18 -05:00
Marek Roszko
e6dd95e83a
Create a default user projects folder
2021-01-27 19:12:18 -05:00
Marek Roszko
28c6967dbc
Start trying to shuffle around path management
2021-01-27 19:12:18 -05:00
Wayne Stambaugh
6a39b81647
Fix the last of broken Doxygen comment specifiers.
2021-01-27 17:39:44 -05:00
Mikołaj Wielgus
3e42ba18a9
Show dragging tools in context selection menu for components
...
Show the dragging tools in the context selection menu when a single
component is selected. Prevent the dragging tools from appearing when
more than one object is selected, as they will not activate anyway.
Fixes https://gitlab.com/kicad/code/kicad/issues/7258
2021-01-27 19:55:42 +00:00
Jeff Young
06a0094597
Minor improvements to layer highlighting.
2021-01-27 14:52:22 +00:00
Jon Evans
bb79eb0e45
Fix typo causing no netnames in SPECCTRA export
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7298
2021-01-26 22:04:45 -05:00
Jon Evans
1e030655cd
Always create project when doing a Save As on a board with a project
2021-01-26 21:58:17 -05:00
Jon Evans
bea310569b
Fix parsing of track/via user sizes from legacy boards
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6134
2021-01-26 21:51:36 -05:00
Jon Evans
30f3a7d124
Rework high contrast for pads/vias slightly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6923
2021-01-26 21:02:11 -05:00
Jon Evans
79f94c096e
Rename legacy selection filter action to avoid confusion
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7290
2021-01-26 18:15:36 -05:00
Seth Hillbrand
aefc107d86
Fix button sizing
2021-01-26 13:42:02 -08:00
Seth Hillbrand
9a51a75403
Confirm when cancelling a changed custom rule
2021-01-26 08:18:38 -08:00
Jeff Young
1e9639e89c
Save pintype alongside pinfunction (in pads).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7283
2021-01-26 15:28:48 +00:00
Jeff Young
0e7c18119e
Make sure pads are unlocked when editing footprint from board.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7274
2021-01-26 15:28:48 +00:00
jean-pierre charras
2e58826338
Minor fix: remove an unwanted font setting from panel_setup_constraints_base.fbp
...
that cannot be removed using wxFormBuilder due to a bug in wxFormBuilder.
2021-01-26 14:03:12 +01:00
Jeff Young
5a5f96bd9f
More consistent naming.
2021-01-26 11:41:47 +00:00
Jeff Young
b165ae6519
Fix note formatting issues.
...
Also removes the "tip" icon which doesn't work on OSX and isn't as
important as the graphics which actually convey information. Replaced
with the more generic "Note: " string.
Fixes https://gitlab.com/kicad/code/kicad/issues/7281
2021-01-26 11:29:30 +00:00
Jeff Young
7d6c1c5ee6
Improve comments.
2021-01-26 10:56:19 +00:00
Jeff Young
dca7e44455
Fix a missed Module -> Footprint.
2021-01-26 10:56:19 +00:00
Jon Evans
b96bcc86b1
Don't restrict start item to same layer if snapping is enabled
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7276
2021-01-25 21:19:26 -05:00
jean-pierre charras
96af236493
Code cleanup: remove include wx.h from pcb_plot_params.h.
...
including wx.h is useless for this file, and include wx.h in a lot of other files.
Include wx.h must be made only when needed in a given file, because on Windows
it include some headers that frequently create collision with kicad declarations
2021-01-25 16:18:46 +01:00
Michael Kavanagh
d933a0a863
Use the pencil for Properties in Pcbnew
2021-01-25 14:21:23 +00:00
Michael Kavanagh
eba09a59e9
Remove inappropriate icon
2021-01-25 14:21:22 +00:00
Jeff Young
09eb4b35c6
Make sure footprint edges get checked.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7267
2021-01-25 13:20:16 +00:00
Jeff Young
d40fe127aa
Update pad locked status when adding footprints from schematic.
...
Also fixes some latent bugs with not updating the local ratsnest
visibility in other places, and the netcode in update PCB from schematic.
Fixes https://gitlab.com/kicad/code/kicad/issues/7202
2021-01-25 01:20:36 +00:00
Seth Hillbrand
5a9c0a9b5a
Quiet a few coverity warnings
2021-01-24 14:53:18 -08:00
Seth Hillbrand
47d5900600
Fix build warnings
2021-01-24 11:37:48 -08:00
Mikolaj Wielgus
04cc64c008
Restore the old reference after rotation or flip instead of clearing
...
After a rotation or flip the reference point has to be restored to the
previous value to prevent the dragged item from warping to the cursor.
Before this change, the reference point was only cleared, causing odd
behavior when a rotation or flip was performed.
Fixes https://gitlab.com/kicad/code/kicad/issues/7112
2021-01-24 18:56:46 +00:00
Roberto Fernandez Bautista
f353fc448b
Fix edge cases in EDIT_TOOL::DragArcTrack
2021-01-24 16:41:11 +00:00
Roberto Fernandez Bautista
99d203feae
Clarify CIRCLE::ConstructFromTanTanPt
...
Remove unused bool aAlternateSolution and add doxygen comments
2021-01-24 16:41:11 +00:00
Roberto Fernandez Bautista
48823c0723
Formatting fixes and fix qa_kimath following rebase
2021-01-24 16:41:10 +00:00
Roberto Fernandez Bautista
6e7ae93cc8
EDIT_TOOL::DragArcTrack Fix incorrect undo history when items are deleted
...
Need to make sure we only apply one COMMIT operation per object before calling COMMIT::Push() or COMMIT::Revert()
2021-01-24 16:41:10 +00:00
Roberto Fernandez Bautista
2b5c1bae97
CHANGED: Dragging a curved track starts an interactive resizing of it, keeping start an end points tangent
2021-01-24 16:41:10 +00:00
Jeff Young
25956152c6
Scan actual nets; not assumed nets.
...
Specctra exporter should not assume that PCB nets are numbered
sequentially without any holes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7249
2021-01-23 22:55:03 +00:00
Jeff Young
d5d9372839
Don't cancel dialog when esc-ing out of autocomplete.
2021-01-23 22:55:03 +00:00
jean-pierre charras
15cc368918
Gerber plotter: prepare optimization of aperture macros type free polygons.
...
They are used for chamfered round rect pads, and can be used for custom shaped pads.
No actual change currently, but the shape rotation of custom pads and chamfered rr pads
can be now used in gerber plots.
2021-01-23 21:15:27 +01:00
Jeff Young
d8c7c8f700
Evaluate rules when fetching zone edge clearance.
2021-01-23 17:04:44 +00:00
Jeff Young
2d8cac658e
Allow negative clearances to signal supression of DRC test.
2021-01-23 00:10:01 +00:00
Jeff Young
0ba0160da9
Add a PT_NIC pin electrical type and a netlist token for SCH_NO_CONNECT.
...
ADDED a new pin electrical type "free" for internally unconnected pins.
CHANGED the "unconnected" pin electrical type is now represented by
"no_connect" in files and netlists. (The legacy syntax is also accepted
in files.)
2021-01-23 00:10:01 +00:00
Jeff Young
f5e35af1a5
Transmit pin electrical types through to pads.
2021-01-23 00:10:01 +00:00
Jeff Young
9ac807bdd2
Freeze implicit footprint file version at last before explicit.
...
We have been writing footprint versions for a while now, but we were
still interpreting the lack of a version as "current". This changes
lack of a version to mean "last format before we started writing out
versions".
Fixes https://gitlab.com/kicad/code/kicad/issues/7143
2021-01-23 00:10:01 +00:00
jean-pierre charras
cbff706916
Update the .fpb file to be able to open it with wxFormBuilder 3.9, used by Kicad
2021-01-21 20:28:05 +01:00
Jeff Young
3fcd0860c1
Make 'E' go straight to Custom Track Width dialog.
...
Also fixes some mouse capture issues.
Fixes https://gitlab.com/kicad/code/kicad/issues/7198
2021-01-20 18:19:55 +00:00
qu1ck
07d4a28024
Improvements to pcbnew action plugins settings panel
...
1. Add open plugins directory button (same as in tools menu)
2. Add show plugin errors button to help debug issues
2021-01-20 09:09:53 +00:00
Roberto Fernandez Bautista
74aa081b8a
Don't add board-only footprints to the netlist (fixes back-annotation issue)
2021-01-20 00:37:38 +00:00
Jeff Young
360953ba98
"comp" -> "symbol".
2021-01-19 23:50:40 +00:00
Jeff Young
0ded846130
Go back to previous arc midpoint editing routine.
...
It avoids erratic behaviour near the chord or end-points.
Fixes https://gitlab.com/kicad/code/kicad/issues/7135
2021-01-19 23:50:40 +00:00
Michael Kavanagh
80dbc24326
Icons: remove superfluous icon
...
Remove icons where menu text gives context
2021-01-19 22:57:25 +00:00
Michael Kavanagh
ef2aa8a730
FP Editor: remember to update appearance manager
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6926
2021-01-19 20:24:16 +00:00
Seth Hillbrand
060635b14c
fabmaster: Fix graphic handling in geometry section
2021-01-19 12:16:40 -08:00
Jeff Young
35978adef9
Don't run dimension updates while parsing files.
...
They mess up the geometry when only partial values are provided.
Fixes https://gitlab.com/kicad/code/kicad/issues/7177
2021-01-19 16:09:44 +00:00
Jeff Young
25ff0fa662
Fix typo in unit label assignment and some minor layout improvements.
2021-01-19 16:09:44 +00:00
Jeff Young
e9dc1824d6
Minor improvements to layout.
2021-01-19 16:09:44 +00:00
Jeff Young
06dec36625
Improve layout and terminology in PCBNew/FPEditor edit settings.
2021-01-19 13:16:26 +00:00
Jeff Young
1ac47c2ac6
Fix misleading tooltip.
2021-01-19 11:05:25 +00:00
Jeff Young
0a2a3c9903
Fix Coverity-discovered typo.
2021-01-19 10:57:07 +00:00
Jon Evans
330d717c69
Fix typo
2021-01-18 21:50:26 -05:00
Michael Kavanagh
7461b96dea
Hide the selection tool submenu in the FP Editor
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7164
2021-01-19 00:30:44 +00:00
Jeff Young
12fe44d4b3
Snap arc center *by* the grid, not *to* the grid.
...
Also fixes a bug with editing an arc endpoint because the cursor pos
was being forced before the arc constraints stuff had been run (in
updateItem()).
2021-01-19 00:26:31 +00:00
Seth Hillbrand
b8dfcb34c4
Revert "Use less-sophisticated arc editing math."
...
This reverts commit 3b424d3868
. And fixes
issue with rouding causing arc errors
2021-01-18 12:44:27 -08:00
Ian McInerney
44655b98de
Initialize variables properly
2021-01-18 18:35:10 +00:00
Ian McInerney
d030d1667b
Fix improper string creation in fabmaster importer
2021-01-18 18:35:10 +00:00
Jon Evans
1e33928b96
Fix issues with zone filling connectivity locking
...
Two issues found with the locking system used to prevent access to
stale connectivity data during the zone fill process:
1) a std::mutex has undefined behavior if you try to use it to guard
against access from the same thread. Because of the use of wx event
loops (and coroutines) it is entirely possible, and in some situations
inevitable, that the same thread will try to redraw the ratsnest in the
middle of zone refilling.
2) The mutex was only guarding the ZONE_FILLER::Fill method, but the callers
of that method also do connectivity updates as part of the COMMIT::Push.
Redrawing the ratsnest after the Fill but before the Push will result in
stale connectivity pointers to zone filled areas.
Fixed (1) by switching to a trivial spinlock implementation. Spinlocks would
generally not be desirable if the contention for the connectivity data crossed
thread boundaries, but at the moment I believe it's guaranteed that the reads
and writes to connectivity that are guarded by this lock happen from the main
UI thread. The writes are also quite rare compared to reads, and reads are
generally fast, so I'm not really worried about the UI thread spinning for any
real amount of time.
Fixed (2) by moving the locking location up to the call sites of
ZONE_FILLER::Fill.
This issue was quite difficult to reproduce, but I found a fairly reliable way:
It only happens (for me) on Windows, MSYS2 build, with wxWidgets 3.0
It also only happens if I restrict PcbNew to use 2 CPU cores.
With those conditions, I can reproduce the issue described in #6471 by
repeatedly editing a zone properties and changing its net. The crash is
especially easy to trigger if you press some keys (such as 'e' for edit)
while the progress dialog is displayed. It's easiest to do this in a debug
build as the slower KiCad is running, the bigger the window is to trigger this
bug.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6471
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7048
2021-01-18 13:22:12 -05:00
Jeff Young
26bc29808a
Clean up Text Properties dialog.
...
It's no longer used for dimensions so doesn't need the line thickness
controls.
The spacing was a bit wonky.
Changed to disabling rather than hiding visibility checkbox. The less
the GUI moves around the better.
2021-01-18 15:20:15 +00:00
Jeff Young
4f399d4304
One more attempt to fix flipping geometry.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4480
2021-01-18 15:20:15 +00:00
Michael Kavanagh
479487ceb1
Tidy up context menus a bit
...
Try and put the common actions in the same places
2021-01-17 22:42:03 +00:00
Jon Evans
6bb9aeab4b
Position relative: store discarded pad for use as the selection anchor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6996
2021-01-17 14:25:52 -05:00
Jeff Young
f1221a9ca3
Resolve text variables in title blocks for outputing to netlist.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7153
2021-01-17 16:24:22 +00:00
Jon Evans
1754504234
Fabmaster: fix MSVC build
...
std::map is not move-constructable on MSVC because
it is not declared noexcept (and is not required to be
by the standard)
This means that a struct containing graphic_element
cannot be inserted into a vector with move semantics without
compile errors. However, wrapping it in a unique_ptr
works.
2021-01-17 10:23:31 -05:00
Jeff Young
68efdb2fff
Push shared parts of GRID_HELPERs into common.
2021-01-16 23:18:10 +00:00
Seth Hillbrand
950db6ff9c
pcbnew: Add Fabmaster import
...
Allows importing ASCII design output from OrCAD designs
2021-01-16 14:28:33 -08:00
Jeff Young
3b424d3868
Use less-sophisticated arc editing math.
...
While it doesn't do the tangent retention that the old version did,
this one I can at least make work.
Fixes https://gitlab.com/kicad/code/kicad/issues/7135
2021-01-16 20:46:14 +00:00
Roberto Fernandez Bautista
00918c68f5
Don't do clever snapping logic when drawing a circle
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7131
2021-01-16 08:39:20 +00:00
Jon Evans
38455c25ef
Bring back consideration of world scale to PcbNew snapping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7125
2021-01-15 12:29:47 -05:00
Jeff Young
08d595c9bf
Move title block fields to global availability in PCBNew.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7118
2021-01-15 15:41:18 +00:00
Jeff Young
7dc2ca93cd
Make sure we mark board-only-footprint nets as current.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6871
2021-01-15 12:46:48 +00:00
Jon Evans
6cc39d8011
Don't allow moving locked pads with Position Relative dialog
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6996
2021-01-14 22:14:00 -05:00
Jon Evans
0b7fc0e2d9
Update local ratsnest state when toggling appearance control
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7035
2021-01-14 22:03:23 -05:00
Jeff Young
36508807e7
Give the pad placement tool a context menu.
...
ADDED: allow pad properties to be edited while placing pads.
Fixes https://gitlab.com/kicad/code/kicad/issues/6953
2021-01-15 00:52:03 +00:00
Jeff Young
965482bd7f
Improve some tooltips.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7116
2021-01-14 22:35:32 +00:00
Thomas Pointhuber
9f24ea0bb7
altium: fix non-copper pads. Roundrect pads were not filled and SetLocalCoord() does not transform polygons into the local coordinates, which is unexpected.
2021-01-14 22:21:05 +01:00
jean-pierre charras
54cf67dad2
Pcbnew, drill map: fix incorrect position of texts for small boards.
...
Fixes #7111
https://gitlab.com/kicad/code/kicad/issues/7111
2021-01-14 18:52:04 +01:00
Mikolaj Wielgus
0129c7ae52
Notify appearance panel when net is (un)hidden by board inspection tool
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7039
2021-01-14 17:22:41 +00:00
Jeff Young
02ccd5fbdb
Make sure properties commands don't go to other tools during routing.
...
Brings up the track widths (or diff pairs) context menu instead,
which seems to be the closest parallel.
Fixes https://gitlab.com/kicad/code/kicad/issues/7099
2021-01-14 15:19:09 +00:00
Jeff Young
3e920c665f
Special case via area generation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7105
2021-01-14 12:48:44 +00:00
Mikolaj Wielgus
f0b11896da
Clip the first segment in leaders
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6548
2021-01-14 00:10:41 +00:00
Seth Hillbrand
13a4717aed
Add center handles to rectangle edits
...
Allows changing a single dimension at a time. Matching the polygon edit
tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/7085
2021-01-13 14:04:21 -08:00
Jeff Young
ffdff21f45
Use a sloppier hittest for the collector as well as the actual hittest.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7079
2021-01-13 21:22:24 +00:00
Seth Hillbrand
e3e9bfc1b8
Fix compile error
2021-01-13 13:21:27 -08:00
Seth Hillbrand
605dcfbedf
Fix Windows script location
...
Windows has arbitrary installation locations, so reference relative to
the executable
2021-01-13 13:11:26 -08:00
Seth Hillbrand
b57ad4b2f9
Correct SWIG path
...
Don't offset from executable, this is an absolute path
Fixes https://gitlab.com/kicad/code/kicad/issues/7089
2021-01-13 12:34:04 -08:00
Jeff Young
da4b269783
Make sure pad local clearances get in to m_worstClearance.
2021-01-13 12:37:20 +00:00
Jeff Young
0bce280424
Make sure design rules get recompiled after netclass changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7082
2021-01-13 12:37:20 +00:00
Jon Evans
d2d4ffe6d0
Dismiss infobar if it's dismissable on board save
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7071
2021-01-12 23:24:13 -05:00
Barabas Raffai
5931a39c0f
Fix layer preset overwriting ratsnest settings
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6975
2021-01-13 01:22:30 +00:00
Seth Hillbrand
6ed2a831d8
Don't override the router tool with drag actions
...
Before processing the select tool actions, we check if the router is
currently active and if it is, pass the event for processing in other
tools
Fixes https://gitlab.com/kicad/code/kicad/issues/7021
2021-01-12 15:44:20 -08:00
Dominik Wernberger
ad97fabfd3
Add missing const to Matches
2021-01-12 20:51:32 +00:00
Dominik Wernberger
dc02ec9758
Remove a few const_cast
2021-01-12 20:51:31 +00:00
Dominik Wernberger
07635d2fc7
Minor adjustments
2021-01-12 20:51:31 +00:00
Dominik Wernberger
ac94d72d2d
Add more const specifiers
2021-01-12 20:51:31 +00:00
Dominik Wernberger
ec0af24f13
Make wxFindReplaceData argument const
2021-01-12 20:51:31 +00:00
jean-pierre charras
76cc7b98a7
Fp editor, DIALOG_PAD_PROPERTIES: do not disable posX and posY settings.
...
When a pad is locked, posX and posY settings in DIALOG_PAD_PROPERTIES must
be locked only for the board editor, not in the fp editor.
2021-01-12 20:33:52 +01:00
Seth Hillbrand
2cb8dff650
Use KICAD_DATA for data path lookup in scripting
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7036
2021-01-12 08:22:17 -08:00
Konstantin Baranovskiy
cd2c46e5c9
Make "... file is read only." warnings translatable.
2021-01-12 14:33:35 +00:00
Jeff Young
beab68db13
Fix bone-headed error in rules optimization.
2021-01-12 12:46:51 +00:00
jean-pierre charras
d4c36230d2
Pcbnew, Graphic items: show the locked status in msg panel and dialog properties.
2021-01-12 10:00:21 +01:00
Jon Evans
01181ccb2f
Make sure project is unlinked before deleting it
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7038
2021-01-11 22:17:13 -05:00
Michael Kavanagh
a00b9cc821
Icons: general tweaks and pixel alignment
...
+ minor rename
+ fix missing bitmap in DRC panel
2021-01-11 23:31:25 +00:00
Michael Kavanagh
dc83cb7a41
Icons: general tweaks and pixel alignment
...
+ remove some unused icons
2021-01-11 23:31:25 +00:00
Michael Kavanagh
32f7f30958
Icons: remove where they don't make sense
...
Also avoid icon reuse
2021-01-11 23:31:25 +00:00
Michael Kavanagh
8fba0c257b
Icons: remove more inconsistencies around Select
...
Missed from 5d9b2d3fea
2021-01-11 23:31:24 +00:00
Seth Hillbrand
740df93808
Don't dereference board groups in fp editor
...
The Footprint editor group resolution should stop at the footprint level
to avoid breaking into groups that cannot be accessed.
Fixes https://gitlab.com/kicad/code/kicad/issues/7049
2021-01-11 14:58:33 -08:00
Jeff Young
63e2046eb0
Performance improvements for DRC rules.
2021-01-11 22:09:36 +00:00
Jeff Young
50889a9ed6
Promote mouse drag settings to full enums.
2021-01-11 22:09:36 +00:00
Seth Hillbrand
c09dc5abdd
Prevent locking items in footprint editor
...
Adding footprints to the board now has a preference for whether we want
pads locked or unlocked by default
2021-01-11 11:23:26 -08:00
jean-pierre charras
1b755bbc37
Fix issues in ConvertOutlineToPolygon() related to S_POLYGON PCV_SHAPE
...
Fixes #7046
https://gitlab.com/kicad/code/kicad/issues/7046
2021-01-11 17:05:44 +01:00
Jeff Young
a4d417f5c0
Get rid of "drill" terminology when talking about finish hole size.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7044
2021-01-11 13:49:43 +00:00
RigoLigoRLC
493a784b62
Fix Pcbnew search "not found" prompt not displayed
...
Before this, "Searching..." prompt will not go away if nothing was found
in a search session. A bug I noticed while working on !611 . After this
fix, "foo not found" will be displayed when Pcbnew cannot find the
given text.
2021-01-11 13:48:20 +00:00
RigoLigoRLC
dd328d230b
Make Pcbnew search about zone names, fixes #6951
...
I put zones in "other text items" category of searching as I thought it
would be the appropriate one.
Fixes https://gitlab.com/kicad/code/kicad/issues/6951
2021-01-11 13:48:20 +00:00
Wayne Stambaugh
1eee72ec65
Fix library tree behavior when duplicate project table entry is disabled.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5438
2021-01-11 07:46:07 -05:00
Jeff Young
6c648df4c6
Support 3 drag vs. select options, and unifiy with other drag prefs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5493
2021-01-11 11:50:14 +00:00
Jeff Young
7134ff2da6
Try a different arrangement of Board Setup pages.
2021-01-11 11:50:14 +00:00
Jeff Young
9ce6c2be80
Group global editors under tools menu.
...
Also improves some terminology in Remove Unused Pads.
2021-01-11 11:50:14 +00:00
Seth Hillbrand
8ee324b1a9
Add bezier output to VRML
2021-01-10 11:28:15 -08:00
jean-pierre charras
067b94c410
DRC: Fix a incorrect message and marker position when testing dangling vias.
...
Commit 6ffb721
detects vias connected on only one layer.
But the DRC diag (marker position and error message) were not correctly initialized
for this new test.
2021-01-10 10:21:24 +01:00
Marek Roszko
828ecb76aa
Remove polyline 3d check added by previous fixes
...
Fix #7030
2021-01-09 18:56:35 -05:00
Seth Hillbrand
4f6134b60d
Check for CCW polys
...
Use rectangles for 4-sided polygons that are rectangular regardless if
they are CW or CCW oriented
2021-01-09 13:05:58 -08:00
Seth Hillbrand
8036303f8f
Add margin to both sides to avoid drawing 0-poly
...
We cannot draw degenerate polygons, so we need to test for 0-size shapes
especially after scaling the mask. The mask adjustment is from both
sides however, so it needs to be doubled.
Fixes https://gitlab.com/kicad/code/kicad/issues/7020
2021-01-09 13:05:58 -08:00
Jeff Young
ed7b3373d1
Disentangle copper- and board-edge-clearances in Clearance Resolution...
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6983
2021-01-09 16:44:03 +00:00
jean-pierre charras
08b93bd5ba
FOOTPRINT::GetBoundingHull(): avoid returning a empty hull SHAPE_POLY_SET,
...
when a footprint contains only texts.
empty SHAPE_POLY_SET creates most of time issues (crashes for instance) when
containing no data.
Ensure the returned SHAPE_POLY_SET contains a minimal hull (a 0.04 mm square)
Fixes #7026
https://gitlab.com/kicad/code/kicad/issues/7026
2021-01-09 16:53:32 +01:00
jean-pierre charras
daae68a6b8
French translation update.
...
Fix also a typo in 2 I18n strings.
2021-01-09 14:54:43 +01:00
Jeff Young
5ae6f93af8
A groups children may also have children.
...
For instance, it could be a nested group or a footprint.
Fixes https://gitlab.com/kicad/code/kicad/issues/7025
2021-01-09 13:47:24 +00:00
Jeff Young
78dcfb2392
Honour locks inside groups.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6841
2021-01-09 13:47:24 +00:00
Jeff Young
7716f20a5b
Disentagle board edges from graphics in global delete.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7024
2021-01-09 13:47:24 +00:00
Jeff Young
e4f29d358c
Formatting.
2021-01-09 13:47:24 +00:00
Seth Hillbrand
cf2dd0bd38
Fix edit_tool pad handling
...
Check for footprint editor
Promote pad edits to footprint edits iff
- Pad is locked
- Footprint is not
Otherwise, handle the pad normally and prompt for locked items if found
2021-01-08 19:46:14 -08:00
Seth Hillbrand
1c9d8a9f4c
Don't warn on locked conversion
2021-01-08 16:49:47 -08:00
Seth Hillbrand
51f02ecc51
Fix alignment tool with locked footprints
2021-01-08 13:58:26 -08:00
Seth Hillbrand
721155165d
Don't move locked footprint if pads are locked
2021-01-08 13:58:26 -08:00
Jon Evans
d6448ce6b4
Expose settings manager to python
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6989
2021-01-08 16:47:20 -05:00
Jeff Young
d0af4e9f9d
Save a cancel value when asked if it's not being used to cancel.
...
Many, many KIDIALOGs use OK/Cancel and then rename both buttons to
confirm or deny some action. In those cases we *do* want to store
the deny actions if they check "Do Not Show Again".
Fixes https://gitlab.com/kicad/code/kicad/issues/6979
2021-01-08 21:32:19 +00:00
Jeff Young
8fffb75347
Allow custom pads with 0-sized anchor pads.
...
(Surprisingly we used to in 5.1, so this is a regression.)
Also had to go back to the nag dialog as on a small screen the infobar
comes up behind the dialog. A lot of the errors have also been turned
into warnings, so the overall effect should still be to reduce nagging.
Fixes https://gitlab.com/kicad/code/kicad/issues/6992
2021-01-08 20:43:02 +00:00
Jeff Young
3467e643e5
Move pad locking from footprint to pads.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6997
2021-01-08 20:43:02 +00:00
Seth Hillbrand
6ffb72159a
Remove vias if they only connect to single layer
...
A via takes up zone space on additional layers, so if we are not
connecting to those layers, then we should remove it.
Fixes https://gitlab.com/kicad/code/kicad/issues/7004
2021-01-08 09:39:43 -08:00
Seth Hillbrand
1e96374715
Consider tracks and vias together
...
Dangling tracks and vias affect each other and need to be considered at
the same time in order to fully remove the dangling segments
2021-01-08 09:35:58 -08:00
jean-pierre charras
93d203aef7
Fix a I18n issue: a string flagged as translatable cannot be empty.
2021-01-08 18:16:00 +01:00
Seth Hillbrand
9424d66d22
Move footprint when selecting locked pad
...
Prompting to unlock is obtrusive and blocks the common action of
dragging from a pad to align footprints. The less common action of
editing pads in layout can be accomplished after unlocking the pads
Fixes https://gitlab.com/kicad/code/kicad/issues/6997
2021-01-07 19:46:06 -08:00
Jon Evans
24435df6b0
Don't update 3D view on cursor movement
...
Our rendering pipeline is not set up for this kind of speed,
and this is a blocking operation at the moment.
Note that we will get an update at the end of the move
because OnModify does it.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6819
2021-01-07 20:43:14 -05:00
Jon Evans
61bddd0928
LAYER_PADS_TH is not a dependent layer
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6999
2021-01-07 20:12:31 -05:00
Jon Evans
111fa99f9f
PNS: Use last-segment posture optimization always
...
Also when auto-posture is enabled, don't flutter
until area threshold has been met.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6935
2021-01-07 20:12:31 -05:00
Jeff Young
3fd128a75b
Performance enhancements.
2021-01-08 00:46:55 +00:00
Jon Evans
5c22ffe422
Don't try to load a nonexistent layer setting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6998
2021-01-07 19:09:54 -05:00
jean-pierre charras
bf332b3189
Fix minor compil warnings
2021-01-07 20:55:24 +01:00
Jeff Young
01fe3b91e9
Implement locking for graphic shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6972
2021-01-07 17:39:18 +00:00
hoijui
6ca9a42251
Removes 3 other instances of a potential encoding problem
...
Signed-off-by: hoijui <hoijui.quaero@gmail.com>
2021-01-07 17:36:49 +00:00
Jeff Young
8c8516b7b1
Remove formbuild URL from hypertext links.
...
Also adds a tooltip.
Fixes https://gitlab.com/kicad/code/kicad/issues/6982
2021-01-07 15:12:19 +00:00
Jeff Young
e41c06304b
Don't show a leading ratline to a NPTH.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6960
2021-01-07 12:25:04 +00:00
Jeff Young
f702b64b8d
Minor improvements to formatting & SNR.
2021-01-07 12:25:04 +00:00
Marek Roszko
84dd78e01d
Fix the install location for vcpkg built python modules
2021-01-07 00:08:11 -05:00
Seth Hillbrand
52f822dedb
Remember autotrack width setting
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6971
2021-01-06 20:11:32 -08:00
Jon Evans
0234b7278a
PNS: Make DIRECTION_45 North be up everywhere
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6935
2021-01-06 21:47:06 -05:00
Jeff Young
ad8136541b
Improve layout and terminology of Remove Unused Pads.
...
Also removes the limitation of removing outside layers for pads.
It's already supported in Pad Properties so it's odd to not support
it here.
2021-01-07 01:27:12 +00:00
Jeff Young
f372c8025b
Better sizing for some conditional dialogs.
...
These dialogs don't have growable features but do have conditional
features, so the size is better adjusted automatically by the code
then by the user.
2021-01-07 01:27:12 +00:00
Seth Hillbrand
43e7b1ab6e
Set icons for front/back assembly layers
2021-01-06 13:49:00 -08:00
Seth Hillbrand
c0f940438a
Clarify Flip action
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6954
2021-01-06 13:02:44 -08:00
Jeff Young
2a088e5c7b
Add conversion of circles to zones and enable in footprint editor.
...
Also rule areas, of course.
Fixes https://gitlab.com/kicad/code/kicad/issues/6966
2021-01-06 17:21:49 +00:00
Jeff Young
70967bfebd
Hierarchical menu parents don't get ...'s.
...
Also moves the Convert menu up a level. Nested hierarchical menus
should be avoided whenever possible.
2021-01-06 17:21:49 +00:00
Jeff Young
8aeaaf99ef
Disable net selector for non-free vias.
...
Also moves the checkbox up so this relationship is clearer.
Fixes https://gitlab.com/kicad/code/kicad/issues/6967
2021-01-06 15:49:12 +00:00
Jeff Young
366c7096b3
More double- and triple-pointer erradication.
2021-01-06 14:37:38 +00:00
Jeff Young
426536c381
Don't show empty-net synthetic net in Net Inspector.
...
Also fixes an assert when deleting a net inspector row with no
parent row.
Fixes https://gitlab.com/kicad/code/kicad/issues/6962
2021-01-06 14:27:02 +00:00
Jon Evans
46c4727783
Make MSVC happy again
2021-01-05 20:56:37 -05:00
Michael Kavanagh
2a24886d47
Icons: remove more duplicates
2021-01-06 00:35:20 +00:00
Michael Kavanagh
6fd718fbd8
Icons: replace old with new
2021-01-06 00:35:20 +00:00
Michael Kavanagh
5d9b2d3fea
Icons: new filter icon
...
+ remove icons where they don't make sense.
2021-01-06 00:35:20 +00:00
Michael Kavanagh
54724096ea
Icons: consistency between Eeschema and Pcbnew
2021-01-06 00:35:20 +00:00
Seth Hillbrand
fd04a176a4
Remove full path from drill report
...
Leaves just file name in place. Full paths are considered a security
risk for some
Fixes https://gitlab.com/kicad/code/kicad/issues/6949
2021-01-05 16:22:08 -08:00
Seth Hillbrand
71a93c71f7
Prevent footprint editor snapping to footprint
...
Inside the footprint editor, we only want snap points from the base
elements
Fixes https://gitlab.com/kicad/code/kicad/issues/6948
2021-01-05 16:08:30 -08:00
Jon Evans
e7b047660c
PNS: Correctly assemble lines with reversed arcs
2021-01-05 17:57:21 -05:00
Jon Evans
feda03f69b
PNS: Fix arc orientation when assembling lines with backwards arcs
2021-01-05 17:57:21 -05:00
Jon Evans
7431d5c985
PNS: First pass at updating meander placers for arcs
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6464
2021-01-05 17:57:21 -05:00
Jon Evans
8619086cf2
PNS: re-enable optimization of colinear segs in lines with arcs
2021-01-05 17:57:21 -05:00
Jon Evans
8901e71fc8
PNS: Fix loop removal, make walkaround less broken for arcs
2021-01-05 17:57:21 -05:00
Zoltan Gyarmati
5676117d0b
Make small drill marks size configurable via advanced config for both printing and plotting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1972
2021-01-05 22:37:34 +00:00
Jeff Young
81aa91ce2a
Run insideCouryard on all matching footprints, not just the first.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6945
2021-01-05 22:22:25 +00:00
Seth Hillbrand
4710b709d9
Only darken, don't hide vias unless requested
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6912
2021-01-05 14:00:15 -08:00
Jeff Young
a9d4d9d7f0
Modify insideArea() to return true for zones only when fully inside.
...
Intersections is enough for other objects.
This is also a bit of a DRC performance improvement.
Fixes https://gitlab.com/kicad/code/kicad/issues/6934
2021-01-05 21:43:04 +00:00
Jeff Young
02cd8c99cd
Better error messages when routing can't be started.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6541
2021-01-05 18:47:58 +00:00
Seth Hillbrand
b19ccd819e
Quiet compile warning
2021-01-05 09:16:38 -08:00
Jeff Young
88d42724e6
Remove diff-pair-gap handling from single-line-router.
...
We can't really support it until we do min/max/opt shoving and
dragging.
Fixes https://gitlab.com/kicad/code/kicad/issues/6932
2021-01-05 16:54:52 +00:00
Jeff Young
d975f2f6aa
Commenting and naming for clarity.
2021-01-05 16:54:52 +00:00
Jeff Young
a48f0d21f7
More consistency in clearance resolution messages.
2021-01-05 16:54:52 +00:00
Jeff Young
f7b20611c1
Enforce hole-to-hole min when placing diffpair vias.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6931
2021-01-05 00:26:49 +00:00
Jeff Young
93bd2171ab
Formatting.
2021-01-05 00:26:49 +00:00
Michael Kavanagh
b40e3a39f5
Minor cleanup.
2021-01-04 23:59:36 +00:00
Jeff Young
d24b034cbc
Cleanup (and a minor performance improvement).
2021-01-04 22:32:29 +00:00
Jeff Glass
597a74af9a
Corrects text of orthogonal dimensions
...
The 'outisde' position is now 'outside' in all orientations
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5821
2021-01-04 19:53:39 +00:00
Jeff Young
2ea6bc5529
Formatting.
2021-01-04 19:19:55 +00:00
Jeff Young
648c42f643
Show collisions preventing routing from starting.
...
Also introduces a callback to the infobar so that the view can be
cleaned up when the timer expires.
Fixes https://gitlab.com/kicad/code/kicad/issues/6930
2021-01-04 19:19:55 +00:00
Jeff Young
354d9b4e63
Simplify layer pair indicator icon.
...
It now just has top layer / bottom layer from the router's layer
pair. The current layer is visible in the drop-down just to the
left, and the via stuff was confusing anyway.
2021-01-04 19:19:55 +00:00
Jon Evans
5c8927678a
Don't link a project to a board more than once
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6929
2021-01-04 13:23:19 -05:00
Michael Kavanagh
76cfd19621
Icons: fix incorrect icon in footprint browser
2021-01-04 01:44:02 +00:00
Jeff Young
c09d3b765a
Slight improvement to error text for when drill is same size as pad.
2021-01-04 00:03:21 +00:00
Jeff Young
33aa6edb01
Don't run clearance tests on unflashed NPTH pad layers.
2021-01-04 00:03:21 +00:00
Jeff Young
d0b82ea26e
Show better descriptions of through-hole pads.
2021-01-04 00:03:21 +00:00
Jeff Young
7378c2c3b3
Implement max hole size DRC checks.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6893
2021-01-04 00:03:21 +00:00
Jeff Young
71215bcab3
Make sure TH pads get collision layer highlighted.
...
Also cleans it up to centralise all the decision-making.
Fixes https://gitlab.com/kicad/code/kicad/issues/6925
2021-01-03 21:16:09 +00:00
Jeff Young
491fc2c8f2
Save DXF plot params to file and remove some dead code.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6720
2021-01-03 14:22:25 +00:00
jean-pierre charras
a1d7a959f7
more fixes and enhancements in DIALOG_EXPORT_STEP.
2021-01-03 11:38:09 +01:00
jean-pierre charras
5db75805bd
Step exporter: better values for min distance between 2 points to merge them.
...
- The default value is 0.01 mm (according to comments and similar to the 3D viewer
settings that uses 0.02 mm)
- The export dialog has now 3 values 1 micron, 0.01mm (default) and 0.1 mm
The 0.1 micron option is removed: it makes no sense for a mechanical tolerance.
2021-01-03 11:01:03 +01:00
Jon Evans
f01297fedd
Convert an annoying message box to an infobar
2021-01-02 22:14:10 -05:00
Michael Kavanagh
154e19b6e7
Icons: use common prefix for small 16x16
2021-01-02 23:16:33 +00:00
Michael Kavanagh
5a3f4f52df
Icons: add new icon for Pcbnew 'Special Tools...'
2021-01-02 23:16:33 +00:00
Michael Kavanagh
6d3c1c7716
Icons: remove unused sources/duplicates + rename
2021-01-02 23:16:33 +00:00
Carlo Bramini
a06387fafd
Fix warning at compile time
2021-01-02 22:42:16 +00:00
Jeff Young
f691828c8f
Nullptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6862
2021-01-02 22:26:12 +00:00
Jon Evans
7e58f1aa9f
Fix display of pads in high contrast mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6912
2021-01-02 14:16:17 -05:00
Jeff Young
8b849b1c49
Fix several bugs in hull push-back with vias.
...
1) take hole plating thickness into account
2) build hulls specifically for via so pushing back to the hull doesn't
have to try and figure out how much extra to push back for the via
and/or hole
3) clear MK_HOLE flags when colliding with the pad itself so that we
don't get stuck in HOLE mode
4) move flag setting/clearing to updateNearest() so that it will keep
track of the state of the nearest collision
Fixes https://gitlab.com/kicad/code/kicad/issues/6913
2021-01-02 19:14:44 +00:00
Jeff Young
13094fdc28
Formatting.
2021-01-02 18:38:17 +00:00
Jeff Young
85e42890c4
Distinction between via and via hole probably not useful.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6913
2021-01-02 16:41:09 +00:00
Jeff Young
068af7d328
When routing don't give NPTH holes a copper clearance.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6903
2021-01-02 16:33:51 +00:00