Commit Graph

7713 Commits

Author SHA1 Message Date
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
Seth Hillbrand 2159acc9ce Fix missing handler for multiple labels
This was intended to handle multiple labels but we missed the selection
condition.

Fixes https://gitlab.com/kicad/code/kicad/issues/9704
2021-11-20 14:37:18 -08:00
Jeff Young 5a5af91d88 Tidy up the SCH_PREVIEW_PANEL visibility flags.
Fixes https://gitlab.com/kicad/code/kicad/issues/9701
2021-11-20 15:28:17 +00:00
Seth Hillbrand 766a09c338 Remove autocomplete when we lose focus
Prevents the excess dropdown from persisting over windows

Fixes https://gitlab.com/kicad/code/kicad/issues/9651
2021-11-19 17:24:16 -08:00
Jeff Young c01649fc6e Make it easier to open legacy files. 2021-11-19 13:36:14 +00:00
Jeff Young 7bda077f69 Disable EE_POINT_EDITOR for uneditable symbol graphics.
Fixes https://gitlab.com/kicad/code/kicad/issues/9675
2021-11-18 15:38:46 +00:00
Jeff Young 1bb750814d Cleanup dead code. 2021-11-17 12:49:53 +00:00
Jon Evans 9238b27f63 Silence IsWritable warning message
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9656
2021-11-16 21:02:32 -05:00
Jeff Young 969bef9a36 Fix stroking error when printing polygons. 2021-11-17 01:53:44 +00:00
Jeff Young 7760d3275d Fix printing of LIB_SHAPE arcs. 2021-11-17 01:39:16 +00:00
Jeff Young 20328ab331 Back out last arc change. 2021-11-17 01:03:22 +00:00
Jeff Young 18d8053a6c Fix an arithmetic precedence order bug and fine tune autoplacement.
Fixes https://gitlab.com/kicad/code/kicad/issues/9345
2021-11-17 00:49:42 +00:00
Jeff Young b4ac53d93d Attempt #1 to fix LIB_SHAPE arc printing. 2021-11-17 00:34:05 +00:00
Simon Schaak 399f2c116e Symbol editor: save changed field properties
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9648
2021-11-15 20:40:32 +01:00
Jeff Young 12a75ffb94 A fuller implementation of allowing cut/copy/paste in search boxes.
This one also works for other text entry widgets, and also works
for other frames.
2021-11-15 18:13:35 +00:00
Christian Pfluger 9941a52e75 fix for issue #9345 autoplacing in schematic
this fix moves designator fields to the side in case of collision with
symbols or wires.
2021-11-14 18:02:36 +01:00
Jon Evans ae24daa033 Do not include text when computing drag origin for a group
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9630
2021-11-14 11:54:04 -05:00
Jeff Young b747ae5bdf Make sure redraw happens regardless of order of panel commits.
(We don't control the order of the TransferDataFromWindow calls
for the various panels and here the junction dot size is dependant
on the default netclass wire size.  So that calc has to be done
after all the various TransferDataFromWindow calls are made.)

Fixes https://gitlab.com/kicad/code/kicad/issues/9541
2021-11-13 23:20:56 +00:00
Jeff Young 025d9f82ea Remove atrophied schematic default wire and bus widths.
(They're now in the netclasses, and specifically the default netclass
if no other netclass is assigned.)

