Commit Graph

15672 Commits

Author SHA1 Message Date
Jeff Young 3fcbde00c9 Clean up dead code. 2023-09-11 22:05:24 +01:00
Jeff Young 9f5a268f15 Don't go through a middle man when reading pad shape primitives.
They're both PCB_SHAPEs.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15073
2023-09-11 22:05:24 +01:00
Jeff Young 0315adc646 Dim other SMD pads when in Pad Edit Mode. 2023-09-11 22:05:24 +01:00
Jeff Young 84a9f6f665 Set padEntered when entering pad edit mode with a non-custom shaped pad. 2023-09-11 22:05:24 +01:00
Jeff Young 899fe8be17 Fix change footprints dialog to use correct selection state. 2023-09-11 22:05:20 +01:00
jean-pierre charras c66d4bab9c SEXPR_BOARD_FILE_VERSION: fix a typo in commit 0e382669: the date is incorrect.
was set to 20230606 instead of 20230906. it creates some issues when reading
files having a 20230606 as file version.
Fixes #15617
https://gitlab.com/kicad/code/kicad/-/issues/15617
2023-09-11 10:40:07 +02:00
Alex Shvartzkop 7eb4b0710d Fix reading/writing thermal spoke angles for custom pads.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15518

7.0 commit: 86ec36d183
2023-09-10 19:02:16 +03:00
jean-pierre charras 45e83541cd Try to make DIALOG_CREATE_ARRAY more understandable for circular arrays.
Added toop-tips and info texts.
No actual code change.
2023-09-09 11:06:36 +02:00
jean-pierre charras f2f572c370 drc_test_provider_text_dims.cpp: ensure glyphs to test are OUTLINE_GLYPH.
For non Kicad font texts with a overbar, the overbar is not a OUTLINE_GLYPH.
Fixes #15604
https://gitlab.com/kicad/code/kicad/-/issues/15604
2023-09-09 10:28:28 +02:00
Marek Roszko 11de95778b Unwrap the FROM_UTF8 macro in favor of direct function
The extern just gets annoying to try to export the func later. We also yeet TO_UTF8 to string_utils.h for parity.
2023-09-09 00:10:57 -04:00
Marek Roszko bd3aca2887 Cleanup the kiface dll export declaration slightly
Why in the bloody world would you pass in the return type as part of the macro for export/import preprocessing
2023-09-08 20:44:08 -04:00
Marek Roszko 3bbf3a61b5 Remove PNS APIEXPORT that never made sense
It can't work because all base classes must be APIEXPORTed
2023-09-08 18:44:46 -04:00
Marek Roszko ab1a6651a9 send multivector.h and sync_queue.h to core 2023-09-08 07:14:34 -04:00
Marek Roszko 5da88d1d0e Move UTF8 to core 2023-09-07 20:55:16 -04:00
jean-pierre charras 8aa408f0c9 fix a minor compil warning
fix a typo in translatable string.
2023-09-07 20:00:29 +02:00
Jeff Young d3e255a383 Allow context-menu update/change footprint for multiple footprints.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15595
2023-09-07 17:51:18 +01:00
Marek Roszko 7505fd0f37 Profile can live in core 2023-09-07 07:47:01 -04:00
jean-pierre charras 3e6f7ab3e5 Fix compil issues (especially easyeda_parser_base.xx) and compil warnings
Compil issues can be gcc13/msys2 specific.
2023-09-07 13:41:25 +02:00
Alex Shvartzkop 21ee65aa9c ADDED: Importers for EasyEDA (JLCEDA) Standard / Professional. 2023-09-07 11:02:40 +03:00
Alex Shvartzkop 892761920a FOOTPRINT::AutoPositionFields: reset justification and angle as well. 2023-09-07 10:57:02 +03:00
Alex Shvartzkop f211b2cdd0 Remove unused method from router_tool.h 2023-09-07 10:57:02 +03:00
Alex Shvartzkop 1b8abdfde7 ADDED: Basic STEP manipulation utils available to Python. 2023-09-07 10:57:02 +03:00
Marek Roszko 67b031adab Painter base class should just live in gal instead of being in denial 2023-09-06 20:23:19 -04:00
Josue Huaroto cef0f176d3
Add Unselect all in menu 2023-09-06 23:44:39 +00:00
Marek Roszko 4d77fd48ef Shove thread_pool to core 2023-09-06 17:50:12 -04:00
John Beard 3c5052c1ac Add snaps to pad hole edges
This is often useful when measuring the distance from an
object to a pad hole edge, and also when dimensioning
holes.
2023-09-06 21:34:17 +01:00
John Beard 78c8de9b08 Fix oval pad snapping
Previously the snap points computed for oval pads didn't get all the
points correct. This breaks out the "find snap points for ovals"
into a function, reworks the logic, adds some tests.

