91 Commits

Author SHA1 Message Date
Jeff Young
1b8119056f More code sharing. 2025-07-26 21:24:37 +01:00
Jeff Young
2dfacd648f Share more code. 2025-07-25 18:03:49 +01:00
Jeff Young
5b91a24380 Retire WINDOW_FREEZER in favour of wxWindowUpdateLocker.
Also pulls out previous fix to a Sentry issue I can
no longer find, at least until I figure out what
went wrong.
2025-07-11 13:21:04 +01:00
Jeff Young
53c90b0469 Upgrade ShowPlayer re-entrancy guard (KICAD-XAC). 2025-07-10 17:54:42 +01:00
Jeff Young
1faa9800dc Row height consistency.
Rats.  Also got tangled up in another commit which
removes some dead code.
2025-06-19 14:29:37 +01:00
JamesJCode
f1344e921a Final purge of 'tuning profile' -> 'delay profile' in time-domain code
Only mention remains in the delay profile settings JSON
2025-04-19 00:30:34 +01:00
JamesJCode
eb17ebee4e Implement time-domain length tuning
- Adds time and delay units
- Adds time domain tuning parameters entry and storage
- Adds pad-to-die delay property
- Adds time domain parameter interface for length / delay calculations
- Adds unit tracking for numerical constants through LIBEVAL
   - Will need future work to truly propagate through binary expressions
- Adds time domain tuning to meander placers
- Adds time delay display to net inspector panel
- Modifies DRC to handle time domain constraints
2025-04-17 21:46:56 +01:00
Dmitry Rezvanov
a3fae053c4 pcbnew: Add sorting functionality for netclass assignments
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18819
2025-04-15 09:32:16 -07:00
Jeff Young
31b788c04f Add a bit of protection from integer overflows.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19660
2025-03-11 15:11:31 +00:00
Wayne Stambaugh
5c8f4697ca Common folder housekeeping part 1. 2025-01-12 12:06:45 -05: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
JamesJCode
68196ad3f3 Don't add default netclass for missing PCB or schematic colors
We don't allow these to be set on the default netclass, so we
don't need to resolve it if they are missing in a custom netclass.
The renderer will use the colors specified in the application
color scheme.
2024-09-20 18:46:39 +01:00
JamesJCode
19d5d21f23 Move netclass highlighting style to application-level setting
Also includes bugfix whereby wires, junctions, and bus entries
were not subject to override of local colors.
2024-08-12 23:52:01 +01:00
JamesJCode
6371b15aa4 Implement highlighting style for netclass colors 2024-08-12 21:39:07 +01:00
JamesJCode
d95901d981 Fix import netclass colors to PCB for new default netclass position 2024-08-12 19:53:36 +01:00
JamesJCode
0aa82b9a04 Correctly handle read-only fields for default netclass 2024-08-12 18:13:02 +01:00
James J
7ce00e511b Multi-netclass support 2024-07-26 20:49:29 +00:00
JamesJCode
9e1a5eb1bd Eeschema: Only assign nets with resolved netclasses to the label map
Also fixes a bug where the pattern assignment cache was not cleared
if all pattern assignments were deleted in the setup netclasses
panel.
2024-05-07 20:16:17 +01:00
Alex Shvartzkop
16e3692e71 Build time optimizations. 2024-04-27 23:49:13 +03:00
Jeff Young
cd64630661 Remember shown columns in netclass setup.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17852
2024-04-25 08:34:36 +01:00
JamesJ
5f4c7a52e4 Add netclass color management / import functionality to PCB setup dialog
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16908

ADDED Netclass color column in board setup dialog
ADDED Import netlist colors from schematic button in board setup dialog
2024-02-28 23:13:21 +00:00
Jeff Young
98bc03919d Nullptr safety. KICAD-7DM 2024-02-07 14:21:44 +00:00
Marek Roszko
3960c53225 A few tweaks for hidpi 2024-02-05 00:52:11 -05:00
Wayne Stambaugh
92c2ddf77a Do not parent dialogs to non top level windows in panels or widgets. 2024-02-03 10:40:28 -05:00
Jeff Young
8251fca66a performance efficiencies 2023-12-18 17:39:29 +00:00
Jon Evans
eb5b3db063 Add bitmap bundle support to BITMAP_SCALE
Change a bunch of buttons and toolbars to use it

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14119
2023-10-22 14:02:06 -04:00
Jeff Young
ef92429ac2 Implement changed notifiers for textvar, netclasses and severities.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15440
2023-09-17 17:35:15 +01:00
Jeff Young
ddc6ecf7be Lazy loading of Schematic Setup panels. 2023-05-11 11:43:10 +01:00
Jeff Young
9ae8255202 Insta-prefs. 2023-05-10 18:14:14 +01:00
Jeff Young
d01c023d5a Retire the lib-tree scoring algorithm.
It appears to cause more confusion than help.