Fixes https://gitlab.com/kicad/code/kicad/issues/9628
2021-11-13 22:56:50 +00:00
Jeff Young efc64e972c Fix pasting into LIB_TREE search control.
We have a hack for turning accelerator keys that wxWidgets turns into
menu commands back in to accelerator keys -- but it requires that the
corresponding menu items be enabled in order to work.
2021-11-13 19:45:10 +00:00
Jeff Young cc6e3841ae Formatting. 2021-11-13 19:45:10 +00:00
Wayne Stambaugh 80c5b1efb1 File formatting improvements and fixes.
Symbol library IDs included the library nickname which is incorrect
and meaningless since it will be overwritten by the symbol library
table code.  This is not a file format change as there are no behavioral
differences.
2021-11-13 12:57:18 -05:00
Wayne Stambaugh 53f5d616aa Coverity issue fixes. 2021-11-13 11:38:31 -05:00
jean-pierre charras e218471d24 DIALOG_CHANGE_SYMBOLS: fix a bug introduced by my commit 686b32db
the filtering for mandatory fields was disabled.
2021-11-13 13:47:09 +01:00
Jeff Young 1e151b1bcb Fix effective pen width when plotting wires.
Fixes https://gitlab.com/kicad/code/kicad/issues/9625
2021-11-12 16:27:55 +00:00
Jeff Young da58e9ee4c Don't rely on selection when updating edited symbol in schematic.
Fixes https://gitlab.com/kicad/code/kicad/issues/9600
2021-11-11 16:43:06 +00:00
jean-pierre charras 686b32dbd3 fix issue in DIALOG_CHANGE_SYMBOLS, in non English locale.
Mandatory field names where compared in list, using translated and not translated names.
Fixes #9596
https://gitlab.com/kicad/code/kicad/issues/9596
2021-11-11 10:56:09 +01:00
Jeff Young 54e00569d8 Don't fetch the root sheet's UUID out of the sheet instances.
1) we're storing it now anyway
2) the root sheet UUID is the one UUID that's *not* in the instance
array, and previously we were erroneously grabbing the first sub-sheet's
UUID (producing duplicate UUIDs).
2021-11-09 16:07:30 +00:00
Seth Hillbrand 6e5a918377 Writeable -> Writable 2021-11-08 15:56:51 -08:00
Jeff Young de93a071e2 Fix error in python command string generation.
(We can now go back to using double-quotes since that bug is fixed.)

Fixes https://gitlab.com/kicad/code/kicad/issues/9552
2021-11-08 21:05:54 +00:00
Seth Hillbrand cd3ecdfc78 Fix sort to be irreflexive
Switching the order of the parameters must switch the sort order (no <=)
otherwise the sort is non-determinant and fails std::sort preconditions
2021-11-08 11:25:13 -08:00
Mikolaj Wielgus 38bd4b07e4 Close the simulator before changing schematic
Fixes https://gitlab.com/kicad/code/kicad/issues/9501
2021-11-07 23:35:06 +00:00
Roberto Fernandez Bautista 04a30638f0 eeschema: Pasted items are moving as soon as they are pasted
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9539
2021-11-07 15:14:11 +00:00
Jeff Young f9a282278c Update junction-dot-size-cache when Schematic Setup changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/9541
2021-11-07 14:12:44 +00:00
Roberto Fernandez Bautista b572781a8a eeschema: Update anchor position of pasted items after initial move
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9534
2021-11-06 16:03:41 +00:00
Roberto Fernandez Bautista d1bab3116d eeschema: Warp to origin when moving - add missing text items
Schematic fields and text items were not being warped to origin when
moving.
2021-11-06 15:19:22 +00:00
jean-pierre charras 2f22b9dd81 Do not replace delimiter " by ' inside a command string, round 2. 2021-11-05 18:28:44 +01:00
Jeff Young 83e5208213 Fix a couple of holes in the IsTestEnabled() checks.
Fixes https://gitlab.com/kicad/code/kicad/issues/7270
2021-11-04 16:24:06 +00:00
Jeff Young 996a5b85a6 Overhaul IsJunctionNeeded logic to support all the different cases.
Several clients were using this with different needs.  The API is
now more explicit (and there are more options under the hood).

Fixes https://gitlab.com/kicad/code/kicad/issues/9518
2021-11-04 12:57:16 +00:00
Seth Hillbrand cf6b18ec7e Remove escaped double-quotes
For some reason, escaped double quotes in wxString::Format cause issues
on Mac.  We can replace them with single quotes in most places without
loss of clarity
2021-11-03 17:03:14 -07:00
Jeff Young 179628d1d2 Repair field properties dialog for rotation and mirroring.
Fixes https://gitlab.com/kicad/code/kicad/issues/9508
2021-11-03 18:11:59 +00:00
Roberto Fernandez Bautista 5e040ad126 eeschema settings: Default to mouse drag is drag action on first install
This is to be consistent with other EDA tools like Altium and CADSTAR.
2021-11-03 16:58:11 +00:00
Jeff Young c2371f3943 Revert e4b61de792.
It doesn't seem to fix the testcase on Linux, and the tests pass on
my machine in either configuration.
2021-11-03 10:30:34 +00:00
Jeff Young e4b61de792 Special case sheet ordering in file. 2021-11-02 23:14:01 +00:00
Seth Hillbrand 7cf72aaa41 Fix bezier import in Altium schematics 2021-11-02 15:45:30 -07:00
Jeff Young 4d46445ce1 Fix Bezier reading.
Fixes https://gitlab.com/kicad/code/kicad/issues/9512
2021-11-02 22:19:41 +00:00
Jeff Young 4acff58c7a Implement a forced ordering for LIB_ITEMs until we have UUIDs.
(Once we read/write the UUIDs, we should just compare the type
and then the UUID like we do for SCH_ITEMs.)
2021-11-02 20:07:34 +00:00
Jeff Young eaf10a04dd Improved naming. 2021-11-02 20:07:34 +00:00
Jeff Young 21cb56dfe7 Formatting. 2021-11-02 20:07:34 +00:00
Seth Hillbrand 9e760512ac Update schematic when saving tuned value
Also avoids a known(!) crash when the existing item has been deleted
while tuning.

