Commit Graph

13935 Commits

Author SHA1 Message Date
Jeff Young 12ee8b5d7c Improve DRC cross-probing a bit. 2022-09-15 00:45:29 +01:00
lulu731 0180bcf90a ADDED: Implement Drag and Drop
dropping files to Kicad manager :
  *.kicad_pro, *.pro -> open project;
  gerber and job files -> open in Gerbview editor;
  Eagle and Cadstar files -> open project.
dropping file to schematic editor -> append schematic;
dropping library file to Symbol editor -> add library;
dropping board file to PCB editor -> append board;
dropping library or footprint file to Footprint editor -> add library or import footprint;
dropping ZIP file or gerber files to Gerbview editor -> open files;
dropping sheet file to Drawing Sheet editor -> open sheet.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/11638
2022-09-14 22:28:09 +00:00
Seth Hillbrand 78acb4f07f Fix unintentional typo 2022-09-14 15:14:35 -07:00
Seth Hillbrand 26a1114e3c Avoid Yields when the results are ready
We always need to check for calculation results before yielding the
system otherwise we will delay outcomes

Fixes https://gitlab.com/kicad/code/kicad/issues/12228
2022-09-14 13:30:04 -07:00
dsa-t bd8b737c44 GAL: Do better job at reserving vertices. 2022-09-14 16:07:47 +00:00
jean-pierre charras 397a93029e Fix some outdated things (mainly about fix_swig_imports.py, useless with swig version 4)
Fixes #12414
https://gitlab.com/kicad/code/kicad/issues/12414
2022-09-14 13:36:43 +02:00
Jeff Young 2d3b8d6393 Fix logic around Select All inside an entered group.
Fixes https://gitlab.com/kicad/code/kicad/issues/12411
2022-09-14 12:24:51 +01:00
Jeff Young 281b9d405a ADDED ability to specify where pad number (& net name) go on custom shaped pads.
Fixes https://gitlab.com/kicad/code/kicad/issues/6627
2022-09-14 11:37:20 +01:00
Jeff Young ecd99633d8 Allow AppendBoard even in project mode. 2022-09-14 11:37:20 +01:00
Jeff Young f91487aa36 Don't overwrite titleblock and pageinfo when appending board.
Fixes https://gitlab.com/kicad/code/kicad/issues/11650
2022-09-14 11:37:20 +01:00
Mark Roszko f304e2d4f6 ADDED: Search/inspect pane 2022-09-14 02:59:57 +00:00
Mike Williams 1a023f5dd0 PCB Editor: (Auto)Route Selected (From Other End)
3x Selection-Based Routing Tools. Takes a selection of routable objects
and routes them one at a time individually, with an attempted finish, or
from the other end, depending on the action given.
2022-09-13 15:06:36 +00:00
Mike Williams dc20e24c4a Route Other End: Perform Steps in one Undo Commit 2022-09-13 15:06:36 +00:00
Mike Williams 82f8cd72a3 PNS Router IFACE: Add board commit mode control 2022-09-13 15:06:36 +00:00
Jeff Young 0a5ca5b485 Display crosshairs in picker tools.
Fixes https://gitlab.com/kicad/code/kicad/issues/10183
2022-09-13 01:40:43 +01:00
Jeff Young 8ae0ddf09d Move import graphics dialog to UNIT_BINDER.
Also fixes a bug where the position gets scaled (because we're
applying it to the imported values, which are automatically scaled).

