Seth Hillbrand
112e8e7ccb
Remove a few more crashers
...
Need to check SYM_LIB_TABLE_ENTRY for null but need to check
FP_LIB_TABLE_ENTRY for throwing
2025-01-29 00:00:11 -06:00
Seth Hillbrand
9beca90185
Ensure that new text objects are "new"
...
Setting the new object flag ensures that we do not commit changes in the
dialog, before the object is placed on the canvas
Fixes https://gitlab.com/kicad/code/kicad/issues/19778
2025-01-28 23:16:46 -06:00
Damjan
c6e049df2a
Pcbnew: isDrag detection in Table creation tool
...
Drag breaks the UI when in the create table action
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19767
2025-01-29 01:25:37 +00:00
Ian McInerney
088e0e80a1
Fix layer writing/reading for copper zones
...
* Always enumerate layers - never use the wildcards
* Keep fills on layers the zone is actually on when loading
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19775
2025-01-29 00:31:28 +00:00
Seth Hillbrand
81fbaacae2
Keep track of user layer mapping for footprints
...
Footprints in orgs have standard naming. We need to allow designers to
keep their standard namings outside of boards where they are fixed.
This belongs in the preferences as a set-once for local standards
2025-01-28 12:22:39 -08:00
Seth Hillbrand
ff820bd809
Keep AllCuLayers as base for number of copper layers
2025-01-28 12:22:39 -08:00
Seth Hillbrand
e316b33a08
Update mask in grid box helper when showing
...
Masks are not permanent depending on the editor, so make sure that the
value is kept up to date
2025-01-28 12:22:39 -08:00
Seth Hillbrand
919931f0f0
Get embedded files panel working for lib_symbol
...
The symbol library embedded files were implicit, which made them hard to
work with. Adding the panel makes it clearer and setting the panel
correctly to the callback ensures that the structure is updated on
close.
Adds some copy/move semantics for EMBEDDED_FILES to take advantage of
how the multiple copies are handled in the library editor
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18935
2025-01-28 12:22:39 -08:00
Seth Hillbrand
0d86b88008
Unify embedded files handling btw editors
...
Each editor needs the embedded files tab in the
schematic/pcb/symbol/footprint settings. But the footprint may add an
embedded file from the 3d models tab and symbols/footprints may add
embedded files from the grid. This should be immediately visible in the
embedded files tab. Additionally, removing the reference to an embedded
file in the grid or 3d models now removes the embedded file as well.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18934
2025-01-28 12:22:39 -08:00
Seth Hillbrand
f871255005
Clean and unify pad/fp rotations
...
IPC2581 classifies pad rotation as clockwise from the top layer looking
down. Which means that if you have the exact same footprint with
rotated pads on the top layer and bottom layer, then that will need two
different packages because one package will have the pads rotated one
way, the other will have the pads rotated in the opposite direction.
The IPC committee clearly was too smart for its own good here. So we
hash the footprints based on layer as well and then introduce the
rotation into the pad. This increases the number of packages but keeps
the code compact
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19703
2025-01-28 12:22:39 -08:00
Seth Hillbrand
6c2a559cbe
Set base user layer count
...
Default colors cycle through repetition for unknown layers. Allows
importing from complex Altium/CADSTAR boards with more than 10
documentation layers
2025-01-28 12:22:39 -08:00
Jeff Young
e8e0b07223
Honour on-the-fly language changes.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19773
2025-01-28 15:09:11 +00:00
Jon Evans
28a4ca2d80
Mark string for translation
2025-01-27 19:04:32 -05:00
Jon Evans
8a7bf78b38
Fix color theme load logic in jobs
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19754
2025-01-27 19:00:35 -05:00
Jon Evans
e417b209a0
Don't paint clearance layers as copper
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19764
2025-01-27 18:16:58 -05:00
Alex Shvartzkop
6e54b88fe0
EasyEDA Pro import: set 3D model rotation for other axes as well.
...
(cherry picked from commit fbad7ae602
)
2025-01-28 01:25:43 +03:00
JamesJCode
00e4d72d4b
Move ownership of listener cleanup to BOARD itself
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19736
2025-01-27 21:55:11 +00:00
Jeff Young
e530bab396
Don't report "shorting nets" when one pad has no net.
...
(Fall back to clearance violation instead.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19752
2025-01-27 19:08:35 +00:00
Jeff Young
a9500de3f8
Ignore invisible copper text in router.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19420
2025-01-27 18:41:36 +00:00
jean-pierre charras
32673a0ead
Pcbnew, router: fix crash when trying to create a blind via without a track
...
Using PnS router, when trying to create a blind/buried or micro via with layer
selection with no track in progress, the router crashed because the starting
layer was not defined.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19750
2025-01-27 18:29:54 +01:00
jean-pierre charras
b2ef81808b
Pcbnew, DIALOG_PLOT: store B&W/Color option for PDF and SVG formats
...
Previously, the dialog started withB&W option.
2025-01-27 16:03:17 +01:00
Jon Evans
8903a82c50
Fix design block panel trampling symbol chooser settings
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19190
2025-01-26 18:32:00 -05:00
Jon Evans
9cf4dd05b3
Fixes to build with wxWidgets 3.3
2025-01-24 22:33:00 -05:00
John Beard
0011586372
Position relative: don't run with no selection
2025-01-24 20:26:57 +08:00
Jon Evans
877e197fec
Fix another footprint field fallout
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19729
2025-01-23 18:25:07 -05:00
John Beard
5b07bb4f6a
Pcbnew: fix snapping to reference image anchor points
...
Otherwise it's impossible to accurately place an image
using a corner or origin.
2025-01-24 03:46:58 +08:00
Jeff Young
7f307afb04
Adjust layout of Find dialogs.
2025-01-23 11:09:10 +00:00
Jeff Young
8fe8637297
Fix yet more assumptions about field IDs and order.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19710
2025-01-22 18:17:18 +00:00
jean-pierre charras
0748a1ca34
PANEL_SETUP_LAYERS: fix broken init of copper layer types.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19715
2025-01-22 18:59:15 +01:00
Jeff Young
e19bce2f93
Reduce reliance on MANDATORY_FIELDS and their implied order.
2025-01-22 17:51:57 +00:00
jean-pierre charras
be38fa5cac
Pcbnew: footprint editor: fix crash when saving a footprint in lib
...
The crash was due to a footprint member (m_board) that is null in some
cases in footprint editor (renaming, saving, duplicate a Fp).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19713
2025-01-22 17:24:18 +01:00
John Beard
84f4f7f724
Lib editors: avoid bogus overwrite prompt when renaming to self
...
Just accept the dialog and then early-return.
2025-01-22 19:35:54 +08:00
Alex Shvartzkop
2278ee070f
Fix warning C4296: '>=': expression is always true.
2025-01-22 13:52:28 +03:00
Jon Evans
4118c14d97
API: Add selection handling
2025-01-21 19:53:03 -05:00
Jeff Young
dac7c9d4d7
Convert cross-references in Table Properties dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19705
2025-01-22 00:16:44 +00:00
Jeff Young
4fe05bfe47
Remove some more usages of MANDATORY_FIELDS.
2025-01-21 23:38:55 +00:00
Jeff Young
27755ac317
Calc mandatoryRows on the fly to prevent initialization order issues.
2025-01-21 17:00:19 +00:00
Jeff Young
a0dd0485e9
Pull a little harder on the MANDATORY_FIELDs string.
...
We still conflate the fieldID, the position in the
array of fields, and whether or not that means the
field is mandatory. But this attempts to clean up
*some* of that, without introducing too much risk.
2025-01-21 16:48:13 +00:00
Jeff Young
d50b69f1ae
Reconcile divergence of MANDATORY_FIELDS between symbols and footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19697
2025-01-21 13:28:28 +00:00
JamesJCode
6af44c8ffa
Show full component class string in pcb properties panel
...
Currently, the human-readable component class is shown in the info
bar. For multiple component classes, this means that not all will
be readable. Showing the formal ordered string in the properties
panel mitigates this issue.
2025-01-20 22:56:26 +00:00
Alex Shvartzkop
0216b186aa
Disable Bezier and Table tools when no footprint is loaded.
2025-01-21 01:15:22 +03:00
Seth Hillbrand
abbdea4412
Correct rotations for flipped parts
...
Rotation is always seen as clockwise from the top of the board in 2581
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19675
2025-01-20 12:09:56 -08:00
Jeff Young
062a03c3aa
Only test existing layers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19694
2025-01-20 18:28:33 +00:00
Wayne Stambaugh
db877e6a00
Fix Eagle schematic import issue.
...
Handle duplicate symbol library names with Eagle URN notation.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19666
2025-01-20 07:28:25 -05:00
Jeff Young
44840c7df2
Don't expose Default Font selection in PCBNew.
2025-01-20 11:30:46 +00:00
Jeff Young
6b6729284c
Remove default line styles from all items except eeschema wires and buses.
2025-01-20 11:30:46 +00:00
Jeff Young
c50ce416f2
Consistency in panel layout.
2025-01-20 11:30:45 +00:00
Seth Hillbrand
1abfc13755
Get Autoplace tool to skip locks
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19690
(cherry picked from commit 614b327d23
)
2025-01-19 17:29:57 -08:00
Seth Hillbrand
f226287360
Minor adjustments to autoplace
...
Don't use FP bbox with text when placing footprints
Don't do unneeded poly calculation when initial work is only with
bounding box
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19451
(cherry picked from commit e0c57b7f20
)
2025-01-19 17:29:57 -08:00
Alex Shvartzkop
775b768833
Fix VRML layer Z positions after v9 layer changes.
...
https://gitlab.com/kicad/code/kicad/-/issues/19608
2025-01-20 03:30:38 +03:00