Marek Roszko
eeb405c196
Cleanup some more excess math/util includes
2021-06-02 00:50:46 -04:00
Marek Roszko
5f581aa6ad
Move some LABEL_SPIN_STYLE to the cpp to add back warnings
2021-06-02 00:26:16 -04:00
Jon Evans
9effeb1fcb
Don't crash if an invalid bus connection is made
...
Certain situations can trigger the stale cleanup being run
on a bus that doesn't actually contain the stated member.
In this case we should just keep calm and carry on -- who knows
what netlist will be generated, but we shouldn't crash.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8530
2021-06-01 21:49:25 -04:00
Marek Roszko
cf2bb5692a
Remove the wxLog calls from math/util.h for now
...
This was leaking windows headers and partial wx headers to 1084 compilation units......
This also means math/util.h is leaking to 1084 compilation units which seems a bit high too.
2021-06-01 18:44:22 -04:00
Seth Hillbrand
c7d188a8d0
Centralizing SCRIPTING class
2021-06-01 20:18:24 +00:00
Seth Hillbrand
f274a00c08
Remove PYTHON_* compile options
2021-06-01 20:18:24 +00:00
Mikolaj Wielgus
33c0bb78fd
Use file absolute path when determining title bar indicators
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8449
2021-06-01 17:03:20 +00:00
Giulio Girardi
cc5b3f1a2f
Always check simulator netlist options
...
Before the simulation netlist checkboxes were considered only when
changing the simulation type
2021-06-01 12:42:45 +00:00
jean-pierre charras
d84fcd89f1
bom html python scripts: enhancements
2021-05-31 18:54:36 +02:00
jean-pierre charras
54fbcbac36
BOM python plugins: restrict changes made in commit 35f9cd26
to Windows.
2021-05-31 17:06:23 +02:00
Jeff Young
c4cabb38d5
More worksheet -> drawing sheet cleanup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8516
2021-05-31 12:26:44 +01:00
Jeff Young
0598c82972
Terminology (use present tense for flags).
2021-05-31 12:26:44 +01:00
Jeff Young
1be2c8cc40
More trouble with the IS_MOVED flag.
...
We moved it earlier because AddItemToScreenAndUndoList() was clearing
it, but it needs to be set for AddItemToScreenAndUndoList() too.
Fixes https://gitlab.com/kicad/code/kicad/issues/8289
2021-05-31 12:26:44 +01:00
jean-pierre charras
35f9cd2634
BOM python plugins: fix some issues related to python2/3 and utf-8 chars.
2021-05-31 10:03:53 +02:00
Marek Roszko
1b94534451
Revert "Use lambdas to fix paste conditions"
...
This reverts commit 65c7c77c3d
.
2021-05-30 21:25:42 -04:00
Marek Roszko
3ac5aa5369
enum class SHEET_SIDE
2021-05-30 21:23:46 -04:00
Marek Roszko
65c7c77c3d
Use lambdas to fix paste conditions
...
`SELECTION_CONDITIONS::Idle && ` was evaluating as always true because this was referencing the function pointer
2021-05-30 20:37:16 -04:00
Marek Roszko
382dca4e6f
Fix uninitialized member warnings
...
Based on PVS Studio report
2021-05-30 20:01:01 -04:00
jean-pierre charras
a60183ec32
netlist xml: fix missing space between UUIDs for multi-units symbols (trial 2).
...
Fixes #8509
https://gitlab.com/kicad/code/kicad/issues/8509
2021-05-30 11:23:14 +02:00
jean-pierre charras
71f40bd67c
Revert a change made in commit acb024f6
, because it breaks the .net netlist format.
2021-05-30 08:37:13 +02:00
jean-pierre charras
acb024f622
netlist exporter xml: fix missing space between UUIDs for multi-units symbols.
...
(similar to the .net netlist)
kicad_netlist_reader.py: fix compatibility with V6 xml netlist :
"tstamp" keyword is now "tstamps" keyword.
Fixes #8509
https://gitlab.com/kicad/code/kicad/issues/8509
2021-05-29 18:29:02 +02:00
jean-pierre charras
81c7fb61f8
Sub-menu "Preferences..." in main menu "Preferences": fix not working accelerator key.
...
Accelerator keys are disable in our WX_MENUBAR. A common ACTION_MENU is used and
"Preferences..." is now shown in Hotkeys list.
2021-05-29 18:09:49 +02:00
jean-pierre charras
37c31196f4
Eeschema, importFile: build the HTML report messages before displaying the dialog.
...
Fixes #8507
https://gitlab.com/kicad/code/kicad/issues/8507
2021-05-29 10:23:11 +02:00
Seth Hillbrand
be5b281501
Cleanup RAD2DEG and unused vars
2021-05-28 12:37:57 -07:00
Seth Hillbrand
f47784cd14
Fixup Junctions should call common tool
2021-05-28 12:35:38 -07:00
Roberto Fernandez Bautista
3fa8795f26
Fix crash in LIBEDIT when editing pins
...
Units in library items start at 1. 0 is reserved for "all units".
Previous code was requesting an out of range index due to an assumption
that units start at 0.
2021-05-28 20:13:11 +01:00
Roberto Fernandez Bautista
9a9c9d38e8
CADSTAR Schematic: Cleanup pins in symbols
...
In CADSTAR pins are single points. We can replicate the original look
of the schematic in most cases by searching the symbol for straight
segments that are coincident with the pin and use those to calculate
a suitable pin length and angle.
2021-05-28 20:13:11 +01:00
Roberto Fernandez Bautista
29d1b84939
CADSTAR Schematic: Fix positioning of symbol attributes
...
Symbol attributes were being placed at the wrong location
due to incorrect relative angle calculation
2021-05-28 20:13:10 +01:00
Roberto Fernandez Bautista
8d788b7a09
CADSTAR Schematic: Fix assert regarding sheet absolute path
2021-05-28 20:13:10 +01:00
Roberto Fernandez Bautista
63f56640db
CADSTAR Schematic: Add needed junctions on load
...
Fixes a bug that was causing junctions to disappear when they
were not perfectly positioned in the original CADSTAR design.
2021-05-28 20:13:10 +01:00
Roberto Fernandez Bautista
b985c4d2e9
CADSTAR Schematic: Handle scaled symbols
...
Create a new LIB_PART for scaled symbols. These will be then embedded
into the schematic file. However when "update from library" is done,
it will revert to the unscaled symbol.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8494
2021-05-28 20:13:10 +01:00
Seth Hillbrand
752ae4d519
Rename modification flag routines
...
Differentiates better between the EDA_ITEM IsModified(), referring to
items themselves changing and the EDA_SCREEN IsContentModified(),
referring to whether we have made any unsaved changes.
2021-05-28 12:07:04 -07:00
Seth Hillbrand
d7f219e98f
Unify IsSave and IsModify
...
The flags and calls were used identically, leading to potential
confusion/bugs. Testing for modification should go through
IsContentModified()
2021-05-28 11:51:54 -07:00
jean-pierre charras
40b96c8388
Netlisters: do not remove unconnected pins from netlists needing all pins.
...
Fixes #8499
https://gitlab.com/kicad/code/kicad/issues/8499
2021-05-28 10:09:33 +02:00
Wayne Stambaugh
fdcc49d3ee
Eeschema: fix saving hierarchical sheets in stand alone mode.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8209
2021-05-27 16:01:36 -04:00
Wayne Stambaugh
9fcd847238
Eeschema: allow sheet file paths outside the project to be relative.
2021-05-27 14:48:22 -04:00
jean-pierre charras
bd72f7a054
DIALOG_PIN_PROPERTIES: shows the pin connect point, like in symbol editor.
...
(See commit 2817c)
2021-05-27 20:45:45 +02:00
Wayne Stambaugh
b1572dd56b
Eeschema: fix broken sheet paths when adding existing schematic.
...
All existing sheet schematic file paths were completely trashed when adding
a new sheet from an existing file outside of the project path.
2021-05-27 14:04:56 -04:00
Jeff Young
2817c3b3de
Always show pin dangling symbols in Symbol Editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8493
2021-05-27 17:50:21 +01:00
Jeff Young
42eae27551
Rebuild selection after heavy lifting.
...
Undo does some fairly major redraws (including setting the current
screen), all of which drop the selection and cancel interactive tools.
Make sure the selection is re-built *after* all those run.
Fixes https://gitlab.com/kicad/code/kicad/issues/8492
2021-05-27 14:25:37 +01:00
david-beinder
64cd401bdb
Delete Tool: Fix missing "Item Locked" popup
...
Fixes problem identified in https://gitlab.com/kicad/code/kicad/-/issues/8392
Removes same popup from schematic tool because SCH_ITEM can not be locked
2021-05-27 05:38:51 +00:00
Wayne Stambaugh
71b3ab432c
Eeschema: fix broken sheet name edit control validator.
2021-05-26 15:26:48 -04:00
Jeff Young
3d0fe8e2c6
Only initialize VALIDATOR if we're using it.
...
It appears to get called by the wxWidgets framework sometimes even
when invisible/unenabled.
Fixes https://gitlab.com/kicad/code/kicad/issues/8483
2021-05-26 12:39:33 +01:00
Wayne Stambaugh
db900fe526
Eeschema: fix broken schematic edit control validators.
...
Sheet file names can have ':', '\', and '/' characters depending on the
platform so don't exclude them. Warn the user when any platform specific
paths are used about the platform capability issues rather than outright
prevent them from being used which prevents absolute paths from being used
even when they are desired by the user.
Fix broken validator behavior when excluded characters are not white space
characters only.
2021-05-25 14:10:29 -04:00
Jeff Young
45ba067642
Update SCH_SCREENs RTree after placing new symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8451
2021-05-25 15:10:10 +01:00
Roberto Fernandez Bautista
be436ec977
Remove whitespace from page numbers on load and use # if page is empty
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8350
2021-05-21 22:52:47 +01:00
Roberto Fernandez Bautista
6b764f893a
Assign a page number to all sheet instances when adding a sheet
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8208
2021-05-21 22:52:40 +01:00
Roberto Fernandez Bautista
5cf3e6d31a
eeschema: Duplicate() is a Copy() followed by a Paste()
...
The only subtle difference is that Duplicate() does not modify the
clipboard contents so we need to keep a local variable in which to
store the result of a Copy()
2021-05-21 22:52:34 +01:00
Giulio Girardi
78a475d75b
Enable "Spice settings" button on derived symbols
2021-05-20 14:53:23 +00:00
Wayne Stambaugh
11785b08fe
Eeschema: fix plot path in stand alone mode with no project loaded.
...
Fixes https://gitlab.com/kicad/code/kicad/8308
2021-05-18 13:59:27 -04:00
Wayne Stambaugh
57d4347f00
Eeschema: move schematic plot dialog code into dialog_plog_schematic.cpp.
...
This makes it easier to find all of the dialog code, has less files to
compile, and makes it easier to see the redundant code that could be
refactored.
2021-05-17 17:00:30 -04:00
jean-pierre charras
cda9650380
Eeschema: ensure the actual canvas type is saved in config.
...
The saved type was not updated after switching the canvas type from Preferences.
2021-05-17 11:48:37 +02:00
Mikolaj Wielgus
33c6bdd121
Preserve plot panel order in simulator notebook
2021-05-15 12:26:50 +00:00
Mikolaj Wielgus
afc6d29fde
Fix relative path used where absolute path should be
2021-05-15 12:26:50 +00:00
Mikolaj Wielgus
b9fd18d150
Minor UI changes, display workbook in title and some fixes
2021-05-15 12:26:50 +00:00
Mikolaj Wielgus
5410510bd4
Spice sim: remember last simulation, remove welcome page
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8019
2021-05-15 12:26:50 +00:00
Wayne Stambaugh
ebd53cd45c
Eeschema: fix text justification terminology.
...
Use justification instead of orientation relative to the anchor point when
describing text direction and alignment. This seems to be the preferred
method by most users so hopefully this will eliminate some confusion.
Fix a bug in the s-expression schematic parser that failed to take into
account how graphical text alignment is defined for graphic text objects
compared to label text objects.
Fixes https://gitlab.com/kicad/code/kicad/issues/6489
2021-05-14 13:44:17 -04:00
Wayne Stambaugh
e4ac0fb5a1
Eeschema: fix minor editing options panel lay out issues.
2021-05-12 18:04:23 -04:00
jean-pierre charras
64afa3a42e
EEschema, minor fix: avoid modifying frame title after an autosave.
...
Fixes #8411
https://gitlab.com/kicad/code/kicad/issues/8411
2021-05-12 09:45:23 +02:00
Jeff Young
2a856890e6
Allow connections between sheet (pins) and symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8305
2021-05-12 00:07:17 +01:00
Jon Evans
55c1d814f9
Fix hierarchical propagation for designs with unmatched hier ports
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8397
2021-05-10 17:54:09 -04:00
Jeff Young
7356f9568d
Move grid disable modifier from ALT to CTRL.
...
Also had to move the H/V/45 disable modifier from CTRL to SHIFT.
Fixes https://gitlab.com/kicad/code/kicad/issues/8124
2021-05-09 20:17:40 +01:00
Jeff Young
7c66a0a594
Selection routines should never be snapped.
2021-05-09 18:14:41 +01:00
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
Jeff Young
ebfbe14185
Persist fields_autoplaced information.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8086
2021-04-02 17:08:58 +01:00
Jeff Young
c7d689a022
Show field children when creating new labels.
...
And in particular, show reasonable intersheet reference facsimiles.
2021-04-02 15:15:07 +01:00
Jeff Young
04f7fbfa4a
Don't draw selection in hyperlink colour.
2021-04-02 11:18:18 +01:00
jean-pierre charras
dce351791c
Eeschema, DIALOG_SYMBOL_PROPERTIES_BASE: very minor fix: make lib link copiable.
...
Fixes #8080
https://gitlab.com/kicad/code/kicad/issues/8080
2021-04-01 13:54:32 +02:00
Jeff Young
0c4184f1a4
Split lib tree initialization into a two-pass affair.
...
This is under the supposition that we can't set the column widths
on some Mac instances because the host controls haven't yet been
created. This is primarily conjecture based on looking at things
that have the *possibility* of going wrong. Why this only happens
in some installs is beyond me.
Fixes https://gitlab.com/kicad/code/kicad/issues/5479
2021-04-01 10:51:29 +01:00
jean-pierre charras
655a696589
fix compil issue
2021-04-01 11:36:30 +02:00
jean-pierre charras
6499b5f296
Eeschema: protect lib symbols against duplicate field names.
...
If a field name is already in use, try to rename the new field name
(adding the suffix "_1" or "_2" or ... )
This is especially critical when a non mandatory field has the same name as
a mandatory field (was crashing before)
Fixes #8081
https://gitlab.com/kicad/code/kicad/issues/8081
2021-04-01 11:27:14 +02:00
Jeff Young
2ad69fc56b
Move importers from wxLog to REPORTER.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6389
2021-03-31 22:54:30 +01:00
Ian McInerney
0a0935e0f3
Remove ACTIONS::TranslateLegacyId and TOOL_DISPATCHER::DispatchWxCommand
...
After commit 9535153f9e
there were no more IDs inside the legacy ID
system. Therefore the entire system for dispatching and looking up
the legacy ideas and handling those events can now be removed and
the tool dispatcher simplified (it no longer needs to know about
the ACTIONS class).
2021-03-30 23:20:22 +00:00
Roberto Fernandez Bautista
de1191f971
Only FixupJunctions for Legacy designs
...
The new s-expression format embeds the library within the file
so there should be no connectivity issues (unless they were present
in the original design).
This fixes a potential issue with EAGLE imported schematics.
2021-03-30 13:03:56 +00:00
Roberto Fernandez Bautista
c5e4220b5b
CADSTAR Schematic: Fix duplicate pins
...
Fixes a bug that was causing duplicate pins to be loaded
(one on top of the other) for all symbols.
2021-03-30 13:03:56 +00:00
Roberto Fernandez Bautista
767aab7294
CADSTAR Schematic: Fix up junctions after load
2021-03-30 13:03:56 +00:00
Roberto Fernandez Bautista
1629b038e1
CADSTAR Schematic: Fix loading of symbol instances differing from part
...
The previous assumption was that a part definition would always hold
the information about the symbol. However some designs have symbol
instances that refer to a different symbol definition than that
specified in the part.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7808
2021-03-30 13:03:56 +00:00
Roberto Fernandez Bautista
e6c7ddc271
CADSTAR Schematic: Fix loading of symbol attributes
...
Fixes an issue that resulted in incorrect field values being loaded
2021-03-30 13:03:56 +00:00
Roberto Fernandez Bautista
51db9cfcef
CADSTAR Schematic: Text Loading improvements
2021-03-30 13:03:56 +00:00
Jeff Young
2fc34de1be
Don't nag the user about file extensions. Just fix it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8067
2021-03-29 22:11:35 +01:00
Jeff Young
f2e68e68d0
Add "Hide Tree" context menu options when tree has no selection.
...
Also cleans up some other code to be more consistent between symbol
editor and footprint editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/8052
2021-03-29 12:02:00 +01:00
Jeff Young
14e73d24dc
Naming conventions.
2021-03-29 11:46:05 +01:00
Jeff Young
455e7dc3a8
Reorder for better readability and consistency.
2021-03-29 11:04:06 +01:00
Jeff Young
1b163c5dd3
Don't eat delete event when there's no item being drawn.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8061
2021-03-29 10:59:45 +01:00
Jeff Young
0561ce903e
Don't remove IS_MOVED flag too early.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8056
2021-03-28 20:05:41 +01:00
Jeff Young
c32932a311
Naming conventions.
2021-03-28 20:05:41 +01:00
jean-pierre charras
cc43436df8
Eeschema: Fix a few issues in dialog edit fields
...
Partial fix of #8057
2021-03-28 18:23:35 +02:00
Ian McInerney
42c6af4bd8
Cleanup ACTION_MENU creation in some places
...
The ACTION_MENU constructor now takes the tool as an argument,
so the call to SetTool() immediately following it can be removed
and the tool just passed into the constructor.
2021-03-27 19:16:58 +00:00
Ian McInerney
7bfa8575fa
Remove redundant information from import/export menu item labels
...
Saying "Import/Export" on the labels when the submenu has "Import"
or "Export" in it is redundant.
Note that we can't just update the action text with the new name,
because that is used in the hotkey list and would become too confusing
without the "Import"/"Export" text.
2021-03-27 18:50:35 +00:00
Jeff Young
15e640b5fe
Reset field ids after re-ordering.
...
We use the id for sorting the multivector.
Fixes https://gitlab.com/kicad/code/kicad/issues/8031
2021-03-26 23:26:10 +00:00
Jeff Young
a0a5e93782
Remove m_props from symbol library plugins. It's not thread-safe.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8035
2021-03-26 21:57:32 +00:00
Jeff Young
3d6c05b210
Apply symbol field id fixup logic to lib parts.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7903
2021-03-26 21:57:32 +00:00
Wayne Stambaugh
925b6d9387
Eeschema header housekeeping round 2.
2021-03-25 17:55:16 -04:00
Roberto Fernandez Bautista
e0d2724f68
CADSTAR Schematic: Increase "tiny" bus labels to 0.4mm text size
...
Also fix incorrect label orientation
2021-03-25 19:10:49 +00:00
Roberto Fernandez Bautista
6494e0bf25
CADSTAR Schematic: Fix orientation of net labels and sheet pins
2021-03-25 17:50:33 +00:00
Roberto Fernandez Bautista
5a74fb9bb1
CADSTAR Schematic: Ensure connectivity with tiny labels at Bus Entries
...
Always add a label at bus terminals to ensure connectivity. The original
design might already have a bus terminal with a given location.
If the original design does not have a label, just make it very small
to keep connectivity but make the design look visually similar to
the original.
2021-03-25 17:50:33 +00:00
Wayne Stambaugh
a85898f904
Eeschema header housekeeping round 1.
2021-03-25 10:08:06 -04:00
jean-pierre charras
faa5ed3e37
typo
2021-03-25 11:47:13 +01:00
Jeff Young
040cdd64f2
Fix typo in Eeschema titlebar.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8016
2021-03-25 10:28:03 +00:00
jean-pierre charras
bbd7b4ca8c
Eeschema, selection tool: uniformize the cursor shape and the actual modifiers.
...
SHIFT, CTRL, ALT modifier keys were handled in 2 different codes, one for
the selection tool and another to modify the mouse cursor shape, with 2
different configs.
Now the modifiers are managed from only one function.
Pcbnew: group also SHIFT, CTRL, ALT modifier keys management to a specific function.
Fixes #8021
https://gitlab.com/kicad/code/kicad/issues/8021
2021-03-25 10:28:20 +01:00
Wayne Stambaugh
b37b7d53b4
Fix geographic annotation bug when back annotating to schematic.
...
For some reason, the footprint UUID was being prefixed to the sheet path
which caused the symbol look up by sheet path to fail. An option was
added to not do this when the geographical back annotation to the schematic
is performed.
2021-03-24 09:57:36 -04:00
Jon Evans
4dbeb15024
Use a worker thread to send socket commands
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6503
2021-03-23 03:20:40 +00:00
Roberto Fernandez Bautista
be51be22a7
Update Page Number when Duplicating or Pasting sheets
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7872
Also, update hierarchy before renaming pasted sheets
Avoids duplicate sheet names when pasting multiple sheets
2021-03-23 02:48:07 +00:00
Wayne Stambaugh
c7d2440699
Eeschema: fix build issue when spice simulator build is disabled.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7996
2021-03-22 17:45:49 -04:00
Jeff Young
29b215d7f5
Move spice compatibility mode out of analysis type notebook.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7988
2021-03-22 13:51:10 +00:00
Jeff Young
cf4cbea8a1
Use a more robust storage of items added to drag.
...
We kept having various issues of the pointer list going stale. This
will prevent all permutations of that.
Also while I was in there I fixed the double-move thing (see bug
number).
Fixes https://gitlab.com/kicad/code/kicad/issues/7910
2021-03-22 13:51:10 +00:00
Wayne Stambaugh
cfaca0e4bb
Revert "Eeschema: remove all legacy schematic and symbol library save code."
...
This reverts commit 9c19c2306e
.
Unfortunately writing legacy symbols libraries can never be removed because
of the symbol rescue feature. :(
Fixes https://gitlab.com/kicad/code/kicad/issues/7986
2021-03-22 08:19:47 -04:00
Wayne Stambaugh
664b0c597a
Schematic netlist exporter header housekeeping.
2021-03-22 07:59:54 -04:00
Jon Evans
c5c348538e
Fix some STL asserts in EE_SELECTION_TOOL
2021-03-21 22:01:45 -04:00
Jon Evans
f7c20c6bef
Only consider pins on this unit as clickable anchors
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7987
2021-03-21 19:18:13 -04:00
Roberto Fernandez Bautista
8efc2f12d8
Non-KiCad Schematic Importers: Do not save project
...
Prevents creating unnecessary project files when importing
Non KiCad schematics.
Also clarified that empty.kicad_wks is required for all importers
(not just EAGLE).
2021-03-21 20:13:20 +00:00
Roberto Fernandez Bautista
6c29f54988
Non-KiCad Schematic Importers: New project when running standalone
...
Create a new project when running eeschema standalone and importing
a non-KiCad Project.
If we have the project manager open, then we instead use the existing
project and load everything there.
2021-03-21 20:13:20 +00:00
Roberto Fernandez Bautista
a0889705e7
EAGLE and Altium SCH importers: UpdateSymbolLinks after import
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7687
2021-03-21 20:13:20 +00:00
Wayne Stambaugh
6997fec14f
Schematic editor dialog source code housekeeping.
2021-03-21 13:31:23 -04:00
Jon Evans
9b0d7b7d37
Maybe make Coverity happy
2021-03-21 09:19:18 -04:00
Thomas Pointhuber
d9229697d8
altium: special string override map should be case-insensitive
...
This only fixes overrides where we explicitly map an override. Wrongly written variables pointing to fields are not corrected by this.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/6256
2021-03-20 20:42:25 +01:00
Wayne Stambaugh
9c19c2306e
Eeschema: remove all legacy schematic and symbol library save code.
...
Legacy schematic and symbol library saving is officially deprecated.
2021-03-20 13:29:44 -04:00
Jon Evans
c04e19f9ac
Include optimization: move some things from common.h to point-of-use
2021-03-20 12:09:18 -04:00
Wayne Stambaugh
80cb1db2e6
Spice simulator settings dialog improvements.
...
The dialog can now be closed even if it is not on a simulation type tab
which is an improvement but it still doesn't flow very well. Maybe a
drop down list control to select the desired simulation type would make
for a better user experience.
2021-03-20 11:19:40 -04:00
Jon Evans
ba67acf348
Fix wx3.0 build
2021-03-19 22:11:54 -04:00
Jeff Young
f0e6f812ff
Edit One Field improvements.
...
1) Accept <enter> as OK if the multiline textbox isn't shown.
2) Focus and select all in first control if multiline textbox isn't shown.
3) Make title be title caps ("Edit Sheet name Field" looked dorky).
Fixes https://gitlab.com/kicad/code/kicad/issues/7940
2021-03-20 00:41:09 +00:00
Jon Evans
82a4cacb4f
Add threaded library load to symbol editor
2021-03-19 20:23:54 -04:00
Jeff Young
2e129d9b47
Naming conventions and other cleanup.
2021-03-19 23:06:19 +00:00
Jeff Young
7a13ad7b17
Consistent naming.
2021-03-19 23:06:19 +00:00
Jon Evans
4b46c0c954
Make sure nested settings get released in dtor
...
Also fix a crash if sim window can't be created because
ngspice shared library could not be found
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7969
2021-03-19 19:04:27 -04:00
Ian McInerney
6c3cf33170
Cleanup some compiler warnings
2021-03-19 21:18:45 +00:00
Jeff Young
30ac8de734
Honour component transforms when rotating fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7964
2021-03-19 19:33:36 +00:00
Jeff Young
e560de496c
Intersheet refs don't go in the view themselves.
...
(Their parents draw them.)
Also simplifies a couple of loops by using OfType().
Fixes https://gitlab.com/kicad/code/kicad/issues/7805
2021-03-19 16:14:34 +00:00
Wayne Stambaugh
dbb0a125ac
Fix build error when spice simulator build option is disabled.
2021-03-19 09:04:28 -04:00
Jon Evans
472d0e03fc
Remove unused color layer
2021-03-18 22:30:24 -04:00
Jon Evans
93c991926f
Use threading for loading symbol libraries
2021-03-19 00:56:26 +00:00
Jeff Young
9c02e3ea63
Don't consider 0-length-lines when checking for junctions.
...
Also don't put junctions on labels in the middle of a wire.
Fixes https://gitlab.com/kicad/code/kicad/issues/7951
2021-03-18 23:50:04 +00:00
Wayne Stambaugh
acec6ad7fc
Spice simulator: add Ngspce model behavior mode settings.
...
ADDED: Ngspice simulator model behavior mode settings for PSpice, LTSpice,
PSpice and LTSpice, and HSpice.
Fixes https://gitlab.com/kicad/code/kicad/issues/5810
2021-03-18 15:31:02 -04:00
Jeff Young
1641d6da79
Go back to separate junction logic for wires and buses.
...
Also makes sure we don't add wire width in to hit-test calculations.
Fixes https://gitlab.com/kicad/code/kicad/issues/7951
2021-03-18 18:32:01 +00:00
Jeff Young
999477e0ed
Vastly simplify the needs-junction logic to try and make it less buggy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7951
2021-03-18 16:38:48 +00:00
Jeff Young
e206a9d39a
Naming conventions.
2021-03-18 12:28:24 +00:00
Jeff Young
cc70a9fa98
New components must be added to the screen.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7952
2021-03-18 12:28:24 +00:00
Jeff Young
35d17929ff
Add specific warning for no symbol library selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7954
2021-03-18 12:28:24 +00:00
Jeff Young
36259b1f6b
Refresh lib trees after editing library tables.
...
Also make sure that we grab the library item descriptions from their
source rather than just the cached tree copy.
Fixes https://gitlab.com/kicad/code/kicad/issues/7875
2021-03-17 14:54:18 +00:00
Jon Evans
6d502cb2a5
Don't generate real random UUIDs while loading libraries
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7921
2021-03-17 00:43:13 +00:00
Jeff Young
7e682e9948
Don't allow pins on corners.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7917
2021-03-16 22:03:08 +00:00
Jeff Young
30fdba4cbb
Finish grid-snapping impl.
2021-03-16 22:03:08 +00:00
Mario Luzeiro
4e63aefaab
Call Layout OnSizeGrid
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5690
2021-03-16 21:59:44 +00:00
Mikolaj Wielgus
ee4bc8b1d0
Fix default line width for symbol editor graphic items, add validation
...
There was a mils to iu conversion missing for line width (the default
values are in mils).
Fixes https://gitlab.com/kicad/code/kicad/issues/7813
2021-03-16 13:50:41 +00:00
Jeff Young
2bafc1af00
Give up on using preview layer for PlaceComponent.
...
1) Cloning the component fails to select all its pins.
2) Something about the layer compositing causes light selection shadows
to get even lighter. The default pretty much disappears.
Fixes https://gitlab.com/kicad/code/kicad/issues/7908
2021-03-15 19:04:59 +00:00
Jeff Young
82af98b08e
Now that user can specify alpha we don't need to add in more.
2021-03-15 19:04:59 +00:00
Julian Fellinger
de12ebf16f
Check if symbol is disabled first
...
By checking for disabledness of the symbol first we skip potentially unnecessary
validation that in turn would throw an unnecessary warning
Fixes https://gitlab.com/kicad/code/kicad/issues/7338
2021-03-15 08:39:46 -07:00
Jeff Young
573dd36515
Handle <delete> in move and drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7924
2021-03-15 14:23:54 +00:00
Jeff Young
afab60ae06
Fixes for autoplace fields.
...
1) Don't factor in pin names when computing symbol body boundingbox.
2) Grid-snap only in the axis corresponding to the layout side.
3) We only need interline spacing *between* lines, not for each line.
4) Also cleans up the unit checking logic as the unit can't be more
than 0 unless it's a multi-unit symbol.
Fixes https://gitlab.com/kicad/code/kicad/issues/7907
2021-03-15 02:23:29 +00:00
Jeff Young
7415bf0c62
Don't hide (or disable) options if it's not obvious why.
...
It deprives us of the opportunity to inform the user what the conditions
are.
2021-03-15 02:23:29 +00:00
Thomas Pointhuber
4482b3baba
altium: Handle special strings and convert them into KiCad variables. Use Comment for VALUE.
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/6256
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/7736
2021-03-14 16:40:36 +01:00
Jeff Young
e34734c230
Make sure pasted sheet instances get added.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7872
2021-03-13 16:34:30 +00:00
Wayne Stambaugh
a79974fb92
Symbol editor: fix segfault when saving library with renamed symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7866
2021-03-13 08:28:52 -05:00
Jeff Young
b71ab01de4
More wxWidgets 3.1 layout adjustments.
2021-03-13 00:00:38 +00:00
Jeff Young
3e947553f5
Adjust pin conflicts table for wxWidgets 3.1.
2021-03-13 00:00:38 +00:00
Jeff Young
faf9cca938
Fix many cases of old mils flag getting interpreted as allowEval flag.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7883
2021-03-12 15:15:50 +00:00
Jon Evans
b20f18e6c5
Properly handle mixed-up group buses
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7870
2021-03-11 18:24:39 -05:00
Jon Evans
44f88f840c
Bitmaps: a few improvements from review
2021-03-11 08:37:35 -05:00
Jon Evans
18037e2f65
Rework bitmap system to load from archived PNGs
...
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
jean-pierre charras
2bc22de1a5
Eeschema: fix crash when opening preferences, due to null pointer.
...
In panel preview, Schematic() returns a null pointer.
Fixes #7869
https://gitlab.com/kicad/code/kicad/issues/7869
2021-03-11 08:20:27 +01:00
jean-pierre charras
33f465f754
SCH_GLOBALLABEL::GetBoundingBox(): do not include IREF when not shown.
2021-03-10 18:38:38 +01:00
jean-pierre charras
d295b5d6de
SCH_GLOBALLABEL: fix broken position of IREF, creating a broken bounding box.
...
Note also the bounding box is too large when the IREF is not shown, because
IREF is always included, even if not shown.
Fixes #7864
https://gitlab.com/kicad/code/kicad/issues/7864
2021-03-10 17:58:44 +01:00
Jeff Young
068e85c567
Reset moved flag after completing move.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7818
2021-03-10 16:00:28 +00:00
Jeff Young
861ad0b6ec
Don't bloat layout.
2021-03-10 16:00:28 +00:00
Wayne Stambaugh
fb29b4f946
Eeschema: add missing symbol cache library file warning.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7346
2021-03-10 09:52:53 -05:00
Jeff Young
e48f86bfd6
Move default assignment on Mac.
...
CHANGED: add corner and repeat last command now default to 'I' instead
of '<insert>' on Mac.
1) wxWidgets doesn't currently display the correct graphic in the menu
for the insert key
2) Mac laptops don't have an instert key
Fixes https://gitlab.com/kicad/code/kicad/issues/5016
2021-03-10 13:35:04 +00:00
Marek Roszko
3d4ac9af03
Relocate win32 resource files to the central folder for further consolidation
2021-03-09 21:48:14 -05:00
Jeff Young
8be3ff5a0a
Perform a slightly more aggressive cleanup.
...
Also removes the functionality that selects the newly-added item as
we don't do that with any of the other drawing tools.
Fixes https://gitlab.com/kicad/code/kicad/issues/7833
2021-03-09 21:42:35 +00:00
Jonathan Haas
14f00271a4
Fix typo in the schematics help text. Align bottom example properly, as the subscript letters are smaller.
2021-03-09 16:23:12 +00:00
Jeff Young
2a9186d9e9
Don't re-use FieldIDs when assigning ids on save.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7849
2021-03-09 15:09:31 +00:00
Jeff Young
e4590e4762
Make sure SCH_GLOBALLABEL's bounding box includes its intersheet ref.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7819
2021-03-09 12:08:33 +00:00
Jeff Young
3c8e35249c
Mac doesn't like menus that start with ID 0.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7845
2021-03-09 12:08:33 +00:00
jean-pierre charras
ae15098a5d
Make a menuitem name translatable and understandable.
2021-03-09 12:53:44 +01:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Franck Jullien
c16199c3f9
eeschema: add a setting to allow intersheets to not list their own page
...
Also disable inter-sheet options when "Show inter-sheet references" is
not checked.
2021-03-08 20:40:37 +00:00
jean-pierre charras
14b1d36b38
Simulator: Fix a ugly bug that happens is some simulations
...
TRhe initial code was broken.
2021-03-08 20:01:36 +01:00
jean-pierre charras
638a9b693d
SIM_PLOT_FRAME_BASE: minor cosmetic enhancements and fix a incorrect wxmenu
...
name in the .fbp file that prevent to rebuild working .cpp and .h files.
2021-03-08 16:33:08 +01:00
Jeff Young
6fd247a152
Check for active tool as well as items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7821
2021-03-08 14:09:43 +00:00
jean-pierre charras
c1003e2ddd
Fix missing call to Layout() in SIM_PLOT_FRAME after adding widgets.
...
Fix a minor wxWidgets warning.
2021-03-08 13:49:45 +01:00
jean-pierre charras
8285f2a223
Fix a compil error.
2021-03-08 12:45:00 +01:00
Jeff Young
ed61440d2a
Improve clarity.
2021-03-08 11:07:35 +00:00
Jonatan Liljedahl
5b70508624
dialog_sim_settings: don't try to read current wxChoice selection if no choices.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7823
2021-03-08 09:36:15 +00:00
Jon Evans
720147d272
Remove transitive inclusion of bitmaps.h
2021-03-07 16:08:57 -05:00
jean-pierre charras
7f9890adaa
Fix a install issue after changing a plugin filename (by commit a0f57d6
)
2021-03-07 20:57:09 +01:00
Graham Keeth
a0f57d6846
Cleanup BOM script descriptions
...
- make descriptions consistent
- fix inaccuracies
- describe what scripts do more precisely
2021-03-07 16:33:59 +00:00
Jeff Young
22b4a74bfa
Don't forget intersheet refs when collecting non-view items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7819
2021-03-07 15:04:01 +00:00
Jeff Young
3ab1ef7b83
Formatting.
2021-03-07 15:04:01 +00:00
Jeff Young
b691c18bfc
Allow netclass assignents to unnamed nets.
...
Most of the code had already moved over to this, but there were a few
hold-outs.
Fixes https://gitlab.com/kicad/code/kicad/issues/7802
2021-03-05 19:16:09 +00:00
PJM
0fc8a9d89a
Eeschema: Fix ctrl-MMB double click to perform 'Zoom to Objects'
...
CHANGED: Ctrl-middle mouse button double click should perform
'Zoom to Objects' in Eeschema, but a change in modifier key handling
broke it. This MR restores the functionality.
Fixes https://gitlab.com/kicad/code/kicad/issues/7803
2021-03-04 22:43:03 -08:00
Jon Evans
5ca7a2c457
Fix some issues with group bus prefix handling
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7196
2021-03-04 23:37:46 -05:00
Jon Evans
4ddb942ec0
Do not allow drag selection or drag move when already moving something
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7800
2021-03-04 19:01:31 -05:00
Wayne Stambaugh
6cdc3664ba
Symbol editor: fix crash whe changing symbol name.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7791
2021-03-04 18:21:41 -05:00
Wayne Stambaugh
7a00e01b3e
Eeschema: fix false positive library symbol changed ERC errors.
...
This fix required sorting all of the LIB_PART draw items to ensure
accurate comparison between the symbols stored in the schematic and the
original library symbols. This has a noticeable impact on symbol library
load performance. It may also cause significant changes the next time
the library is saved due to changes in the draw item sorting. Hashing
may be a better solution here but this addressed the immediate problem.
A skeleton method SCH_SCREEN::SwapSymbolLinks() was added because there
is most likely an issue with orphaned symbols in the schematic library
symbol cache during undo/redo operations. More testing is required to
verify this.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7263
2021-03-04 17:59:24 -05:00
WhiteChairFromIkea
ff23f4324a
Do not hardcode altium file extension length
2021-03-04 12:20:40 +00:00
Marek Roszko
8831c5567c
Add win32 version manifest block
2021-03-04 00:34:48 -05:00
Jon Evans
1fc399fa31
Fix a few more cases of picking up wrong mouse positions
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7745
2021-03-03 20:09:24 -05:00
Jeff Young
b9d26a55f2
Show variable references of text in status bar.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7790
2021-03-03 18:58:04 +00:00
Ian McInerney
908de37e7c
Don't hardcode the file extensions where possible
2021-03-03 01:13:59 +00:00
Ian McInerney
69e310918e
Update singletop eeschema to append the new schematic extension
...
This is used when launching a single top instance and no extension
is supplied to the filename given.
2021-03-03 01:13:59 +00:00
Wayne Stambaugh
0ce8bce753
Symbol editor: fix symbol renaming bug.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7616
2021-03-02 19:19:08 -05:00
WhiteChairFromIkea
2c289b3f35
Check for ".SchDoc" before replacing to ".kicad_sch" for subsheet
2021-03-02 22:30:08 +00:00
WhiteChairFromIkea
f83b9236ac
Formatting
2021-03-02 22:30:08 +00:00
WhiteChairFromIkea
b98602583c
Remove "SchDoc" and use "kicad_sch" instead for subsheet names
2021-03-02 22:30:08 +00:00
WhiteChairFromIkea
042ea9761c
Revert "Import footprint to symbols. Subsheet is name is prepended to footprint name,..."
...
This reverts commit 8aa4faa4ce24adc6310223952e8b5773ce245778
2021-03-02 22:30:08 +00:00
WhiteChairFromIkea
292aff48fd
Import footprint to symbols. Subsheet is name is prepended to footprint name, which is probably NOT OK when syncing with PCB.
2021-03-02 22:30:08 +00:00
Jonathan Haas
f90164f7cf
Fix some typos and improve wording
2021-03-02 19:13:49 +01:00
Jon Evans
f6064523a3
Use valid diff pair suffixes in label help example
2021-03-01 21:47:29 -05:00
Jeff Young
7760570d76
Treat action buttons in Symbol/Footprint Properties as OK, not Cancel.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7001
2021-03-01 20:37:04 +00:00
Jeff Young
57e948ff08
Make sure axesEnabled is set before saving config.
...
We don't actually allow the user to change this at present, so one
could argue that we should remove it from what is saved out of the
config. But this is a smaller, safer change.
Fixes https://gitlab.com/kicad/code/kicad/issues/7666
2021-03-01 20:37:04 +00:00
Sylwester Kocjan
959ae73a01
Eeschema,sim: extract plot colors to new class
2021-03-01 18:50:37 +00:00
Jon Evans
375cd12258
Eeschema: never replace event position in wire drawing tool
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7745
2021-03-01 12:17:18 -05:00
Jeff Young
5bc2285aef
Fix another failure of dynamic_cast<>.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7767
2021-03-01 14:46:27 +00:00
Jeff Young
8a33542bcd
SCH_COMPONENT::GetField() expects a vector index, not a field id.
...
Check this at compile time. Callers wanting to use an index now must
use SCH_COMPONENT::GetFields()[i] instead.
Fixes https://gitlab.com/kicad/code/kicad/issues/7757
2021-02-28 15:10:37 +00:00
jean-pierre charras
13bcfc79a1
Eeschema, DIALOG_ERC: fix minor issues:
...
- avoid printing twice the messages when running tests (Report() was called twice).
- when saving the report open the project directory by default.
2021-02-28 15:52:14 +01:00
Jeff Young
8ab1f957a2
Update title after a Save All.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7752
2021-02-27 23:17:48 +00:00
Jeff Young
790e97a398
Only report "done" once, and be a (bit) more descriptive about it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7743
2021-02-27 20:28:06 +00:00
PJM
d8089ed54a
Eeschema: Adds wire when dragging directly connected labels
...
CHANGED: KiCAD allows connecting components directly together in
schematics. If the user drags one of the components, KiCAD
adds a wire to keep the conection intact. It should do the same for
net and global labels but it doesn't.
This MR adds net and global labels to the list of items that can connect
to other items.
Fixes https://gitlab.com/kicad/code/kicad/issues/7713
2021-02-26 22:56:28 -08:00
Roberto Fernandez Bautista
76ef98339d
CADSTAR PCB Archive Importer: Re-write loading of power symbols
...
Ensure all each power symbol is unique for each net name even
if it uses the same graphical symbol.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7722
2021-02-26 19:32:44 +00:00
Jon Evans
7fda7438f9
BOM dialog: explain when we can't find scripts
...
Also default to the user plugin dir when adding a new plugin,
and don't convert filenames to full path on save.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7719
2021-02-25 22:41:12 -05:00
Jeff Young
808ab92834
Simplify default format for exporting netlist.
...
It's now just remembers the last-shown tab.
Fixes https://gitlab.com/kicad/code/kicad/issues/7618
2021-02-26 00:36:39 +00:00
Seth Hillbrand
f73039cb18
Fix wire endings both too small and too large
...
Junctions should only be wire endings when ending directly on the wire.
This is the requirement for netlisting, so we need to follow it in the
auto-end as well.
SCH_LABEL needs to allow ending because any wire that touches the label
will be connected, so there's a use case for this. However, the
bounding box for local labels did not include their connection point, so
we increase that box a bit. Note that this might have the opposite
effect to https://gitlab.com/kicad/code/kicad/-/issues/7689
Fixes https://gitlab.com/kicad/code/kicad/issues/7714
2021-02-25 16:27:05 -08:00
Jeff Young
b8c95345d0
Make sure reporters have a better default path than /bin.
2021-02-25 15:05:26 +00:00
jean-pierre charras
1ac81c04e5
Bugfix for "Edit text and graphic properties" dialog: vertical alignment code
...
erroneously checked against change in horizontal alignment UI item
2021-02-25 12:52:04 +01:00
jean-pierre charras
cfa3f3afeb
Fix compil issue.
2021-02-25 10:44:14 +01:00
jean-pierre charras
9797bc5f25
Left Mouse Button: use same modifiers for Pcbnew, Eeschema and pleditor for selection.
...
It also means the "force disambiguation menu" uses now Ctrl in Eeschema and pleditor.
2021-02-25 08:22:35 +01:00
Jon Evans
8d62c73b86
Eeschema: overhaul storage of BOM plugin settings
...
CHANGED: BOM generator plugins are no longer loaded by
searching all plugin directories; instead a
fixed default set of plugins is provided.
Also:
- Move from sexpr to JSON
- Support both full-path and no-path specifications of plugins
- Add a Reset to Defaults button to reset the list
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7633
2021-02-24 22:45:42 -05:00
Wayne Stambaugh
9f42b5e8c7
Attempt to fix Coverity issue 316502.
2021-02-24 17:36:11 -05:00
Jon Evans
92cc88f87c
Tighten up schematic label bounding boxes
...
Margins were being added in more places than necessary
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7689
2021-02-24 17:15:35 -05:00
Seth Hillbrand
0bab025832
Fixup toolchaining for immediate mode
...
The move tool can stack on others, so when we re-enter the previous tool
this caused another immediate action. We flag re-entry in the tool
stack to check for this and avoid unexpected tool starts
2021-02-24 10:44:54 -08:00
Jeff Young
2fd5f25c3c
Allow expand selection to work (even if you probably can't get there).
...
I think the guessSelectionCandidates narrows down to a single item
in 99.9% of cases, so we can probably remove this entirely. But for
now it's safer just to fix it.
2021-02-24 14:12:32 +00:00
Wayne Stambaugh
1786ae8773
Eeschema: use symbol nomenclature for object file naming.
2021-02-24 08:48:02 -05:00
James Jackson
eee04f4482
Fix Bus Management UI flow on macOS
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7510
2021-02-24 01:32:29 +00:00
Seth Hillbrand
0518d9c546
Add more force-immediate tools
2021-02-23 17:05:03 -08:00
Seth Hillbrand
005622027f
Add component/footprint is always immediate
...
When a user clicks on the "Add Component", "Add Power" or "Add Footprint"
icon, they want to add the item. Requiring an extra click on the screen
before selecting the component/footprint is not needed.
2021-02-23 16:15:31 -08:00
Jeff Young
7318417ca4
Fix typo in expand-selection-disambiguation menu logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7654
2021-02-23 22:09:00 +00:00
Jeff Young
7e2b0e63f1
Fix junction logic when splitting two wires.
2021-02-23 21:43:41 +00:00
Jeff Young
c0487e5c87
Don't leave the cursor position forced.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7665
2021-02-23 21:43:41 +00:00
jean-pierre charras
94bc373f30
PANEL_EESCHEMA_EDITING_OPTIONS: add info about left mouse click and modifiers.
...
Similar to the existing info in Pcbnew editing options panel.
2021-02-23 20:40:22 +01:00
Jeff Young
8755f55956
Fix copy-paste error.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7674
2021-02-23 17:50:11 +00:00
Jeff Young
a9ea617069
Add some defensive code for double-moves.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7665
Fixes https://gitlab.com/kicad/code/kicad/issues/7502
2021-02-23 16:38:18 +00:00
Jeff Young
9eb2113a50
Make TwoClickPlace cursor handling match SingleClickPlace.
2021-02-23 15:28:45 +00:00
Jeff Young
e251cf067a
Formatting.
2021-02-23 14:34:06 +00:00
Jeff Young
d7b6d4a541
Warn user when placing a junction is just going to remove it again.
...
Also removes a duplicate call to SaveCopyForRepeatItem (which has
already been done in AddItemToScreenAndUndoList).
Fixes https://gitlab.com/kicad/code/kicad/issues/7651
2021-02-23 12:51:15 +00:00
Jeff Young
b938df0e46
Coding policy.
2021-02-23 12:49:02 +00:00
Jeff Young
a3b9e8ddb4
Round 2 of Worksheet -> Drawing Sheet.
2021-02-23 11:57:44 +00:00
Seth Hillbrand
b484c0787b
Disable commands in SingleTop
...
We cannot do forward/reverse annotation in Single Top mode because we
depend on shared memory access. This disables the menu options in this
case and replaces the toolbar update pcb icon with the import netlist,
which is more appropriate for single top mode
Fixes https://gitlab.com/kicad/code/kicad/issues/7637
2021-02-22 14:49:13 -08:00
Jeff Young
cad5198ab7
Worksheet -> (industry standard) Drawing Sheet.
2021-02-22 17:35:46 +00:00
Roberto Fernandez Bautista
ccbc0f73cc
CADSTAR Schematic Archive Importer: Fix Coordinate Rounding error
...
Rewrite of the calculation to convert CADSTAR to KiCad coordinates,
rounding half way cases away from zero.
Use integer division instead of double, to ensure precision.
2021-02-22 13:24:00 +00:00
Roberto Fernandez Bautista
842a930ced
CADSTAR Schematic Archive Importer: Autoplace fields when adding sheet
...
Makes the sheets look a little bit better when there is no block name
in the original CADSTAR design.
2021-02-22 13:24:00 +00:00
Roberto Fernandez Bautista
7b5cf955af
CADSTAR Schematic Archive Importer: Visible fields to calculate BBOX
...
- Ensures page size is calculated correctly
2021-02-22 13:24:00 +00:00
Roberto Fernandez Bautista
5acdf1ddb1
CADSTAR Schematic Archive Importer: Align to original grid
...
Previous assumption of 100mil grid in CADSTAR schematic designs has
been proven to be incorrect. Let's use the "working grid" in the
original design instead.
2021-02-22 13:24:00 +00:00
Roberto Fernandez Bautista
c98106ebcf
CADSTAR Schematic Archive Importer: Parse TESTPOINT
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7574
2021-02-22 13:24:00 +00:00
Roberto Fernandez Bautista
09ebfcd650
CADSTAR Importer: Fix Code Style
...
- Rename member variable names to use the 'm_' prefix
- Rename a few object types that clashed with KiCad object names, such
as BOARD and SCHEMATIC, to avoid the use of '::' to access the KiCad
objects.
- Remove some unused code.
2021-02-22 13:24:00 +00:00
Jeff Young
09d3667bce
Fix bone-headed mess up of two-click-place.
...
Original architecture was to pass KICAD_T in to specify what kind of
object you wanted. That didn't work well with things like cursor
shape so it was moved to setting booleans based on the ACTION. When
I cleared out the old KICAD_T stuff I missed one case where it was
still used. That is now corrected as well.
Fixes https://gitlab.com/kicad/code/kicad/issues/7651
2021-02-22 11:54:03 +00:00
Jon Evans
f1039dfb94
Disable project saving outside explicit save actions
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7589
2021-02-21 21:31:45 -05:00
Jeff Young
781d293b60
Add option for text updating to Update Symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6420
2021-02-22 00:36:40 +00:00
Jeff Young
afb4bbde47
Bug fixes to Eeschema context menu.
...
1) Fix typo in SingleSymbolOrPower
2) Remove Edit reference/value/footprint items for power symbols
2021-02-21 23:45:32 +00:00
Jeff Young
34d3218f73
Translation cleanup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6078
2021-02-21 23:13:13 +00:00
Jeff Young
2d28ed8eda
Move canvas backend selection to Preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7630
2021-02-21 20:12:43 +00:00
Mikolaj Wielgus
f9c42585fb
Force immediate action for auto start wire feature
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7503
2021-02-21 18:43:34 +00:00
Jeff Young
18d4d517b0
Implement RMB Import Sheet Pin as a single-shot.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7638
2021-02-21 15:46:53 +00:00
Seth Hillbrand
8a12aa4e3a
Handle unit changes in the netlist
...
Each symbol unit in eeschema has a unique identifier. But we don't have
a unique identifier for the entire symbol. So changing which symbol
instance was unit A (our default base for matching), changed the UUID
that we were using to match the footprints.
This commit adds all UUIDs to the netlist, allowing us to match symbol
to footprint without worrying about which unit is referenced.
This still does not handle changing different units on different sheets.
Fixes https://gitlab.com/kicad/code/kicad/issues/7604
2021-02-20 20:11:49 -08:00
Marek Roszko
907e282347
Silence some msvc warnings
...
- exception variables that were unused
- RAYSEG2D improperly foward declared with class instead of struct
- unused vars
2021-02-20 11:58:55 -05:00
Jeff Young
91e876ce0d
Make sure the title is updated when file is saved/reverted/etc.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7626
2021-02-20 15:09:47 +00:00
Jeff Young
881cb3182b
Move writable dir checking lower down.
...
(Well, it was already lower down, this really just removes the higher
up calls that were getting in the way.)
Fixes https://gitlab.com/kicad/code/kicad/issues/5937
2021-02-19 22:24:08 +00:00
Jeff Young
5994ce3711
Be more aggressive about updating title to show dirty status.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7613
2021-02-19 21:58:49 +00:00
Jeff Young
1a36971583
Remove higher-level write-protected check. It's now done lower down.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5937
2021-02-19 21:46:06 +00:00
Jeff Young
26cb05051b
fixup! Whittle down library tree context menus to be more contextual.
2021-02-19 19:07:45 +00:00
Jeff Young
57e043e0e6
Don't allow moving markers. Do allow excluding them.
2021-02-19 19:07:45 +00:00
Jeff Young
c2f68ca4da
Whittle down library tree context menus to be more contextual.
...
(From discussion on Zulip.)
2021-02-19 19:07:45 +00:00
James Jackson
48853d0c88
Eeschema: Allow auto-wiring / drawing from unconnected bus and graphic line endpoints
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7537
2021-02-19 17:15:27 +00:00
jean-pierre charras
9cc2781d55
typo
2021-02-19 10:35:25 +01:00
jean-pierre charras
d0ca01be22
DIALOG_EDIT_COMPONENTS_LIBID: do not replace fields by default.
...
Values entered by the user will be lost and the schematic can be broken.
This is especially true for generic components.
Add also a tool tip for this option.
2021-02-19 09:37:53 +01:00
Seth Hillbrand
05b559c9dc
Quiet gcc warnings
2021-02-18 11:20:27 -08:00
Jeff Young
b43db7cd7d
Fix assert in Symbol Editor.
...
Also allows some symbol lib operations when we know the context even
if the library itself isn't selected. (For instance, select a symbol,
copy, paste.)
2021-02-18 18:08:37 +00:00
Zoltan Gyarmati
0df1558e10
eeschema: update symbol fields when editing Symbol Library links
...
Also making this behavior optional via a adding checkbox to the
Edit Symbol Library Links dialog.
Fixes: https://gitlab.com/kicad/code/kicad/issues/7010
2021-02-18 18:06:11 +00:00
Jon Evans
d951ac5bfe
Fix logic issue with sheet pin ERC
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7592
2021-02-18 12:10:59 -05:00
Jeff Young
66b33834b5
Always enable save; move dirty bit to asterisk in title bar.
...
Also unifies PCB Editor and Schematic Editor names with other
locations in the GUI (which were still Pcbnew and Eeschema).
Fixes https://gitlab.com/kicad/code/kicad/issues/7587
Fixes https://gitlab.com/kicad/code/kicad/issues/7594
2021-02-18 16:05:42 +00:00
Jeff Young
6a5bba2a80
We don't really want users hand-editing library table files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7591
2021-02-18 11:53:36 +00:00
Jeff Young
b2a4cbedda
Add conditions for rotate/group/lock items in toolbar.
...
Also fixes cut/copy/delete conditions to allow use in immediate mode.
2021-02-18 00:10:41 +00:00
Marek Roszko
b80fdad511
Don't generate a format specifier length of ":"
...
It's ambiguous, are we talking the length of a human colon or a pigs?
Fix #7556
2021-02-17 18:53:07 -05:00
Seth Hillbrand
a25dfcd1b4
Allow "Update Symbol" command on power symbols
...
Power symbols can be modified in the library so it is useful to allow
them to be updated with the right-click menu
2021-02-17 15:31:22 -08:00
Jon Evans
309fb0825c
Eeschema: allow auto-wiring from zero-length pins (e.g. power symbols)
2021-02-17 12:29:19 -05:00
Jeff Young
b6a7981e62
Write changes back to grid after using file explorer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7361
2021-02-17 14:08:53 +00:00
Marek Roszko
b609c7dcd6
Kick the osx specific path helpers into PATHS
2021-02-16 23:29:26 -05:00
Sylwester Kocjan
114043fe93
eeschema: add interface to SCHEMATIC for better testability
...
- added abstract class SCHEMATIC_IFACE
- added missing 'virtual' keyword at destructor
2021-02-17 00:59:44 +00:00
Seth Hillbrand
dbbe9cdee4
Hide infobar for save when saving
2021-02-16 15:54:43 -08:00
Marek Roszko
f9c7eae63a
Avoid null access in NGSPICE::AllPlots
2021-02-16 18:37:57 -05:00
Jeff Young
2c4d53d994
Minor cleanup.
2021-02-16 21:11:36 +00:00
Jeff Young
2a7e60960a
Use standard mirror icons & terminology.
...
Also use standard group icons.
Also put both (and rotate commands) in toolbar.
Fixes https://gitlab.com/kicad/code/kicad/issues/7504
2021-02-16 21:11:36 +00:00
Seth Hillbrand
24795f5b12
Fix overzealous breakSegments()
...
We cannot break segements that are merely close or on endpoints, so we
filter these prior to the break routine. Failing to do this was
overloading our undo stack with bogus values
Fixes https://gitlab.com/kicad/code/kicad/issues/7553
Fixes https://gitlab.com/kicad/code/kicad/issues/7557
Fixes https://gitlab.com/kicad/code/kicad/issues/7554
2021-02-16 10:12:30 -08:00
Jeff Young
4408897b87
Formatting.
2021-02-16 16:24:37 +00:00
Wayne Stambaugh
114dceec2e
Eeschema: Eagle schematic plugin parser improvements.
...
* Complete drawing of sheet border/title block symbol.
2021-02-16 09:33:15 -05:00
Jeff Young
a1f510ef6a
Make sure migrated aliases get hooked up to migrated parents.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7322
2021-02-16 12:49:06 +00:00
Zoltan Gyarmati
f997deec75
eeschema: fixing title block variable expanding in text objects
...
Also fixing an off-by-one error, which also affects pcbnew.
Fixes https://gitlab.com/kicad/code/kicad/issues/7489
2021-02-15 22:24:05 +00:00
Wayne Stambaugh
089b7afacf
Eeschema: Eagle schematic plugin parser improvements.
...
* Fix multi line text alignment.
* Parse schematic frame objects and convert them to lines.
* Make implicit global labels normal size so they can easily be seen.
* Move sheet fields to a more sensible position.
* Parse schematic symbol instances before wires so that the implicit power
connections can properly be tested. This will be used at a later time.
* Scale label text size down to allow for differences in label offset and
graphical items.
2021-02-15 16:44:58 -05:00
Seth Hillbrand
d93ba0a06a
Choose half-grid for mirror
...
Using the half-grid allows for odd-grid counts to remain on-grid,
closer to the actual center.
Fixes https://gitlab.com/kicad/code/kicad/issues/7493
2021-02-15 11:59:04 -08:00
Seth Hillbrand
55e34592a6
Fix expand selection option in Eeschema
2021-02-15 10:53:17 -08:00
Seth Hillbrand
8745691da3
Toggle LOCALE_IO before re-caching
...
cacheLib() can cause a re-load event, which requires the C-locale.
LOCALE_IO needs to be set before this event to prevent mistaken ','/'.'
mixups
Fixes https://gitlab.com/kicad/code/kicad/issues/6434
2021-02-15 09:10:21 -08:00
James
9205f1571d
EE_SELECTION_TOOL correctly identifies buses and wires for auto starting
2021-02-15 14:57:06 +00:00
Jeff Young
cf42d692bf
Remove some dead code. A little bit of comment cleanup as well.
2021-02-15 14:13:43 +00:00
Jon Evans
212c67c365
Fix bus<>net conflict ERC not checking local labels
2021-02-14 21:35:29 -05:00
Jon Evans
8135abffde
Allow applying global edit actions to selected items only
2021-02-14 18:39:33 -05:00
Jeff Young
ec20121114
Make sure schematic symbol fields get transferred to symbol editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7501
2021-02-14 18:30:14 +00:00
Jeff Young
0f463ee84b
Add Update Symbol Fields dialog for derived symbols.
...
ADDED This allows one to update a derived symbol's fields from the
parent symbol.
Fixes https://gitlab.com/kicad/code/kicad/issues/7168
2021-02-14 12:15:26 +00:00
Marek Roszko
1608282a57
Remove msys2 search paths for ngspice under msvc
2021-02-13 20:08:31 -05:00
Jon Evans
c51e8ff0c6
Iterate over screens, not sheets, for bus alias loading
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7147
2021-02-13 11:04:55 -05:00
Jon Evans
cb27d14ecb
Allow adding a bus alias while one is selected
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7510
2021-02-13 10:55:45 -05:00
Jon Evans
07e1ae1b56
Fix logic of global label ERC check
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7392
2021-02-13 10:29:31 -05:00
Jon Evans
dbd749c07a
ERC warn if hierarchical labels have no matching sheet pin
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7511
2021-02-13 10:24:22 -05:00
Jon Evans
7015f4cf75
Use full names for bus membership ERC checking
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7522
2021-02-13 10:09:16 -05:00
Seth Hillbrand
4f1592e5c1
Fix crash with empty undo stack
2021-02-13 06:41:10 -08:00
Seth Hillbrand
02c7fcdc84
Fix BreakWire tool
...
Adds ability to start new commit to eeschema, allowing all
AddItemsToUndoList to always append without foreknowledge. Keeps newly
split wires on the tool until placed
Fixes https://gitlab.com/kicad/code/kicad/issues/7512
2021-02-12 17:17:12 -08:00
Seth Hillbrand
8c2fe42ef0
More Undo/Redo Cleanup.
...
Don't need the reference point or container action type. Clearing this
command signatures to prevent future confusion/use
2021-02-12 11:26:48 -08:00
Seth Hillbrand
d244c09680
Cleanup undo/redo
...
Mirror/Rotate/etc were all just "Change" items in the undo/redo stack.
This removes the old calls
2021-02-12 10:25:14 -08:00
Graham Keeth
f54ab830f6
Add BOM file extension to BOM plugin command line
...
Attempt to parse BOM output file extension from BOM plugin header, and
append it to the "%O" argument in the BOM plugin command line.
Fixes #6943
2021-02-12 02:17:45 +00:00
Jon Evans
32b12228fc
Use the right sheet when looking for pins to add to netlist
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7434
2021-02-11 20:50:26 -05:00
Seth Hillbrand
cea9e1b62c
Remove Eagle workaround for stacked NC pins
...
We no longer put stacked NC pins in the same net, so we do not require
this hack.
2021-02-11 16:47:21 -08:00
Jon Evans
73ea0fc15e
Always upgrade to a stronger driver even if the path is longer
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7492
2021-02-11 17:25:14 -05:00
Jon Evans
8e9b457887
Make sure sheet pin connections get reset every time
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7499
2021-02-11 17:25:14 -05:00
Jon Evans
1bec10b6fa
Make it easy to select small things overlapping symbols
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7487
2021-02-11 12:13:46 -05:00
Jeff Young
a0b9b0c3ee
Improve IsSymbolEditable to differentiate fields.
...
Fields are editable in Aliases, but still not in Legacy libraries,
locked libraries, etc.
Fixes https://gitlab.com/kicad/code/kicad/issues/7175
2021-02-10 22:57:23 +00:00
Mikolaj Wielgus
1dc0ef01b3
Fix automatic wire tool in gridless mode
...
The automatic wire tool was not working in the gridless mode because the
grid snapping on/off logic present in `EE_GRID_HELPER`, based on the
value of `m_enableGrid`, was not taking into account that another check,
but for the global KiCad setting, would be performed in the `Align()`
method, which is inherited from `GRID_HELPER`.
I've modified all tests of `m_enableGrid` value to also take the global
setting into account, and moved checks for it to `Align()` method, as
it's more consistent this way.
I've also removed an override of the `Align()` method in the
`PCB_GRID_HELPER` class, as it was made redundant by my changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7402
2021-02-10 22:07:49 +00:00
Roberto Fernandez Bautista
7c06bdbd2e
CADSTAR Schematic Archive Importer: Fix parsing of TERMINAL_SHAPE
...
TRIANGLE shape and a few others do not have a "right length",
only a "length".
Fixes the error "Missing Parameter ‘2’ in ‘TRIANGLE’".
2021-02-10 18:49:21 +00:00
Roberto Fernandez Bautista
80d8974f87
CADSTAR Archive Importer: Fix loading of non-cadstar font text sizes
...
Non-cadstar fonts use a width of 0.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
49bf957c48
CADSTAR Schematic Archive Importer: Fix positioning of global labels
...
Previous calculation did not take into account rotation of the labels
when calculating the final position.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
0841f3ae25
CADSTAR Schematic Archive Importer: Fix wires (Implied connections)
...
There is an implied connection between elements in a net even though
there might not be a graphical connection in the file.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
8add7a880d
CADSTAR Schematic Archive Importer: Fix positioning and margins
...
Fix calculation of sheet bounding box and sheet margins with the aim
of matching CADSTAR pdf output as closely as possible.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
2c04d76ff4
Non-Kicad Schematic Importers: Do not reload all symbols after import
...
This is required to allow handling of pin swaps in the CADSTAR importer
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
cb90a4b7e6
CADSTAR Schematic Archive Importer: Handle Pin Swaps
...
Each schematic symbol instance can have pin numbers that diverge from
the pin number definitions in the library
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
4ea487936b
CADSTAR Schematic Archive Importer: Simplify symbol library name
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
552bb5821f
SCH_COMPONENT: Add `const` specifier to all constructor parameters
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
4dc264175a
CADSTAR Schematic Archive Importer: Symbol name is case insensitive
...
Fixes an issue on some designs that would not be able to find the
symbol definition referenced by the part due to different
capitalisation of the symbol name in the part definition and
the symbol definition.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
914ae001b5
CADSTAR Schematic Archive Importer: Load pin types
...
Default to passive if undefined
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
f530b12c31
CADSTAR Schematic Archive Importer: Handle undefined pin number in part
...
Use terminal pin number (i.e. from the symbol definition) when the pin
number is undefined in the part.
This fixes a bug that resulted in symbols with "0" as the pin numbers.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
cc27c31ab0
CADSTAR Schematic Archive Importer: Import common fields visibilities
...
Import field visibilities for Ref, Value and Part Name
Also fix incorrect loading of designator from previous commit
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
297ff282f1
CADSTAR Importer: Update copyright years and remove white spaces
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
bb6fee531e
CADSTAR Schematic Archive Importer: Correctly load symbol instances
...
Previous implementation was not loading all fields defined in the
library.
2021-02-10 18:49:20 +00:00
Roberto Fernandez Bautista
b0051c07cb
CADSTAR Schematic Archive Importer: Load all fields in symbols
...
- Load Fields in the library items as well as schematic instances
- Remove invalid characters (e.g. '\n', '\t', '\r') in fields
- Load footprint field (assume that the footprint library name
is the same as the filename of the schematic)
2021-02-10 18:49:20 +00:00
Seth Hillbrand
67ccee338e
Give cleanup to the move tool
...
For unknown reasons, the move tool was not clearing the stack when
called from the edit tool. This moves the call to move tool to after
clearing the edit tool from the stack. The move tool handles cleanup,
so we skip the original reason for waiting on the move tool before
finalizing the edit tool routines
Fixes https://gitlab.com/kicad/code/kicad/issues/7481
2021-02-10 10:01:05 -08:00
Jeff Young
a30ae6a237
Pass un-pretty-printed bus names through menu help text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7412
2021-02-10 15:03:06 +00:00
Jeff Young
05d2053ded
Put MSW bug fix back in.
2021-02-10 12:37:13 +00:00
jean-pierre charras
909ebe4b78
Try to fix an annoying issue in DIALOG_SYMBOL_PROPERTIES on wxGTK.
...
In some cases selecting a field to change its value make this value invisible.
It happens until the dialog is resized, so I am guessing there is a problem
when initializing sizers settings.
2021-02-10 12:48:58 +01:00
Wayne Stambaugh
048050c980
Eeschema: fix power flag getters and setters for inherited symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7474
2021-02-09 19:11:13 -05:00
Marek Roszko
872184fe8b
Revert "Bump minimum required CMake version to 3.10"
...
This reverts commit a475f45753
.
2021-02-09 18:46:13 -05:00
Seth Hillbrand
09be44a352
Use Jeff's method+font for monospace
2021-02-09 12:14:17 -08:00
Seth Hillbrand
505844f68c
Generalize the Ctrl-Q to all frames
...
Rather than adding our handler to each frame separately, we initialize
the Ctrl-Q quit action at the base frame to be consistent
2021-02-09 11:43:42 -08:00
Wayne Stambaugh
5ecef204cd
Coding policy fixes.
...
Using "this->" violates coding policy section 2.7.
2021-02-09 11:35:43 -05:00
Jeff Young
618e824b0f
Cleanup includes and formatting.
2021-02-09 12:26:46 +00:00
Seth Hillbrand
488cfb9ec7
Update GAL options when loading viewer frame
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5941
2021-02-08 17:43:24 -08:00
Seth Hillbrand
6f0424d742
Use monospace font for textboxes
...
Matches the spacing of our stroke font so the tabs are correctly
displayed in WYSIWYG
Fixes https://gitlab.com/kicad/code/kicad/issues/1807
2021-02-08 15:59:58 -08:00
Simon Richter
a475f45753
Bump minimum required CMake version to 3.10
...
This allows us to remove even more workarounds
2021-02-08 12:23:08 +00:00
Wayne Stambaugh
356c2d3508
Symbol editor: fix symbol save as menu enable logic issue.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7451
2021-02-07 18:21:59 -05:00
Jeff Young
d70cebcd62
Allow clicking on terminal point to finish a bus unfold.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7413
2021-02-07 00:31:00 +00:00
Michael Kavanagh
db66cd50d7
Use Save As icon for Save As action in symbol editor
2021-02-06 22:51:56 +00:00
Michael Kavanagh
97775aa50b
Icons: redo missed simulator icon in new style
2021-02-06 22:51:56 +00:00
Jeff Young
c2dbd28101
Simplify and harmonize symbol editor and footprint editor menus.
...
Some differences are due to difference between libraries being files
in symbol editor and directories in footprint editor, but this unifies
most of the rest.
It also dispenses with the save-to-library vs save-to-document distinction
in the GUI because it makes for too much variability in the GUI, was
implemented differently between the two editors, and isn't needed as much
anymore now that we have the highly visible infobar.
There was also an issue that the save-to-board icon occupies the same
location and has the same size/shape/colours as the Board Setup icon in
PCBNew.
Fixes https://gitlab.com/kicad/code/kicad/issues/7215
2021-02-06 14:33:16 +00:00
Wayne Stambaugh
f26b4058c2
Symbol editor: enable properties controls for inherited symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7126
2021-02-06 08:28:06 -05:00
Zoltan Gyarmati
17b0117074
eeschema: fixing intersheet ref mirroring for global labels
...
Implementing Mirror{X,Y} overrides in SCH_GLOBALLABEL in order
to properly handle Intersheet Ref field mirroring.
Fixes: https://gitlab.com/kicad/code/kicad/issues/7225
2021-02-05 19:55:54 +00:00
Seth Hillbrand
2aa8a3724f
Don't continue until the move tool completes
...
Starting a new action (to add junctions) will break the move tool loop
and cancel placement. We need to wait until the tool completes before
choosing where to place the junctions
Fixes https://gitlab.com/kicad/code/kicad/issues/7421
2021-02-05 10:18:34 -08:00
Jeff Young
2ad5108e7d
Don't depend on wxWidgets dotted and dashed line styles.
...
Turns out they're buggy on OSX.
Fixes https://gitlab.com/kicad/code/kicad/issues/7144
2021-02-05 16:18:28 +00:00
Marek Roszko
e8bcdfed29
Revert 2faf721360
...
Fix #7323
2021-02-05 07:12:23 -05:00
Marek Roszko
4c1b4b4159
Check normalize path result instead of blindly using it.
...
Fix #7323 again
2021-02-05 00:52:41 -05:00
Jeff Young
b4a9792e23
Add a warning for hidden power pins.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6440
2021-02-04 22:47:37 +00:00
jean-pierre charras
b48f29161e
Eeschema: cross probing pin from a pad clicked in Pcbnew: fix incorrect pos of cursor.
...
A transform coordinate was applied twice, breaking the position of the graphic cursor.
Fixes #7414
https://gitlab.com/kicad/code/kicad/issues/7414
2021-02-04 17:24:06 +01:00
jean-pierre charras
658a5cf7ed
SCH_PIN::GetMsgPanelInfo(): fix missing initialization of Pin Number string
...
The displayed string was a old value, not related to the Pin Nummber
Fixes #7414
https://gitlab.com/kicad/code/kicad/issues/7414
2021-02-04 11:14:46 +01:00
Jeff Young
62254309b0
Don't rotate fields if their parent is selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7410
2021-02-04 00:05:13 +00:00
Jeff Young
2faf721360
Edit library table through backing table instead of grid.
...
While editing the grid works on OSX, it doesn't appear to on MSW or
GTK. Whether or not editing the backing table is any better or not
remains to be seen....
Fixes https://gitlab.com/kicad/code/kicad/issues/7323
2021-02-03 15:50:37 +00:00
Jeff Young
c220913aa1
Handle y-axis inversion in Symbol Editor when drag-selecting text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7406
2021-02-03 15:28:11 +00:00
Jeff Young
ff3441143e
Fix assert in setupUiConditions.
2021-02-03 14:40:19 +00:00
Seth Hillbrand
b07c8110c8
Follow grid snapping when moving
2021-02-02 20:23:12 -08:00
Seth Hillbrand
97194983cd
Select cells at a time
...
Selecting cells allows us to cut/paste from individual cells. This is
critical to be able to paste from spreadsheets and move columns around
2021-02-02 19:33:18 -08:00
Seth Hillbrand
238aa2b5b0
Snap to eeschema lines
...
Allows easier snapping to lines when drawing in eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/7378
2021-02-02 19:33:18 -08:00
Seth Hillbrand
ea08f1b8cb
Update action short names for clarity
2021-02-02 19:33:18 -08:00
Roberto Fernandez Bautista
9aedeae5c3
Don't log error messages when using the clipboard
...
wxClipboard::GetData()and wxClipboard::SetData() both log a "wxLogSysError" error-level message (see for example: https://github.com/wxWidgets/wxWidgets/blob/v3.1.4/src/msw/clipbrd.cpp#L703 ). This logged message gets displayed as a messagebox to the user.
The logging can be disabled temporarily by creating a wxLogNull object. See https://docs.wxwidgets.org/3.0/classwx_log_null.html
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6956
2021-02-03 01:55:05 +00:00
Jeff Young
1c6c0bf8cf
Null-ptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7266
2021-02-02 23:09:35 +00:00
Jeff Young
8464add58c
Use GetSchSymbolLibraryName() when looking up symbol in schematic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7301
2021-02-02 22:55:18 +00:00
Jeff Young
b8e97bb6b6
Only apply B&W printer fixes when printing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7388
2021-02-02 15:37:30 +00:00
RigoLigoRLC
afad1625d7
Fix save-as extension of imported schematics
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7333
2021-02-01 18:34:59 +00:00
Wayne Stambaugh
c11ded24cd
Add instrumentation to track down local issues in symbol library file code.
2021-02-01 12:57:16 -05:00
Jeff Young
147c839857
Allow drag-select of fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6662
2021-02-01 17:14:30 +00:00
Marek Roszko
31fd49d444
Use the new nudge path for the symbol lib table, save global and project mru differently
2021-01-31 19:01:33 -05:00
Seth Hillbrand
ae5d2efe07
Snap common single-click tools
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7362
Fixes https://gitlab.com/kicad/code/kicad/issues/7363
2021-01-31 15:17:24 -08:00
Jeff Young
bbb8173b61
Remove and re-add saved-as libraries when Syncing tree.
...
Also removes the aForce parameter as it was always true anyway.
Fixes https://gitlab.com/kicad/code/kicad/issues/7357
2021-01-31 23:00:17 +00:00
Seth Hillbrand
8567739a7a
Remove conditions from common immediate-mode keys
...
The conditions prevent use in immediate mode for common actions. While
this makes enable/disable easier in menu items, this fix is a patch
until we refactor the action framework to distinguish between immediate
mode hotkeys that should start without selections and menu items that
need a selection before running.
Fixes https://gitlab.com/kicad/code/kicad/issues/5333
2021-01-31 14:45:24 -08:00
Marek Roszko
de9da20bda
Fix broken html
2021-01-31 17:37:47 -05:00
Marek Roszko
b05bf34b77
Cleanup redundant if statement
2021-01-31 15:31:57 -05:00
Seth Hillbrand
2edcf42115
Symbol Editor IO_ERROR catching
...
Tests for read-only in table save routines and catches other IO_ERRORS.
Still returns a non-specific error message but prevents crashing when
erroring during save.
Fixes https://gitlab.com/kicad/code/kicad/issues/7352
2021-01-31 11:31:07 -08:00
Jeff Young
dfc6070178
Unify schematic file version checking with PCBNew.
...
This also makes sure that the user gets a warning before saving over
an older s-expr format. While that won't always be wanted, it's now
in the infobar (like in PCBNew), so it's not too onerous.§
Fixes https://gitlab.com/kicad/code/kicad/issues/7347
2021-01-31 17:28:14 +00:00
Marek Roszko
a156acc6b0
Fix broken LIB_ITEM::Compare case
2021-01-31 11:48:05 -05:00
Marek Roszko
bfa8723bb6
Add uninitialized call
2021-01-31 11:45:17 -05:00
Zoltan Gyarmati
3380617836
Axis color fixes in symbol editor
...
- explicitly set axis color at symbol editor start
- force redraw of grid after axis color change
Fixes: https://gitlab.com/kicad/code/kicad/issues/7160
2021-01-31 15:28:37 +00:00
Seth Hillbrand
08a932a969
Add smarts to switch selection on right-click
...
Now looks at how hard it is to select the item (grids) and switches only
if the mouse is more than a grid square away and there is a new item
under the mouse.
Fixes https://gitlab.com/kicad/code/kicad/issues/4455
2021-01-31 07:00:48 -08:00
Jon Evans
abf0a46dce
Refactor PICKER_TOOL and push up snapping disable functionality
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7348
2021-01-31 09:50:41 -05:00
jean-pierre charras
c155218582
Sim plot: fix a rounding issue that can create a missing point in a plot.
...
Due to a truncation when converting a value to integer, the first point was
sometimes missing because it looked like out of plot range.
Fix also a cosmetic issue in dialog.
Fixes #7345
https://gitlab.com/kicad/code/kicad/issues/7345
2021-01-31 10:36:26 +01:00
Mikolaj Wielgus
8eca23aabe
Mark null project initial screen as zoom-initialized
...
The variable `m_Initialized` in `BASE_SCREEN` is used by
`SCH_EDIT_FRAME` to mark whether a screen had its zoom level initialized
by the "zoom to fit screen" action. When this variable is `false`, the
function `SCH_EDIT_FRAME::DisplayCurrentSheet()` performs "zoom to fit
screen", modifying the zoom level. This function is indirectly called in
the undo routines, so if `m_Initialized` is not set to `true`, a zoom
change will occur when the user undoes an operation, a behavior that is
undesired.
`m_Initialized` was not initialized to `true` for the null schematic
(the schematic that is loaded if no project is loaded), causing the
aforementioned undesired behavior.
To prevent this, I've changed the `SCH_EDIT_FRAME` constructor to set
`m_Initialized` to `true`, since it zooms to fit screen already. I've
moved `m_Initialized` from `BASE_SCREEN` to `SCH_SCREEN`, as it is used
only in Eeschema, and renamed it to `m_zoomInitialized`, a name I
believe that better describes what this variable does.
I've also introduced the function `SCH_EDIT_FRAME::initScreenZoom()` to
group the "zoom to fit screen" action with setting `m_Initialized` to
`true`, as they often should occur together.
I'd also like to say that I'm not confident whether
`SCH_EDIT_FRAME::DisplayCurrentSheet()` should perform the zoom level
initialization at this point, but I have decided to not change this
behavior for now, as the commit history suggests it's several years old.
Fixes https://gitlab.com/kicad/code/kicad/issues/7343
2021-01-31 00:49:11 +00:00
Wayne Stambaugh
7737489e57
Symbol editor: don't allow new or imported symbols in read only libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7334
2021-01-30 13:03:05 -05:00
Jeff Young
41234a8373
Implement more precise annotation-required messages.
...
Also moves the message to an infobar so it's more noticeable.
Fixes https://gitlab.com/kicad/code/kicad/issues/7332
2021-01-30 16:31:27 +00:00
Jeff Young
a235103e48
Redo pad & via painting (again).
...
New strategy isolates all draw/don't draw decisions to the ViewGetLOD
routines, and all dimmed/not dimmed to PCB_RENDER_SETTINGS::GetColor.
The actual drawing in PCB_PAINTER is more-or-less conditon free.
Also adds new layers for pad and via hole walls so that they can be
controlled for high-contrast mode.
Also changes the drawing paradigm so that the pads are drawn even when
not on the high contrast layer, just in low contrast. The hole wall
is drawn in high contrast. This actually makes things clearer to the
user (although to be honest was done to keep from having to re-render
pads when the high contrast layer changes since we have two separate
layers now that we can adjut colours on).
Fixes https://gitlab.com/kicad/code/kicad/issues/7328
2021-01-30 16:31:27 +00:00
Jon Evans
1d12f3fe4a
Fix logic in selecting power symbols for net highlighting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7339
2021-01-30 10:28:26 -05:00
Thomas Pointhuber
619e128536
altium: Fix #6194 by no longer mirroring schematic text. Furthermore improve value parsing.
2021-01-30 15:44:32 +01:00
Mikolaj Wielgus
babda304d9
Prevent addition of false plot when current plot panel is not in m_plots
...
Without this commit, when `currentPlotWindow()` returned a valid
pointer, but one that is not used as a key in `m_plots`, it would get
inserted to the `m_plots` map. Because this pointer was not properly
initialized, a crash would later occur. I think this problem was
triggered by the pointer to welcome page, but I haven't checked.
Fixes https://gitlab.com/kicad/code/kicad/issues/7324
2021-01-30 02:04:57 +01:00
Seth Hillbrand
b64611af7a
Make highlight net flexible with grid
2021-01-29 14:28:26 -08:00
Seth Hillbrand
ea6dc0d730
Make auto-wire use snapping behavior
...
Forcing grid snap for the kick-start behavior loses snaps to pins that
may be desired. This also adds force-snapping in select mode to match
the user's auto-start preferences
Fixes https://gitlab.com/kicad/code/kicad/issues/7293
2021-01-29 14:09:33 -08:00
Seth Hillbrand
02954dfaa1
Fix another instance of modifying iterators
...
We cannot modify the ee_rtree while iterating over it without
invalidating the iterators
Fixes https://gitlab.com/kicad/code/kicad/issues/7331
2021-01-29 08:33:44 -08:00
Jeff Young
540dd11b58
Use the file version when reading lib symbols from schematic file.
2021-01-28 21:31:33 +00:00
Seth Hillbrand
50b05aea4a
Thou shalt not set minimum width
2021-01-28 10:55:27 -08:00
Marek Roszko
78dbcdcdb7
Slight fixup to previous library browse change
2021-01-28 07:31:32 -05:00
Jeff Young
69d58d39e5
Add alt pin table to compare function for LIB_PIN.
...
Also fixes refresh issue when editing alt pins.
Fixes https://gitlab.com/kicad/code/kicad/issues/7204
2021-01-28 11:35:18 +00:00
Jeff Young
ff7742c6b8
File naming and include cleanup.
2021-01-28 11:35:18 +00:00
Marek Roszko
a373abd68a
Invert the new symbol library flow to push users to default to a different folder for global symbols
2021-01-28 00:40:21 -05:00
Jon Evans
77bb36a482
Ensure local names of vector bus members are preserved
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7196
2021-01-27 21:53:04 -05:00
Ian McInerney
beb50c529e
Reorganize the CMake folder to separate build and configure steps
...
The BuildSteps folder now contains the CMake scripts that are
called during the build process as individual stages, while
the root CMakeModules directory contains the CMake files used
during the configuration phase.
2021-01-28 00:24:22 +00:00
Marek Roszko
e6dd95e83a
Create a default user projects folder
2021-01-27 19:12:18 -05:00
Wayne Stambaugh
6a39b81647
Fix the last of broken Doxygen comment specifiers.
2021-01-27 17:39:44 -05:00
Jeff Young
7d6a749285
Implement a more aggressive re-entrancy check for SCH drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7259
2021-01-27 19:51:11 +00:00
Jeff Young
df80f6484e
Use canonical names when exporting fields to netlist.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7300
2021-01-27 13:52:24 +00:00
Sylwester Kocjan
df62adf901
eeschema,sim: fix crash at simulation start
...
fixes: https://gitlab.com/kicad/code/kicad/-/issues/7277
2021-01-26 23:29:05 +00:00
Jeff Young
0967f8fc78
Fix typo.
2021-01-26 23:17:30 +00:00
Jeff Young
de1c3a83fd
Hittesting for background-body-filled shapes (and other fills).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7286
2021-01-26 23:17:30 +00:00
Jeff Young
0dd65d9cd1
Naming conventions and file order.
2021-01-26 23:17:30 +00:00
Jeff Young
06f85471a4
Fix copy/paste error.
2021-01-26 19:01:31 +00:00
Jeff Young
f3047829e5
Mark document dirty after drag; don't wait for point editor deactivation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7285
2021-01-26 19:01:31 +00:00
david-beinder
1598e870b6
Insert the same unit on all sheet instances when adding a symbol
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5898 (C)
2021-01-26 18:12:49 +00:00
david-beinder
2e21489acf
Copy unit numbers to symbol instances when pasting sheets
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5898 (B)
2021-01-26 18:12:49 +00:00
david-beinder
4bcd56b1f6
Always include unit number when copying to clipboard
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5898 (A)
2021-01-26 18:12:49 +00:00
Wayne Stambaugh
4619d5e112
Fix more broken Doxygen comment specifiers.
2021-01-26 12:17:52 -05:00
Jeff Young
3702f2e0a9
Add uuid r/w for sch pins, text, wires, etc.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7269
2021-01-26 10:56:19 +00:00
Jeff Young
b576ccef61
Don't double-up tools on tool stack.
...
Also make sure move tool gets cancelled by other tools being
activated.
Fixes https://gitlab.com/kicad/code/kicad/issues/7259
2021-01-26 10:56:19 +00:00
Sylwester Kocjan
6a48e21eb2
simulator: update dialog to handle R, I & TEMP DC sweeps
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2370
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6195
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2386
2021-01-25 21:29:13 +00:00
Jeff Young
f6b7817044
Init intersheet refs props when converting to global label.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7252
2021-01-25 13:20:16 +00:00
Jon Evans
9f18fee124
Fix ERC for nets with power input and input pins
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7264
2021-01-24 22:17:56 -05:00
Jeff Young
8dfd297ee2
Show all pages for intersheet refs, and use IDs in hypertext menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7253
2021-01-25 00:55:38 +00:00
Jeff Young
0a1a5ea669
Fold annotation error reporting into ERC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6938
2021-01-24 23:01:24 +00:00
Jon Evans
8ad448cbbc
Don't leave point editor running when moving things in eeschema
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7227
2021-01-24 12:59:42 -05:00
Jon Evans
09bd66477d
Make sure sheet field parents are up to date
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7251
2021-01-24 12:59:42 -05:00
Seth Hillbrand
b2cd1fddf9
Prevent invalidating iterators
...
When iterating over RTree, we cannot modify the RTree without
invalidating our iterators, so we use a temporary structure to hold the
schematic items
Fixes https://gitlab.com/kicad/code/kicad/issues/7228
2021-01-23 13:41:00 -08:00
Jeff Young
df2d0962c6
Drop hover selection in Symbol Editor after edit action.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7234
2021-01-23 17:12:34 +00:00
Jeff Young
d770284fa2
Add a bus instead of a wire for bus junctions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7231
2021-01-23 17:04:44 +00:00
Jeff Young
7a8a099259
Bump SCH file format version for "unconnected" -> "no_connect".
2021-01-23 17:04:44 +00:00
Jeff Young
0ba0160da9
Add a PT_NIC pin electrical type and a netlist token for SCH_NO_CONNECT.
...
ADDED a new pin electrical type "free" for internally unconnected pins.
CHANGED the "unconnected" pin electrical type is now represented by
"no_connect" in files and netlists. (The legacy syntax is also accepted
in files.)
2021-01-23 00:10:01 +00:00
Jeff Young
10c6e0bc46
Cache entries are dependant on setting of aForceNoConnect
...
Don't use a result cached when aForceNoConnect was false when
aForceNoConnect is true.
2021-01-23 00:10:01 +00:00
Jeff Young
f5e35af1a5
Transmit pin electrical types through to pads.
2021-01-23 00:10:01 +00:00
Jeff Young
274fc60fe9
Formatting.
2021-01-23 00:10:01 +00:00
Roberto Fernandez Bautista
42cbcf7ef4
Don't allow empty page numbers
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6698
2021-01-22 14:02:34 +00:00
Roberto Fernandez Bautista
4f0accb714
Allow only updating reference links during back-annotation
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7190
2021-01-20 00:37:38 +00:00
Michael Kavanagh
ab8bd8f8c7
Dont duplicate items in sheet pin properties combo
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7132
2021-01-19 23:54:03 +00:00
Jeff Young
360953ba98
"comp" -> "symbol".
2021-01-19 23:50:40 +00:00
Michael Kavanagh
d32c12b4b9
Banish new project from template to the menubar
...
+ remove inappropriate icon from Eeschema ctx menu
2021-01-19 22:57:25 +00:00
Michael Kavanagh
80dbc24326
Icons: remove superfluous icon
...
Remove icons where menu text gives context
2021-01-19 22:57:25 +00:00
Jeff Young
351074cc48
Better-encapsulate collector sources in the selection tool.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7191
2021-01-19 21:10:43 +00:00