Commit Graph

7981 Commits

Author SHA1 Message Date
Jeff Young 29841ba315 Bring ERC & DRC dialogs into parity.
Fixes https://gitlab.com/kicad/code/kicad/issues/9350
2022-01-22 22:27:41 +00:00
Jeff Young de49f5090d Formatting (and auto reduction). 2022-01-22 12:16:07 +00:00
Jeff Young 4665cdcdc5 Allow more (lots more) unfold from bus menu entries.
Fixes https://gitlab.com/kicad/code/kicad/issues/10529
2022-01-21 17:41:05 +00:00
jean-pierre charras 242e66355c SYMBOL_VIEWER_FRAME: fix refresh of the canvas after selecting a new symbol. 2022-01-21 16:37:58 +01:00
jean-pierre charras 694ae59664 fix a minor compil warning (shadowed vars) 2022-01-21 14:09:42 +01:00
Jeff Young c8a50d9b50 Remove unit-less angles from VECTOR2I/D APIs. 2022-01-20 23:58:20 +00:00
Seth Hillbrand 16aca901df Clear Undo list when renaming
Our undo/redo list is tied to the screen that gets cleared when we
reload the file after renaming.  We need to clear the Undo list at this
point to prevent possible crashes when moving too far back in the stack

Fixes https://gitlab.com/kicad/code/kicad/issues/10504

(cherry picked from commit 323a069738)
2022-01-20 11:29:05 -08:00
Seth Hillbrand cffc99e384 Don't close filled polylines when printing
Eeschema/libedit support open, filled polylines.  When printing, this
should be drawn as a fill, followed by the polyline to avoid assumptions
about closed polygons in the graphic code

Fixes https://gitlab.com/kicad/code/kicad/issues/10537

(cherry picked from commit 615eda816e)
2022-01-20 10:54:36 -08:00
Jeff Young 3ba89f50ef Maybe, just maybe, fix LibEdit arc parsing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10455
2022-01-19 22:22:18 +00:00
Jeff Young 8445783216 Fix backwards arcs in legacy LIB_ARCs.
Fixes https://gitlab.com/kicad/code/kicad/issues/10455
2022-01-18 14:08:47 +00:00
jean-pierre charras 380cb452b2 fix an issue in a bom script (extra empty lines created)
Fixes #10473
https://gitlab.com/kicad/code/kicad/issues/10473
2022-01-18 13:49:50 +01:00
jean-pierre charras 25fca2abb7 fix a minor compil warning 2022-01-18 13:49:50 +01:00
Jeff Young f310a5b986 Excise deci-degrees from trigo. 2022-01-18 11:44:55 +00:00
Jeff Young b828355206 A bit more angle cleanup. 2022-01-18 09:48:24 +00:00
Jeff Young de31b813f3 Angle cleanup in the Cadstar importer. 2022-01-18 02:31:37 +00:00
Jeff Young 622f94e7b9 Angle cleanup in Altium importer. 2022-01-18 02:31:37 +00:00
Jeff Young 0218b782f4 Angle cleanup in Eagle importer. 2022-01-18 02:31:37 +00:00
Jeff Young dcaec78cc5 A bit more angle cleanup. 2022-01-18 02:18:55 +00:00
Thomas Pointhuber 0129e49b79 altium: Introduce new ALTIUM_COMPOUND_FILE object to handle file opening and searching for streams at a central place 2022-01-17 19:54:26 +01:00
Jeff Young 2defd8d911 Move show-bounding-boxes to a tool on the toolbars. 2022-01-17 11:56:40 +00:00
Jeff Young 5cc3368b14 Fix bounding boxes and hittesting for arcs in eeschema. 2022-01-16 23:54:59 +00:00
Jeff Young e61144d45a Finish with EDA_ANGLE. 2022-01-16 21:15:40 +00:00
dsa-t bc1ff6756f Cross-probing/selection for multiple items (SCH->PCB) 2022-01-16 20:29:03 +00:00
Jeff Young e84c574830 Some more EDA_ANGLE cleanup. 2022-01-16 19:16:18 +00:00
jean-pierre charras 516d038bdf Eeschema: fix incorrect stored rotation value in file of the global and hierarch. labels.
The stored value was the rotation of the text (always 0 or 90 deg), but these labels can also
be rotated by -90 or 180 deg
Fixes #10450
https://gitlab.com/kicad/code/kicad/issues/10450
Fixes #10457
https://gitlab.com/kicad/code/kicad/issues/10457
2022-01-16 17:19:36 +01:00
Jeff Young 9b661aea10 EDA_ANGLE for plotters.
Also fixes a compile error in the PNS Playground.
2022-01-16 01:19:45 +00:00
Jeff Young 2b14b60c32 Resolve text variables in eeschema before passing to pcbnew.
Fixes https://gitlab.com/kicad/code/kicad/issues/10429
2022-01-15 01:30:03 +00:00
Jeff Young a533d64417 Apply default line style.
Fixes https://gitlab.com/kicad/code/kicad/issues/10388
2022-01-14 16:08:19 +00:00
Jeff Young 07013d00e1 More EDA_ANGLE. 2022-01-14 16:08:19 +00:00
Jeff Young 1b19ff5f42 More EDA_ANGLE changes. 2022-01-14 16:08:19 +00:00
Jeff Young 70ad554343 Coverity fixes. 2022-01-14 16:08:18 +00:00
Jeff Young e048e51f5d Improve SNR of EDA_ANGLE stuff. 2022-01-14 16:08:18 +00:00
jean-pierre charras d0f2c20235 Define our kicad font name only once, and do not translate it.
Especially using a translated name breaks kicad config and files because
in non English languages both translated and not translated names were used in code.
2022-01-13 14:32:55 +01:00
Seth Hillbrand e244ce1431 Fix cherry-picked wxPoint 2022-01-12 15:49:03 -08:00
Seth Hillbrand d3f24308e6 Handle rotated symbol rectangles in Eagle import
Fixes https://gitlab.com/kicad/code/kicad/issues/10360