Fixes https://gitlab.com/kicad/code/kicad/issues/10483
2022-09-13 00:59:56 +01:00
Jeff Young c2643f53cf Tighter control over lambda capture. 2022-09-12 20:51:15 +01:00
Jeff Young eaccd40c75 Allow vias to connect <no net> tracks even when DRC checking is on.
Fixes https://gitlab.com/kicad/code/kicad/issues/12403
2022-09-12 20:38:21 +01:00
Wayne Stambaugh 4f3db82c68 Add debugging support for KiCad2Step command line generation. 2022-09-12 14:30:07 -04:00
Mike Williams 37d2addf0e Icons: add swap 2022-09-12 11:11:49 -04:00
Mike Williams f70e1d0f22 SCH/PCB: Set Swap hotkey to 'S'
* Move Add Sheet to Shift+S in Schematic Editor
* Move Set Grid Origin to Shift+S in PCB Editor
2022-09-12 11:11:49 -04:00
Mike Williams de6e368ac6 PCB: Swap Tool 2022-09-12 09:39:43 -04:00
jean-pierre charras d1af8e7a4b Fix broken bool PCB_SHAPE::IsType() 2022-09-12 12:38:45 +02:00
Jeff Young 57f9d6cb3d ADDED text variables for pad NET_NAME, NET_CLASS and PIN_NAME.
Fixes https://gitlab.com/kicad/code/kicad/issues/6405
2022-09-12 00:55:57 +01:00
Jeff Young 95874aeeb4 Allow multi-layer plotting from python.
Fixes https://gitlab.com/kicad/code/kicad/issues/12314
2022-09-11 23:37:13 +01:00
Jeff Young 0df1786456 Improve adherecne to ignored tests. 2022-09-11 19:48:08 +01:00
Jeff Young c16a640477 Improve marker counting and reporting. 2022-09-11 19:48:08 +01:00
Alex cc4e34ef49 Don't sync the world twice in inline router tools.
Activate() already clears and syncs the world via PNS::TOOL_BASE::Reset,
so there's no need to sync in InlineDrag and InlineBreakTrack.
2022-09-10 20:49:30 +00:00
Jeff Young 5d468ca759 Use MESSAGE_TYPE::OUTDATED_SAVE for read-only infobar messages as well.
Fixes https://gitlab.com/kicad/code/kicad/issues/12252
2022-09-10 21:27:10 +01:00
Jeff Young b95d9d660d Move gerbview colors to preferences dialog. 2022-09-10 16:11:24 +01:00
Jeff Young bd919e57bd Exclude deprecated layers. 2022-09-10 10:44:40 +01:00
Jeff Young f87bf3c46d Special case up-key so it can get past headers in paged dialogs.
Fixes https://gitlab.com/kicad/code/kicad/issues/10078
2022-09-10 09:31:27 +01:00
Jeff Young 9cf3c529d3 Apply the same accuracy band to connectivity as we use for hittesting.
Fixes https://gitlab.com/kicad/code/kicad/issues/10745
2022-09-09 21:42:21 +01:00
Bobbe 93670d2b24 Improve support for .wrz files in vrml exporter, Fix error handling 2022-09-09 20:13:50 +00:00
Jeff Young 5b3bd9be83 Prune pasted data of non-enabled layers.
Fixes https://gitlab.com/kicad/code/kicad/issues/11997
2022-09-09 21:02:08 +01:00
Jeff Young f179754118 Implement add-new-on-return for some of our grids.
Fixes https://gitlab.com/kicad/code/kicad/issues/12335
2022-09-09 13:41:13 +01:00
Jeff Young 98e760da93 Coverity-suggested improvements. 2022-09-09 13:41:13 +01:00
Jeff Young ca14697ad6 Fix issue trying to size stuff before it's displayed.
Fixes https://gitlab.com/kicad/code/kicad/issues/12386
2022-09-08 23:51:05 +01:00
Jeff Young 2743fd583f More improvements to drag tool selection disambiguation.
Fixes https://gitlab.com/kicad/code/kicad/issues/10745
2022-09-08 23:43:07 +01:00
aris-kimi 4efa13a3e3 Change Loss Tg to Loss Tan.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10699
2022-09-08 16:17:32 +00:00
Jeff Young a619ef9d53 Improve drop-a-knee-selection-to-a-single-segment algorithm.
In particular, don't rely on there being only two items in the
collector at the start.

Fixes https://gitlab.com/kicad/code/kicad/issues/10745
2022-09-08 14:10:18 +01:00
Jeff Young 9523586bf1 Remove atrophied PCB NO_CONNECTS layer and its colour.
Fixes https://gitlab.com/kicad/code/kicad/issues/12316
2022-09-08 00:28:31 +01:00
jean-pierre charras 6b3d36b6c3 CONVERT_TOOL: also show the "Create From Selection" menu if a array can be created
The "Create Array" sub-menu was recently moved to this menu, so it must me
shown as soon as an array can be created.
2022-09-07 10:53:27 +02:00
Alex d67c81a657 When deselecting items, pick only selected ones.
Fixes https://gitlab.com/kicad/code/kicad/issues/10292
2022-09-06 19:44:29 +00:00
Mike Williams fa3e9efdce PCB Router: return to original active layer after routing
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12313
2022-09-06 10:51:46 -04:00
Mike Williams 68f71e4a62 PCB Router: Pressing V again can untoggle Via
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12315
2022-09-06 10:51:46 -04:00
jean-pierre charras 565b815250 3D models list in footprint properties: fix issue when a lot of 3D models is added
Fixes #10014
https://gitlab.com/kicad/code/kicad/issues/10014
2022-09-06 16:28:46 +02:00
Jeff Young 8afc1db7a6 Property popups for symbols, labels, sheets, and footprints in PDF.
Fixes https://gitlab.com/kicad/code/kicad/issues/5521
2022-09-06 13:59:52 +01:00
Jeff Young 7c83c78afe Allow free pad usage in router.
Fixes https://gitlab.com/kicad/code/kicad/issues/11730
2022-09-06 13:59:52 +01:00
Jeff Young 3534cfbba8 Allow a single net collision with a free pad. 2022-09-06 13:59:52 +01:00
Jeff Young 16b4f96405 Centralize no-connect- and free-pad processing.
Also makes the track-net-names less squirrelly around the viewport
edges.
2022-09-06 13:59:52 +01:00
Jon Evans e294fe2074 ADDED: Dynamic field columns in symbol chooser
CHANGED: Symbol chooser search now considers custom symbol fields

