223 Commits

Author SHA1 Message Date
jean-pierre charras
01e67d78d6 board area fixes (jpc) 2025-06-19 18:26:39 +02:00
jean-pierre charras
ea12df80be make board area colored (from Ethan Chien) 2025-06-19 18:26:39 +02:00
Jeff Young
18e107529a Don't force callers of GetAppSettings to implement exception processing. 2025-06-14 20:25:59 +01:00
Jeff Young
9f7fa4df66 There's no view when running tests. 2025-06-13 18:09:22 +01:00
Jeff Young
e2cf944915 Dirty clearance lines when rule areas change.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/20734
2025-06-13 16:37:10 +01:00
Jeff Young
327cca9de5 Coverity fixes. 2025-05-25 20:01:18 +01:00
Jeff Young
f58fc0b952 Rewrite GROUP undo based on uuids.
This also removes the GROUP/UNGROUP-specific undo actions.

This also fixes a bunch of undo bugs when duplicating
group members, creating pins, etc.

This also fixes some undo bugs when dividing wires etc.

This also fixes some bugs with new sch items not
being created within an entered group.
2025-05-21 14:24:59 +01:00
Mike Williams
195e79ae46 commit/groups: add ability to modify membership of group
Also add warning when you've tried to modify two groups in one commit,
which isn't currently supported.
2025-05-14 12:15:22 -04:00
Jeff Young
199a7a34ea Don't leak PCB_GROUP internals into BOARD_COMMIT.
(This also fixes a potential bug where the image
group's children didn't get the image as a parent.)
2025-04-21 18:24:30 +01:00
Jeff Young
c1b1c689ad Don't double-add/remove items from connectivity.
BOARD::Add()/Remove() already do this.
2025-04-21 18:20:52 +01:00
Jeff Young
519b29472f Remove temporary debugging code. 2025-04-21 17:40:28 +01:00
Jeff Young
5a3b2cc8fd Temporary debugging code. 2025-04-21 14:42:41 +01:00
Mike Williams
0c0dbc6271 groups: commonize group tool 2025-04-15 09:59:38 -04:00
Jeff Young
0659290417 Simplify hatch damage/rebuild and move it out of view.
There should be far fewer hatched objects than other
objects, so we're spending too much effort finding
all the possible damage when we probably should
just be auto-regenerating all the hatching.