Fixes https://gitlab.com/kicad/code/kicad/issues/9502
2021-11-01 17:05:22 -07:00
Simon Schaak f79cb382c4 Symbol editor: fix name corruption in pin table
Discard changes to pin numbers of grouped pins in the pin table to avoid
setting all pins of the group to the same number.
2021-11-01 22:10:13 +00:00
Jeff Young af95a4b424 Fix duplicate stroke when formatting circles.
Fixes https://gitlab.com/kicad/code/kicad/issues/9507
2021-11-01 21:29:46 +00:00
Jeff Young 40b4052ad4 Improve text hittesting in schematics.
Text has a fairly big bounding box to account for descenders, overbars,
etc., but it makes it feel too sloppy for hittesting.  This change
allows selection disambiguation to look at the actual strokes of the
text when deciding what's "closest".

Fixes https://gitlab.com/kicad/code/kicad/issues/9506
2021-11-01 21:13:12 +00:00
Wayne Stambaugh bf85ddd577 Eeschema: fix bug printing polygon (possibly other) filled shapes. 2021-11-01 16:09:32 -04:00
Jeff Young 9f806d9304 Don't assume the grid size.
Fixes https://gitlab.com/kicad/code/kicad/issues/9013
2021-11-01 15:26:39 +00:00
Jeff Young cec788d454 Must use GetEffectivePenWidth for output.
Fixes https://gitlab.com/kicad/code/kicad/issues/9504
2021-11-01 14:49:12 +00:00
Roberto Fernandez Bautista b6c12b6b55 CADSTAR Sch: Fix positioning of symbol fields when the symbol is mirrored
The text aligment needs to be rotated and/or mirrored depending on whether
the text field is vertical or horizontal.
2021-10-31 16:12:08 +00:00
Roberto Fernandez Bautista 8367c7f238 CADSTAR Sch: Fix calculation of page size
Don't attempt to calculate bounding box of text variables. We do not
know the resolution of the text variable inside the importer. The
resolved text could be shorter than the text variable (e.g. ${#}
page number)
2021-10-30 21:49:34 +01:00
Roberto Fernandez Bautista 0aba025d66 CADSTAR Sch: Autoplace intersheet references (instead of 0,0) 2021-10-30 21:49:34 +01:00
Roberto Fernandez Bautista 18e36155a5 CADSTAR sch: Include gate in error message when symbols are scaled 2021-10-30 21:49:34 +01:00
Roberto Fernandez Bautista 52a936ac61 CADSTAR Sch: Fix spurious pin length and orientation of some symbols
Ensure deterministic sorting of std::map in fixUpLibraryPins
2021-10-30 21:49:34 +01:00
Jeff Young f345eacf13 Be more careful with undo, and don't re-merge a bus over a bus entry.
Fixes https://gitlab.com/kicad/code/kicad/issues/9475
2021-10-30 19:58:09 +01:00
Roberto Fernandez Bautista c5cdda26ae Fix crash in libedit when moving/editing pins in synchronised mode
Unit numbers start at 1, not 0. Our vector needs to be size + 1 if we want
to use the unit number as an index.
0 is reserved for "all units"
2021-10-30 18:14:23 +01:00
Roberto Fernandez Bautista c1515dd31c CADSTAR Sch: Fix block names - load as stand-alone text items instead
KiCad doesn't support multi-line text in fields, so we can't load it as
a text field (even if that would be the closest thing).

We should update this when KiCad supports multi-line text in fields.
2021-10-30 18:14:23 +01:00
Jon Evans d426abafd7 Handle empty shape in removeCornerCondition
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9495
2021-10-30 13:10:12 -04:00
Jon Evans 80e372b7d9 Fix blank DC sources causing crash in dialog creation
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9482
2021-10-30 11:17:10 -04:00
Jeff Young 5f8e0ef1e0 Patch up arc hit-testing and printing for 6.0
This could use another look when we're not so near release.  We
really shouldn't need to special case eeWinding vs. not eeWinding.

Fixes https://gitlab.com/kicad/code/kicad/issues/9491
2021-10-30 15:10:07 +01:00
Jeff Young b967610e05 Remove confirmation for De Morgan (and spell his name right).
Fixes https://gitlab.com/kicad/code/kicad/issues/9483
2021-10-29 20:30:37 +01:00
Jeff Young 1fa9ad227a Repair new junction logic for crossing wires.
Fixes https://gitlab.com/kicad/code/kicad/issues/9484
2021-10-29 19:09:02 +01:00
Jeff Young fe6cb7dbb4 Mirror sheet fields when mirroring sheet.
Fixes https://gitlab.com/kicad/code/kicad/issues/9479
2021-10-28 21:45:22 +01:00
Jeff Young 0cdffa16d4 Fix off-by-one error in fill mode writing.
Fixes https://gitlab.com/kicad/code/kicad/issues/9111
2021-10-28 19:29:47 +01:00
Jeff Young 8fdfc0e63d Replace legacy sch writing code for rescue functionality. 2021-10-28 15:11:15 +01:00
jean-pierre charras cf6acae791 TUNER_SLIDER: add missing skip event in wxFocusEvents. 2021-10-27 20:33:51 +02:00
Seth Hillbrand 18318c73b5 Fix swapped parameters 2021-10-27 08:59:39 -07:00
jean-pierre charras c3a4c40d4c DIALOG_CHANGE_SYMBOLS: add missing skip event in wxFocusEvents.
Fixes #9467
https://gitlab.com/kicad/code/kicad/issues/9467
2021-10-27 17:17:44 +02:00
Jeff Young cb1709b4ca Improve Eagle importer's label positioning.
Fixes https://gitlab.com/kicad/code/kicad/issues/9466
2021-10-27 13:49:13 +01:00
Jeff Young e14864b35c Invert Y axis for pin root bounding box.
Fixes https://gitlab.com/kicad/code/kicad/issues/9465
2021-10-27 01:44:15 +01:00
Jeff Young 3d2ffc12c1 Fix bugs in B&W plotting.
Fixes https://gitlab.com/kicad/code/kicad/issues/9411
2021-10-26 22:58:55 +01:00
Seth Hillbrand dd99b2dc2f Add action to edit symbol from Library
Analog of ea4e06124e for symbol editor.  Allows scripting to open
library symbol
2021-10-26 12:59:59 -07:00
Jeff Young f724fe7eff Move bbox padding to RTrees so it doesn't interfere with hittesting.
Fixes https://gitlab.com/kicad/code/kicad/issues/9361
2021-10-26 13:46:30 +01:00
Jon Evans 8e5cbc5cf0 Fix highlighting complex connections from subsheets
Sheet() can't be used for local sheet recall in these cases

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9403
2021-10-25 22:14:48 -04:00
Jeff Young c52cb229d0 Add unsaved-changes indication to Symbol Properties.
Fixes https://gitlab.com/kicad/code/kicad/issues/9443
2021-10-25 12:35:04 +01:00
Jeff Young e30d867439 Use consistent terminology for various constraint modes. 2021-10-23 12:18:08 +01:00
Jeff Young 30027030b5 Threading safety.
Fixes https://gitlab.com/kicad/code/kicad/issues/9399
2021-10-23 11:38:03 +01:00
Roberto Fernandez Bautista 3ea3d5274c CADSTAR Schematic: Hide all KiCad sheet properties
Sheet name/filename not applicable in CADSTAR so displaying it just
makes the import look messy.
2021-10-23 10:58:15 +01:00
Seth Hillbrand 927b633c01 Make sure spice command doesn't assert
Fixes https://gitlab.com/kicad/code/kicad/issues/4328
2021-10-22 16:50:29 -07:00
Jeff Young 4dcc847f85 Remove artificial limits from label increment control.
Fixes https://gitlab.com/kicad/code/kicad/issues/9340
2021-10-22 22:20:20 +01:00
jean-pierre charras 29756278e0 eeschema: fix crash when the simulator frame is open and the Tune tool is actived.
In some cases when the Tune tool is actived and a symbol is selected, if the tool
is deactivated from the right toolbar in Eeschema, Eeschema crashes.
2021-10-22 20:00:14 +02:00
Mikolaj Wielgus 28d7a2d7c9 Sim: Update tuner dialog values when focus is lost
Fixes https://gitlab.com/kicad/code/kicad/issues/7841
2021-10-21 13:34:27 +00:00
Wayne Stambaugh 0795fcb810 Minor dialog layout fixes. 2021-10-21 08:59:55 -04:00
jean-pierre charras bb4330db1e DIALOG_BOM: do not quote filename when calling the editor.
Due to previous changes in code, filenames must be not quoted.
Fixes #9436
https://gitlab.com/kicad/code/kicad/issues/9436
2021-10-21 13:53:52 +02:00
Jeff Young c5e5d8e0d4 Fix multi-sheet find/replace issues.
1) When replacing symbol fields, make sure we do it for all sheets
2) Honour "find on current sheet only"

