Jeff Young
f03152a548
Add some more tools to the "don't allow tool loop interruption" set.
...
See also b78ba12739
.
Fixes https://gitlab.com/kicad/code/kicad/issues/8071
2021-05-09 17:30:32 +01:00
Jeff Young
693fbf9073
Ask user before overwriting a file when migrating symbol libs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8299
2021-05-08 23:09:51 +01:00
Jeff Young
b78ba12739
Don't allow activation of other tools in the middle of a move.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8116
2021-05-08 20:49:51 +01:00
Wayne Stambaugh
6e017b475d
Warn user before removing invalid rows from library table entries.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8080
2021-05-08 08:58:54 -04:00
david-beinder
063f26531c
Make LIB_PART::GetPins() return data for derived symbols
...
https://gitlab.com/kicad/code/kicad/-/issues/8212
2021-05-06 22:00:06 +00:00
Ian McInerney
5378cacee3
Don't make a copy when looping
2021-05-06 21:56:21 +01:00
Wayne Stambaugh
5da8e700ce
Eeschema: fix BOM path bug in stand alone mode.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8180
2021-05-06 15:42:38 -04:00
Wayne Stambaugh
68085820ff
Eeschema: fix value and footprint field update bug.
...
Don't assume all identical references should have the same value.
Filter by checking that only symbol units having the same reference
also have the same library identifier before updating the value and
footprint fields.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8313
2021-05-06 07:13:26 -04:00
Jeff Young
2e3860de6f
Naming conventions.
2021-05-05 22:58:40 +01:00
jean-pierre charras
d4e5861c62
Fix a few issue in simulation (noticeable only when the calculation time is high):
...
- Wait for end of simulation before return from "C" locale to current locale
(to avoid data files created by ngspice using curr locale instead of "C" locale)
- Do not allow changing signal list to plot during simulation calculation
(avoid crashes)
2021-05-05 20:28:46 +02:00
Seth Hillbrand
61289ab39a
Cleanup ngspice calling signatures
2021-05-05 10:49:40 -07:00
Seth Hillbrand
36975c9cd0
Conditionally handle the SPICE signatures
...
ngspice updated their function signatures, requiring us to test. They
also don't provide an indicator that the signature is changed, so we
need to test based on the existence of a new version define.
Fixes https://gitlab.com/kicad/code/kicad/issues/8358
2021-05-05 10:19:01 -07:00
Jonatan Liljedahl
a8672dd2f9
Simulator: populate DC sources list.
2021-05-04 22:54:42 +02:00
Jonatan Liljedahl
d46e106564
Simulator: Fix sim settings layout for DC sweep page.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8261
2021-05-04 15:14:10 +00:00
Fabien Corona
065f85b504
check on exit
2021-05-04 13:57:45 +00:00
Fabien Corona
0555da2aaa
Eeschema page: if empty, don't check export
2021-05-04 13:57:45 +00:00
Wayne Stambaugh
16bb45208a
Fix save accelerator key handling when library tree has focus.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8247
2021-05-03 19:41:07 -04:00
Marek Roszko
c7345096f8
Use wxFFileInputStream explicitly when loading xml documents
...
wxFFile (FILE, buffered) is better than wxFile (syscalls)
2021-05-03 19:39:56 -04:00
Marek Roszko
8c2f07be2a
Write xml netlists explicitly via wxFFileOutputStream for performance
...
Fix #6944
2021-05-03 19:10:21 -04:00
Wayne Stambaugh
d2a7f81b10
Debugging improvements and clean up.
...
* Remove unused wxLogDebug calls.
* Add add application level character tracing to detect unhandled key
events.
* Catch unhandled exceptions in KiCad main event loop like single top
applications.
2021-05-03 18:08:15 -04:00
Roberto Fernandez Bautista
f2677340f2
Access the new paste behaviour via a new Paste Special... dialog
...
ADDED Paste Special... action in pcbnew
CHANGED Additional options for Paste Special... in eeschema, including
"Assign unique reference designators to pasted instance"
2021-05-03 19:38:32 +01:00
Roberto Fernandez Bautista
98c8f43320
eeschema and pcbnew paste: consistent paste behaviour
...
Duplicates are reannotated on paste in the same way in pcbnew and
eeschema such that when copying and pasting the same block in the
pcb and schematic, the reference designators will match.
2021-05-03 19:38:32 +01:00
Roberto Fernandez Bautista
cf2dc06add
Fix latent bugs in SCHEMATIC and SCH_SEXPR_PLUGIN
...
Noticed after writing the qa test: when loading a file immediately
after having loaded a previous one, it was resulting in a nullptr
exception.
2021-05-03 19:38:31 +01:00
Roberto Fernandez Bautista
ae009e0758
Ensure clipboard data is available after KiCad closes
...
Always Flush() after SetData()
2021-05-03 19:38:31 +01:00
Roberto Fernandez Bautista
5822cd85c4
Fix eeschema copy/paste: save and load sheet and symbol instances
...
Save sheet and symbol instance information to the clipboard on copy
Load sheet and symbol instance information from the clipboard on paste
and renumber page numbers after loading.
Correctly handle pasting in a multiple hierarchy by ensuring symbol and
sheet instances are updated for all instances of the destination sheet.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8207
2021-05-03 19:38:31 +01:00
Roberto Fernandez Bautista
91fd28c4be
Refactor saving sheet and symbol instances in SCH_SEXPR_PLUGIN::Format
...
Avoid code duplication by moving all common code to a new function
SCH_SEXPR_PLUGIN::saveInstances
Also fixes a bug that was resulting in footprint and value information
not being saved for subsheets that were root sheets in a different
project.
2021-05-03 16:54:42 +01:00
Roberto Fernandez Bautista
2c75911669
Fix SortByPageNumbers: use Sheet Name when page numbers are equal
2021-05-03 16:54:42 +01:00
jean-pierre charras
aee1593678
Fix wxWidgets alerts
...
Fixes #8346
https://gitlab.com/kicad/code/kicad/issues/8346
2021-05-02 16:02:33 +02:00
Jeff Young
c30102cd4f
Don't crash when trying to save sim settings during shutdown.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8327
2021-05-01 21:49:40 +01:00
Marek Roszko
9dc611f704
Delay loading eeschema "project settings" to after the ui is ready
2021-05-01 16:13:48 -04:00
Marek Roszko
d4bb1cbc63
Make drawing sheet loading slightly smarter
2021-05-01 14:11:31 -04:00
jean-pierre charras
f6f2284851
Fix missing includes on Linux after commit 0427bda7
2021-05-01 20:05:01 +02:00
jean-pierre charras
0427bda768
Remove useless wx/wx.h include, that create sometimes compil warnings on msys.
...
wx/wx.h includes all wxWidgets .h files, and sometimes creates collision
names in #define between kicad and windows headers
Moreover, blindly including a lot of useless files is compil time consuming
2021-05-01 19:32:15 +02:00
Marek Roszko
18ff8ea4a0
Try to catch memory allocation errors in pcbnew and eeschema
2021-05-01 13:11:10 -04:00
Marek Roszko
e20562b09b
Some cleanup
2021-05-01 10:37:20 -04:00
Marek Roszko
6e9f833739
Disable two prof_counters if not ifdefed
2021-05-01 10:08:21 -04:00
Jeff Young
1ed54d2314
Make sure find/replace respects different values in the hierarchy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8328
2021-04-30 18:39:21 +01:00
Roberto Fernandez Bautista
9b35757e18
Refactor AppendSymbol and AppendMultiUnitSymbol
2021-04-30 11:03:21 +00:00
Roberto Fernandez Bautista
0f85f61e5f
CHANGED: Reannotation in eeschema now always keeps symbol units
...
Ensures that symbol units are never modified after re-annotation.
2021-04-30 11:03:21 +00:00
Roberto Fernandez Bautista
0c91bea751
Fix eeschema reannotation: ensure no duplicate references are created
...
Also implements reannotation of a selection
ADDED: Ability to reannotate a selection in eeschema
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2209
2021-04-30 11:03:21 +00:00
Jeff Young
50fd94d35d
Remove stale comment. (Thanks Jonathan!)
2021-04-26 20:01:30 +01:00
Jeff Young
e06a3cf3b4
Add Annotate Selection in prep for Roberto's fixes.
2021-04-26 17:33:49 +01:00
Jeff Young
de2f60fe4c
Save annotation settings in preferences.
...
See comments in issue.
Fixes https://gitlab.com/kicad/code/kicad/issues/8277
2021-04-26 16:05:22 +01:00
Marek Roszko
8a8475630e
Check wxHAS_NATIVE_TABART before using the simple tab art
2021-04-22 22:24:55 -04:00
Seth Hillbrand
d934dae21a
null check for non-schematic symbol
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8279
2021-04-22 17:53:45 -07:00
Seth Hillbrand
2c2ac39990
Replace default aui art provide in sim
...
The default art provider was a gradient tab. This does not match the
system elsewhere and is particularly bad for dark themes.
The simple art provide matches the background colors correctly.
Although the tab background is still white, this is quite a bit better
than before.
Fixes https://gitlab.com/kicad/code/kicad/issues/8280
2021-04-22 17:35:54 -07:00
Ian McInerney
ecd9bf696e
Be consistent about using nullptr instead of 0
...
0 can be too easily overloaded into an int, so ensure we use nullptr
when we mean pointers.
2021-04-22 22:20:34 +01:00
Wayne Stambaugh
54e18f6b1f
Pcbnew: remove update schematic option for geographical annotation dialog.
...
REMOVED: Update schematic option from geographical annotation dialog due
to potential issues with incomplete and/or broken updates. Use "Update
Schematic from PCB" tool to update reference designation changes.
Forcing the footprint reference designator changes back to the schematic
without checking any other board changes in the schematic could leave the
schematic in a undefined state. The update schematic from board tool is
the correct method to sync any changes from the board.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8042
2021-04-22 12:45:59 -04:00
Jeff Young
ecb2e0e031
Formatting.
2021-04-22 12:38:29 +01:00
Jeff Young
87ca59f52e
One (correct) error message is sufficient.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8225
2021-04-22 12:38:29 +01:00
Jon Evans
511f4cd03c
Simulator: don't try to access an invalid map entry
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8273
2021-04-21 22:09:40 -04:00
Jeff Young
620aa315f6
Show infobar error when asking for empty datasheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8260
2021-04-21 15:40:59 +01:00
Adam Wolf
d91293eea5
Remove ngspice scripts from macOS bundle
...
Apple won't notarize the bundle with those scripts in that area of the bundle. It appears that we don't use these scripts in KiCad.
2021-04-21 12:50:31 +00:00
Jon Evans
afe0c79a1e
Sheet pins need new UUIDs, too
2021-04-18 22:14:15 -04:00
Jon Evans
1e52f0a180
Make sure pasted symbols get new pin UUIDs
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8218
2021-04-18 21:53:38 -04:00
Ian McInerney
ae91042544
Implement thread safety for symbol loading routines
...
These functions can be called from any thread of the library
loader, so we need to ensure we have some thread safety with them.
2021-04-18 18:39:46 +01:00
Jeff Young
f30c67a478
Symbols need to be unannotated when updating their references.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8223
2021-04-18 16:26:36 +01:00
jean-pierre charras
8967e7eb3e
Eeschema: remove a strange test that modified the reference position.
...
For some reason, when the reference was empty, the position was changed
without a good reason. (It happens in the SCH_COMPONENT ctor).
Fixes #8230
https://gitlab.com/kicad/code/kicad/issues/8230
2021-04-18 11:27:05 +02:00
Jeff Young
13473420e5
Remove duplicated routine and fix bug in UTIL version.
2021-04-17 15:10:59 +01:00
Jeff Young
f7ae819430
Don't confuse annotation prefix *letters* with root annotation.
...
Given a symbol U12A, some parts of the code were assuming the prefix was
'U' while others were assuming 'U12'. Further complication arose when
there were '?' in the library version.
Fixes https://gitlab.com/kicad/code/kicad/issues/8223
2021-04-17 12:30:40 +01:00
Jeff Young
9846076676
Don't change must match between FormBuilder and C++ code.
2021-04-16 18:20:55 +01:00
Jeff Young
76ba11bd86
AppendUndo needs to be set after the first undo...
...
... not after the first change.
Fixes https://gitlab.com/kicad/code/kicad/issues/8148
2021-04-16 18:20:55 +01:00
jean-pierre charras
31e9895a1a
Fix a minor compil warning
2021-04-15 19:49:41 +02:00
Wayne Stambaugh
1fc1286180
Minor code cleaning.
2021-04-15 12:59:15 -04:00
jean-pierre charras
e5dd54e05a
Eeschema, spice sim: fix a crash when no value is available.
...
onSimFinished() try to analyse the list of plots, but did not test
if there is available data before using it.
Fixes #8169
https://gitlab.com/kicad/code/kicad/issues/8169
2021-04-14 21:01:39 +02:00
jean-pierre charras
5bfda7f1f0
spice netlist generation: use utf8 format.
...
Using basic conversion from unicode to 8bits strings can break non ASCII7 strings
Fixes #8192
https://gitlab.com/kicad/code/kicad/issues/8192
2021-04-14 09:54:29 +02:00
Jon Evans
6129f978ab
Fix symbol editor not pulling the right settings object
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7916
2021-04-12 22:03:25 -04:00
Roberto Fernandez Bautista
45409ec314
CADSTAR Schematic: Fix orientation of symbol fields
2021-04-12 20:25:04 +01:00
Roberto Fernandez Bautista
9148542219
CADSTAR Schematic: Fix Text Positioning within Symbols
2021-04-12 20:25:03 +01:00
Jonathan Haas
0593f3b0c3
Fill gc with background color before copying to clipboard
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7995
2021-04-12 17:05:50 +00:00
jean-pierre charras
929e535f0c
SCH_EDIT_FRAME::DrawCurrentSheetToClipboard(): fix missing init of worksheet color.
2021-04-12 18:15:30 +02:00
Jeff Young
a4c08e2af6
Apply Eeschema cursor updating architecture to PCBNew.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8135
2021-04-12 11:11:11 +01:00
jean-pierre charras
15353e3c33
Eeschema: when placing a new symbol or image, avoid starting the autopan.
...
When activate the new symbol placement, the mouse cursor is outside the canvas.
Therefore a autopan was started and not so easy to stop.
Now the mouse cursor (and the graphic cursor) are moved to a better location inside the canvas.
Fixes #8156
https://gitlab.com/kicad/code/kicad/issues/8156
2021-04-11 18:01:25 +02:00
Jeff Young
cc956695ae
Hit test for worksheet before adding Properties to menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8171
2021-04-11 14:18:35 +01:00
Thomas Pointhuber
f13eb13b9a
altium: import images from SchDoc
2021-04-10 21:52:37 +02:00
Jonathan Haas
846e4aed42
Fix selection filter in Edit Text and Graphics dialog
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7966
Fixes https://gitlab.com/kicad/code/kicad/issues/8149
2021-04-10 15:49:23 +00:00
Jonathan Haas
0589792a14
Set combobox defaults in "Edit Text and Graphics" dialog
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8167
2021-04-10 09:25:06 +02:00
Jeff Young
df5f010514
Bug fixes for fields when editing a symbol from the schematic.
...
1) Don't reset value when name changes
2) Don't fire events when initialising dialog
3) Make sure when symbol is saved back to schematic that only current
instance has its ref updated, but that all instances have their other
fields updated.
4) When saving symbol back to board always use the fields from the
editor and not the (alias-specific) ones from the library.
Fixes https://gitlab.com/kicad/code/kicad/issues/8159
2021-04-09 17:14:53 +01:00
Jon Evans
7dd6a182f2
Unhide the Altium schematic importer
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8069
2021-04-08 22:22:03 -04:00
jean-pierre charras
677d7b0a60
Eeschema, cross-probing: fix incorrect unit selection when highlight a pin.
...
Highlight a pin of a multi-unit symbol from Pcbnew did not always select the right part.
Fixes #8087
https://gitlab.com/kicad/code/kicad/issues/8087
2021-04-07 19:48:02 +02:00
Ian McInerney
1a727558b0
Switch update event handlers to use the event instead of pointers
...
It is safer to use the event to pass the enable/string
instead of pointers, since using the pointers could trigger
other UI events.
2021-04-07 17:39:48 +01:00
Jeff Young
21d4197eab
Apply SPECIAL_CASE_LABEL_INFO architecture to one-ended-drag.
...
We've been doing this for some time to wires that are attached to
the moving block (and therefore have the other end anchored). However
we also need to apply it when dragging a single end of a wire.
Fixes https://gitlab.com/kicad/code/kicad/issues/7807
2021-04-07 14:40:07 +01:00
Jeff Young
30a073c2bb
Cleanup.
2021-04-07 14:40:07 +01:00
Jeff Young
895f3de455
Formatting.
2021-04-07 14:40:07 +01:00
Wayne Stambaugh
2b86b34124
Eeschema: split out SCH_SHEET_PIN declarations into separate header.
2021-04-06 17:15:49 -04:00
Wayne Stambaugh
866c58a6d6
Eeschema: do not change schematic UUID on file overwrite.
2021-04-06 15:42:22 -04:00
Wayne Stambaugh
df186a2049
Eeschema: fix root sheet UUID changing in project file.
...
This change is a bit more invasive than the description above would
suggest. UUIDs have been added to all schematics. For now, it's only
useful to the root schematic so that the UUID in the project file does
not change every time the project file is save. In the future, it may
be useful to store and check the schematic UUIDs against the one's saved
in the project file.
Fixes https://gitlab.com/kicad/code/kicad/issues/7763
2021-04-06 14:28:01 -04:00
Jeff Young
daaf738c7f
Add save-as files to file history.
...
Also fixes where lock wasn't getting reset on a Save As.
Fixes https://gitlab.com/kicad/code/kicad/issues/8111
2021-04-06 13:35:26 +01:00
Roberto Fernandez Bautista
d041578150
CADSTAR Schematic: Fix import of text alignment
...
Ensure that the text alignment applied to text objects corresponds to
valid text alignments that can be set within eeschema
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8090
2021-04-05 20:15:08 +01:00
Roberto Fernandez Bautista
7d9ee76f64
Don't iterate through m_selection if deleting items from it
...
Use the copied container saved_selection instead
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8126
2021-04-05 18:40:40 +00:00
Jonathan Haas
baca70e748
Fix description: FETs have a gate, not a grid
2021-04-05 16:15:25 +02:00
Ian McInerney
e08387ce3d
Make the GAL responsible for the native cursor management
...
The native cursor must be set on the GAL canvas wx object,
not its frame (otherwise on GTK the cursor is only set
when we get a request for it from the WM and not immediately).
Fixes https://gitlab.com/kicad/code/kicad/issues/6421
2021-04-05 02:36:12 +01:00
Marcus A. Romer
1632707d9b
Replace tabs with spaces
2021-04-05 01:13:39 +00:00
Jeff Young
329577cc5c
Add new text items/labels to the selection so rotate/mirror/etc. work.
...
Also clears the selection after finding the sheet in the sheet pin
case so that the sheet itself doesn't get rotated/mirrored/etc.
Fixes https://gitlab.com/kicad/code/kicad/issues/8108
2021-04-03 19:41:24 +01:00
jean-pierre charras
2b89511887
DIALOG_LIB_EDIT_TEXT: Remove useless code creating a wxWidgets alert. Fixes #8093 https://gitlab.com/kicad/code/kicad/issues/8093
2021-04-03 17:58:11 +02:00
Carsten Schoenert
cb17c9f3dd
Typo fix: Correct various misspelled words
...
agressive -> aggressive
decription -> description
miscellanous-> miscellaneous
rectange -> rectangle
Unkown -> Unknown
2021-04-03 13:39:50 +00:00
Jeff Young
32e8a17cc0
Fix nullptr error.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8102
2021-04-03 11:15:11 +01:00
Jon Evans
358f01ba66
Use HTML report window for symbol loading issues
2021-04-02 19:50:50 -04:00
Jon Evans
c1573744be
Lock project files when opening; open locked projects read-only
...
Also clean up an include-what-you-use problem
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8037
2021-04-02 19:29:56 -04:00
Ian McInerney
bb95761642
Remove unused variable
...
item is already an SCH_ITEM, so the static cast is pointless.
2021-04-02 19:26:22 +01:00