(cherry picked from commit dcb8f29317)
2022-01-12 15:11:18 -08:00
dana 8373180cbb Handle Unicode clipboard data in pcbnew and symbol editor
Fixes #10323
2022-01-12 17:15:47 +00:00
Seth Hillbrand 5a3d53d9e4 Catch default autowire case
Since we are dereferencing the optional, we need to ensure it exists in
all cases

Fixes https://gitlab.com/kicad/code/kicad/issues/10394

(cherry picked from commit 56d87a8613)
2022-01-12 09:03:44 -08:00
jean-pierre charras a709d97a32 SCH_LABEL_BASE::Plot(): Plot fields. 2022-01-12 11:08:34 +01:00
jean-pierre charras b3072cc16b SCH_PAINTER, DrawLine: gives a minimal length to lines having a 0 length
Lines with start point = end point always create problems in OpenGL (not drawn).
2022-01-12 09:44:30 +01:00
Franck Bourdonnec 3d8288f919 Remove unused vars, verified there was no other intention with them;
rectangle are OK
2022-01-11 20:16:35 +00:00
Jeff Young 062f5e3177 Undo for SCH_SHAPEs.
Fixes https://gitlab.com/kicad/code/kicad/issues/10373
2022-01-11 18:33:54 +00:00
Jeff Young a23f6e4e92 Handle border colors for SCH_SHAPEs.
Fixes https://gitlab.com/kicad/code/kicad/issues/10361
2022-01-11 18:18:11 +00:00
Jeff Young 184bcf6520 Fix failure of SCH_SHAPE to pick up default line width.
Fixes https://gitlab.com/kicad/code/kicad/issues/10376
2022-01-11 17:40:49 +00:00
Jeff Young f9927ab675 Fix Text Properties dialog layout.
Fixes https://gitlab.com/kicad/code/kicad/issues/10368
2022-01-11 16:00:38 +00:00
Jeff Young 267eca28cd Font support for global edit text & graphics dialogs. 2022-01-11 15:34:24 +00:00
Jeff Young 8f7d2dd06a More VECTOR2D -> VECTOR2I and wxPoint cleanup. 2022-01-11 14:20:14 +00:00
Seth Hillbrand d5faac7614 Better fix for missing end segment
Rather than skipping our endEdit() call in libedit, we need to
parameterize whether we want the shape open/closed.  Closed will remove
the last segment if it lands on the first point.  We don't want that
but we do want to remove the last point if it duplicates the second to
last (in the case of double-clicking)

Fixes https://gitlab.com/kicad/code/kicad/issues/10334

(cherry picked from commit 55020c2b89)
2022-01-10 13:39:39 -08:00
Jeff Young 7d032f9c2f Outline font rendering for Cairo, plotter, printer and 3D viewer.
Fixes https://gitlab.com/kicad/code/kicad/issues/10319
2022-01-10 01:54:28 +00:00
Jeff Young 76368af7b9 Font cleanup and bug fixes. 2022-01-09 18:33:53 +00:00
Jeff Young 92d5a3e763 Clear caches when changing global default font. 2022-01-09 11:34:20 +00:00
Jeff Young 27c967421c Commenting and "auto" reduction. 2022-01-08 16:47:45 +00:00
Jeff Young 04c76f10e9 Performance enhancements for fonts. 2022-01-08 16:47:45 +00:00
Jeff Young 438c63f587 Fix outline font boundingbox issues. 2022-01-08 16:47:45 +00:00
Jeff Young aef2a3fca4 Default font for eeschema. 2022-01-08 16:47:45 +00:00
Jeff Young a2030a5956 GUI for font selection. 2022-01-08 16:47:45 +00:00
Ola Rinta-Koski 72b69e8d7f File format changes for fonts. 2022-01-08 16:47:45 +00:00
Seth Hillbrand 04c46a8fd2 Correct return type in mapCoords 2022-01-07 09:08:40 -08:00
Seth Hillbrand 3d88f37949 Switch mapCoords to VECTOR2I 2022-01-07 08:37:37 -08:00
Seth Hillbrand eb271ca7fb Don't deduplicate schematic polygon points 2022-01-07 08:29:34 -08:00
Seth Hillbrand 4cdc9d3857 Don't deduplicate symbol polygons
SHAPE_LINE_CHAIN will, by default, remove duplicate points when
appending.  We don't want to do this when constructing our polygons in
symbol editor, so we need to explicitly call the routine without
deduplication

Fixes https://gitlab.com/kicad/code/kicad/issues/10289

(cherry picked from commit 62f8603353)
2022-01-07 08:25:49 -08:00
Seth Hillbrand c9fc15b5eb Clear edited point when exiting tool
When leaving the main point editor loop, we need to ensure that the edit
point is cleared as well.  This is usually cleared by a ClearEvent call
but in case this is missed, we need to ensure that other tools are not
caught out

Fixes https://gitlab.com/kicad/code/kicad/issues/10288