Visible columns can be controlled in database libraries.
In standard KiCad libraries, we show columns for all custom fields for now.

Customizable column visibility will be added in the future.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/11946
2022-09-05 16:38:14 -04:00
jean-pierre charras 963a17f5b5 fix a compil warning 2022-09-05 18:33:17 +02:00
Jeff Young 156755e9db Allow processing of non-handled events in length tuner tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/11425
2022-09-05 10:57:07 +01:00
Jeff Young c0ba1b35bf Remove SMD pad side sanity check. 2022-09-05 10:41:37 +01:00
Jeff Young 895a8a8dbc Work around focus issues for status popups.
Autoscroll wasn't working on Mac because the status popup's panel
has the focus.  This *may* also fix a problem on MSW of the auto-scroll
not being cancel-able.

Fixes https://gitlab.com/kicad/code/kicad/issues/11425
2022-09-04 21:08:01 +01:00
Jeff Young 9405817a4d Improve contrast of status popup text on Mac.
Also works around an issue where GetBackgroundColor() returns black
(with a 40% alpha) on Mac.
2022-09-04 21:08:01 +01:00
Jeff Young d5cf7828fa ADDED footprint checks for SMD pad consistency.
Fixes https://gitlab.com/kicad/code/kicad/issues/11736
2022-09-04 10:34:32 +01:00
Roberto Fernandez Bautista 2d203bc975 Don't move items inside a group: move the whole group instead 2022-09-04 00:59:57 +02:00
Roberto Fernandez Bautista fa5dc23797 CADSTAR PCB: Fix regression when loading pads in footprints
Zero sized pads can be valid - e.g. a through hole pad
2022-09-04 00:59:57 +02:00
Roberto Fernandez Bautista 9abf3438b8 CADSTAR PCB: Invert logic for guessing which layer is top / bottom
Ensures correct automatic layer mapping is applied to the design in
https://gitlab.com/kicad/code/kicad/-/issues/12349
2022-09-04 00:59:57 +02:00
Roberto Fernandez Bautista c961624d43 CADSTAR PCB: Load 2-point polygons as line segments
Fixes asserts when loading design from https://gitlab.com/kicad/code/kicad/-/issues/12349
2022-09-04 00:59:57 +02:00
Roberto Fernandez Bautista 21b3753e9b CADSTAR PCB: Parse Teardrops
Todo: We need to figure out how we will load teardrops. For now
just drop them on import.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/12349
2022-09-04 00:59:56 +02:00
Jeff Young efae2bbb4c Better feedback for netclass assignment patterns. 2022-09-03 21:33:56 +01:00
Jeff Young c30a557810 ADDED netclass assignment from PCB canvas.
Fixes https://gitlab.com/kicad/code/kicad/issues/5975
2022-09-03 19:29:59 +01:00
jean-pierre charras b791fff963 DIALOG_UNUSED_PAD_LAYERS: minor enhancement: pads and vias can be handled all at once 2022-09-03 10:41:14 +02:00
Roberto Fernandez Bautista c15a13963b Fix Build error: AddLine doesn't exist anymore 2022-09-02 11:17:28 +02:00
Roberto Fernandez Bautista 22f96bfd11 Re-route m_last_head after routing fails
This should ensure the shove state gets reverted

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9023
2022-09-02 09:41:15 +02:00
Jeff Young 854acd4c77 Null-ptr safety for diff-pair-coupling test.
Fixes https://gitlab.com/kicad/code/kicad/issues/12329
2022-09-02 00:49:33 +01:00
Jeff Young 09773e3e2e Make sure dirty flag gets set, and leave save enabled regardless.
Fixes https://gitlab.com/kicad/code/kicad/issues/11824
2022-09-01 14:27:16 +01:00
Jeff Young 9188838e50 RIP EDA_RECT. 2022-08-31 23:57:24 +01:00
Jeff Young b4492e0bd2 More EDA_RECE yeetage. 2022-08-31 17:19:50 +01:00
Jeff Young ebe9617e77 More EDA_RECT expungification, and an attempt to fix the python test. 2022-08-31 17:19:48 +01:00
Jeff Young f17a865593 Move EDA_ITEM hitTest to BOX2I. 2022-08-31 17:18:45 +01:00
Jeff Young 2dc6300501 Move EDA_ITEM bounding boxes to BOX2I. 2022-08-31 10:16:55 +01:00
Jeff Young 5679b9dbdc Remove a few EDA_RECT instances. 2022-08-31 01:22:49 +01:00
Jeff Young c7036ae076 Beef up BOX2's API so it can replace EDA_RECT. 2022-08-31 00:44:33 +01:00
Jeff Young 0c8787cbb9 Some more wxPoint/EDA_RECT yeeting. 2022-08-31 00:44:33 +01:00
Seth Hillbrand b736460e71 Move optional access from value() to *operator
`value()` throws.  Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
2022-08-30 13:59:39 -07:00
Mike Williams a176bf383e Properties: pick up single selections
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12302
2022-08-30 13:59:37 -04:00
Seth Hillbrand 91fbb5c957 Don't prevent immediate actions while router active
Immediate actions that can take place are useful.  We should only be
preventing immediate actions while actively routing or dragging

