Alex Shvartzkop
83af481688
Improve EAGLE file header detection.
2023-10-14 15:42:13 +03:00
Jeff Young
0b06a1376b
Don't turn an empty string into a '0'.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15871
2023-10-13 19:07:45 +01:00
Marek Roszko
0fe2e06949
Fix ambiguous cast compiler errors on MSVC
2023-10-12 19:07:12 -04:00
Wayne Stambaugh
50ec069a01
Fix build warnings.
2023-10-12 10:10:09 -04:00
Wayne Stambaugh
5d6ef69726
Coding policy and Doxygen comment fixes.
2023-10-12 09:36:28 -04:00
Alex Shvartzkop
b0f4adf052
Improve borderless items logic in schematic plotting.
2023-10-12 08:40:37 +03:00
jean-pierre charras
97fe27350f
symbol_checker: add more tests to validate the ssymbol.
...
especially, null sized rectangles and circles are tested.
2023-10-10 18:31:10 +02:00
Jeff Young
8c017be24a
Clearer naming.
2023-10-10 15:43:45 +01:00
Wayne Stambaugh
9ff8d02e60
Symbol library manager object changes.
...
* Fix issue handling symbols with multiple inheritance.
* Remove unused code from the symbol library manager object.
* Splits out the library buffer and symbol buffer object so the can be unit
tested without having to mock the symbol library manager object.
* Add unit tests for library buffer and symbol buffer objects.
2023-10-09 14:58:49 -04:00
Alex Shvartzkop
21adc0aac5
ADDED: Import vector graphics into Schematic editor (SVG, DXF).
2023-10-09 07:04:50 +03:00
Alex Shvartzkop
60d069757a
ADDED: Import vector graphics into Symbol editor (SVG, DXF).
2023-10-09 07:04:50 +03:00
Jeff Young
4d0ee276e8
Suppress "File: " when we're showing the Sheetfile field name.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15637
2023-10-07 10:41:02 +01:00
Jeff Young
b161105fce
Fix assertion failure in bus alias dialog.
2023-10-06 21:41:16 +01:00
Alex Shvartzkop
f197882f78
Enable translations for "Open cancelled by user." in some sch plugins.
2023-10-06 15:35:58 +03:00
jean-pierre charras
e48256d41a
DIALOG_SYMBOL_FIELDS_TABLE::OnExport(): better error messages.
2023-10-06 13:50:59 +02:00
Seth Hillbrand
d6c3f4d190
Protect against subgraph loops
...
Optimize the subgraph processing to avoid repeated loops when multiple
items belong to the same subgraph.
(cherry picked from commit 75de21314c
)
2023-10-05 09:20:26 -07:00
jean-pierre charras
706b42e6f2
SCH_COMMIT: when clearing all item flags, do not clear all item flags.
...
If a item is selected, its SELECTED, STARTPOINT and ENDPOINT flags cannot be cleared,
and must be still selected after changes to allow more move, rotate... commands.
Fix to previous commit 741c6f2d
2023-10-05 16:46:20 +02:00
Jeff Young
31c488bc23
NETINFO_ITEMs are owned by BOARD.
...
Lifecylce management must go through BOARD_COMMIT (or at least
the frame's undo/redo lists).
2023-10-04 21:01:33 +01:00
Jeff Young
e9bdfe7210
Save trace colors during session.
...
My first thought was to move the color out of the TRACE, which is
really a view object. However we can't make signals a first-class
citizen either, because they change depending on what the current
simulation tab is and so (for instance) we can only load in the
workbook signals for the current tab. Hours later I backed it all
out and arrived at this simpler, less "correct" solution.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14231
2023-10-04 17:13:08 +01:00
Jeff Young
ed4d66e76b
Remove dead code.
2023-10-04 17:13:08 +01:00
Franck Jullien
c010c7b0ea
eeschema: add 'Already placed' category when choosing symbol
2023-10-04 10:29:22 -04:00
Jeff Young
979942e31a
Output fields in both multi-unit and single-unit cases.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15811
2023-10-03 17:38:26 +01:00
Jeff Young
95f05ee869
Fix copy/pasta.
2023-10-03 17:14:21 +01:00
Jeff Young
9f5e583ced
Readability.
2023-10-03 17:14:03 +01:00
Jeff Young
9b60e99660
Use wxSTAY_ON_TOP instead of wxFRAME_FLOAT_ON_PARENT for choosers.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15808
2023-10-03 14:49:50 +01:00
Jeff Young
6fbbf981f0
Handle justification when hit-testing fields.
...
This steals the algo used in SCH_PAINTER to get the right coords
for the text.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15722
2023-10-03 14:36:13 +01:00
Jeff Young
0c055e15b7
Keep user-defined signals separate.
...
They can't be plotted till the end of the sim.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15803
2023-10-03 12:59:49 +01:00
Jeff Young
827942c560
Clarity.
2023-10-03 12:59:49 +01:00
Jeff Young
2dfdf0682f
Don't ask for empty data.
2023-10-03 12:59:49 +01:00
jean-pierre charras
a60411b159
Fix a few compil and Coverity minor warnings.
2023-10-03 08:22:03 +02:00
Marek Roszko
5759823ca0
Move JOB_EXPORT_SCH_PLOT to kicommon horribly pending further refactor of plotting
2023-10-02 20:48:26 -04:00
Jeff Young
a3d83cdb6d
Pass symbol netlist from Field Properties dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15806
2023-10-02 23:41:06 +01:00
Jeff Young
06446bb80e
Only expand lib tree when filtering.
2023-10-02 16:24:53 +01:00
Mike Williams
532ac6992a
Fields: make sure footprints get a footprint
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15796
2023-10-02 11:02:10 -04:00
Jeff Young
003acbd686
Clear render caches before plotting.
...
Also fixes a bug where text variables in LIB_TEXT weren't getting
expanded when plotting.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15765
2023-10-02 15:39:14 +01:00
Marek Roszko
6d3b846eb5
Add more missing destructor event cleanups
2023-10-02 07:22:00 -04:00
Jeff Young
cf02bb171f
Expose exclusion flags in search pane.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15776
2023-10-01 22:46:34 +01:00
Jeff Young
a82a007301
Allow user to affect width of field names column.
...
Without this there's no way to re-adjust the column width when new
items are added. Doing more auto-sizing would be another option,
but at some point we have to stop trying to be smarter than the
user. (And the resize algo already has bugs on Mac causing us to
make the column too short for "${ITEM_NUMBER}" for some reason.)
2023-10-01 20:47:47 +01:00
Marek Roszko
c5471bbe9f
Gracefully handle unknown schematic formats
...
Fixes KICAD-400
2023-10-01 10:32:33 -04:00
Marek Roszko
bfbba632df
Guard GetModificationTime with IsValid otherwise it'll return based on INT64_MIN.
...
Fixes KICAD-3Z0
2023-10-01 09:43:09 -04:00
Alex Shvartzkop
dca964092f
EasyEDA Std: import schematic images.
2023-10-01 16:21:31 +03:00
Alex Shvartzkop
979274af7c
EasyEDA Std Schematic: import net ports as global labels.
2023-10-01 16:21:28 +03:00
Marek Roszko
0fc3f20e4d
Fix assert from IsPower in search_handlers.cpp
...
Fixes KICAD-2C6
2023-10-01 09:20:19 -04:00
Thomas Pointhuber
7005dd7c48
altium: make special string parsing on pcb a bit more generic
...
Only special strings starting with a dot are supported. Parsing of concatenated special strings using quotes needs to be implemented, but at least a few test-cases are already there now.
2023-10-01 15:10:50 +02:00
Jeff Young
34769cec63
Filter line-endings from single-line Scintilla editors.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15793
2023-10-01 14:04:45 +01:00
Thomas Pointhuber
3b3e4fd34a
Move duplicated code of plugin.cpp and sch_plugin.cpp into a new plugin_utils located in commons
2023-10-01 13:58:38 +02:00
Jeff Young
a475b01a90
Remove ic parameter from voltage-controlled sources.
...
It was never supported by ngspice (or LTspice or pspice).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15787
2023-10-01 12:16:25 +01:00
jean-pierre charras
b227f9de61
Eeschema: fix a crash when loading a schematic if a symbol in a sheet has
...
a lib_name containing {slash} instead of /
(related to commits #2f51d22b and b2bf28f5
)
Fixes #15791
https://gitlab.com/kicad/code/kicad/-/issues/15791
2023-10-01 09:56:22 +02:00
Jeff Young
bbfe01d4c6
Write out datasheet & descr in fields as well as top-level elements.
2023-10-01 00:36:39 +01:00
Marek Roszko
2f2c8b9414
Fix printf assert
...
Fixes KICAD-41B
2023-09-30 15:38:23 -04:00
Jeff Young
423a5b9961
Fix format string specifier.
2023-09-30 17:38:44 +01:00
jean-pierre charras
b2bf28f559
Eeschema: fix a crash when loading a schematic if a symbol in a sheet has
...
a lib_id containing {slash} instead of /
(related to commit #2f51d22b)
Fixes #15791
https://gitlab.com/kicad/code/kicad/-/issues/15791
2023-09-30 18:21:18 +02:00
jean-pierre charras
7bc2d69ab7
Fix a typo and a Coverity warning
2023-09-30 18:17:09 +02:00
Jeff Young
e1c51ed192
A few performance improvements from profiling.
...
Most of them are very small; the removal of the Fracture() in
DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones() is the only
significant one.
2023-09-29 21:54:59 +01:00
Jeff Young
fa11e9138d
ADDED support for pin and fp filtering in FOOTPRINT_CHOOSER.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7176
2023-09-29 17:03:50 +01:00
Jeff Young
b592a6634e
Cleanup.
2023-09-29 00:13:13 +01:00
Jeff Young
974da4ea7c
Push most of DIALOG_CHOOSE_SYMBOL down into PANEL_SYMBOL_CHOOSER.
...
Includes a dialog wrapper (DIALOG_SYMBOL_CHOOSER) and a frame
wrapper (SYMBOL_CHOOSER_FRAME).
2023-09-29 00:13:12 +01:00
Jeff Young
23033451b1
Cleanup.
2023-09-29 00:13:12 +01:00
Mike Williams
49a8c9eb8d
Schematic: pin helpers, add wiring tool
2023-09-28 15:07:11 -04:00
Wayne Stambaugh
2f51d22b3a
Fix schematic editor crash when updating symbols.
...
Some how symbol names that still have escaped '/' character get mixed with
symbol names that have '/' characters now that it is no longer an invalid
LIB_ID character. This was causing derived symbols to loose the link to
the parent symbol. This fix replaces any instances of "{slash}" with "/"
to convert symbol names to the proper escaping.
Thanks to JP for the inspiration for the fix.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15715
2023-09-28 14:30:15 -04:00
Mike Williams
5f88c132c9
Schematic: add pin helpers menu (quickly breakout pins)
2023-09-28 11:44:52 -04:00
Matthias Breithaupt
be9e4c79ee
CLI: Sanitize filename when exporting symbol as svg
...
When using symbol names as filenames, invalid characters and
characters that might be mis-interpreted (e.g. '/') have to be
removed from the name to prevent unexpected behavior.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15751
2023-09-28 13:02:47 +00:00
Marek Roszko
8c6899b0d3
Tear out the eeschema conditional compile of PROJECT
2023-09-27 23:05:30 -04:00
Jon Evans
017dafc8e3
Just use \n for newline
...
Fixes issues with extra blank lines in CSV on some platforms
2023-09-27 15:46:23 -04:00
afkiwers
c97db9b6c4
fixed for field duplication
...
This removes case-sensitivity when mapping.
2023-09-27 18:12:39 +00:00
Jeff Young
1047130046
Push most of footprint chooser into PANEL_FOOTPRINT_CHOOSER.
...
Create 2 wrappers for it: DIALOG_FOOTPRINT_CHOOSER and
FOOTPRINT_CHOOSER_FRAME. The first now gets called from wxGrid
editors, text button editors (such as Change Footprints), etc.
Retire FOOTPRINT_VIEWER_FRAME_MODAL. FOOTPRINT_VIEWER_FRAME still
exists, but has very few uses at this point.
2023-09-27 16:02:13 +01:00
Mike Williams
0000fcbe50
Schematic Setup: add BOM Preset importing
2023-09-27 09:14:25 -04:00
Mike Williams
cb115189f6
Symbol Fields Table: menu shortcut should start in edit tab
...
The BOM shortcut goes to Export, this makes them symmetrical.
2023-09-27 09:14:25 -04:00
Seth Hillbrand
12ebb2bbfa
Set pinmap after updating pins
...
When duplicating and existing symbol, we must set the pins before
setting the lib symbol as the lib symbol will generate a pin map that
will be broken by the shift to new pins
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15728
2023-09-26 11:31:16 -07:00
Jeff Young
54171ec030
Add action for switching to Project Manager.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15740
2023-09-26 17:25:57 +01:00
Jeff Young
aab0696bb6
Zoom undo/redo for simulator.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14580
2023-09-26 13:19:41 +01:00
Marek Roszko
37e8a008ab
Remove obsolete config_params.h includes
2023-09-25 20:40:29 -04:00
Jeff Young
92cbd0f599
Allow Never Show Rescue Symbols to be turned back off.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15733
2023-09-25 23:58:15 +01:00
Jeff Young
bf493f32f5
Nullptr safety for various panels.
...
Also moves preference saving out to parent as different parents
save different settings.
2023-09-25 12:35:54 +01:00
Jeff Young
7835b8ddc7
Bring various appearance managers into line over preset editing.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15726
2023-09-25 12:35:54 +01:00
jean-pierre charras
938001250d
SCH_SEXPR_PARSER: fix missing init of pixels size in internal units.
...
(the pixel size was the default for 300PPI, so the bounding box was incorrect
for images not using 300 PPI)
Avoid also magic numbers in SCH_BITMAP code.
2023-09-25 12:06:23 +02:00
Seth Hillbrand
91450c22cc
Allow disambiguation menu configurability
...
Adds an advanced config flag to all testing different values for
different users.
Related to https://gitlab.com/kicad/code/kicad/-/issues/15128
2023-09-24 16:33:05 -07:00
Andre Iwers
f2fdf0f3df
httplib: add support for exclude attributes
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15720
2023-09-24 13:37:01 +00:00
jean-pierre charras
741c6f2d55
SCH_COMMIT: when clearing all item flags, do not clear SELECTED item flags.
...
If a item is selected, its SELECTED flag cannot be cleared without managing
selections stored in tools, and must be still selected after changes.
Fixes #15671
https://gitlab.com/kicad/code/kicad/-/issues/15671
2023-09-24 11:07:04 +02:00
Marek Roszko
121ea99824
Move the settings path to PATHS to allow shifting other classes into kicommon
2023-09-23 20:06:58 -04:00
Marek Roszko
f8e33be07f
Break out the boundary violating parts of gal into common through subclassing
2023-09-23 09:37:47 -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
463e7c3b30
Improve performance & responsiveness of sim updates.
...
The x-axis only needs to be fetched once per update. Same for
redrawing the screen. And there's no reason to fetch more y data
than we have x data for (which happens to subsequent traces as
the sim is still running as we're updating).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-22 21:40:52 +01:00
Seth Hillbrand
bdb7b99fc8
Don't destroy the pin cache in symbols
...
SCH_PIN pointers are used through KiCad and removing them without a
global refresh risks crashes. A safer approach is to simply reuse the
SCH_PIN structures, updating the data to the revised library
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15715
2023-09-22 11:28:30 -07:00
Seth Hillbrand
b837aa823c
Disable non-KiCad import for project-mode
...
Adds warning if project schematic contains data
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15570
2023-09-22 09:21:56 -07:00
jean-pierre charras
a6e883327a
Fix typos (paste issue?) in SCH_TEXT::FlipHJustify() and SCH_TEXT::Rotate90().
...
Fixes #15708
https://gitlab.com/kicad/code/kicad/-/issues/15708
2023-09-21 16:12:36 +02:00
jean-pierre charras
e152f97f35
Fix minor Coverity warnings. Small code cleaning in pcb_parser.cpp
2023-09-21 11:33:29 +02:00
Seth Hillbrand
16324facaf
Use kicad_algo when possible
2023-09-20 10:32:37 -07:00
Jeff Young
2f475d99dd
Don't update signals and measurements for each refresh.
...
We only need to do them on the final refresh.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-20 17:34:34 +01:00
Jeff Young
1ff279bf72
Don't auto-adjust time axis while sim is running.
...
Just use start and end time.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-20 17:34:34 +01:00
Mike Williams
398a336d91
BOM Generator: redirect BOM buttons to new exporter
...
Also add legacy generator menu item.
2023-09-20 11:12:03 -04:00
Mike Williams
9541e45502
BOM Exporter: allow using presets from the command line
2023-09-20 10:57:43 -04:00
Mike Williams
6425c5cc1a
Symbol Fields Table: fix issues with selecting row of starting selection
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/15684
2023-09-20 09:42:52 -04:00
Mike Williams
dd0743d766
Symbol Fields Table: add fixes around preset modifications
2023-09-20 09:42:52 -04:00
Seth Hillbrand
7d12e1c4f5
Fix crash in incremental update and bus conn
...
We store our connectivity dirty flag with the SCH_ITEM but we generate
SCH_CONNECTION based on the SCH_ITEM and the SCH_SHEET_PATH. For this
reason, we need to avoid clearing the connectivity dirty flag until
we've finished processing all instances of the SCH_ITEM in the graph
This also means that we need to allow getting the SCH_CONNECTION pointer
even when the connectivity is still dirty (getting SCH_CONNECTION
happens based on SCH_ITEM and SCH_SHEET_PATH, not just SCH_ITEM)
2023-09-19 15:55:19 -07:00
Jon Evans
d371bb06ae
New macOS installation scripts
...
Replaces BundleUtilities that got broken by recent updates
and is basically unmaintained by cmake.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15376
2023-09-19 17:23:30 -04:00
Jeff Young
8672cdb3bd
Handle power operating points.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15689
2023-09-19 17:37:51 +01:00
Jeff Young
ff88ed76f0
Hack to prevent timer event starvation on MSW.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15673
2023-09-19 17:04:05 +01:00
Jon Evans
1635df57a3
httplib: code style fixes
2023-09-18 21:37:34 -04:00
Jon Evans
8f6ae8c6b3
httplib: code style / spelling fixes
2023-09-18 21:27:39 -04:00