11124 Commits

Author SHA1 Message Date
Alex Shvartzkop
1dc278488d REPORTER's HasMessage indicates that any message got reported, not stored. 2025-08-23 00:24:58 +03:00
dsa-t
01991fed53 Prevent jobs from affecting each other via reporters when running jobsets from CLI.
(cherry picked from commit 44a3bb9274845593db733464aa3f68288e3eb150)

Co-authored-by: Alex Shvartzkop <dudesuchamazing@gmail.com>
2025-08-22 17:42:16 +03:00
dsa-t
7fbca40dd8 Increase default precision in ODB++ export job dialog.
(cherry picked from commit 279a30974e13e25bd5862fa5d9ec51fba9ad7bb2)

Co-authored-by: Alex Shvartzkop <dudesuchamazing@gmail.com>
2025-08-22 14:35:03 +03:00
Jeff Young
29a818218a Don't fire events when loading dialog state.
(Fixes crash when opening Pin Properties dialog.)
2025-08-21 12:44:09 +01:00
Jeff Young
42735b775d Remove unreachable PASTE_MODE.
Also, don't depend on enum order.

Fixes KICAD-YJ8.
2025-08-21 12:29:34 +01:00
Mike Williams
6ab9faa83e design blocks: enable place as group by default
This preserves the design block link between sch<->pcb so will enable
the easiest learning curve for new users.
2025-08-20 15:20:13 -04:00
Mike Williams
36ee61dfe4 schematic: prevent crash in symbol browser with no grids 2025-08-20 15:20:13 -04:00
Seth Hillbrand
b2039c1293 Ensure hash ordering
Footprint elements are not guaranteed to be stably ordered, so sort the
hashes before combining
2025-08-20 08:55:55 -07:00
Seth Hillbrand
09cdca876c Add embed option to standard file dialog for 3dmodels
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20025
2025-08-20 08:28:00 -07:00
John Beard
54349c5845 Tool: minor reduction of transitive includes 2025-08-20 20:34:08 +08:00
Jeff Young
b0945ee697 Don't push someone else's commit. 2025-08-20 13:19:37 +01:00
Jeff Young
5fa635602b Fix accidentally-deleted functionality. 2025-08-19 18:33:18 +01:00
John Beard
ed01324c1d Footprints: allow to set specific internal copper layers
Footprints can now have a custom stackup. This means that they specify
an exact number of copper layers and the layers map 1:1 to board layers.
If the board doesn't contain that layer, the element just doesn't
show. We could make this a DRC check later on.

If there is no stackup, the behavior is the current default: a rule area
the In1 layer "expands" to all Inner layers.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10838
2025-08-19 04:59:48 +08:00
Jeff Young
8e45f03bd3 Bounds checking.
Fixes KICAD-TZK
2025-08-18 21:25:14 +01:00
Jeff Young
599be6ec34 Fix bone-headed mistake. 2025-08-18 20:14:30 +01:00
Jeff Young
6f389fd320 Tighten parent/child undo/redo architecture.
Always look for pre-existing undo/redo record.  Checking for IsNew()
is less robust and should be avoided.  Also moves the checking to a
location where it will be easier to ensure that it's uniform.

Push get-undo-level-item processing down a level so it is uniformly
called.

Make sure tables & labels are uniformly handled.