Fixes https://gitlab.com/kicad/code/kicad/issues/9431
2021-10-20 18:28:57 +01:00
Jeff Young 75b5bcf46d Make Coverity happy. 2021-10-19 17:14:04 +01:00
Wayne Stambaugh 1e1da55840 Coverity fixes. 2021-10-19 07:42:27 -04:00
Seth Hillbrand 512ba167e8 Escape symbols when adding to library
Can't escape by default because the allowed characters differ in the
read-only libraries and existing schematics that reference them.  So,
escape when we import into standard KiCad Libraries

Fixes https://gitlab.com/kicad/code/kicad/issues/9419
2021-10-18 10:42:58 -07:00
Seth Hillbrand 9b4c293f14 Ensure that any excess spaces removed
The sim command may have additional whitespace between the type and
first char
2021-10-18 10:12:53 -07:00
Jeff Young 4e48a16847 Look for all types of label conficts in ERC.
Fixes https://gitlab.com/kicad/code/kicad/issues/9367
2021-10-18 18:09:40 +01:00
Jeff Young b8d193485d Respect selection reference point when set.
Fixes https://gitlab.com/kicad/code/kicad/issues/8520
2021-10-18 18:09:40 +01:00
Jeff Young 1d4d83cb7c Fix copy/paste error. 2021-10-18 18:09:40 +01:00
Seth Hillbrand 82ba456567 Remove unnecessary RegEx
This broke for signals using underscores.  More critically, RegEx is
fragile and should not be used with user input if at all possible