Fixes https://gitlab.com/kicad/code/kicad/issues/12311
2022-08-30 10:31:29 -07:00
Jeff Young 63386ba64d Pointer safety for ERC/DRC dialogs.
Also makes the "Edit ingored violations" easier to find.

Fixes https://gitlab.com/kicad/code/kicad/issues/12308
2022-08-30 12:07:19 +01:00
Marek Roszko 03aa63bd50 Move 5 helpers to EDA_UNIT_UTILS since they aren't iu specific 2022-08-29 20:11:03 -04:00
Roberto Fernandez Bautista 238c21ed0b Properties: Special case PCB_SHAPE "Layer" property
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12304
2022-08-29 23:13:46 +02:00
Stefan Hamminga 2ff6a6aee1 Implement and enable option to not shove vias during push & shove routing 2022-08-29 17:32:39 +00:00
Jeff Young 2d68cdff94 Better reporting of hole-to-hole clearances and clearance resolutions. 2022-08-29 17:37:49 +01:00
Jeff Young e0f6a6e475 Run hole-to-hole checks on Edge_Cuts layer.
Also makes the flashing logic inside PAD::GetEffectiveShape() easier
to understand.

Fixes https://gitlab.com/kicad/code/kicad/issues/12296
2022-08-29 17:37:49 +01:00
Marek Roszko f0956e48f2 Make EDA_TEXT common
Since EDA_TEXT is a base class, we can just force the child classes to pass the correct iu scaled size

ALLOW_BOLD_THICKNESS removed because it's a pre-custom font holdover
2022-08-29 07:31:03 -04:00
Jeff Young 48f77973da Another try at getting the Link combobox working on MSW. 2022-08-28 23:25:01 +01:00
Jeff Young b886ec728e Copy shape data when converting PCB TEXTBOX to FP.
Fixes https://gitlab.com/kicad/code/kicad/issues/12298
2022-08-28 21:34:13 +01:00
Jeff Young 77c79b6f6a Apply searchArea architecture to courtyard functions. 2022-08-28 21:20:03 +01:00
Jeff Young 667a54ad86 Retire insideArea in favour of intersectsArea and enclosedByArea. 2022-08-28 18:02:41 +01:00
Jeff Young 122a6d7f46 Move hypertext linking to user-page-numbers.
Also moves most navigation code to SCH_NAVIGATION_TOOL.
Also changes page number href to anchor syntax ('#foo').
Also adds hypertext processing to SCH_TEXTBOXes.
Also adds combobox with schematic pages to text properties dialog.
2022-08-27 19:17:43 +01:00
Roberto Fernandez Bautista 840bcffefb ADDED: Hyperlinks on text items in Schematic Editor 2022-08-27 19:17:42 +01:00
Marek Roszko bf964d8678 Commonize page_info by simply making the Iu scale a parameter on call. 2022-08-27 13:36:00 -04:00
Roberto Fernandez Bautista 029cc65b34 EDA_SHAPE: Remove m_upsideDownCoords hack (Fixes hitTest routine) 2022-08-27 12:51:32 +01:00
jean-pierre charras 3b4c5f0dc4 French translation update 2022-08-27 09:10:02 +02:00
Jon Evans 300d92438c Allow hiding symbol library tables from symbol chooser
Hidden but loaded libraries are useful when using database libraries
2022-08-26 20:18:40 -04:00
Marek Roszko 161775fdbc Fix another type warning 2022-08-26 20:15:01 -04:00
Jeff Young 09511d176c Quiet Coverity. 2022-08-26 17:05:25 +01:00