Jeff Young
933a5d45e1
Be more aggressive about clearing edit flags after operations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13173
Fixes https://gitlab.com/kicad/code/kicad/issues/13385
2023-01-05 18:08:22 +00:00
Wayne Stambaugh
d99e09014b
Rename SYMBOL_INSTANCE_REFERENCE to SCH_SYMBOL_INSTANCE.
2023-01-04 15:39:50 -05:00
Mike Williams
bd5d10cd7b
Schematic: remove more extraneous dangling symbols
2023-01-04 11:07:23 -05:00
Wayne Stambaugh
73b7dcbc35
Attempt to unify symbol annotation behavior between place and paste.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13330
2023-01-04 07:36:00 -05:00
Jeff Young
7f35323416
Re-enable sim model ERC testing.
2023-01-03 00:59:14 +00:00
Jeff Young
c5948de2af
Update find status when switching sheets.
...
(Not just when switching sheet during find.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13351
2023-01-02 18:49:28 +00:00
Mike Williams
068b714908
Schematic: merge dual import sheet pin actions
...
I believe I have managed to keep the slightly distinct functionality of
both implementations: the action will now use the selected sheet or find
one under the cursor if it's there.
It will also keep placing pins while they exist, which was inconsistent
in the behavior of the single click version before (other single click
commands keep placing until you cancel, e.g. no-connects )
Also, it will automatically end the tool when it runs out of sheet pins.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13296
2022-12-29 09:36:29 -05:00
Mike Williams
e65de51fc7
Schematic: label auto orientation needs to respect move/drag/change
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13226
2022-12-28 14:30:57 -05:00
Mike Williams
6cc17e4a16
Schematic: new flag IS_BROKEN for trimming BreakSegment danglers
2022-12-28 12:27:57 -05:00
Mike Williams
f03fd5ad2d
Schematic: remove IS_RESIZING
...
Is unused/redundant with IS_MOVING
2022-12-28 12:27:57 -05:00
Mike Williams
b5b65e1455
Schematic: update dragged lines dangling state in realtime
...
Makes the visuals a little nicer as we add bend lines
2022-12-28 12:27:57 -05:00
Mike Williams
f1fab140a1
Schematic: make menu bar rotation items conditional
...
Also fix some items not getting a context menu rotate action.
2022-12-27 14:18:47 -05:00
Mike Williams
8ca8f83a18
Schematic: sheet pin dragging special case needs to check endpoints
...
Otherwise we'll force the wrong end of a line to be special-cased
2022-12-27 12:15:49 -05:00
Mike Williams
33b774685b
Schematic: fix inconsistent selected-by-drag behavior of mid-line labels
...
Two issues here:
Selected labels would half of the time add junctions splitting lines
when the lines would have been selected-by-drag (removing the need for a
junction).
Split lines aren't selected by drag by default, and we need to test
labels against lines that are selected by drag.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13224
2022-12-27 12:15:49 -05:00
Wayne Stambaugh
78e2f0fd4d
Sheet instance handling improvements.
2022-12-26 08:30:03 -05:00
Jeff Young
ba4a7a979a
Don't respond to Duplicate events while placing multiple copies of a symbol.
...
It doesn't really make any sense as clicking will just create another copy
as well.
Fixes https://gitlab.com/kicad/code/kicad/issues/13253
2022-12-24 19:40:39 +00:00
Jeff Young
6f44468385
Fix more lifetime issues in simulator tuning.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13257
2022-12-23 22:03:24 +00:00
jean-pierre charras
e5363d164c
Lib symbol editor, export SVG: fix incorrect position of the drawings.
...
Fixes #13249
https://gitlab.com/kicad/code/kicad/issues/13249
2022-12-23 16:31:35 +01:00
Mike Williams
9b782fa827
Schematic: don't deselect line ends when right clicking off-selection
2022-12-22 14:16:38 -05:00
Mike Williams
8b7d0d71fb
Schematic: show update/change symbols for multiple symbol selection
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13231
2022-12-22 14:00:51 -05:00
Mike Williams
3037f2b444
Schematic: don't require cursor on selected net to assign netclass
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13199
2022-12-22 10:15:48 -05:00
Mike Williams
fc054bda8e
Schematic: fix edit symbol assert
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13197
2022-12-20 08:23:02 -05:00
Mike Williams
389f0655cd
Schematic: re-enable old break wire functionality, add slice
...
Also fix break/slice wires for multiple wires. The shortcut and code
always allowed it, the context menu just didn't appear.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13163
2022-12-19 15:55:59 -05:00
Jeff Young
113fd83fdd
Fix Clang-tidy warnings.
2022-12-19 13:19:21 +00:00
Jeff Young
ebcc1ac062
Use current cursorPos when creating sheet pins.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13206
2022-12-19 12:27:55 +00:00
Jeff Young
65552df6ce
Quite Coverity.
2022-12-16 19:11:34 +00:00
Jeff Young
24786fe0e9
Fix multi-unit symbol bugs.
...
1) SPICE pins need to include all units
2) Already-seen-unit-x needs to be reset when getting netlist again.
Fixes https://gitlab.com/kicad/code/kicad/issues/13164
2022-12-16 13:57:46 +00:00
Jeff Young
af71c2d877
Clear hover selections after command.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13073
2022-12-15 13:47:56 +00:00
Jeff Young
50ccc4e6da
Fix issue converting legacy SPICE models.
...
1) if a legacy model references a library then we need to see if said
libraray exists and read model from it if so
2) legacy node ordering is by index, not pin name
3) we can't auto-generate a pin map when we don't know the pin names,
so don't try
2022-12-14 13:36:28 +00:00
Mike Williams
af4e9968fc
Schematic: remove internal Change Sheet action from hotkeys
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13157
2022-12-13 13:55:23 -05:00
Mike Williams
5e72a1008b
Schematic: don't trim unchanged segments that are connected
...
Previously if you had a wire with two unconnected ends and dragged the
end of another wire to connect with one end, it would delete the first
wire.
2022-12-13 09:03:23 -05:00
Marek Roszko
6eedbe4a14
Allow taking hidden fields into account for symbol unit bounding box
...
Even the GUI export of svg wasn't taking fields into account which rendered the fields regardless of status
2022-12-12 22:47:56 -05:00
Mike Williams
243727428a
Selection: non-greedy box selection of wires ends only when dangling
...
See discussion:
https://gitlab.com/kicad/code/kicad/-/issues/13022#note_1205902448
2022-12-12 15:04:33 -05:00
Mike Williams
d824b7f506
Schematic: move wires always moves the whole line
...
Discussion here:
https://gitlab.com/kicad/code/kicad/-/issues/13022#note_1205922621
2022-12-12 14:45:06 -05:00
Mike Williams
5ce0fe5998
Selection: drop non-greedy full line selection from middle
...
It's too inconsistent to have greedy and non-greedy mode, and also have
tweaks to the non-greedy mode that make it greedier.
2022-12-12 14:45:06 -05:00
Jeff Young
2459b61aa6
Don't add second half of line and new juction to screen twice.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13129
2022-12-12 13:44:47 +00:00
Jeff Young
45eae3e594
Don't Simplify() polys with arcs in them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13134
2022-12-12 12:54:34 +00:00
Jeff Young
fbd2d66a75
Convert formatting constructs for SPICE consumption.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11383
2022-12-11 15:53:26 +00:00
Mike Williams
f4fb70e04c
Schematic: re-allow partial selection of line ends
...
Also fix some XOR selecting issues.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13022
2022-12-10 13:17:42 -05:00
Jeff Young
6535f407a6
Remove version guard from sim migration, and add migration to paste.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13080
2022-12-08 23:57:42 +00:00
Mike Williams
0e75bf02fa
Selection: refactor modifier checking
2022-12-08 14:12:12 -05:00
Mike Williams
4b02e5efb4
Schematic: allowing ctrl/shift-clicking point editor points
2022-12-08 14:12:12 -05:00
Barabas Raffai
add082548d
Move timer used by SCH_EDITOR_CONTROL to member variable
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2430
2022-12-08 17:33:19 +00:00
jean-pierre charras
6130ce5d66
symbol_editor_control: fix incorrect bounding in SVG export.
...
Fixes #13093
https://gitlab.com/kicad/code/kicad/issues/13093
2022-12-07 13:13:35 +01:00
Wayne Stambaugh
5001555f0e
Fix crash in Altium schematic importer.
...
The crash was caused by an unhandled exception. The uncaught exception
caused a cacophony of null configuration setting pointers so guards were
added to prevent crashes should other exceptions occur that do not get
handled correctly.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13046
2022-12-05 20:20:01 -05:00
Jeff Young
b7d41e0e56
Update simulator with NUMERIC_EVAL, decimal separator processing, etc.
...
Also includes fixes for instance data and resolving of textvar
references.
Also includes virtual d'tors for IBIS parser to get rid of all the
compile warnings on CLang.
Fixes https://gitlab.com/kicad/code/kicad/issues/12357
2022-12-05 12:40:29 +00:00
Graham Keeth
ef83d01455
Minor string changes: "eeschema" / "pcbnew" in tooltips, and power port terminology
2022-12-04 14:29:57 +00:00
Jeff Young
96819f6c01
Better cache invalidation for text objects with references.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13059
2022-12-04 11:51:44 +00:00
Mike Williams
8f646fa9fb
Schematic: fix XOR unselecting one end of fully selected line
2022-12-01 15:00:06 -05:00
Mike Williams
5b2020daf5
Schematic: only delete dangling lines not created directly by the user
2022-12-01 13:13:45 -05:00
Seth Hillbrand
01cf6d76d8
Remove newly dangling lines when dragging
...
These lines are remnants from drag operations that should be cleaned
after commiting the new line positions
Fixes https://gitlab.com/kicad/code/kicad/issues/12870
2022-11-30 13:46:38 -08:00
Wayne Stambaugh
0a62c17040
Remove schematic symbol value and footprint field instance data.
...
https://gitlab.com/kicad/code/kicad/-/issues/12933
2022-11-30 11:47:13 -05:00
Seth Hillbrand
4f4e355ce5
Reset existingRefs on cancel
...
When placing, we need to keep our static pointer map valid. If we
cancel the placement after annotation, we need to remove the annotated
symbol. The safer way is to just recreate the map
Fixes https://gitlab.com/kicad/code/kicad/issues/12983
2022-11-29 13:37:23 -08:00
Jeff Young
b2177718a1
Tighten up refresh logic for net & netclass references.
...
Also tightens it up a bit for text variables which can reference things
like netnames and netclasses, but also board settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/13032
2022-11-29 15:18:36 +00:00
Jeff Young
7e0ba42f0e
Bug fixes for dragging labels attached to wires in orthogonal mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12677
2022-11-25 15:05:15 +00:00
Jeff Young
651b3f1349
SCH_FIELDs are in parent's coord system.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12979
2022-11-23 13:22:50 +00:00
Wayne Stambaugh
4a27d856f7
Move schematic sheet instance information into file sheet definition.
...
This will make it possible to maintain sheet instance information when
copying and pasting from any sheet other that the root sheet of a
project.
Setting and getting sheet page numbers must now be performed using a
sheet path. This was done to ensure that the instance paths were not
getting changed unexpectedly from different code paths.
2022-11-22 16:45:38 -05:00
Seth Hillbrand
e3cc0a5bc7
Prevent crashes when pasting symbols
...
When pasting a symbol that originates in a non-standard library, the
symbol may _only_ have an instance in the sheet and so adding it to the
sheet updates the instance data and needs to be refreshed before
annotating
2022-11-21 13:30:06 -08:00
Alex
12a55f20d3
Fix a mistake in grip margin.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12952
2022-11-21 00:25:19 +05:00
Jeff Young
2919490e92
Use hash (not page no) to determine when we've found the current sheet.
...
Also enforces strict ordering in another page number sorter, although
this has nothing to do with the bug below.
Fixes https://gitlab.com/kicad/code/kicad/issues/12043
2022-11-20 13:12:44 +00:00
Jeff Young
3747cae7dc
Reinstate marker searching.
2022-11-20 13:12:44 +00:00
Jeff Young
b84066610e
Use drag origin instead of current mouse pos for drag checking.
2022-11-19 21:01:45 +00:00
Jeff Young
bc271a8d15
Protect move tool from re-entrancy.
...
m_dragInProgress is usually sufficient, except when we haven't started
one yet. In any case, conflating the two is probably a bad idea.
Fixes https://gitlab.com/kicad/code/kicad/issues/12936
2022-11-18 17:08:38 +00:00
Jeff Young
9d8fdd8d53
Fire selection events from SelectAll().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12896
2022-11-13 22:59:21 +00:00
Mikolaj Wielgus
e8762da4f4
Revert "Support for variable references in SPICE models."
...
This reverts commit 95ebfeeed1
.
This reverts commit 672ce650a9
.
2022-11-07 19:37:40 +01:00
Jeff Young
95ebfeeed1
Support for variable references in SPICE models.
...
Also fixes a couple of bugs where sheet instance data wasn't being
handled correctly.
2022-11-07 10:57:34 +00:00
Jeff Young
5aa8f9880e
Honour aQuitOnDraw flag when cancelling a segment.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12832
2022-11-05 10:23:12 +00:00
jean-pierre charras
504adb3467
Eeschema Back annotation: fix broken handling of full sheet paths of symbols.
...
Fixes #12767
https://gitlab.com/kicad/code/kicad/issues/12767
2022-11-03 11:15:23 +01:00
Wayne Stambaugh
6a0db3e7e2
Fix Coverity warnings.
2022-10-26 14:39:44 -04:00
Jeff Young
6c9d8f1ae7
GUI improvements to hierarchy navigator.
...
(1) and (3) from the linked issue.
Fixes https://gitlab.com/kicad/code/kicad/issues/11762
2022-10-24 23:00:44 +01:00
Jeff Young
3cb6a80954
Don't delete pin out from under selection & move tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12610
2022-10-24 20:49:34 +01:00
Jeff Young
4a489a5d16
Respect CTRL key when resizing rects and textboxes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12732
2022-10-24 11:36:20 +01:00
Wayne Stambaugh
598b09821a
Coverity fixes.
2022-10-17 15:30:20 -04:00
Jeff Young
f9a791e2b0
Copy font across when changing text type.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12629
2022-10-12 23:49:40 +01:00
Jeff Young
8dea227da7
Special cases for sheet-pin dragging.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11949
2022-10-12 16:36:54 +01:00
Jeff Young
3231bc5be3
Formatting and cleanup.
2022-10-12 16:36:54 +01:00
Mikolaj Wielgus
d9eb76eae0
Sim: Refactor SPICE_GENERATOR methods to accept a single SPICE_ITEM
2022-10-11 02:22:59 +02:00
Jeff Young
1825905011
Replace more-than-half-line algorithm with greedy/stingy check.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10860
2022-10-10 20:23:48 +01:00
Jeff Young
cb20a39693
Always select whole lines with greedy selection.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10869
2022-10-10 20:17:15 +01:00
Mikolaj Wielgus
994274fe9f
Move IBIS model Spice code generation to SIM_MODEL_KIBIS
...
IBIS drivers are temporarily broken. Will fix is subsequent commits.
2022-10-08 03:01:52 +02:00
Seth Hillbrand
a5da46459c
Be sure to update UUID when placing new elements
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12588
2022-10-07 16:32:41 -07:00
Mikolaj Wielgus
b95f4ec6bb
Sim: Use the new library manager class in Spice netlist exporter
...
Temporarily comment out IBIS processing.
2022-10-06 09:49:29 +02:00
Mikolaj Wielgus
44799c830d
Sim: Create a class to manage sim libs and inherited models
2022-10-05 17:19:28 +02:00
Wayne Stambaugh
03d847118a
Fix crash when copying symbol in schematic editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12574
2022-10-04 17:51:58 -04:00
Jeff Young
c5f8587898
Use closest point for duplicate anchor rather than top-left.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10004
2022-10-03 23:28:58 +01:00
Jeff Young
7bb0275d3c
Fix incompatibility with old rubber-band wire algo and new ortho wire drag alog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11948
2022-10-03 22:12:23 +01:00
Jeff Young
c6284f4835
Formatting.
2022-10-03 22:12:23 +01:00
Jeff Young
e335c1c612
Fix for LIB_TREE hotkeys over canvas and possible fix for over LIB_TREE itself.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11034
2022-10-02 22:22:21 +01:00
Jeff Young
c089afb408
Improve default net pattern to be all members of bus instead of first member.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12546
2022-10-01 22:58:11 +01:00
Mike Williams
c1da59b560
Swap: disallow swapping tracks / wires
...
Also fix missed shortcut change for S -> Shift-S
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12538
2022-09-29 17:04:43 -04:00
Alex
df59f6cfdb
Update connectivity for net highlighting on demand.
2022-09-27 21:24:01 +00:00
Jeff Young
83a7ab2449
Initialize resolved status of newly created wires during drag operation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12522
2022-09-27 14:12:06 +01:00
Jeff Young
d0ff90eb6e
Support mirroring of multiple SCH_FIELDs at once.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12512
2022-09-26 17:44:52 +01:00
Jon Evans
2089374f53
ADDED: Export symbols from schematic to library
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11433
2022-09-23 21:23:01 -04:00
Alex
f75266d130
Keep selection order in SCH->PCB cross-selection.
2022-09-22 11:43:37 +00:00
Mikolaj Wielgus
e4865ce543
Excise wxString from simulation
2022-09-22 07:41:52 +02:00
Jeff Young
fc10db25ba
Netclass directive and label conversion improvements.
...
1) Copy label fields when converting.
2) Don't assume netclass directive should be net name -- this is very
unlikely.
3) Don't show font controls in Netclass Directive Properties dialog --
there's no basic text associated witha Directive Label.
2022-09-22 01:22:19 +01:00
Jeff Young
8eb68ee472
Add pin/unpin context menu to Symbol Chooser and Footprint Chooser.
...
Also moves some more code down into common so it can be shared.
Fixes https://gitlab.com/kicad/code/kicad/issues/12384
2022-09-21 14:45:12 +01:00
jean-pierre charras
fd4cd17f4f
fix a compil warning
2022-09-20 18:55:20 +02:00
Jeff Young
30a4d3d2de
Coverity fixes.
2022-09-20 00:19:15 +01:00
jean-pierre charras
5990595619
When adding a bitmap, do not clone it during moving.
...
Cloning is not necessary, and is memory consuming.
2022-09-19 17:41:47 +02:00
Mike Williams
9304607624
TOOL_EVENT: make command string non-optional
...
We're getting segfaults in places where this isn't checked. Also, add
some asserts so we can catch bad tool push/pop.
Removes all uses of GetCommandStr() and makes it private.
2022-09-19 10:23:09 -04:00
Jeff Young
45d6b4a9fc
Readability improvements.
2022-09-19 11:18:20 +01:00
Marek Roszko
63295cfb9e
Remove unused vars
2022-09-18 08:49:07 -04:00
Jeff Young
e6c8cf0f03
Don't escape spaces in bus groups and transfer hyperlinks.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12451
Fixes https://gitlab.com/kicad/code/kicad/issues/12452
2022-09-17 20:56:50 +01:00
Marek Roszko
61e11d6896
Strip out Mils2Iu
2022-09-16 21:09:27 -04:00
Marek Roszko
e6ed275c25
Repoint IU_PER_MILS
2022-09-16 21:09:26 -04:00
Jeff Young
907cafef6d
Update font size before querying properties dependent on it (like the text margin).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12444
2022-09-16 18:57:12 +01:00
Mikolaj Wielgus
907ad27e7f
Sim: Move SPICE_GENERATOR class to a new file
2022-09-15 05:26:23 +02:00
Jon Evans
da9be1a812
ADDED: Multi-selection cut/copy/paste in symbol editor library tree
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11505
2022-09-14 22:20:38 -04:00
lulu731
0180bcf90a
ADDED: Implement Drag and Drop
...
dropping files to Kicad manager :
*.kicad_pro, *.pro -> open project;
gerber and job files -> open in Gerbview editor;
Eagle and Cadstar files -> open project.
dropping file to schematic editor -> append schematic;
dropping library file to Symbol editor -> add library;
dropping board file to PCB editor -> append board;
dropping library or footprint file to Footprint editor -> add library or import footprint;
dropping ZIP file or gerber files to Gerbview editor -> open files;
dropping sheet file to Drawing Sheet editor -> open sheet.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11638
2022-09-14 22:28:09 +00:00
kliment
b97f9ea329
Add support for symbol unit display names in eeschema and symbol editor
2022-09-14 22:11:37 +00:00
Mikolaj Wielgus
e4c5bc6c66
Sim: Refactor Spice code generation to a new SPICE_GENERATOR class
2022-09-14 09:36:49 +02:00
Mike Williams
9cda5e200c
Hotkeys: Swap on Shift S and revert old actions back to S
2022-09-12 14:18:54 -04:00
Mike Williams
37d2addf0e
Icons: add swap
2022-09-12 11:11:49 -04:00
Mike Williams
f70e1d0f22
SCH/PCB: Set Swap hotkey to 'S'
...
* Move Add Sheet to Shift+S in Schematic Editor
* Move Set Grid Origin to Shift+S in PCB Editor
2022-09-12 11:11:49 -04:00
Mike Williams
926f979ebc
Schematic: Add swap action
2022-09-12 11:11:49 -04:00
Jeff Young
bb0bd29715
Improve tooltips.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10843
2022-09-10 19:04:38 +01:00
Jeff Young
b2a29e08a4
Improve repeat-last-item to handle unfold-from-bus.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12018
2022-09-09 18:09:09 +01:00
Jeff Young
f2abf0832a
Filter pins by unit.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12076
2022-09-09 13:41:13 +01:00
Jeff Young
b874aaac5e
Add display options to Symbol Browser toolbar.
...
Particularly important on Mac where the menubar is disabled when the
frame is used in modal mode.
Also adds a display control to override the symbol's show pin numbers
setting.
Fixes https://gitlab.com/kicad/code/kicad/issues/7789
2022-09-08 00:28:30 +01:00
Alex
d67c81a657
When deselecting items, pick only selected ones.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10292
2022-09-06 19:44:29 +00:00
Jeff Young
c337c12410
Don't double-flip justification. (The transform already flips it.)
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11673
2022-09-06 13:59:52 +01:00
Wayne Stambaugh
1079a4144a
Eeschema: warn user that missing symbol link indicators cannot be edited.
2022-09-04 10:00:03 -04:00
Jeff Young
efae2bbb4c
Better feedback for netclass assignment patterns.
2022-09-03 21:33:56 +01:00
Jeff Young
c30a557810
ADDED netclass assignment from PCB canvas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5975
2022-09-03 19:29:59 +01:00
Wayne Stambaugh
4c096fee15
Eeschema: fix crash when attempting to edit missing library symbol.
...
Disable the edit symbol buttons in the symbol properties dialog when
there is no library symbol to edit.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11318
(cherry picked from commit 5afeb45a84
)
2022-09-02 16:25:34 -04:00
Jeff Young
ebe9617e77
More EDA_RECT expungification, and an attempt to fix the python test.
2022-08-31 17:19:48 +01:00
Jeff Young
5679b9dbdc
Remove a few EDA_RECT instances.
2022-08-31 01:22:49 +01:00
Jeff Young
0c8787cbb9
Some more wxPoint/EDA_RECT yeeting.
2022-08-31 00:44:33 +01:00
Seth Hillbrand
b736460e71
Move optional access from value() to *operator
...
`value()` throws. Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
2022-08-30 13:59:39 -07:00
Jeff Young
6bad88e592
Make external hypertext links show a menu before executing.
2022-08-27 23:58:13 +01:00
Jeff Young
c0d2052e4b
PDF hypertext menus for intersheet references.
2022-08-27 23:58:13 +01:00
Jeff Young
122a6d7f46
Move hypertext linking to user-page-numbers.
...
Also moves most navigation code to SCH_NAVIGATION_TOOL.
Also changes page number href to anchor syntax ('#foo').
Also adds hypertext processing to SCH_TEXTBOXes.
Also adds combobox with schematic pages to text properties dialog.
2022-08-27 19:17:43 +01:00
Roberto Fernandez Bautista
516c4cb2d3
wip refactoring: use virtual page numbers for page navigation
...
"Real" page numbers are just strings and could be duplicated. Virtual page
numbers are guaranteed to be unique, since they indicate a sequence.
2022-08-27 19:17:43 +01:00
Wayne Stambaugh
7c6d9f67f9
Eeschema: fix broken instance data when adding new symbol.
...
Pass the current SCHEMATIC object pointer in SCH_SYMBOL ctor so that
newly created symbols will update the current instance data on creation
when the current sheet instance is being displayed.
This is a better fix for the master branch and cherry-picking from 6.0
was a mess.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12190
2022-08-26 13:35:49 -04:00
Jon Evans
ae6a2a6443
ADDED: Database libraries MVP
...
Allows placing parts from an external database that reference symbols from another loaded library.
Includes:
- nanodbc wrapper
- database schematic library plugin
- basic tests
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7436
2022-08-26 10:51:13 -04:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Jeff Young
9657b23139
Allow selected RefDes as proxy to selected symbol for annotate selection.
...
Also fixes some likely bugs regarding collection of power symbols and symbols
with no lib link for annotation.
Fixes https://gitlab.com/kicad/code/kicad/issues/12259
2022-08-24 11:31:13 +01:00
Marek Roszko
e0f28fc4e1
Replace wxFindReplaceData with our own container
...
By dropping the flags, we can be strict with options.
Also it makes future usage of search functionality a little more "UI" framework independent
2022-08-23 22:16:51 -04:00
Jeff Young
142229089f
Don't look for connections when we're just clearing the highlight.
...
This can happen before connectivity has been updated, and the only
reason we're looking for it anyway was to make the logic simpler.
Fixes https://gitlab.com/kicad/code/kicad/issues/12037
2022-08-23 12:57:55 +01:00
Alex
3a76d42630
Cross-probing/selection for multiple items (PCB -> SCH)
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10469
2022-08-22 19:33:39 +00:00
Jeff Young
03454684fa
Commenting.
2022-08-22 12:43:57 +01:00
Mikolaj Wielgus
6fad25f8ed
Allow mapping sim model pins to arbitrary string symbol pin numbers
...
This change removes the incorrect assumption that symbol pin numbers are
integers and are the same as indexes in the vector storing the symbol
pins.
"~" is now used to denote a floating sim model pin.
2022-08-22 08:13:26 +02:00
Jeff Young
4f0136db3b
Attempt to fix std::initializer_list lifetime issue.
2022-08-21 20:54:41 +01:00
Jeff Young
b2a2d66005
Move Bus Definitions to common GUI paradigm in Schematic Setup.
...
Also includes a change to the std::initializer_list stuff to try and
fix a crash.
2022-08-21 12:29:51 +01:00
Jon Evans
8694c37376
Remove requirement that non-power symbols share a name and value
...
There is no technical reason for this restriction for non-power symbols, so let's remove it.
This will allow more flexibility and compatibility with other tools.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9389
2022-08-20 17:43:43 -04:00
Seth Hillbrand
28876bef90
Don't close blocking dialog in backannotate
...
Back annotate is called from a dialog, so this will close itself but not
exit, locking the UI
2022-08-20 08:17:53 -07:00
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01:00
Seth Hillbrand
35ac39844f
Clean up some auto usage
...
Don't make new copies of shared_ptr if we can use references. Keep auto
usage down to hard-to-type-out sequences
2022-08-15 11:29:45 -07:00
Wayne Stambaugh
898ec0d094
Fix wxWidgets 3.1 and later deprecated build warnings.
...
wxWidgets 3.1 has deprecated wxPATH_NORM_ALL when normalizing file
paths when calling wxFileName::Normalize(). This change keeps the
existing behavior except in places where our own internal
ExpandEnvVarSubstitutions() to expand environment variables.
2022-08-15 08:00:40 -04:00
Jeff Young
a9536b5de9
CHANGED netclass assignments now done via canvas or via patterns.
2022-08-14 22:56:29 +01:00
BugRepellentExtraStrong
02a6566438
eeschema: Fixes wrong displayed secondary worksheet
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12017
2022-08-14 14:52:23 +00:00
Seth Hillbrand
225b03d702
Move sheetpins by their connection point
...
Need to calculate the sheet pin anchor position in order to get it
aligned to the grid while moving
Fixes https://gitlab.com/kicad/code/kicad/issues/12134
2022-07-31 20:02:57 -07:00
Mikolaj Wielgus
739b9255d9
Sim Model Editor improvements
...
- Tab-switching,
- Automatic expansion of categories on tab-switch,
- Various minor simulation improvements,
- Various new simulation-related bugfixes.
2022-07-30 02:25:34 +00:00
Mikolaj Wielgus
6450ec6b85
Sim: Spice netlist exporter rewrite
...
Rewrite the spice exporter to work with the new simulation model
architecture and data model, with many bugfixes related to the latter
two along the way.
2022-07-30 02:25:34 +00:00
Mike Williams
d9449b9beb
Annotation: annotate all sheet instances for new symbols
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11841
2022-07-25 18:44:55 +00:00
Mike Williams
bf550afa8c
Annotation: use full hierarchy for sheet based numbering on paste
2022-07-25 18:44:55 +00:00
Mike Williams
17f6c0ecf1
Annotate: correctly annotate duplicated items across reused subsheets
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11840
2022-07-25 18:44:55 +00:00
jean-pierre charras
993c446fdf
Fix some warnings detected by PVS-STUDIO (most are not used vars)
2022-07-25 18:23:52 +02:00
Jeff Young
e36491f231
Make EEschema highlight net consistent with PCBNew.
...
In particular, highlight net on an already highlighted net clears
highlight.
Fixes https://gitlab.com/kicad/code/kicad/issues/11016
2022-07-24 09:16:31 +01:00
jean-pierre charras
0604d7b813
Fix minor compil and Coverity warnings.
2022-07-24 09:33:43 +02:00
Jeff Young
3aabea5191
Add side handles to sheets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11525
2022-07-23 23:57:31 +01:00
Jeff Young
3def3d659e
Allow click-selection and greedy-drag selection of visible pin text.
...
Stingy drag still works only on the pin itself.
Fixes https://gitlab.com/kicad/code/kicad/issues/11723
2022-07-23 23:27:14 +01:00
Jeff Young
f48755cc67
Restore unique-item filtering when collecting nearby items from view.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12076
2022-07-23 15:09:58 +01:00
Jeff Young
cb77e68076
Don't assume a SCH_EDIT_FRAME in EE_SELECTION_TOOL.
...
It's also used in the symbol editor.
But in any case, pins of other units have no business being in an
SCH_SYMBOL anyway.
Fixes https://gitlab.com/kicad/code/kicad/issues/12076
2022-07-23 14:28:07 +01:00
Jeff Young
0d5302f375
Add preference for esc-clears-net-highlighting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8760
2022-07-23 10:32:43 +01:00
Jeff Young
def87c969e
Redo the pinned-libraries storage architecture.
...
1) always use preferences directly
2) allow nicknames from either preferences or project
3) store-after-modify
Fixes https://gitlab.com/kicad/code/kicad/issues/12000
Fixes https://gitlab.com/kicad/code/kicad/issues/11892
2022-07-22 09:31:10 +01:00
Jeff Young
bdffbbd43b
Handle rotation while moving from move tool.
...
This keeps us from getting CancelInteractive events in the move tool
when the EditTool runs to do the rotate.
Fixes https://gitlab.com/kicad/code/kicad/issues/12004
2022-07-22 09:31:09 +01:00
Jeff Young
9652dcf96d
ADDED conversion between textbox and other text types.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12031
2022-07-22 09:31:07 +01:00
Seth Hillbrand
f78671fc2e
Make textbox placement modal
...
Placing a symbol from symbol editor starts the TwoClickPlace in a
different context. We need to prevent multiple contexts of the same
tool
Fixes https://gitlab.com/kicad/code/kicad/issues/11891
2022-07-19 09:20:43 -07:00
Jeff Young
45393f228a
Promote pin selections to symbols when preference is set.
...
Also make additional line slop zoom-relative.
Fixes https://gitlab.com/kicad/code/kicad/issues/12034
2022-07-19 10:31:49 +01:00
Jeff Young
e5a664c6b3
Try a slightly different tack for cancelling net highlighting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12029
2022-07-19 10:31:49 +01:00
Alex
c6d9dcdad5
Schematic editor: allow box-selecting pins.
2022-07-18 18:51:52 +00:00
Alex
d343d87b73
Speed-up EE_SELECTION_TOOL::RequestSelection.
2022-07-18 18:51:52 +00:00
Seth Hillbrand
93fb00d815
Protect the Kiway dereference
...
Also find a few more places where we are reaching into a new frame to
perform actions that need to have dialogs closed.
Running actions should also wait for the next cycle rather than being
immediately executed when we are calling into a new frame. This allow
for the cleanup actions onClose() to happen prior to the next action
starting
Fixes https://gitlab.com/kicad/code/kicad/issues/11891
2022-07-14 11:37:45 -07:00
Mike Williams
d44e34d513
Images: Add full properties editor
...
Converts dialog_image_editor to panel_image_editor. Embeds this panel in
a new properties dialog for the schematic and PCB editors that allows
editing position, layer, locked status, etc. like other items.
2022-07-14 11:23:23 +00:00
Mike Williams
1f4079802c
Schematic: drop undefined/unused function
2022-07-14 11:23:23 +00:00
Seth Hillbrand
b5bf1da251
Keep track of blocking windows
...
Allows the calling KiWAY player to send messages to the blocking window
before signaling a separate call
Fixes https://gitlab.com/kicad/code/kicad/issues/11891
Fixes https://gitlab.com/kicad/code/kicad/issues/11772
2022-07-13 19:25:24 -07:00
Seth Hillbrand
0dab566270
Fix name escaping in symbol editor
...
When renaming a symbol, be sure to handle name escaping in all of the
various places that we do renaming (!)
Fixes https://gitlab.com/kicad/code/kicad/issues/11939
2022-07-12 12:06:30 -07:00
Jeff Young
d24e6c3408
Auto-annotate (and then don't re-annotate) power symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11942
2022-07-11 21:46:01 -06:00
Jeff Young
57acce9e55
Share more code between selection tools.
2022-07-11 19:04:08 -06:00
Mike Williams
e454595348
Eeschema: Changing pin length adjusts offset according to orientation
...
ADDED: When pin length is changed now, the pin position is adjusted
according to its orientation such that the connection point for wires
moves instead of the other side of the stem base. For pins coming out of
component boxes, etc. this keeps them attached to the box while the
length is changed.
2022-07-11 13:58:06 -04:00
Jeff Young
4685dc49cc
Show more than 9 items in disambiguation menu.
...
(But only the first 9 get hotkeys.)
Fixes https://gitlab.com/kicad/code/kicad/issues/11966
2022-07-10 20:11:22 -06:00
Jeff Young
b759d860c0
Don't disambiguate if the user is dragging a multiple selection.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10108
2022-07-10 19:45:56 -06:00
Jeff Young
e122dc38bd
Add context menu item for clearing net highlighting.
...
In selection tools, drawing tools, router tool, line_wire_bus tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/11920
2022-07-10 17:15:20 -06:00
Jeff Young
00fc225306
Give <esc>-with-no-selection-clears-net-highlight a test.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8760
2022-07-09 11:56:16 -06:00
Jeff Young
70aec5d576
Don't drag both ends after Break Wire.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11915
2022-07-08 23:03:41 -06:00
jean-pierre charras
7b28804f67
Fix a minor compil and Coverity warning
2022-07-06 13:54:17 +02:00
Miklos Marton
d30af7c164
eeschema: Add automatic rotate feature for placing global and
...
hierarchial labels
2022-07-05 17:02:45 +00:00
Seth Hillbrand
cde30d3dba
Clarify cross-probing options
...
Previous the cross-probing options were mixed between sending and
receiving cross-probe events. This clarifies so that all of the pcbnew
cross-probe options deal with whether the cross-probe is seen in pcbnew
and all of the eeschema options deal with seeing the event in eeschema.
Also updates the wording in the options panels to be the same where
possible and adds tooltips
Fixes https://gitlab.com/kicad/code/kicad/issues/11454
2022-07-01 16:47:09 -07:00
Mike Williams
66b3b48e93
Library Editor: Fix missing automatic annotation
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11818
2022-06-29 14:17:21 +00:00
Jeff Young
34e706bcbc
Border colours and line styles for symbol editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11810
2022-06-16 14:52:38 +01:00
jean-pierre charras
1140fd0fb0
Eeschema, context menus: move edit value, ref and footprint to a submenu.
...
remove also Select All menuitem from the move context menu.
2022-06-13 11:35:17 +02:00
Jeff Young
29900cad34
Add create-wire logic to labels.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11768
2022-06-10 22:38:01 +01:00
jean-pierre charras
e0f0bb2edd
Eeschema: Fix issues when converting a label/text to another label text type.
...
- make convert to/from SCH_DIRECTIVE_LABEL working.
- Autoplace fields of new labels
Fixes #11779
https://gitlab.com/kicad/code/kicad/issues/11779
2022-06-10 14:13:22 +02:00
Jeff Young
bce1fd337b
Second tool hotkey accepts action (ie: acts as click).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11729
2022-06-09 16:54:04 +01:00
jean-pierre charras
35bde4710c
Eeschema, context menu selection: move convert to ... menuitems to a submenu.
...
Add also missing icons in a few menuitems.
Fixes #11776
https://gitlab.com/kicad/code/kicad/issues/11776
2022-06-09 16:46:21 +02:00
Jeff Young
c55a0e4561
Separate last-created-params for textboxes from shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11755
2022-06-08 15:25:13 +01:00
jean-pierre charras
185016b84b
Eeschema, Hierarchy navigator: add tool to Hide/show the panel.
...
Add also a close button to the pane.
2022-06-07 11:11:10 +02:00