Remove incorrect usage of Get/SetGroupId() for storing lastPin
(which we don't use anyway).

Lists of deleted and changed items MUST include the screen pointer.
An item could be changed on one screen but not on another.

Also tightens handling of PCB_NETINFO_T items, which are not in the
view.

Also fixes a bug where there is no increment parameter if you assign
the base increment command to a hotkey.
(This was discovered while testing the above changes.)

Also fixes a bug where delete during a move in PCB Editor did an
undo instead of a delete.
(Again, found while testing above.)

An experiment was also run to collapse shared parts of SCH_EDIT_FRAME
and SYMBOL_EDITOR_FRAME into SCH_BASE_EDIT_FRAME.  However, sharing the
undo code actually increased complexity, and there was very little else
of value in SCH_BASE_EDIT_FRAME (other than the Increment() routines).
2025-08-18 19:20:09 +01:00
Ian McInerney
c87211e1df Move Poppler library inclusion to the kiplatform library where it is used 2025-08-18 15:35:59 +01:00
Seth Hillbrand
eb89d7ffcc Fix preferential coordinates in rule display
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11546
2025-08-18 06:29:26 -07:00
Seth Hillbrand
23c1a68da8 Make printing consistent with plotting.
How you ask?  Plot first -> then read the PDF and print directly to the
platform-specific printers.  Roundabout?  Yes.  Better than wx printing?
Darnbetcha.

Also allows multi-size page printing and proper margins and print
preview

Fixes https://gitlab.com/kicad/code/kicad/-/issues/1831
2025-08-16 20:07:45 -07:00
Seth Hillbrand
9f2b04c7e2 Prevent autosave error from cluttering the screen
Once per session, per editor we can show the error.  After that, assume
that the designer has seen and knows about the issue.

Fixes https://gitlab.com/kicad/code/kicad/issues/21464
2025-08-16 13:49:32 -07:00
Seth Hillbrand
fcd2da354d Allow wildcard matching for Netclass naming
Fixes https://gitlab.com/kicad/code/kicad/issues/21455
2025-08-16 13:30:20 -07:00
jean-pierre charras
6d576a11a8 Fix 2 compil warnings. 2025-08-16 17:19:26 +02:00
Mark Roszko
e08c7799fa Fix build error 2025-08-15 23:10:48 -04:00
John Beard
c5d5a718aa Altium: handle '.var' concatenated special strings
The ST MB2046 reference board, for example, has all the
assembly-layer ref-des text in the format '.R42' even though
they're not concatenated.

Enable the existing but commented-out text.
2025-08-16 05:51:12 +08:00
John Beard
85dcdd5cb2 Altium: advanced config to skip models
This can be really slow, and isn't required if testing
something that's unrelated to models in a large demo file.
2025-08-16 05:36:11 +08:00
Seth Hillbrand
2ded7b87af Ensure archives without ext are given .zip
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21423
2025-08-15 13:25:36 -07:00
Seth Hillbrand
1166cacc64 Snap point editor into place
Adds 90° support to the point editor and ensures editing is the same as
creating when it comes to point snapping

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21481
2025-08-15 12:19:06 -07:00
Seth Hillbrand
ddae938aa4 Allow grouping tuning pattern with tracks
Any object that shares a name should be able to be handled in a group
2025-08-15 10:54:23 -07:00
Jeff Young
d5f16adde1 ADDED: maintenance page to preferences. 2025-08-15 16:57:46 +01:00
Jeff Young
9ff30873fc Prettify spacemouse preferences panel. 2025-08-15 16:57:46 +01:00
Seth Hillbrand
17d9ff4fe7 Add the ability to edit advanced config
If you set the env var KICAD_EDIT_ADVANCED_CFG=1, you get a new menu
option in the KiCad project window's Edit menu.  Lets you modify the
settings for advanced config graphically without having to
remember/lookup the magic incantation
2025-08-14 15:37:02 -07:00
Jeff Young
33c73d7db4 Fix crashes when settings manager doesn't exist yet. 2025-08-14 11:33:25 +01:00
Jeff Young
d27d80ab80 Don't crash in absence of settings. 2025-08-13 16:29:11 +01:00
Jeff Young
c85e5c08e4 Improve quasimodal comment. 2025-08-13 16:22:51 +01:00
Jeff Young
8ed367f8cd Prevent all-radio-buttons-unset case. 2025-08-13 16:22:51 +01:00
Jeff Young
60b4202766 CHANGED: Rework lock overrides architecture.
We now use a checkbox in the aux toolbar rather
than a query dialog (with "remember setting" checkbox).
2025-08-13 10:30:26 +01:00
Seth Hillbrand
188ffda029 Add a 90°-only mode for polygon creation
Sometimes, you don't want those 45° corners in your nice, clean zones.
This adds an additional mode that can be selected, cycling through
free-angle, 45° angle and 90° angle constraints
2025-08-12 16:48:36 -07:00
Seth Hillbrand
87ccb2abc0 Move Annotation preferences (most) to schematic setup
The scope, recursion, reset options and message filters remain in the
user preferences.  Others including numbering, sort order and reuse are
schematic preferences.

Also, the oddball subunit display remains here but it doesn't really
belong in annotation.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17942
2025-08-12 16:15:17 -07:00
Seth Hillbrand
899cf0bebc Remove unused variable 2025-08-12 07:09:24 -07:00
Seth Hillbrand
0a5de5010f ADDED: Spacemouse support for Linux
Uses libspnav to handle spacemouse data.  Overlays on existing
spacemouse framework to handle view activation

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16133
2025-08-12 07:04:54 -07:00
Seth Hillbrand
b2fbb326b0 Keep the ruler measurements on screen
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11546
2025-08-12 06:57:01 -07:00
John Beard
d1aa7b148a Eeschema/Pcbnew: allow multiple nets to be assigned to a netclass at once
There is only a simplistic multi-net pattern expression
generator here (A|B|...) with a single prefix detected
rather than anything too fancy.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/21451
2025-08-12 20:00:33 +08:00
John Beard
7239862202 Assign netclass dialog: upgrade WxFB version, no changes 2025-08-12 20:00:16 +08:00
Jeff Young
10ca84470c Don't remember remember checkbox.
(No, that's not a typo.  The locked items "remember"
checkbox is for the session.  We don't want to
reload the checkbox between sessions.)
2025-08-12 12:50:25 +01:00
Seth Hillbrand
563489d612 Make 3d-viewer mouse controls standard
We should use the common panel preferences for 3d viewer as well

Fixes https://gitlab.com/kicad/code/kicad/-/issues/20098
2025-08-11 15:55:58 -07:00
Seth Hillbrand
c1d4b537c5 Enforce unique scroll gesture
We should not allow setting multiple actions to the same gesture.  Just
confusing
2025-08-11 14:53:38 -07:00
Seth Hillbrand
a7e6fa8198 Allow panning with selectable key
Add optins to mouse dialog to allow modifier key-based mouse movement
panning

Fixes https://gitlab.com/kicad/code/kicad/-/issues/2492
2025-08-11 13:21:22 -07:00
Jeff Young
38023a33b2 Give some more dialogs separate hashkeys for separate usages. 2025-08-11 17:19:12 +01:00
Jeff Young
6947b3b233 Even more open-coded dialog state-saving cleanup. 2025-08-11 17:19:12 +01:00
Jeff Young
cd325198c1 Give WX_TEXT_ENTRY_DIALOG a title- and label-specific hash.
This keeps us from attempting to save/restore control
state between different usage cases.
2025-08-11 17:19:12 +01:00