Also adds "extremum points" when the oval isn't exactly H/V.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15594
2023-09-06 21:33:45 +01:00
Seth Hillbrand 1662f6aad6 Speed up footprint loading by caching
Store the COMPOUND_FILEs in a map referenced to the library name.  This
keeps the COMPOUND_FILE cache in memory rather than regenerating it each
time
2023-09-06 19:15:35 +00:00
Seth Hillbrand 1b63d11adf Speed up Altium compound file reader
Just read the footprint list once and store the cache for later use.
2023-09-06 19:15:35 +00:00
Seth Hillbrand b8b2498e0c Add support for fp cutouts in Altium libs 2023-09-06 19:15:35 +00:00
Seth Hillbrand cb3c712a9c ADDED: memberOfSheet() design rule function
Footprints that are a member of a specific sheet may be assigned
distinct rules, allowing users to group their rules based on sheet
layout
2023-09-06 19:14:00 +00:00
Seth Hillbrand f9b745f3d2 Allow multiple format image saving
- Keep original image data.  When loading JPEG, this avoid recompression
  that changes file data and decreases image quality
- Allow schematic and page layout editors to store non-PNG data as well
- Move page layout editor to store base64 instead of hex-coded data
2023-09-06 12:12:32 -07:00
Seth Hillbrand 0e382669d0 ADDED: Support for saving JPEG files in kicad_pcb
When users add an image to the board, this change keeps the original
file format when saving instead of converting the files into PNG-format,
which had the effect of making some board files much larger and slower

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14892
2023-09-06 12:12:32 -07:00
Jeff Young c07e9c834f Validate new footprint / save as footprint info before exiting dialog.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13923
2023-09-06 12:49:37 +01:00
Alex Shvartzkop e09a15ae4c Altium PCB import: fix rectangular keepout fills. 2023-09-06 09:02:54 +03:00
Alex Shvartzkop 4f303a8dc2 Altium PCB import: Polygon Cutout only cuts copper fill.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15587
2023-09-06 08:43:12 +03:00
jean-pierre charras cbcaaa001c fix some Coverity and compil warnings. 2023-09-05 20:30:08 +02:00
Marek Roszko f894f7ec4c Use the right path for loading drawing sheet in pcbnew cli 2023-09-05 11:01:57 -04:00
Alex Shvartzkop a5a93f808e Populate symbol library type choices from SCH_IO_MGR list. 2023-09-05 07:19:15 +03:00
Marek Roszko b566f994bb
Flip the RegisterSettings order to avoid legacy import crashes
(cherry picked from commit 32c2135047)
2023-09-05 03:23:07 +00:00
Marek Roszko a2522a2230 Don't call .Load() and cause settings to reload from disk
RegisterSettings can load the new settings json as added by not turning off the load now parameter
2023-09-04 22:42:00 -04:00
Jeff Young ea6d64e996 Set line width when changing annotation proxy flag.
(This prevents rectangle from not getting combined into pad if
proxy flag is turned off as Clipper collapses the polygon union
because it's too small.)
2023-09-04 20:49:52 +01:00
Jeff Young 7c718db5d2 Remove dialog-based primitive editing in favour of Pad Edit Mode.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13561
2023-09-04 20:49:52 +01:00
Jeff Young 0e26f3ab30 Allow pad number box creation in pad edit mode.
(Also fixes a bug where we'd include pad number box in pad shape.)
2023-09-04 20:49:52 +01:00
Alex Shvartzkop 3215223ee2 Move fix_board_shape.cpp to pcbcommon. 2023-09-04 22:26:47 +03:00
jean-pierre charras 2bf8602912 DIALOG_EXPORT_STEP_LOG: print the command line sent to kicad-cli in report window.
It can be useful in case of problems.
2023-09-04 19:03:04 +02:00
Jeff Young 0cde8cff1d Don't include plating thickness when drawing hole clearance lines.
We don't include it in the router, and the code didn't
differentiate between plated and non-plated holes, and it confuses
users.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15575
2023-09-04 16:06:09 +01:00
Matus Pavelek d57c5d3ad9
QFN footprint wizard - Allow different number of pads in x and y directions 2023-09-04 13:39:28 +00:00
Marek Roszko 63824487d0 Hide the unsupported Visible prop for textbox text 2023-09-04 09:28:59 -04:00
Marek Roszko 4b31de61b3 Rename txtbox props to border props 2023-09-04 09:28:59 -04:00