142 Commits

Author SHA1 Message Date
Jeff Young
5996cffabc EE -> SCH (no functional changes) 2025-03-13 13:15:47 +00:00
Seth Hillbrand
49a4699d5a ADDED: Local power symbol option
Local power symbols work like regular power symbols except that they are
scoped only the the sheet in which they are instantiated

Fixes https://gitlab.com/kicad/code/kicad/-/issues/2075
2025-03-04 17:07:46 -08:00
Jeff Young
afa4ebcc84 Handle exporting symbols into libraries already under LIB_MGR.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17840
2025-03-03 14:00:57 +00:00
Jeff Young
1c48e97cd7 Formatting. 2025-03-03 12:31:33 +00:00
Ian McInerney
7ad1103f55 Move toolbars to a serializable storage format 2025-02-28 01:57:37 +00:00
Jeff Young
c5bb59468d Get rid of assumptions about field order. 2025-02-24 11:08:29 +00:00
Jeff Young
7eb75720b5 Start to retire "alias" in favour of "symbol" and "derived symbol".
Note: terminology changes only.  No (intentional)
functional changes.
2025-02-24 11:08:29 +00:00
Jeff Young
aaca66351e Case-insensitive collision detection for symbol names.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/19370
2025-02-24 11:08:29 +00:00
Jeff Young
e19bce2f93 Reduce reliance on MANDATORY_FIELDS and their implied order. 2025-01-22 17:51:57 +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
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
John Beard
a20e2b8112 Eeschema: tighten deps of new-symbol dialog
After a refactor in the previous fix, it no longer needed
the access to the lib manager.
2024-12-18 23:54:20 +08:00
John Beard
50ae2ed825 Eeschema new symbol dialog: update parent symbol infobar when changed
This fixes the bug fixed by aris-kimi in
https://gitlab.com/kicad/code/kicad/-/merge_requests/1924, but adjusts
the logic to work with the new dialog filterable widget.
2024-12-18 23:17:43 +08:00
Jeff Young
6686ade45b Remove (somewhat atrophied) manual pretty printing.
Also fixes a bug where the pretty printer didn't insert
linebreaks for a forest (it assumed a single tree root).

Also further regularises bool and quote formatting.
2024-11-28 11:08:16 +00:00
Jeff Young
dfbbb5afa1 Pretty-print clipboard data. 2024-11-28 11:08:16 +00:00
John Beard
3bb0373808 Eeschema: use filterable comboxbox for parent symbols
This list can be very long and quite painful to find
the right item.
2024-10-27 05:13:32 +08:00
John Beard
51683915f9 Sym editor: prevent save as into a RO lib
This is probably a mistake, and it's more consistent
with the denial of the new symbol action to just disallow
up front than allow and present a more confusing UI later.
2024-10-14 20:36:26 +08:00
Jeff Young
f7f86174a0 Make sure symbol editor prefs go in symbol_editor file.
(And same for footprint editor.)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/18905
2024-10-13 20:14:14 +01:00
John Beard
c799966774 Handle pasting of image data from the clipboard
Also move some clipboard functions out of TOOL_MANAGER,
as they had no dependency on that class, and are just free
functions around wxTheClipboard.
2024-10-13 20:47:45 +08:00
John Beard
4455f2a5ac Symbol editor: disallow saving a symbol into its own inheritance chain
Without complicated and unintuitive juggling of inheritance links,
this produces circular references and crashes.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18903
2024-10-13 10:27:38 +08:00
John Beard
d3530451cf Symbol editor: implement cross-library saving inherited parts.
The choice is given to rename parts with the same names in the
new lib to avoid conflicts, or to just overwrite victims.

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/18371
2024-10-13 10:13:02 +08:00
John Beard
ed8b2b050f Sym editor: add save as (like save copy as, but opens the copy)
This seems quite easy in sym edit, but not so straightforward
to add the reverse case in fp edit.