Fixes https://gitlab.com/kicad/code/kicad/issues/9421
2021-10-18 10:08:29 -07:00
Seth Hillbrand 64bcaaefd1 Fix radiobox order for FILL_T
Fixes https://gitlab.com/kicad/code/kicad/issues/9412
2021-10-17 17:01:21 -07:00
Ian McInerney 5817a8b5f4 Remove unused m_host variable
This variable isn't needed anymore after 5f53019290
pushed dark mode handling into the HTML window itself.
2021-10-18 00:29:40 +01:00
Ian McInerney 280743d9e9 Fix missing reference in for loop 2021-10-18 00:29:10 +01:00
Roberto Fernandez Bautista d6d800ccbb CADSTAR Schematic: Fix crash when trying to fix library pins
Need to copy the chain as we might have deleted it.
2021-10-17 17:57:51 +01:00
Jeff Young a1c1f60665 Coverity fixes. 2021-10-16 16:27:35 +01:00
Jeff Young ce55dd2893 Fix botched merge. 2021-10-15 21:27:16 +01:00
Adam Wolf ec10b12c6a On macOS, copy libngspice dylibs and symlinks
Now that ngspice creates soversion'ed libraries, we need to tweak
how we copy the dylibs around.

This is meant to address
https://gitlab.com/kicad/code/kicad/-/issues/9143.
2021-10-15 17:34:27 +00:00
Jeff Young f9861b4a6c Finish arc rework and push out to file formats. 2021-10-15 12:45:43 +01:00
Jeff Young b52529521e Replace individual LIB_* shapes with LIB_SHAPE (based on EDA_SHAPE).
Also moves to more capable FILL_T model that can be shared.
2021-10-15 12:45:43 +01:00
Jeff Young 9b9e379aa0 Overhaul arc internal model to not over-specify information. 2021-10-15 12:45:43 +01:00
Wayne Stambaugh c61af21da8 Eeschema: don't stat files when updating title bar text.
The tests for file existence and write status perform two file stats
which cause performance issues on slow network shares.  Now the file
state is determined at load time and stored in the SCH_SCREEN object
so file access is no longer required.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9343
2021-10-14 10:52:58 -04:00
Wayne Stambaugh c4d0a06701 Eeschema: fix broken auto save feature.
Make auto save recover all auto saved sheet files not just the root sheet.