Fixes https://gitlab.com/kicad/code/kicad/issues/13905
2023-04-14 23:35:27 +01:00
Wayne Stambaugh
66f6168163 Fix mode-less dialog issues.
Don't assume the dialog is mode-less and call Destroy() from within a
dialog method.  This will most assuredly crash if the dialog is shown
modally or quasi-modally.

Don't leak memory for mode-less dialogs created on the stack.  Make sure
when the parent frame window is closed that all mode-less dialog memory
is cleaned up.  Dialogs are not child windows like controls and toolbars
so their memory does not automatically get cleaned up when the parent
window is destroyed.

Do not directly access frame parent window's pointer in dialog destructors.
Apparently the tear down order when destroying mode-less dialogs is not
guaranteed so the parent window may get deleted before the dialog causing
a crash when accessing the parent window pointer from the dialog dtor.

Do not close mode-less dialogs in the parent frame's destructor.  This
doesn't guarantee that the dialog(s) will be destroyed before the parent
but it may reduce some careless mode-less dialog event handling in the
future.
2023-03-13 12:04:01 -04:00
Jeff Young
9b9efb9002 Cache for netclass pattern assignments. 2023-03-06 13:56:04 +00:00
Jeff Young
30c9deb9d5 Flat(er) look for paged dialogs. 2023-01-11 01:11:25 +00:00
Jeff Young
c0872364d4 Get rid of bloated bitmap buttons on wxWidgets 3.2. 2022-12-13 20:48:02 +00:00
Simon Richter
2214e853c1 Make a few variables const 2022-12-08 18:22:25 +00:00
Simon Richter
d6c6116e67 Calculate weighted column width locally
Multiplying the global variable also modifies all columns to the right,
which is not a problem right now because none exist, but might be in the
future.
2022-12-08 18:22:25 +00:00
Jeff Young
cf581137d8 Handle multiple unitProviders in a WX_GRID.
This allows us to provide a more consistent and less buggy presentation
of the netclasses grid in both eeschema and pcbnew.

Fixes https://gitlab.com/kicad/code/kicad/issues/12826
2022-11-05 10:23:12 +00:00
Jeff Young
e02c05d38f Add unit and eval support to WX_GRIDs.
Fixes https://gitlab.com/kicad/code/kicad/issues/1871

Fixes https://gitlab.com/kicad/code/kicad/issues/4285
2022-10-11 23:40:58 +01:00
Jeff Young
19d270fe74 Text size sanity checking for TEXT_ITEMS_GRID.
Oh dear, there was a bunch going on here.  Firstly the move from int
to long long int for ValueFromString() means that we were no longer
catching overflows (as we were C-style casting it back to int in many
places).  But even when the overflow is caught, it would run in to
wxWidgets' empty string bug while trying to log it.

Fixes https://gitlab.com/kicad/code/kicad/issues/12577
2022-10-06 13:19:08 +01:00
Jeff Young
c0a666507c Work around more instances of the wxWidgets color string locale bug.
Fixes https://gitlab.com/kicad/code/kicad/issues/12552
2022-09-30 20:56:25 +01:00
Jeff Young
45d6b4a9fc Readability improvements. 2022-09-19 11:18:20 +01:00
Mark Roszko
b00178adb3 Nuke base_units from orbit 2022-09-16 04:38:10 +00:00
Jeff Young
c30a557810 ADDED netclass assignment from PCB canvas.
Fixes https://gitlab.com/kicad/code/kicad/issues/5975
2022-09-03 19:29:59 +01:00
Jon Evans
474d732d94 Fix for wx3.2 2022-08-28 08:53:25 -04:00
Jon Evans
7d73376bbd Fix assertion when no netclass assignments exist 2022-08-28 08:28:13 -04:00
Jeff Young
3da2f79d0e Fix initialisation order issue in PANEL_SETUP_NETCLASSES. 2022-08-26 17:05:25 +01:00
Jeff Young
b2a2d66005 Move Bus Definitions to common GUI paradigm in Schematic Setup.
Also includes a change to the std::initializer_list stuff to try and
fix a crash.
2022-08-21 12:29:51 +01:00
Jeff Young
508df402f6 Cleanup. 2022-08-19 18:54:19 +01:00
Seth Hillbrand
4b3ac52b1d Fix shadowed variables 2022-08-15 08:03:30 -07:00
Jeff Young
84138d5039 Fix bug adding netclass in Eeschema. 2022-08-14 23:26:40 +01:00