This also moves it out of being done during redraw,
which was proving problematic.  Plus the refill
zones architecture does it during commit, and has
a lot more miles behind it.
2025-04-07 11:46:02 +01:00
Mike Williams
05e9772d54 groups: extract common class methods into EDA_GROUP base class 2025-04-01 14:34:20 -04:00
Mike Williams
a90b8ec57a pcb: merge RunOnChildren/Descendants into one function with a mode 2025-03-27 13:16:09 -04:00
JamesJCode
ede5faee72 Implement dynamic assignment of component classes 2025-03-15 14:33:47 +00:00
Jeff Young
4b38932129 Group members are still children of the board (not
the group).
2025-03-09 17:59:32 +00:00
Jeff Young
880442e8ed Propagate damage from footprint children. 2025-03-07 17:52:53 +00:00
Jeff Young
7db3ccd98a Better algorithm for knocking out footprints.
(Though anything would have been as the previous
one didn't work at all.)
2025-02-24 23:01:07 +00:00
Jeff Young
907f21e739 Hatching knockout fixes. 2025-02-24 17:35:43 +00:00
Jeff Young
3f15b0d75b ADDED: hatched fills for shapes. 2025-02-24 11:08:29 +00:00
Jeff Young
4959b480c3 Cleanup stale comments. 2025-02-19 23:43:53 +00:00
Jeff Young
9c0214afc0 Cleanup. 2025-02-19 23:43:53 +00:00
Seth Hillbrand
0b2d4d4879 Revise Copyright statement to align with TLF
Recommendation is to avoid using the year nomenclature as this
information is already encoded in the git repo.  Avoids needing to
repeatly update.

Also updates AUTHORS.txt from current repo with contributor names
2025-01-01 14:12:04 -08:00
jean-pierre charras
edd7f5e229 BOARD_COMMIT::Revert(): protect against null pointer.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19011
2024-10-30 17:50:23 +01:00
jean-pierre charras
b2be5798cd Fix a typo probably due to a paste command. 2024-09-05 15:59:30 +02:00
Jeff Young
94f995c49e Reduce dependency on dynamic_cast.
(Especially where it is no-worky on MacOS.)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17245
2024-09-04 17:24:49 +01:00
jean-pierre charras
4ce9648d34 Fix a few minor Coverity and compil warnings. 2024-08-23 09:54:29 +02:00
Tomasz Wlostowski
a4936964e2 pcbnew: fix rebase issue in BOARD_COMMIT 2024-08-13 22:50:26 +02:00
Tomasz Wlostowski
048bbcb02b BOARD_COMMIT: allow to make PCB-editor specific commits outside the actual pcbnew
Useful for testing pcbnew's tools without building the actual pcbnew.
2024-08-13 22:50:26 +02:00
jean-pierre charras
8d53090581 Pcbnew: fix 2 issues after removing a track, especially ending on a teardrop
- Message panel display not always correctly updated (shows an old data)
- Incorrect updated ratsnest is some cases when removing a track ending on
a teardrop.
2024-08-13 19:54:09 +02:00
Jeff Young
b8819b4636 Another reduction in asserts. 2024-07-19 22:11:56 +01:00
Seth Hillbrand
cc850d0da0 Split out LSEQ/LSET from LAYER_ID
Separate the layer grouping classes for easier modification
2024-07-08 20:59:46 -07:00
JamesJCode
36c33e1ad4 Call board listeners after updating connectivity
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18277
(for v9)
2024-07-07 22:46:37 +01:00
Jeff Young
9fb07d886e PCB_GENERATOR_Ts are PCB_GROUP_Ts too.
Also, an item must already be in a commit to add it to a group.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17595
2024-06-05 10:51:24 +01:00
JamesJ
951065390e Add composite update callback to BOARD_LISTENER
Required for net inspector otherwise composite operations (such
as undo / redo, and length tuning) can result in multiple add /
remove events firing which results in inconsistent length state.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17527
(for 9.0)
2024-04-04 22:29:47 +00:00
Jeff Young
4ed2a0674a Minor cleanup. 2024-03-18 22:21:01 +00:00
Seth Hillbrand
6a8d2a7eb3 Store group id rather than group
We only need the group storage id for lookup.  Storing the KIID instead
of a copy of the group avoids unneeded overhead

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

(cherry picked from commit 7d1adff07184d61b59aee9582f7fa0220b3604da)
2024-02-28 13:27:38 -08:00
Jeff Young
e445249720 ADDED: PCB tables. 2024-02-24 20:05:51 +00:00
Jeff Young
995c4af51d Deleted items must have their ownership changed to undo/redo. 2024-01-28 11:13:48 +00:00
Jeff Young
eacebe63f1 We do undo on individual footprint children now.
Adding a commit record for the parent means we replace the
parent first on undo and then if a child was added we can't
find it to remove it.
2024-01-27 20:26:50 +00:00
Jeff Young
07cefa7883 More active tracking of undo/redo items. 2024-01-27 20:02:40 +00:00
Jeff Young
f4e123f57e !m_isBoardEditor != m_isFootprintEditor.
(There's also python, cli, etc.)
2024-01-26 12:47:01 +00:00
Marek Roszko
a282762686 Fix pcb drc in cli due to awkward !m_isBoardEditor logic with more awkward logic
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16744
2024-01-25 22:09:29 -05:00
Jeff Young
9d88a9f60a Fix typo causing OnItemsChanged() to get called too often.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16657
2024-01-24 11:36:56 +00:00
Jon Evans
d50e0811fb Fix QA build 2024-01-23 22:50:53 -05:00
Jon Evans
a46d409ec6 Make sure grouping commits follow board editor path 2024-01-23 21:22:23 -05:00
Jeff Young
d6b39c672e Footprint editor items always get added to footprint.
Also fixes an unrelated crash when assuming the current
editor is the board editor.
2024-01-21 22:51:36 +00:00
Jeff Young
e55ec85e19 Remove added items from group on revert.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16562
2024-01-10 17:36:31 +00:00