This does not fix existing auto save issues because recovery would require
an iterative reload for each automatically saved sheet file and would only
happen once.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9288
2021-10-13 14:51:00 -04:00
Mikolaj Wielgus 5f53019290 Substitute all wxHtmlWindow with HTML_WINDOW
Remove other places where <body> tag is used to override the default
black-on-white theme.
2021-10-12 07:07:15 +00:00
Roberto Fernandez Bautista 7aa3514042 CADSTAR Schematic: Add net labels for named nets on symbol pins
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9371
2021-10-11 18:30:21 +01:00
Seth Hillbrand 52bbfb9109 Remove dependency of dot size on linear mils
Changes a dot to be a square pixel (linewidth x linewidth).  This allows
the removal of IU dependencies and ensures that a dot is always visible
on screen.  Also makes sure that cairo is setting the current linewidth
during its stroke routines

Fixes https://gitlab.com/kicad/code/kicad/issues/9362
2021-10-10 09:40:26 -07:00
Seth Hillbrand 48f9dfa988 Revert "Fix grid cell highlight not functioning on Windows in the symbol pin table"
This reverts commit 94552ed838.

Breaks cell-based copy/paste
2021-10-10 08:04:11 -07:00
Jeff Young 57c7d663b0 Fix bone-headed mistake when moving panel disabling. 2021-10-07 00:17:42 +01:00
Seth Hillbrand b5cd976845 Don't arbitrarily exclude components from BOM
We already exclude components based on the schematic property when
generating the XML.  Don't make a hidden second pass in the python
netlist reader by default

Fixes https://gitlab.com/kicad/code/kicad/issues/9326
2021-10-06 12:58:05 -07:00
Seth Hillbrand 2c7da5e2bd Handle deleting segment
Edited point needs to clear to allow us to use the click timer for
left-click after the drawing is deleted.

Fixes https://gitlab.com/kicad/code/kicad/issues/9320
2021-10-06 10:21:04 -07:00
Jeff Young 95f841a037 A more nuanced method of making Board & Schematic Setup read-only.
This one still allows you to scroll to see all contents.

Fixes https://gitlab.com/kicad/code/kicad/issues/9302
2021-10-06 11:16:46 +01:00
Jeff Young 935a307674 Formatting and iterator safety. 2021-10-06 11:13:16 +01:00
Seth Hillbrand bb5c58b3cf Set default force cursor off in auto-lines
Leaving the forced position on results in the auto-line linking to a pin
for far longer than we intend if there are other hits in the area of the
cursor

Fixes https://gitlab.com/kicad/code/kicad/issues/9321
2021-10-05 20:28:05 -07:00
Seth Hillbrand 854472d550 Prevent automatic RTree recaching
Calling UpdateItem() may be performed by in a common loop, e.g. for(
SCH_ITEM* item : GetScreen()->Items() ) or similar.  We cannot call
GetScreen()->Update( SCH_ITEM* ) in this routine as it will remove and
re-add the item to the RTree, invalidating iterators.  If needed, the
items need to be cached to an external container before updating

Fixes https://gitlab.com/kicad/code/kicad/issues/9318
2021-10-05 20:13:15 -07:00
Seth Hillbrand 9a8d1246cc We don't keep a CHANGELOG.TXT
Direct interested readers to AUTHORS.TXT instead.
2021-10-05 19:46:53 -07:00
Seth Hillbrand 548e5f49bd Clean up unused variable usage
Unused variables in function calls can be commented out.  Unused
return variables get a new routine `ignore_unused()` that silences the
warnings with zero overhead.
2021-10-05 10:00:30 -07:00
Jeff Young 92008a089a Disable Board & Schematic Setup controls when project is locked.
(or missing).

