12897 Commits

Author SHA1 Message Date
Seth Hillbrand
edf8f45351 Add user fields to editable properties
Fixes https://gitlab.com/kicad/code/kicad/issues/21622
2025-09-02 18:29:59 -07:00
John Beard
8709f73b98 Symbol editor: simplify root symbol-finding 2025-09-03 00:30:56 +08:00
John Beard
e76b2089bb Symbol edit: add symbol flatten action
This removes inheritance from the symbol.

This doesn't play well with undo, but then again, neither does symbol
deletion, so that seems like a higher-level symbol editor issue.

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/8895
2025-09-03 00:24:32 +08:00
John Beard
2e0088593e Symbol editor: fix flattening during save-as to the same library 2025-09-03 00:24:24 +08:00
John Beard
b34746e06b Symbol editor: allow editing all related symbols from the treeview
This makes it more straightforward to edit a group of related symbols
(related = all derived from the same parent, including the parent).

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/21067
Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/9742
Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/11506
2025-09-03 00:24:18 +08:00
John Beard
9b14434fc3 Symbol editor: allow to inject the symbol list into DIALOG_LIB_FIELDS
This will permit editing fields for subsets (e.g. only symbols in
a certain inheritance hierarchy)
2025-09-03 00:24:12 +08:00
John Beard
0ede830f54 LIB_SYMBOL: When assigning, clear the parent if needed
This allows assigning a symbol with no parent to a symbol with
a parent to work more as expected.
2025-09-02 23:50:17 +08:00
Jeff Young
cff261ce2e Don't allow stack addresses to escape via long-life handlers. 2025-09-02 14:19:17 +01:00
Jeff Young
6a171e11fb Clang got cranky on the emplace_back call. 2025-09-02 12:17:07 +01:00
Seth Hillbrand
9cba910d53 ADDED: Library Table Editor
Edits all symbols in a library at once.  Supports copy/paste, multiple
field assignment and selective coloration based on existing data

Fixes https://gitlab.com/kicad/code/kicad/-/issues/11506
2025-09-01 21:47:14 -07:00
John Beard
5d967289ee Eeschema: order pins by number, not position
Also use StrNumCmp, then the pin numbers are ordered exactly the
same way as pads in footprints.
2025-09-01 23:44:21 +08:00
jean-pierre charras
4953e80122 Fix some compil warnings 2025-09-01 16:22:05 +02:00
JamesJCode
bd04d508e0 Fix some compiler warnings 2025-09-01 14:50:22 +01:00
Jeff Young
4024a15a17 Don't reference stack variables from a long-life lambda.
In particular, a lambda for conditional menus should
never capture more than `[this]`.  Even the tool's
frame pointer could change.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21615
2025-09-01 12:44:20 +01:00
Jeff Young
0c8e7a7137 Reload symbol chooser on keep symbol, and improve accessibility.
(Respond to hotkey-generated clicks.)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/7698
2025-09-01 11:45:20 +01:00
jean-pierre charras
5b31b11731 SHAPE_RECT: add Normalize method to assure width or height > 0
ROUNDRECT: add option to normalize the rectangle on creation

if the created rectangle has a negative size(width or height) there are issues
when drawing it.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21613
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21610
2025-09-01 11:56:56 +02:00
Seth Hillbrand
bbc762a546 ADDED: Angle preview for polygon mod
Shows angle for the current and adjacent corners and whether they are
congruent
2025-08-31 11:49:41 -07:00
Seth Hillbrand
8c6f057f6c Re-organize points to allow missing radius
Not all rectangles want/need the radius point, but we will only be able
to drag one point at a time.  So we re-organize which point of an
overlapping set is selected

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21605
2025-08-31 07:10:14 -07:00
Jeff Young
9d7db3d135 Better interactive feedback.
Don't wait for mouse to move before refreshing after a command.

Also fixes a crash bug deleting an item after an
Unstage() (the Unstage() has already deleted the item).

Also fixes a crash when changing label type during
creation of a label produces a mess.

Also Keep cursor aligned to grid when not warping
back to original point.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16828
2025-08-31 14:25:52 +01:00
Adam Wysocki
814f78f2b2 ADDED: Add pcb/sch upgrade cli command 2025-08-30 20:57:41 +00:00
Jeff Young
c6fcf7e0b8 Allow easier code searching for property names. 2025-08-30 19:09:15 +01:00
Jeff Young
6f59821930 Prefer const &. 2025-08-30 17:45:49 +01:00
Mark Roszko
9dd642b66c Kick out strtod in legacy parsers 2025-08-29 23:38:00 -04:00
Mark Roszko
b3de964eff Add fast_float for float parsing.
2x faster than both std::from_chars and strtod on Windows.

