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
Jeff Young
b5e7611696
Don't cross-pollute CONSTRAINTs.
...
If you want the HOLE_CLEARANCE, then ask for it.
2021-01-02 16:33:51 +00:00
Jon Evans
eba7cb222c
PNS: Fix initial posture guess for pads
2021-01-02 10:32:15 -05:00
Jeff Young
6b6694f55f
Fix typo.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6913
2021-01-02 15:04:30 +00:00
Jeff Young
42c114f6ed
Record status of via dragging in Walkaround mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3967
2021-01-02 00:31:02 +00:00
Jeff Young
419d8dcd6f
Minor cleanup.
2021-01-01 23:42:44 +00:00
Jeff Young
8a049cf290
Make sure bounding boxes get cached on rule areas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6898
2021-01-01 23:17:49 +00:00
Jeff Young
018c17399d
SNR.
2021-01-01 23:17:49 +00:00
Jeff Young
8ee72853fb
Be more targetted on when we load DRC Rules for better performance.
2021-01-01 23:17:49 +00:00
Seth Hillbrand
a69a4be853
Fix build error with icon names
2021-01-01 13:13:33 -08:00
Seth Hillbrand
72c27b2e33
Make expand selection stop at vias
...
During the first expansion, we are supposed to stop at vias and branches
(where three track ends connect). This needs to account for the number
of vias and tracks not just tracks
2021-01-01 09:31:44 -08:00
Jeff Young
fc1b0ec11f
Improve feedback when routing in highlight collisions mode.
...
In particular, when Allow DRC violations is NOT turned on and we
bump in to an obstacle.
2021-01-01 17:25:37 +00:00
Seth Hillbrand
8de9cff4e0
Change environmental variables to human-readable
...
Versions specific variables that may point to objects that change
through versions, allowing multiple KiCad versions to operate correctly
(even on MSW) on the same machine.
2021-01-01 16:20:35 +00:00
jean-pierre charras
6a81113c2d
Better comments in files related to my previous commit.
2021-01-01 17:09:32 +01:00
jean-pierre charras
93e186f53e
SelectFootprintFromLibTree(): fix a issue similar to commit 27d47743
.
...
Force immediate deletion of the APP_PROGRESS_DIALOG (do not use Destroy() )
because on Windows, APP_PROGRESS_DIALOG has some side effects on the event loop
manager. A side effect is the call of ShowModal() or ShowQuasiModal of a dialog
following the use of a APP_PROGRESS_DIALOG (if not deleted) has a broken behavior
(incorrect modal/quasi modal behavior).
2021-01-01 15:59:15 +01:00
Seth Hillbrand
f8f34982c0
Escape PCB text
...
Also keep a fail-safe for unescaping strings that are not previously
escaped
Fixes https://gitlab.com/kicad/code/kicad/issues/6901
2020-12-31 17:17:27 -08:00
Jeff Young
3ba17e0a16
Formatting.
2021-01-01 01:02:06 +00:00
Jeff Young
ecc0e861d3
Implement hole clearance and hole-to-hole clearance in router.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6882
2021-01-01 00:31:36 +00:00
Jeff Young
5d8e6020d1
Improve clarity.
2021-01-01 00:31:36 +00:00
Jeff Young
0e3c9de684
Formatting.
2021-01-01 00:31:36 +00:00
Jeff Young
e060ee2a53
Factor in all clearance types when asking for worst clearance.
2021-01-01 00:31:36 +00:00
Jeff Young
1b93663627
Formatting.
2021-01-01 00:31:36 +00:00
Jon Evans
9a0f685a75
PNS: Consider arcs when searching for lines between joints
2020-12-31 13:05:43 -05:00
Jon Evans
73248ab219
PNS: correct initial segment direction for posture solver
2020-12-31 13:05:43 -05:00
jean-pierre charras
381aabdd2a
PCB_TARGET: add missing GetMsgPanelInfo() virtual function.
2020-12-31 15:46:58 +01:00
jean-pierre charras
a6a2dae480
Footprint editor: ensure the pad editor is closed before load a new footprint.
...
When editing a new footprint from the board editor, if the Footprint editor has the pad editor
open, there is a risk of crash when replacing the footprint in edit.
Fixes #6892
https://gitlab.com/kicad/code/kicad/issues/6892
2020-12-31 10:53:14 +01:00
Seth Hillbrand
82e728dbf6
Remove drawing of annular rings in high contrast
...
High contrast should not show the annular rings from other layers. Once
the ring is removed, we hide the annular when not focused on a flashed
layer
Fixes https://gitlab.com/kicad/code/kicad/issues/6896
2020-12-30 17:38:30 -08:00
Jon Evans
60fd7fdbb2
Fix comment
2020-12-30 18:52:56 -05:00
Jon Evans
510db66f0e
PNS: Fix rollback for arc traces
...
PNS: Update posture solver after rollback
2020-12-30 18:23:24 -05:00
Jon Evans
6105ac50da
ADDED: Default hotkey of CTRL+/ for switch corner rounding
2020-12-30 18:23:24 -05:00