Fixes https://gitlab.com/kicad/code/kicad/issues/9302
2021-10-04 16:47:27 +01:00
Jeff Young 7c432d7a50 When annotating for another feature, make sure scope is entire schematic.
Fixes https://gitlab.com/kicad/code/kicad/issues/9303
2021-10-03 19:42:29 +01:00
Jeff Young 574bef2237 Normalize drawing sheet path to env vars & prj, not just prj.
Also cleans up the dialog a bit.

Also changes the workings of NormalizePath to return the input if
it couldn't be shortened which saves open coding that behaviour in
all its callers.

Fixes https://gitlab.com/kicad/code/kicad/issues/9036
2021-10-02 23:39:45 +01:00
Jeff Young 10dd70881c New paramaterized interface doesn't like quoted parameters.
(At least on MSW, anyway.)
2021-10-02 14:08:36 +01:00
Marek Roszko 94552ed838 Fix grid cell highlight not functioning on Windows in the symbol pin table
Fixes https://gitlab.com/kicad/code/kicad/issues/9290
2021-10-01 23:44:16 -04:00
Jeff Young ef74421922 Move centering of lib-tree item to idle event.
Fixes https://gitlab.com/kicad/code/kicad/issues/9294
2021-10-01 22:46:14 +01:00
Jeff Young 5f5ee7335d Formatting. 2021-10-01 21:49:14 +01:00
Jeff Young f606679164 Proper numeric sorting for intersheet refs.
Also expunges the horrifically named std::remove and std::remove_if
(neither of which remove anything).
2021-10-01 18:29:21 +01:00
Jeff Young 5d579d14c1 Give intersheet refs a bit more breathing room. 2021-10-01 18:29:21 +01:00
Seth Hillbrand dd1d36d40a Fix segfault when check for editing points
The point editor is not always available when checking for points.  We
need to handle the missing tool without crashing
2021-09-30 17:25:33 -07:00
Jeff Young b9596a0a5d Update dangling flags in color settings' preview. 2021-09-30 18:53:39 +01:00
Jeff Young c7e6c273b4 Fix missing RTREE update. 2021-09-30 18:53:39 +01:00
Seth Hillbrand 13d913a014 Choose centering after zoom
When we zoom after centering, the screen does not display the item at
the appropriate location until you center again.  Choose the zoom first
to set the appropriate scale before translating the viewport
2021-09-29 16:30:52 -07:00
Jeff Young 12b726ba2f Prevent the point editor from fighting with other tools.
1) Don't start a long-click timer when the point editor is active.
2) Don't auto-start a wire when the point editor is active.

Fixes https://gitlab.com/kicad/code/kicad/issues/9270
2021-09-29 19:16:06 +01:00
Jeff Young 9cf9abbd66 Don't allow Text Properties dialog on intersheets references field. 2021-09-29 16:04:36 +01:00
Jon Evans 62ef27e372 Remove hard-coded anchor color in eeschema 2021-09-28 20:26:47 -04:00
Seth Hillbrand 2225c4e4ed Replace GetRows() with GetNumberRows() because wx 2021-09-28 10:48:04 -07:00
Seth Hillbrand 880f209563 When deleting pin row, show new highlight
When the user deletes a pin row, they need to see which row is now
selected for them to delete again.  Otherwise, deleting will have
unexpected consequences
2021-09-28 09:29:55 -07:00
Seth Hillbrand 42a21e15f0 Check before dereference
Fixes a crash where the screen was destroyed during new loading but
still gets dereferenced by the UI update.  Also puts defensive checks in
the UI conditions against null configuration settings
2021-09-28 08:42:55 -07:00
Jeff Young f73042fe24 Some minor performance enhancements. 2021-09-28 14:28:35 +01:00
Roberto Fernandez Bautista 7089a837f6 Update Editing Options Panel in eeschema with latest modifier keys
We now use Long Click, Ctrl and Shift (Alt is no longer used)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9234
2021-09-27 21:11:56 +01:00
Mike Williams d90dc77e00 Selection: Don't drop small moves
If we do a real drag, the timer will be cancelled. If we don't, then
the user is still holding the mouse button down and would probably like
to see the menu. Otherwise it appears the action is dropped.
2021-09-27 16:44:32 +00:00
jean-pierre charras d362cbc530 EEschema: change Save Copy As... to Save Current Sheet Copy As...
Save Copy As did not work with hierarchies (was not able to manage subsheets)
Fixes #9245
https://gitlab.com/kicad/code/kicad/issues/9245
2021-09-27 18:23:11 +02:00
Jeff Young c508c89a81 Pretty-up some warning messages. 2021-09-27 13:24:53 +01:00
Jeff Young 5f3c67bd2b Fill in some missing GetMsgPanelItems and make some others consistent.
Also expunges a std::vector<MSG_PANEL_ITEM> cover type.
2021-09-27 00:23:40 +01:00
Jeff Young 8636afdc73 Use FocusOnLocation for symbol fields cross-probing too. 2021-09-27 00:23:40 +01:00
Jeff Young 5bf042fcc1 Use individual parameter version of wxExecute.
Fixes https://gitlab.com/kicad/code/kicad/issues/9236
2021-09-26 15:03:06 +01:00
Jeff Young f6571c18cb Formatting. 2021-09-26 11:02:57 +01:00
Jeff Young c9aebb8529 Fix symbol fields sorting.
In the symbol fields table the reference contains only the letter, so
the number must be appended.  Conversely, we don't want the unit suffix
as all units are folded into a single symbol.