macOS will get to benefit from a modern from_chars impl too.
2025-08-29 21:48:24 -04:00
Seth Hillbrand
8acf5c1a25 ADDED: Rounded Rectangles
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4742
2025-08-29 17:37:30 -07:00
Seth Hillbrand
e8cec41355 ADDED: Indication of filter blocking
If the selection filter has blocked all selections under the cursor,
show a subtle flash on which filter(s) did the blocking.  Helpful for
people getting frustrated by not being able to select locked items.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/20487
2025-08-29 07:08:27 -07:00
Jeff Young
8a60893249 Regularize content of item descriptions.
1) Use sentence capitalisation
2) Show text of text items

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21582
2025-08-29 12:03:55 +01:00
Mark Roszko
7115f9e716 Drop the FromChar in ConvertNotation 2025-08-28 18:27:06 -04:00
Jeff Young
736d87aa35 ADDED: directive labels checkbox to Schematic Editor Display Settings panel in Preferences.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/21577
2025-08-28 17:49:06 +01:00
Jeff Young
eb6b2de648 Fix for the fix (for clang). 2025-08-28 13:20:20 +01:00
Mark Roszko
af852ea15d Protect from_chars from clang 2025-08-28 07:11:08 -04:00
Jeff Young
5c240efd75 Consolidate to single copy of deletableItems. 2025-08-28 11:54:24 +01:00
Mark Roszko
b01c1f39c1 Add missing header 2025-08-28 01:22:08 +00:00
Mark Roszko
9bc463606a More redundant LOCALE_IO 2025-08-27 20:11:26 -04:00
Mark Roszko
747106ea37 Redundant include 2025-08-27 20:07:58 -04:00
Mark Roszko
94d83773d0 Drop a LOCALE_IO via std::from_chars 2025-08-27 20:07:28 -04:00
Mark Roszko
2cf6ec2411 Remove some obsolete LOCALE_IO 2025-08-27 20:07:27 -04:00
Jeff Young
6dd4e01f16 ADDED: custom body styles.
(Also moves editing of unit display names to the
Symbol Properties dialog and retires the Set Unit
Display Name dialog.)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16069

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14843
2025-08-27 18:11:56 +01:00
Seth Hillbrand
2f21414186 Revert "Allow netlisting for multi-unit parts"
Breaks QA.  need to debug before re-committing

This reverts commit 635445c096c8624a47c9e0fdd6c1ebefa668e973.
2025-08-26 22:07:40 -07:00
Seth Hillbrand
8bd6da3ec9 Revert "Fix build error"
This reverts commit 19e4c3f498b8b66eacd2b651a570f0f137a8b6b2.
2025-08-26 22:07:26 -07:00
Mark Roszko
19e4c3f498 Fix build error
std::string does not have a overload for appending a wchar
2025-08-26 20:25:56 -04:00
Seth Hillbrand
635445c096 Allow netlisting for multi-unit parts
Merges pin map from each unit into coherent model prior to exporting for
spice simulation

Fixes https://gitlab.com/kicad/code/kicad/-/issues/1779
2025-08-26 15:02:37 -07:00
John Beard
4bebd09bd0 EDA_LIST_DIALOG: Simplify ctor args
Sometimes you want to add these in the ctor of the child
class based on some logic and having to construct the vector
in the init-list is a bit ugly.

Theoretically allows to not require a vector too.
2025-08-26 23:34:46 +08:00
John Beard
7f4a1bf64a Sym edit: allow to flatten symbol on save as
Sometimes, you don't want to drag the whole inheritance hierarchy with
you.

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/8895
2025-08-26 23:34:46 +08:00
Jeff Young
cc9ec7c01c Move assignment operator for SCH_SHEET_PATH. 2025-08-25 20:48:37 +01:00
Jeff Young
3058bc6355 Expose shape in prop inspector for sheet pins. 2025-08-25 17:19:10 +01:00
Jeff Young
8c3026cf1a Naming conventions. 2025-08-25 12:13:38 +01:00
Jeff Young
0477fb65ec Better spacing in dialogs.
Also allows Symbol Properties to be narrower.
2025-08-25 10:48:19 +01:00
Seth Hillbrand
5442e5050e Ensure ERC Exclusions are maintained
After we load/resolve the exclusions, we want to ensure that the
resolved ones are re-recorded into the project file so that it always
remains consistent with the state of the system.  This way, if pcbnew
closes first and re-saves the project, our exclusions are not lost until
the schematic closes

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21410
2025-08-24 16:00:39 -07:00
Seth Hillbrand
66c42f396c Ensure junction placed is placed
Added QA to maintain this

Fixes https://gitlab.com/kicad/code/kicad/-/issues/21516
2025-08-24 10:22:12 -07:00