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