Relates-To: https://gitlab.com/kicad/code/kicad/-/issues/18371

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/18902
2024-10-12 21:27:57 -06:00
Jeff Young
b8819b4636 Another reduction in asserts. 2024-07-19 22:11:56 +01:00
Jeff Young
ed0869aa0c Share more library tree code. 2024-06-08 19:06:10 +01:00
Alex Shvartzkop
16e3692e71 Build time optimizations. 2024-04-27 23:49:13 +03:00
Jeff Young
d77eae3e7e Collapse LIB_FIELD into SCH_FIELD. 2024-04-13 15:42:13 +01:00
Marek Roszko
e6be29daa0 Fix another UTF8 to wxString comparison 2024-04-12 22:38:38 -04:00
Jeff Young
5abc7145da Fold LIB_ITEM into SCH_ITEM. 2024-04-08 10:24:50 +01:00
Yon Uriarte
e824e5a267 Compiler warning: C4555 result of expression not used 2024-03-09 17:11:38 +00:00
Jeff Young
fb8f05fb34 Correctly report body style in symbol checker.
Also fixes a bug where off-grid pin locations were truncated.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16770
2024-01-26 18:11:23 +00:00
Jeff Young
ae735d3eb4 Renaming: replace convert with body-style.
No functional changes.
2024-01-26 16:21:03 +00:00
Seth Hillbrand
4e3d2a148d Fix typo 2024-01-12 14:51:32 -08:00
Seth Hillbrand
2aab24ef29 Prevent multiple reloads when saving
Avoid potential issues with Mac libedit crashes (hopefully)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/14865
2024-01-11 19:01:31 -08:00
Marek Roszko
9a890cdba9 Kick the wildcards and file exts into a static class, export it from kicommon 2023-12-27 21:10:01 -05:00
Ian McInerney
85f62c1fde Rename all schematic IO plugins 2023-12-24 01:22:21 +00:00
Ian McInerney
d8b47d18d3 Initial rename of file plugin infrastructure components to IO 2023-12-24 01:22:21 +00:00
Jeff Young
14d6ff8946 Change Save Symbol As... to Save Symbol Copy As...
See details in the bug report.  (It's very complicated.)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/12504
2023-10-28 22:25:48 +01:00
afkiwers
dc8a5865d5 Symbol Editor: SCH_HTTP special treatment
Added SCH_HTTP to receive special treatment, same like with database libraries!
2023-10-22 19:37:43 +00:00
Jeff Young
d5d07e64c9 Use IsShownOnScreen(), not IsShown(), if you really want to know if its visible. 2023-10-14 23:51:37 +01:00
Marek Roszko
8c6899b0d3 Tear out the eeschema conditional compile of PROJECT 2023-09-27 23:05:30 -04:00
Jeff Young
1fd3f4e375 Handle read-only libraries when saving symbol from canvas.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15519
2023-09-23 14:34:54 +01:00
Jeff Young
849a4656c8 Check value-follows-name case in symbol Save As.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15647
2023-09-14 23:56:05 +01:00
Alex Shvartzkop
ff49d5ada9 Fix ambiguous overloads on wx 3.3 2023-09-14 19:05:46 +03:00
Jeff Young
7d1dbb77c3 Update symbol editor's title bar when renaming the canvas symbol. 2023-09-12 16:52:47 +01:00
Jeff Young
634524dde5 Validate new symbol / save as symbol info before exiting dialog. 2023-09-05 22:07:58 +01:00
Alex Shvartzkop
e128896ba6 Schematic plugins refactoring, fixes for PCB plugins.
- Move PLUGIN_FILE_DESC to common.
- SCH_PLUGIN: rename Load -> LoadSchematicFile, Save -> SaveSchematicFile.
- Use PLUGIN_FILE_DESC and CanRead* in schematic plugins.
- Return none/unknown types from Find/GuessPluginType functions.
- Iterate over file types for file wildcards.
- Clean-up header checking in IO plugins.
- Use PCB plugin list in IO_MGR::GuessPluginTypeFromLibPath.
2023-08-31 05:08:03 +03:00
Wayne Stambaugh
1026596964 Allow symbols to be derived from other derived symbols.
[CHANGED] Symbols can now be derived from other derived symbols removing
          the requirement to derive from root symbols.
2023-08-24 07:59:32 -04:00
Seth Hillbrand
db8e15ce88 Require wxWidgets 3.2
Removes old defines and work arounds for earlier wx versions and adds a
CMake requirement to use at least 3.2 (or the minimum matching wxPython
version)
2023-08-23 22:02:56 +00:00
Ian McInerney
2fb6f19a84 Separate immediate and delayed action dispatch
Using a boolean argument just leads to a lot of trailing booleans in the
function calls and is not user friendly. Instead, introduce PostAction()
to send an action that runs after the coroutine (equivalent to passing
false or the default argument), and leave RunAction as the immediate
execution function.
2023-06-27 00:57:59 +01:00