jean-pierre charras
9c12a6ee1d
Eeschema, eeschema_config.cpp: fix incorrect *.wks file path when trying to save it.
...
And add tests to see if the file can be saved
Fix also an issue in sch_editor_control.cpp: The page setup dlg must generate changes
only if the OK button is clicked.
Fixes #13599
https://gitlab.com/kicad/code/kicad/issues/13599
2023-01-22 13:17:05 +01:00
Seth Hillbrand
e6dbca051c
Force realtime connectivity on
...
The pressure relief valve was not useful for common work patterns as it
forced the recalculation on many common actions such as bus expansion.
This caused it to actually feel slower than with the pressure relief
valve off.
For most schematics, realtime is now fast enough to not need the valve
and for those that are extremely complex, removing the valve helps this
run more predictably
2023-01-20 15:17:57 -08:00
Mike Williams
171cffec28
Schematic: actually check for hover on duplicate
2023-01-18 13:52:49 -05:00
Mike Williams
144cd0b7f2
Schematic: duplicate on hover: grabs symbol instead of field
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13495
2023-01-18 13:35:52 -05:00
Marek Roszko
57c66a50ac
Add some missing wxS wraps
2023-01-15 20:24:29 -05:00
Jeff Young
d839f11d49
Rip out parsing of SPICE libraries for netlisting.
...
We only need to parse the libraries for the Sim Model Editor dialog
(so that we can determine the models to put in the popup). Doing it
for netlisting just opens us up to incorrectly parsing the SPICE, and
returns no value.
This also means that a SIM_LIB_MGR manages a single library, and
never multiple libraries.
This also allows the tidying-up of some error reporting structures to
better inform the user what went wrong.
Fixes https://gitlab.com/kicad/code/kicad/issues/13431
2023-01-12 14:51:03 +00:00
Seth Hillbrand
8aff923710
Set dirty bit and handle undo for export remap
...
When remapping the exported symbols, we should keep this in the undo
stack (remapping, not the existence of the new elements) and set the
dirty bit for the file to ensure it is saved/autosaved
Fixes https://gitlab.com/kicad/code/kicad/issues/13493
2023-01-11 16:06:20 -08:00
Jeff Young
c89925578d
Move find/replace to own tool so it doesn't rob events from cross-probing.
2023-01-11 14:22:06 +00:00
Jeff Young
063478b3dc
Implement brightening for Find Next hotkey actions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13421
2023-01-08 14:34:38 +00:00
Wayne Stambaugh
411669ab88
Fix schematic power symbol annotation paste bug.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13405
2023-01-06 13:55:13 -05:00
Seth Hillbrand
c29dfe026e
Force recursing annotation when set to auto
...
Automatic annotation should always annotate new elements regardless of
where in the hierarchy they are
Fixes https://gitlab.com/kicad/code/kicad/issues/13378
2023-01-05 15:03:38 -08:00
Wayne Stambaugh
d99e09014b
Rename SYMBOL_INSTANCE_REFERENCE to SCH_SYMBOL_INSTANCE.
2023-01-04 15:39:50 -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
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
Mike Williams
9b782fa827
Schematic: don't deselect line ends when right clicking off-selection
2022-12-22 14:16:38 -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
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
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
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
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
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
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
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
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
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
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
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
Mikolaj Wielgus
d9eb76eae0
Sim: Refactor SPICE_GENERATOR methods to accept a single SPICE_ITEM
2022-10-11 02:22:59 +02: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
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
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
Alex
df59f6cfdb
Update connectivity for net highlighting on demand.
2022-09-27 21:24:01 +00: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
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
Marek Roszko
63295cfb9e
Remove unused vars
2022-09-18 08:49:07 -04:00
Mikolaj Wielgus
907ad27e7f
Sim: Move SPICE_GENERATOR class to a new file
2022-09-15 05:26:23 +02:00
Mikolaj Wielgus
e4c5bc6c66
Sim: Refactor Spice code generation to a new SPICE_GENERATOR class
2022-09-14 09:36:49 +02: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
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
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07: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
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
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
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01: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
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
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
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
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
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
8d51b6b6d3
Schematic: Add icons for Any/90/45 angle modes
...
Also add a dark mode icon for existing 45hv icon.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11332
2022-06-03 15:04:52 +00:00
Mike Williams
857990a883
Hierarchy: turn into a left side pane
...
Drop auto-closing option as well.
2022-06-02 21:56:17 +00:00
Mike Williams
efa23a5cbe
Schematic: better automatic/recursive annotate
2022-05-27 15:54:00 +00:00
Mike Williams
7f3e5e9b79
Schematic: add recursive annotation control
2022-05-27 15:54:00 +00:00
Mike Williams
85516a4691
Schematic: add automatic annotation toggle
2022-05-27 15:54:00 +00:00
Mike Williams
dabd42bbc4
Schematic: Automatic Symbol Annotation
2022-05-27 15:54:00 +00:00
Jeff Young
8a97a46e6b
Release file before re-loading it for Revert.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11481
2022-04-26 22:28:35 +01:00
Jeff Young
e0f2a5f07c
Update findnext to handle new instance data architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11424
2022-04-26 20:21:15 +01:00
Jeff Young
90bfe2d94b
Remove Save Copy As from fp editor, and rename to Save a Copy elsewhere.
...
It's still used by Eeschema and PCBNew when not in stand-alone mode.
Fixes https://gitlab.com/kicad/code/kicad/issues/9185
2022-04-24 19:46:57 +01:00
Jeff Young
71c2cb3180
ADDED revert for pcbnew and eeschema.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6802
2022-04-17 20:02:58 +01:00
Jeff Young
6ef6e37edb
Disable using default instance data when writing to clipboard.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11379
2022-04-14 17:09:27 +01:00
Jeff Young
034b57d9c0
When reannotating keep existing prefix in most cases.
...
(Execption is reannotating entire schematic, in which case we reset
all of them.)
Fixes https://gitlab.com/kicad/code/kicad/issues/11379
2022-04-13 23:38:45 +01:00
Mike Williams
2a726a882f
Schematic: new feature, force 45 degree lines
...
* New modes to force 45 deg angle at beginning or end of line
* Backspace will undo most recent segment added
* / will toggle posture of 90 and 45 degree lines
* Added alg::signbit for convenience
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10869
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9175
2022-03-28 16:07:23 -04:00
jean-pierre charras
21144481d2
PLOTTER: do not clamp coordinates to an arbitrary value.
...
Previously, coordinates were clamped to +- 60 inches. It makes no sense to
clamp them at plotter level: max cooed depends on the editor (schematic/board...)
Rename MAX_PAGE_SIZE_MILS to MAX_PAGE_SIZE_EESCHEMA_MILS and use it only for Eeschema.
Fixes #11196
https://gitlab.com/kicad/code/kicad/issues/11196
2022-03-22 10:32:36 +01:00
Jeff Young
400cff994d
Update value & footprint from clipboard whether keeping annotation or not.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11116
2022-03-17 18:19:13 +00:00
Jeff Young
e68e2e973e
Separate Line Properties dialog from Bus/Wire, and handle Junctions in Bus/Wire.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9979
2022-03-16 14:56:32 +00:00
Jeff Young
ec44dfa60f
Unescape value fields when pasting from legacy schematics.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11124
2022-03-13 22:17:44 +00:00
Jeff Young
33e57930bc
Implement undo for Eeschema find/replace.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10824
2022-02-11 22:09:22 +00:00
Mike Williams
a5e8575091
Eeschema: Implement orthogonal dragging
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1956
2022-02-10 18:38:40 +00:00
Jeff Young
8d3e1639d0
Update text variables when they change.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10734
2022-02-04 12:52:46 +00:00
Jeff Young
3409783d9f
Break sch_text.h/.cpp into sch_text and sch_label.
...
Also moves SCH_NETCLASS_FLAG to SCH_DIRECTIVE_LABEL, and remaps Altium
harnesses from SCH_TEXT to SCH_DIRECTIVE_LABEL.
2022-01-28 21:38:15 +00:00
dsa-t
bc1ff6756f
Cross-probing/selection for multiple items (SCH->PCB)
2022-01-16 20:29:03 +00:00
Roberto Fernandez Bautista
2d3624a016
Rename ComparePageNumAndName -> ComparePageNum
2022-01-02 23:20:17 +00:00
Marek Roszko
347e03363a
Convert wxPoint/wxSize starting from EDA_RECT usages
2022-01-01 11:30:33 -05:00
Jeff Young
af13533b42
Add show/hide controls for ERC markers.
...
ADDED show/hide controls for ERC warnings, ERC errors and ERC exclusions.
Fixes https://gitlab.com/kicad/code/kicad/issues/7270
2021-12-24 17:38:50 +00:00
Jeff Young
9ee28ea8f5
Flatten out some more preferences.
2021-12-24 15:43:20 +00:00
Jeff Young
2bc86fa0a8
Shapes for schematic.
...
ADDED arc, circle and rectangle shapes for schematic. Shapes support
line styles and fill colors.
CHANGED sheet background color in Edit Text & Graphics Properties to
fill color (and it now affects shapes).
Pushed STROKE_PARAMS down into common and moved all shapes to using it
for stroke descriptions.
2021-12-23 20:36:07 +00:00
Wayne Stambaugh
b7af66e3f9
Eeschema: fix broken page numbers when renaming a sheet file name.
...
Always use full sheet paths when storing sheet instances. Partial sheet
paths cannot be full resolved resulting in lost page numbers when renaming
sheet file name.
Fixes #9782
2021-12-09 12:56:03 +00:00