Fixes https://gitlab.com/kicad/code/kicad/issues/9238
2021-09-25 21:24:16 +01:00
jean-pierre charras f11687c5e5 Do not allow sheet filename change from DIALOG_SCH_FIELD_PROPERTIES.
It does not work. Changing a sheet filename is complex, and can be
made only in sheet properties dialog.
2021-09-25 18:28:19 +02:00
Jeff Young 0dc585e518 Use different dangling state initialization for wires and graphic lines. 2021-09-25 00:34:51 +01:00
Jeff Young 1b8506c6b6 Default dangling state to true. A wire on it's own is dangling. 2021-09-24 20:59:37 +01:00
Jeff Young 7901d705ba Fix optimization to not fetch all possible endpoints for non-connectable. 2021-09-24 20:08:42 +01:00
Jeff Young fad385785d Fix botched merge. 2021-09-24 20:08:29 +01:00
Jeff Young a1a2076aee Include pin roots for symbols that don't have well-defined bodies.
Fixes https://gitlab.com/kicad/code/kicad/issues/8508
2021-09-24 16:19:54 +01:00
Jeff Young a4f83073e3 Use RTree to optimize searches.
Should produce an order of magnitude speedup on dangling end tests
in some documents.
2021-09-24 12:42:22 +01:00
Jeff Young 2d72ccb6ae Simplify dangling end stuff a bit and remove graphic lines from it. 2021-09-24 12:19:27 +01:00
Marek Roszko d39f79b55b Fix schematic custom paper size check to use same limits as rest of eeschema
Fix #9223
2021-09-24 00:46:02 -04:00
Jeff Young 42687f5d9d Give selection preference to pins over wires.
Fixes https://gitlab.com/kicad/code/kicad/issues/9063
2021-09-23 23:59:20 +01:00
Jeff Young 9ea6b44ee8 Formatting. 2021-09-23 23:59:20 +01:00
Marek Roszko 064ab933dd Always update the hierarchy navigator when setting the current sheet in the frame
Fix #9221
2021-09-23 18:14:44 -04:00
Seth Hillbrand 71602475eb Allow rotate/mirror even when dragging
Keeps the lines connected but doesn't solve the crossed-wire mixups.
This allows common usage (mirroring labels/rotating segments) and leaves
prevention of the crossed wires to the user.

We can't really prevent crossed wires when rotating e.g. a part with
wires connected to 4 sides and users will not expect that.  But we
should not disable useful features like mirroring multiple parallel
items to avoid a known impossible situation

Also provides an alternative solution to 345f506f0c that allows us to
rotate groups without destroying connections on hover

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

Fixes https://gitlab.com/kicad/code/kicad/issues/8523
2021-09-23 14:47:49 -07:00
Jeff Young 4b38bd1543 Favour junction dots to wires inside the dot.
Fixes https://gitlab.com/kicad/code/kicad/issues/9187
2021-09-23 22:13:56 +01:00
Jeff Young 552f053a55 Remove pins from symbol hit-testing.
Fixes https://gitlab.com/kicad/code/kicad/issues/8508
2021-09-23 22:07:51 +01:00