(cherry picked from commit 9a2332dfcf)
2022-01-07 08:25:49 -08:00
jean-pierre charras e00e9ff41f PANEL_TEMPLATE_FIELDNAMES: fix incorrect management of boolean options
(it was impossible to disable them)
Fixes #10280
https://gitlab.com/kicad/code/kicad/issues/10280
2022-01-06 19:00:52 +01:00
Seth Hillbrand 3ace4446e7 Use 'special' escaping for certain fields
Most fields are escaped using the `\` notation.  But the VALUE field and
the symbol name need to be escaped using braces notation.

Fixes https://gitlab.com/kicad/code/kicad/issues/10097

(cherry picked from commit 71e7b4b77b)
2022-01-05 17:19:36 -08:00
Seth Hillbrand 88a8ad2ca1 Keep symbol synced with edit tool
Undo/Redo can change the symbol referenced by the symbol drawing tool.
This updates the current symbol before important steps to keep the
system synced

Fixes https://gitlab.com/kicad/code/kicad/issues/10125

(cherry picked from commit b8a7a66a0a)
2022-01-05 16:52:02 -08:00
Seth Hillbrand 5a8b0921eb Don't remove last point in libedit
SHAPE_LINE_CHAIN in libedit doesn't make a polygon, so we always need
the last point and it shouldn't be closed

Fixes https://gitlab.com/kicad/code/kicad/issues/9934

(cherry picked from commit 55087a9e82)
2022-01-05 16:06:38 -08:00
Steffen Mauch 3ced3afa68 eeschema: automatic generated symbol library from EAGLE plugin does not include footprint reference
Fixes https://gitlab.com/kicad/code/kicad/issues/10262
2022-01-05 19:48:40 +00:00
Seth Hillbrand e4961cb956 Update pin cache when undoing
The pin cache is invalidated by swap, so we need to ensure that it is
reset when we undo a change to the pins in schematic editor

Fixes https://gitlab.com/kicad/code/kicad/issues/10272

(cherry picked from commit 7f1648934f)
2022-01-05 11:33:35 -08:00
Steffen Mauch 502e34349e eeschema: EAGLE plugin does not reference footprint with library suffix
Fixes https://gitlab.com/kicad/code/kicad/issues/10261
2022-01-05 19:14:27 +00:00
Seth Hillbrand 30549a5e6a Don't strip extensions twice in BOM export
Exporting the Bill of Materials uses the netlist exporter.  Both of
these routines were stripping the extension, leading to projects like
"test.project.kicad_pro" having the project name stripped.  We separate
the BOM netlist export from generic plugin netlist export to allow the
correct behavior when exporting netlists and generating BOMs

Fixes https://gitlab.com/kicad/code/kicad/issues/10270

(cherry picked from commit bef762e652)
2022-01-05 11:07:49 -08:00
Seth Hillbrand 9ca41cc8ee Set readable flags correctly on open
Missing files may be thrown during open.  These should have existence
and readable flags set correctly

(cherry picked from commit a05ec04ee8)
2022-01-05 09:55:51 -08:00
jean-pierre charras cd0ac9e698 eeschema, DIALOG_FIELD_PROPERTIES: fix a few issues.
(incorrect handling of H and V justify bitmap buttons
Fixes #10267
https://gitlab.com/kicad/code/kicad/issues/10267
2022-01-05 17:25:18 +01:00
Seth Hillbrand b0fddef9b4 Don't rename existing schematic file
We should never leave a situation where the schematic file may no longer
exist (if the first rename succeeds and the second fails).  So, make a
backup copy of the original schematic file and then attempt to rename
the autosave over the first file.  In this case, if either attempt
fails, we do not lose the original file

Fixes https://gitlab.com/kicad/code/kicad/issues/10074

Fixes https://gitlab.com/kicad/code/kicad/issues/10256

Fixes https://gitlab.com/kicad/code/kicad/issues/10219

(cherry picked from commit b1658fdf9a)
2022-01-04 20:28:21 -08:00
Marek Roszko 726d873c53 Tear down the wxPoint trigo helpers 2022-01-04 21:23:11 -05:00
Seth Hillbrand dda569d486 Don't split legacy paths
The '.' is a valid character in the legacy preferences, not a separator.
Also adds fail-safe catch for JSON throws

Fixes https://gitlab.com/kicad/code/kicad/issues/10211

(cherry picked from commit a326d777f0)
2022-01-04 11:09:40 -08:00
jean-pierre charras c2b54faceb CvPcb: fix crash due to a null pointer: pcbconfig() can return null.
CvPcb has no config option and pcbconfig() returns nullptr.
In this case use default settings.
Fixes #10250
https://gitlab.com/kicad/code/kicad/issues/10250
2022-01-04 14:51:32 +01:00
Marek Roszko ac715d2e51 Scoop up some more wxPoint instances 2022-01-03 20:00:53 -05:00
Jeff Young e21fa31f64 Rip out rest of macHack architecture. 2022-01-03 22:09:56 +00:00
Roberto Fernandez Bautista 2d3624a016 Rename ComparePageNumAndName -> ComparePageNum 2022-01-02 23:20:17 +00:00
Jon Evans 9daa4d0e2c Move duplicate field handling into field parser
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10130

(cherry picked from commit ea99c42df6)
2022-01-02 13:19:54 -05:00
Jeff Young 89c0f8e297 Move to new font engine. 2022-01-02 14:57:03 +00:00
jean-pierre charras c108d25897 Fix mirroring tests issues in qa tests for eeschema 2022-01-02 15:44:52 +01:00
jean-pierre charras e6087f361a Add forgotten fix 2022-01-02 15:08:09 +01:00
jean-pierre charras 797de9d327 Fix some issues (but not all) in qa tests for eeschema
The main fix is for errors in SCH_TEXT and derived:
qa test expects 4 rotations is an identity transform:
This is false if the item has autoplaced fields.
The fix clears autoplaced flags.
2022-01-02 14:54:27 +01:00
Simon Richter d25fe17b28 Bump minimum required CMake version to 3.11
Signed-off-by: Marek Roszko <mark.roszko@gmail.com>
2022-01-01 21:35:08 -05:00
Seth Hillbrand a365afde3c Ensure merged line gets selected if either parent is
We were only checking for the selection of a single line that gets
merged.  This prevents the merged line from being highlighted but not
selected after merging

Fixes https://gitlab.com/kicad/code/kicad/issues/10202

(cherry picked from commit addc5574b4)
2022-01-01 16:53:52 -08:00
Jeff Young 93018375f8 Fix some test errors and update gold files for better netnames. 2022-01-01 20:46:45 +00:00
Jeff Young 32dec0127e Fix some issues with Eeschema's Shape Properties dialog.
Fixes https://gitlab.com/kicad/code/kicad/issues/10140
2022-01-01 20:46:45 +00:00
Marek Roszko 34e90e5045 Silence MSVC warnings about type mismatch and unused var 2022-01-01 14:41:36 -05:00
Marek Roszko c91d3e3cf9 Remove some more wxPoint 2022-01-01 14:12:20 -05:00
Roberto Fernandez Bautista a0d708e04d Use virtual page number when real page numbers are blank
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10158
2022-01-01 18:36:56 +00:00
Marek Roszko ea613cf448 Another batch of point changes 2022-01-01 13:17:12 -05:00
Marek Roszko d1552c3fec Some more wxPoint removal 2022-01-01 12:11:21 -05:00
Marek Roszko c4c56de708 Neurotically update position wxPoint usages 2022-01-01 11:55:51 -05:00
Marek Roszko cadc0639eb Update BASE_SCREEN to VECTOR2I 2022-01-01 11:30:33 -05:00
Marek Roszko 347e03363a Convert wxPoint/wxSize starting from EDA_RECT usages 2022-01-01 11:30:33 -05:00
jean-pierre charras 640cc60bf4 fix a compil warning. 2021-12-31 15:53:24 +01:00
Ian McInerney 0e9cfd0af2 Add missing initialization values to variables
Flagged by Coverity.
2021-12-30 23:42:06 +00:00
Ian McInerney 0f2e649b18 Cleanup formatting and warnings in tuner_slider 2021-12-30 23:03:13 +00:00
Roberto Fernandez Bautista 701e256b3f Correctly handle excluding an ERC marker in eeschema when right clicking
In addition, hide the option to exclude a marker if the selected marker
is already excluded.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/10173
2021-12-30 17:14:36 +00:00
jean-pierre charras 480a548171 PCB_PAINTER: do not show track arc clearance when not needed
fix also a minor compil warning.
Fixes #10137
https://gitlab.com/kicad/code/kicad/issues/10137
2021-12-30 09:21:35 +01:00
jean-pierre charras 7c3f0612f1 DIALOG_SPICE_MODEL: fix a cosmetic issue (no room for the help text)
Fixes #10170
https://gitlab.com/kicad/code/kicad/issues/10170
2021-12-30 09:19:00 +01:00
Mark Roszko 44dc602d6b Yeet wxPoint/wxSize out of PLOTTER 2021-12-29 19:02:50 +00:00
Jeff Young ccb94fd1a7 APIs for passing KIFONT::FONT pointers around.
Also some clean-up and bug fixes.
2021-12-29 17:32:19 +00:00
Jeff Young dd6cd7d184 Pull some more improvements in from rockola/kicad-strokefont.
This one is primarily about pushing TEXT_ATTRIBUTES in to the GAL
API, but it also includes adding EDA_ANGLE signatures to some trig
routines to ease integration.
2021-12-29 17:32:19 +00:00
Mikolaj Wielgus 906eee68a5 Another small cleanup after !490 2021-12-29 17:41:21 +01:00
Marek Roszko 3f711b8958 Add win32 VERSION_INFO resource blocks for the DLLs 2021-12-28 23:54:27 -05:00
Mike Williams bf2c4c1584 Eeschema: draw dangling end shadows 2021-12-29 00:06:12 +00:00
Jeff Young 56a31900d3 Formatting. 2021-12-28 22:47:05 +00:00
Jeff Young 86cb57f4a7 Cherry-pick TEXT_ATTRIBUTES and EDA_ANGLE from rockola/kicad-strokefont 2021-12-28 22:15:20 +00:00
Mikolaj Wielgus a0c4f05c17 Small cleanup after !490 2021-12-28 23:07:30 +01:00
Wayne Stambaugh 7b1b96c933 Fix broken tree book selection in paged dialogs.
This only affected the tree controls that only parented sub-pages.  Do
not use the dialog ctor to select the initial page.  Queuing a page
changed event to fire after the dialog is shown is the proper solution.
2021-12-28 09:43:57 -05:00
Frank Zeeman 8167c69508 Add transformation function for characteristic curves of tuners 2021-12-28 02:53:39 +01:00
Frank Zeeman f004665df8 Add tuner support for potentiometer code model 2021-12-28 02:53:39 +01:00
Frank Zeeman e618ef98e9 Add potentiometer code models to model selection 2021-12-28 02:53:39 +01:00
Marek Roszko 705aa64c24 Fix parent of schematic setup parent nodes 2021-12-27 19:08:41 -05:00
Thomas Pointhuber 9ba733f23f altium: Import POLY shape instead of line approximation (#8741) 2021-12-27 17:22:28 +01:00
Thomas Pointhuber 82ab04c1d6 altium: Use newly introduced RECT shape, apply fill and improve stroke handling (#8741) 2021-12-27 16:50:30 +01:00
Thomas Pointhuber 8b714deae1 altium: Add support for circle and arc in schematic (#8741) 2021-12-27 16:02:12 +01:00
dsa-t d105e773a1 Update columns when height changes too 2021-12-25 15:26:43 +00:00
Alex 45c50535c5 Use GetUnobscuredSize in dialogs/panels 2021-12-25 15:26:43 +00:00
Alex c4a4862e8f Try with KIPLATFORM 2021-12-25 15:26:43 +00:00
dsa-t b0cca4a89e Symbol Fields Table: Make list look as good as possible on Windows too 2021-12-25 15:26:43 +00:00
Jeff Young 933b82495d Use ISO 128-2 values for dashed line defaults. 2021-12-25 14:00:57 +00:00
Jeff Young ec104e4ab0 Add hint to symbol editor defaults.
Fixes https://gitlab.com/kicad/code/kicad/issues/9776
2021-12-24 23:25:07 +00:00
Jeff Young 03a2723b67 Improve GUI of lib item colors. 2021-12-24 21:21:11 +00:00
Jonathan Haas e2fc105201 Add custom fill color selection to shape properties dialog 2021-12-24 21:21:04 +00:00
Jonathan Haas 45d7f68f38 Use actual custom fill color for painting 2021-12-24 21:20:59 +00:00
Jonathan Haas 80e7b6eb1f Save and load fill color of SHAPE_T objects properly 2021-12-24 21:20:54 +00:00
Jeff Young 3b04fc7dca Use real text measurement for pin bounding boxes. 2021-12-24 21:10:28 +00:00
Jeff Young 29c942816e Reduce duplication of settings. 2021-12-24 21:10:28 +00:00
Jeff Young 24ce4d8aa2 Improve help text now that we're past string freeze. 2021-12-24 18:13:26 +00:00
Jeff Young e48d4a653a Pick better auto-generated netnames.
Fixes https://gitlab.com/kicad/code/kicad/issues/4312
2021-12-24 18:13:16 +00:00
Jeff Young c3552a940a Make sure standard OK/Cancel buttons respond to current language.
Fixes https://gitlab.com/kicad/code/kicad/issues/9635
2021-12-24 18:13:11 +00:00
Jeff Young af13533b42 Add show/hide controls for ERC markers.
ADDED show/hide controls for ERC warnings, ERC errors and ERC exclusions.

Fixes https://gitlab.com/kicad/code/kicad/issues/7270
2021-12-24 17:38:50 +00:00
Jeff Young a6dd1bf09b Implement Reset to Defaults for all preferences panels. 2021-12-24 17:38:39 +00:00
Jeff Young 4cf3f44532 More consistency with hint messages. 2021-12-24 17:23:41 +00:00
Jeff Young 9de62d1dd4 Promote to cell selection for spreadsheet-style paste.
Fixes https://gitlab.com/kicad/code/kicad/issues/9211
2021-12-24 16:29:23 +00:00
Jeff Young 889970a449 SCH_NETCLASS_FLAGs and SCH_FIELDs for labels.
ADDED: a new label type for netclass flags.
ADDED: the ability to define fields on labels.
2021-12-24 16:13:27 +00:00
Jeff Young f7721dd274 Add highlight shadows for highlighted nets.
Fixes https://gitlab.com/kicad/code/kicad/issues/8817
2021-12-24 15:43:28 +00:00
Jeff Young 9ee28ea8f5 Flatten out some more preferences. 2021-12-24 15:43:20 +00:00
Jeff Young 68d2630d08 Flatten a layer of indirection out of 3D config settings. 2021-12-24 13:08:54 +00:00
Jeff Young d28714167c All the preferences, all the time.
Fixes https://gitlab.com/kicad/code/kicad/issues/7877

Fixes https://gitlab.com/kicad/code/kicad/issues/5153
2021-12-24 13:08:44 +00:00
Jeff Young f1410f0240 Line styles for PCBNew shapes.
Fixes https://gitlab.com/kicad/code/kicad/issues/2150
2021-12-24 12:36:59 +00:00
Jeff Young e92efebb5f Formatting. 2021-12-24 11:39:57 +00:00
Jeff Young 295a6408c3 User-configureable dash styles (and dash-dot-dot).
ADDED: Schematic Setup properties for dash length and gap length.
ADDED: dash-dot-dot line style

Fixes https://gitlab.com/kicad/code/kicad/issues/2206
2021-12-23 20:36:24 +00:00
Jeff Young e26341d424 Cleanup. 2021-12-23 20:36:18 +00:00
Jeff Young 92e589b398 Use board maxError value, and return SH_ARC for unfilled circle. 2021-12-23 20:36:11 +00:00
Jeff Young 2bc86fa0a8 Shapes for schematic.
ADDED arc, circle and rectangle shapes for schematic.  Shapes support
line styles and fill colors.

CHANGED sheet background color in Edit Text & Graphics Properties to
fill color (and it now affects shapes).

Pushed STROKE_PARAMS down into common and moved all shapes to using it
for stroke descriptions.
2021-12-23 20:36:07 +00:00
Jeff Young f089cf44a7 Allow a 0 pin-symbol-size.
This is particularly important when reading legacy projects as 0 is
what signals the painter to use the old algorithm (1/2 pin name/number
size).

Fixes https://gitlab.com/kicad/code/kicad/issues/10100
2021-12-23 16:54:03 +00:00
Jeff Young 6e2460ad37 Add hot-updating of units in common wxGrids.
Fixes https://gitlab.com/kicad/code/kicad/issues/10020
2021-12-23 16:54:03 +00:00
Jeff Young 9af33cdfe8 Don't leave stranded symbols/footprints in editors when doc closes.
Fixes https://gitlab.com/kicad/code/kicad/issues/10026
2021-12-23 16:54:03 +00:00
Jeff Young ee5db73113 Use a bigger hammer to update adjacent segments.
Fixes https://gitlab.com/kicad/code/kicad/issues/9927
2021-12-23 16:54:03 +00:00
Jeff Young aa4dcb2bf1 Make sure undo/redo of pagesetup is done to correct sheet.
Fixes https://gitlab.com/kicad/code/kicad/issues/9999
2021-12-23 16:54:03 +00:00
Jeff Young 8b52e969d6 Restore units to a bunch of wxGrids.
Fixes https://gitlab.com/kicad/code/kicad/issues/10063
2021-12-23 16:54:03 +00:00
Jeff Young 160328abc7 Fix arc printing for flipped shapes. 2021-12-20 18:07:27 +00:00
dsa-t f2ad8bffe0 Fix a mistake in Altium parser
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10011
2021-12-16 05:49:39 +03:00
Seth Hillbrand 40d44c94cd Fix single-threaded loads/connectivity
We cannot set thread counts to hardware_concurrency()-1 without
considering that single core machines will get a thread count of 0.
2021-12-14 17:18:46 -08:00
Jeff Young 1ca90f31bf Fix hidden column in DIALOG_SYMBOL_FIELDS_TABLE.
Fixes https://gitlab.com/kicad/code/kicad/issues/9987
2021-12-15 00:03:33 +00:00
Mikolaj Wielgus 2dbc6ef6ca If present, tune Spice_Model instead of Value
Fixes https://gitlab.com/kicad/code/kicad/issues/9880
2021-12-14 14:02:25 +01:00
Adam Wolf 4fd5c9cfa8 Adjust macOS BOM plugin Python path 2021-12-13 22:52:31 +00:00
Adam Wolf 5e2ca2aa2a Install kicad_utils.py BOM plugin helper 2021-12-13 22:52:31 +00:00
Wayne Stambaugh 755607b8f8 Fix a few wxUpdateUIEvent retrigger loops. 2021-12-13 15:46:13 -05:00
Jeff Young 653c7b78d7 Move NC pin logic so we set it before we need it.
Also fixes drawing the dangling symbol in the Pin Properties dialog
and when printing.

Fixes https://gitlab.com/kicad/code/kicad/issues/9962
2021-12-12 22:25:36 +00:00
Wayne Stambaugh 067fa65756 Eeschema: fix a multitude of LIB_FIELD object comparison and index bugs.
It is no longer acceptable to set a LIB_FIELD index to -1.  This was
trashing the sorting on load cause all kinds of false field comparison
failures.  There are now assertions when attempting to use -1 as a field
index.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9811
2021-12-12 17:06:32 -05:00
dsa-t 4ccfc21324 Fix event id intersections when toggling some columns via popup.
Also increases maximum show/hide column count to 50.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9765
2021-12-13 00:35:44 +03:00
Jeff Young 885979ba75 Fix selection logic to handle LIB_ITEM as well as SCH_ITEM.
Fixes https://gitlab.com/kicad/code/kicad/issues/9954
2021-12-12 17:38:38 +00:00
Jeff Young 88fc6d25a7 Correctly handle deleting multiple selections in some grids.
Fixes https://gitlab.com/kicad/code/kicad/issues/9952
2021-12-12 17:28:17 +00:00
Jeff Young d1e6c216e1 And the modify bit wasn't getting set either.
Fixes https://gitlab.com/kicad/code/kicad/issues/9926
2021-12-11 01:09:13 +00:00
Jeff Young 15d1abeeef Sigh. But addCorner() *does* need mapCoords().
And it's got an off-by-one error in it too.  I don't think this
ever worked at all.

Fixes https://gitlab.com/kicad/code/kicad/issues/9926
2021-12-11 01:06:36 +00:00
Jeff Young 1f126c5619 Hittesting already handles inverse coordinate system.
Fixes https://gitlab.com/kicad/code/kicad/issues/9926
2021-12-11 00:32:24 +00:00
Seth Hillbrand 91dace3e5e Update Eagle importer
Fixes arc orientation
Sets root schematic and page numbers

Fixes https://gitlab.com/kicad/code/kicad/issues/9907
2021-12-10 15:41:25 -08:00
Jeff Young 8c5dd46861 Undo for SCH add/remove corner.
(PCB_POINT_EDITOR uses a BOARD_COMMIT and so already handles undo.)

Fixes https://gitlab.com/kicad/code/kicad/issues/9925
2021-12-10 23:08:16 +00:00
Jeff Young 1b2a278de9 Don't put "exclude from board" symbols in CvPCB netlist.
Fixes https://gitlab.com/kicad/code/kicad/issues/9939
2021-12-10 23:00:50 +00:00
jean-pierre charras 65cbf2d2b7 Eeschema: fix draw issue for global labels in Cairo mode.
Fixes #9933
https://gitlab.com/kicad/code/kicad/issues/9933
2021-12-10 20:47:17 +01:00
Jeff Young 0ad0627bb0 Overhaul drag-select logic to handle children better.
Fixes https://gitlab.com/kicad/code/kicad/issues/6662
2021-12-10 18:44:07 +00:00
Jeff Young 4f60d7ac78 Don't use lib tree target if lib tree isn't shown.
Fixes https://gitlab.com/kicad/code/kicad/issues/9913
2021-12-10 00:34:22 +00:00
Jeff Young 832eb0d019 Fix off-by-one error in grid snapping.
Fixes https://gitlab.com/kicad/code/kicad/issues/9013
2021-12-09 16:35:11 +00:00
Wayne Stambaugh af280f80e0 Fix debug assertion in Altium and CADSTAR schematic importers. 2021-12-09 12:56:03 +00:00
Wayne Stambaugh b7af66e3f9 Eeschema: fix broken page numbers when renaming a sheet file name.
Always use full sheet paths when storing sheet instances.  Partial sheet
paths cannot be full resolved resulting in lost page numbers when renaming
sheet file name.

Fixes #9782
2021-12-09 12:56:03 +00:00
Seth Hillbrand f7fb756f78 All imported schematics need connectivity update
Fixes https://gitlab.com/kicad/code/kicad/issues/9907
2021-12-08 16:27:24 -08:00
dsa-t 9c619d8f4e Allow some navigation tools when selecting
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9565
2021-12-07 23:00:39 +00:00
Jeff Young 3d97138d92 Bug fix for dangling symbols on pins.
Fixes https://gitlab.com/kicad/code/kicad/issues/9667
2021-12-07 21:39:06 +00:00
Jeff Young c4336de868 Bug fixes in new dangling symbol drawing code. 2021-12-07 21:31:42 +00:00
Seth Hillbrand 84cdc9701f Partially reverts d877f041
Based on discussion in https://gitlab.com/kicad/code/kicad/-/merge_requests/1029
we will keep the original behavior.  The new routines to get stock paths
are still useful (possibly in scripting) and are kept
2021-12-06 16:14:40 -08:00
Jeff Young 73b39e836d Set modify bit when editing page layout.
Fixes https://gitlab.com/kicad/code/kicad/issues/9891
2021-12-06 23:08:33 +00:00
Jeff Young 2e342ed8c9 Draw dangling symbols on a separate layer.
This allows us to draw them in front of wires, pins, and most
importantly, junction dots.

Fixes https://gitlab.com/kicad/code/kicad/issues/9667
2021-12-06 18:50:50 +00:00
Wayne Stambaugh a03e6e4926 Revert "Eeschema: fix broken page numbers when renaming a sheet file name."
This reverts commit a468a79948.
2021-12-06 07:47:18 -05:00
Wayne Stambaugh 5ae844ba93 Revert "Fix SCH_SHEET object assignment operator bug."
This reverts commit 37d53a7147.
2021-12-06 07:47:02 -05:00
Jon Evans a205595404 PROF_COUNTER -> PROF_TIMER
I want to add an event counter, and this one is a timer
2021-12-05 14:25:37 -05:00
Mikolaj Wielgus 10be483430 Make an exception for SCH_TEXT in SELECTION::GetCenter()
And undo the previous changes in SCH_TEXT::Rotate().

We continue hitting this with a wrench until it gets fixed or becomes
broken beyond any recognition.
2021-12-04 05:32:48 +01:00
dsa-t cb482eb8eb Symbol Fields Table: Highlight proper symbols even if they aren't annotated 2021-12-03 20:35:54 +00:00
Mikolaj Wielgus 9efbeaa064 Dark theme support for SPICE model editor 2021-12-03 03:41:32 +01:00
Mikolaj Wielgus 83162364e7 Restore old rotation behavior for SCH_LABEL
Fixes https://gitlab.com/kicad/code/kicad/issues/9861
2021-12-03 01:43:02 +01:00
Franck Bourdonnec d877f04198 fixe paths 2021-12-02 20:23:00 +00:00
Jeff Young 863699f2d1 Fix logic error in selection tool.
Any new selection made by clicking is not a hover selection.

Fixes https://gitlab.com/kicad/code/kicad/issues/9857
2021-12-02 16:56:47 +00:00
Mikolaj Wielgus 4ba110e1ec Restore original SCH_TEXT::GetBoundingBox()
Didn't intend to commit this, it was a mistake.
2021-12-02 16:43:19 +01:00
Mikolaj Wielgus bb08ef2f41 Fix SCH_TEXT rotation around a reference point
Fixes https://gitlab.com/kicad/code/kicad/issues/9690
2021-12-02 16:35:35 +01:00
Marek Roszko 50c1a91d44 Add a simple open wrapper for the bom python plugins to handle directory creation 2021-12-02 01:07:55 -05:00
Mikolaj Wielgus 3960c2441b Snap rotation center to half-grid, not grid 2021-12-01 17:53:42 +01:00
kliment 9f568d3658 Eeschema: Add support for leading zeroes when auto-incrementing names (fixes #9831) 2021-12-01 13:20:35 +00:00
Wayne Stambaugh 37d53a7147 Fix SCH_SHEET object assignment operator bug. 2021-12-01 07:19:30 -05:00
jean-pierre charras 3a00d76207 Fix a compil warning (shadowed var) and add a comment. 2021-12-01 11:05:16 +01:00
dsa-t bfe595819a Prevent error when loading bitmaps from some old schematics 2021-12-01 09:54:48 +00:00
Ian McInerney 6d8642e44c Remove default settings missed in 025d9f82ea 2021-12-01 01:59:40 +00:00
Seth Hillbrand 85ab4e5886 Don't deselect wires when aligning
This makes undo/redo look really strange as the other elements get
aligned but the wires do not (or rather their unconnected ends do not)

Fixes https://gitlab.com/kicad/code/kicad/issues/9275
2021-11-30 16:30:28 -08:00
Wayne Stambaugh a468a79948 Eeschema: fix broken page numbers when renaming a sheet file name.
Remove duplicate instance data saved in both root SCH_SCREEN and SCH_SHEET
objects that was causing them to be out of sync.  All sheet instance data
is stored in the SCH_SHEET object itself and rebuilt on the fly so it is
always current.

Remove Get/SetPageNumber from SCH_SHEET_PATH object so it doesn't obfuscate
where the actual sheet page number information exists.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9782
2021-11-30 08:11:24 -05:00
dsa-t 5750e38102 Re-enable and fix Move+Autoplace Fields
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9766
2021-11-29 20:48:16 +00:00
Jeff Young a0711bdb56 Keep previous commit from violating string freeze. 2021-11-29 20:09:35 +00:00
Jeff Young 78be5df39a Don't allow negative line widths to shrink bounding box.
Fixes https://gitlab.com/kicad/code/kicad/issues/9776
2021-11-29 20:02:03 +00:00
Jeff Young a0f1d77eaa Quiet wxWidgets assert. 2021-11-29 18:54:47 +00:00
jean-pierre charras 91363dd93c PANEL_EESCHEMA_COLOR_SETTINGS: fix a minor cosmetic issue. 2021-11-29 15:30:38 +01:00
Jeff Young 3a51fb6ac6 Be more consistent about annotation warngings.
This can be a particular problem if you go to run ERC, it shows the
annotation warnging so you re-annotate (but don't notice that your
scope is set to Selection).

Also adds some missing defensive code around closing a modeless RC
checker before the document (which we had for DRC dialog but not the
ERC dialog).

Also fixes a missing override of GetSeverity which kept ERC messages
from having the right prefix.
2021-11-29 14:24:45 +00:00
Jeff Young a224d8dd6c Disable autoplace fields when dragging/moving.
Fixes https://gitlab.com/kicad/code/kicad/issues/9766
2021-11-28 19:18:08 +00:00
Mikolaj Wielgus 9bb370e6b4 SCH_SHEET_PIN: Rename GetEdge, SetEdge to GetSide, SetSide 2021-11-28 20:07:06 +01:00
Jeff Young 80d6b9e76d Tighten up hittesting for symbols and other items.
Grid-based accuracy doesn't need to be any larger than 1/2 the
diagonal as we'll snap to one side or the other.  And symbols don't
need as much slop as other items since there's plenty of "meat" on
them.

Fixes https://gitlab.com/kicad/code/kicad/issues/9805
2021-11-28 19:03:51 +00:00
Mikolaj Wielgus 71bfbfaa70 Test SCH_PIN rotation and mirroring 2021-11-28 19:37:13 +01:00
Mikolaj Wielgus 2e1862de1c Run AutoAutoplaceFields() in SCH_SHEET constructor
A constructor should create a fully initialized object.
2021-11-28 18:46:28 +01:00
Jeff Young 75d750a3cb Copy lastResolved stuff when pasting.
This of course assumes the paste came from the same document.  If not
then pasted items will get default lastResolved stuff.
2021-11-28 17:09:24 +00:00
Jeff Young 58b5ac4970 Don't create SCH_LINE till we know the layer.
The CTOR makes some decisions on initialization based on the layer.
2021-11-28 17:09:24 +00:00
Jeff Young f23cd9c9e5 Clearer naming. 2021-11-28 17:09:24 +00:00
Jon Evans d7f5917fb0 ERC: flag duplicated local labels with no pins as floating
See https://gitlab.com/kicad/code/kicad/-/issues/9593
2021-11-27 22:34:11 -05:00
Mikolaj Wielgus 65af3a8568 Make sheet pin positions invariant to four rotations more often 2021-11-28 02:18:18 +01:00
Roberto Fernandez Bautista dd219419a0 Quiet wxWidgets asserts (sheet & symbol properties dialogs)
Ensure we don't set column size smaller than 1. If so, set to
-1 to auto size.
2021-11-27 21:03:42 +00:00
Roberto Fernandez Bautista 3660597082 Use canonical names when saving sheet name and filename fields 2021-11-27 20:38:51 +00:00
Mikolaj Wielgus f35b0446e6 Properly initialize SCH_TEXT spin style 2021-11-27 19:42:11 +01:00
Jeff Young 9f7db24871 Selection bug fixes for Symbol Editor.
1) Make sure the y-coord is correctly inverted before calling collision
routines.
2) Give LIB_SHAPE poly lines the same extra slop as SCH_LINEs.

Fixes https://gitlab.com/kicad/code/kicad/issues/9791
2021-11-27 15:17:05 +00:00
Jeff Young 87e71072b1 Default line width to 0 in symbol editor.
Also removes some atrophied settings for repeated non-pins in
symbol editor (which only ever repeats pins).

Fixes https://gitlab.com/kicad/code/kicad/issues/9776
2021-11-27 11:53:38 +00:00
jean-pierre charras b8b8c0d34c dialog text properties: fix a focus issue.
Fixes #9792
https://gitlab.com/kicad/code/kicad/issues/9792
2021-11-27 10:08:30 +01:00
Jeff Young 698a668af7 Coverity fixes. 2021-11-26 18:14:29 +00:00
Jon Evans 08cb573e11 Do not propagate bus entries across buses and wires at the same point
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9678
2021-11-25 13:36:30 -05:00
Jon Evans aa5f496727 Properly migrate bus-bus entries on load of legacy schematic
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9678
2021-11-25 12:12:01 -05:00
Jeff Young 5863bc0937 Put Repair Schematic behind Advanced Config. 2021-11-25 12:56:46 +00:00
Simon Schaak c7dd98fb1a Fix outdated syntax in help text 2021-11-25 12:53:29 +00:00
Jon Evans 9f6910f1e6 Expand autoplace collision search to include potential field locations
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9762
2021-11-25 07:48:05 -05:00
Jeff Young 5e6da9f964 Auto-start-wire tool requires an up-to-date connectivity.
Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-25 01:24:35 +00:00
Jeff Young 5d751bef74 Be cognizant of connectivity dirtiness when cloning wires.
While the root case is wires, it really applies to all SCH_ITEMs.

Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-25 01:24:35 +00:00
Jeff Young f11cc904d2 More fixes for realtime connectivity being off.
Don't update net highlighting until after connectivity has been
rebuilt.

Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-25 01:24:35 +00:00
Jeff Young ed705986e0 No realtime connectivity fixes for junctions.
Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-25 01:24:35 +00:00
Roberto Fernandez Bautista 2eb5d4fa7a Symbol Editor: Allow save as all the time, as long as we have a symbol to save
There doesn't appear to be any reason why the LIBID needs to be populated
before a "save as", seeing as the user will be inputting the new lib name
and lib nickname via the dialog.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9744
2021-11-24 19:43:09 +00:00
Jeff Young 7fc04c3cf2 Fixes for realtime connectivity being off.
Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-24 13:20:44 +00:00
Jeff Young 9e999f4de4 ADDED Repair Schematic.
Fixes https://gitlab.com/kicad/code/kicad/issues/9749
2021-11-24 13:20:44 +00:00
Jeff Young 228edd4121 Don't generate duplicate IDs in line/wire/bus tool.
Also cleans up existing duplicate IDs when reading.

Fixes https://gitlab.com/kicad/code/kicad/issues/9749
2021-11-24 13:20:44 +00:00
Jeff Young b052d56c7b R/W uuids for junctions. 2021-11-24 13:20:44 +00:00
Jeff Young 696f7c47fb Reduce use of auto. 2021-11-24 13:20:44 +00:00
Seth Hillbrand 65fc47cb8f Don't lose track of the sheet's screen
Corner cases need to clear screen before loading a new file.  Aborting
needs to restore the screen or risk segfaults

Fixes https://gitlab.com/kicad/code/kicad/issues/9739
2021-11-23 10:57:12 -08:00
Seth Hillbrand 126563c839 Fix initilization project / ordering
We cannot resolve the Canvas type without the canvas being initialized.
But saving settings sometimes requests canvas access.  This protects the
calls against failure by checking for canvas before saving
canvas-specific settings

Fixes https://gitlab.com/kicad/code/kicad/issues/9729
2021-11-22 11:47:42 -08:00
Seth Hillbrand 3f2d86adec Make OpenGL default for all apps
Fixes https://gitlab.com/kicad/code/kicad/issues/9699
2021-11-21 12:33:07 -08:00
Jeff Young 016a98df86 Increment numbers which have suffixes too.
Fixes https://gitlab.com/kicad/code/kicad/issues/9706
2021-11-21 18:02:17 +00:00
Jeff Young 15f309c8a8 Add a SCH_ITEM::operator= so the connections caches don't get copied.
Fixes https://gitlab.com/kicad/code/kicad/issues/9710
2021-11-21 16:54:46 +00:00
Jeff Young c1703212dc "Document" properties go in File menu; Edit menu is for item props. 2021-11-20 22:44:43 +00:00