Wayne Stambaugh
2f682b6c5f
Eeschema: implement s-expression schematic file format parser.
...
Fix a few issues with the s-expression schematic file formatter.
2020-04-06 22:47:42 +00:00
Jeff Young
322ab60cc5
Fix some Coverity issues.
2020-04-06 12:31:59 +01:00
jean-pierre charras
1027c2fb8d
Eeschema: when placing a symbol, and after placing others instances of the symbol
...
deselect the previously placed items.
Otherwise, the changes (rotation, mirroring...) made during placing the current symbol
are applied to other previously placed items.
This is obviously not what is wanted, and creates crashes in Eeschema.
Fixes #4163
https://gitlab.com/kicad/code/kicad/issues/4163
2020-04-06 13:00:58 +02:00
Jeff Young
b13559c926
Add envVar and text variable resolution to plot directory paths.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3808
2020-04-05 23:56:24 +01:00
Jeff Young
cc9ac37a0e
Add text variable support to envVar processing.
2020-04-05 20:52:26 +01:00
Jeff Young
a2102d87c5
Fix typo.
2020-04-05 20:52:26 +01:00
Jeff Young
c663965498
Fix some issues with sheet border color handling.
2020-04-05 16:17:04 +01:00
Jeff Young
591428b0d9
Remove some problematic global variables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4121
2020-04-05 16:17:04 +01:00
Wayne Stambaugh
4a6c03e7fe
Minor string abbreviation and capitalization fix.
2020-04-05 09:39:08 -04:00
jean-pierre charras
c16a453e53
fix minor wxWidgets alerts and a minor Coverity warning
2020-04-05 10:36:55 +02:00
jean-pierre charras
3b39a14fa9
Eeschema, fields_grid_table.cpp: sheet filename selector: use right wildcard syntax.
2020-04-05 09:56:40 +02:00
jean-pierre charras
caf4a64877
Eeschema, DIALOG_SCH_SHEET_PROPS: try to fix a very serious issue:
...
When editing a sheet properties, the dialog always thinks the sheet filename is changed.
It creates serious issues, like duplicating all items in sheet, because the code try to
again import the existing sheet file content.
The temporary fix does not import the existing sheet file content if the
filename is not modified.
This is a very partial fix, because there are many other issues in this dialog
2020-04-04 19:38:53 +02:00
Ian McInerney
0dac0c9a47
Cleanup some dynamic casts
...
From Coverity scan
2020-04-04 12:41:45 +01:00
Thomas Pointhuber
b707c84b62
Use Record handling for parsing
...
Now, we know how big a record is, and should be able to parse all boards without missing bytes?
2020-04-03 23:22:24 +00:00
Wayne Stambaugh
082944ad06
Minor build warning fixes.
2020-04-03 13:03:23 -04:00
Seth Hillbrand
a546851d64
eeschema: Check connections on current unit
...
This is an expansion of dac12a6d9
that prevents junctions from being
added based on the position of alternate units in a component
2020-04-03 08:40:59 -07:00
jean-pierre charras
dac12a6d99
Eeschema: SCH_COMPONENT::Visit(): do not select LIB_PIN* pins not related to the
...
current selected unit and convert.
Fixes #4152
https://gitlab.com/kicad/code/kicad/issues/4152
2020-04-03 16:34:37 +02:00
jean-pierre charras
b1b8a32078
fix a few Coverity warnings and compil minor warnings.
2020-04-03 09:54:47 +02:00
Wayne Stambaugh
f6d7ef367d
Eeschema: fix symbol cache library look up bug.
...
Use an underscore character instead of a semicolon between the library
ID library nickname and symbol name in library ID search strings when
looking up symbols in the cache library since that is how they are saved
when creating the cache library. This fixes rescuing missing symbols
from the cache when they have been removed from the original library and
preventing a broken symbol link indicator from being shown when a symbol
is removed from the library.
Add some defensive testing to make sure the library passed to function
SchGetLibPart() is actually the cache library.
2020-04-02 15:24:28 -04:00
Jeff Young
b59da3e4dc
Overridden versions of GetShownText() still need to call EDA_TEXT version.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4151
2020-04-02 18:27:54 +01:00
Jeff Young
20c00cbb21
Finish off "busses" -> "buses".
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4144
2020-04-02 18:27:05 +01:00
Jeff Young
9ab2fcda77
One more "busses" fix.
2020-04-02 14:58:35 +01:00
Jeff Young
ae02835fef
Fix spelling error.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4144
2020-04-02 14:34:52 +01:00
Jeff Young
a76ddb52a0
Add sheet borders and backgrounds to Edit Text & Graphics.
...
Also moves sheet border and sheet background colours to preferences
so it's clearer they're just for newly-created items.
Fixes https://gitlab.com/kicad/code/kicad/issues/4144
2020-04-02 14:01:30 +01:00
jean-pierre charras
25fb2595c8
Fix fully broken selection of items of the same sheet, in pcbnew and from eeschema.
...
Previously, the full UUID path used to select footprints was full broken.
2020-04-02 14:21:09 +02:00
Wayne Stambaugh
e91f1f57dd
Eeschema: fix rescue multiple unit symbol bug.
...
The code that checked for pin conflicts to determine if a symbol needed
rescued did not check either the pin convert setting so it was possible
for a pin from the other convert on symbols that do not have identical
units to appear to not have a pin conflict. Add tests for pin unit and
convert setting to prevent that from breaking the comparison. This must
have always been broken.
Fix the symbol preview widget to prevent drawing all symbols on top of
each other (if we need to do this the code will have to be revised) and
also show the convert if valid.
Fix broken symbol cache library when saving alias symbols.
Fixes https://gitlab.com/kicad/code/kicad/issues/3879
2020-04-01 20:19:53 -04:00
jean-pierre charras
6730313ab7
eeschema: minor fixes in DIALOG_SCH_SHEET_PROPS:
...
- test for empty fileName
- ensure the new filename has the right extension.
2020-04-01 18:30:48 +02:00
Jeff Young
9a67dc56f9
Clean up assumption that field_id < MANDATORY means its mandatory.
...
It looks good, but non-mandatory fields have an ID of -1, so it
doesn't actually work. Some places got around this by converting
the ID to unsigned, but this just hides the real issue from
unsuspecting coders.
Fixes https://gitlab.com/kicad/code/kicad/issues/4140
2020-04-01 15:59:52 +01:00
jean-pierre charras
029b1b0b22
Eeschema: void CollectOtherUnits(): do not try to collect others units
...
of a not annotated component.
Fixes #4142
https://gitlab.com/kicad/code/kicad/issues/4142
2020-04-01 16:03:22 +02:00
jean-pierre charras
e811101567
fix a few Coverity warnings.
2020-04-01 09:34:44 +02:00
Jeff Young
13d3f57fce
Implement a different solution to refreshing lib trees.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4110
2020-03-31 02:09:31 +01:00
Jeff Young
add4c3d4ea
Only append number to name if it already exists.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4130
2020-03-30 17:30:26 +01:00
Jeff Young
cbef95256b
Share multi-unit updating code between Sym Props and Edit Field.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4103
2020-03-30 14:15:59 +01:00
Jeff Young
7f8f17bd82
Remove empty file.
2020-03-30 14:15:59 +01:00
Jeff Young
132d4d3ffa
Clean up compiler warning.
2020-03-30 14:15:59 +01:00
Jeff Young
41b5872f12
Add ERC & DRC checks for unresolved variables.
2020-03-30 14:15:59 +01:00
Jeff Young
4990d1e7b2
Variable substitution framework.
...
This implements editing of variables and moving SCH_FIELDs,
TEXTE_MODULEs, TEXTE_PCB and worksheet items over to the new
framework.
2020-03-30 14:15:59 +01:00
jean-pierre charras
9c2a260a27
Eeschema: Fix SCH_FIELD::SetPosition() bug
...
Fixes #4129
https://gitlab.com/kicad/code/kicad/issues/4129
Fixes #4062
https://gitlab.com/kicad/code/kicad/issues/4062
2020-03-30 13:26:14 +02:00
jean-pierre charras
6e47f147aa
A few Coverity fixes.
2020-03-30 09:50:26 +02:00
jean-pierre charras
9d2712a824
Fix a few Coverity warnings.
...
It also fix:
Fixes #4082
https://gitlab.com/kicad/code/kicad/issues/4082
2020-03-29 18:42:24 +02:00
Jeff Young
5134856f18
Rationalise 3D settings data-structure.
...
Move the camera out to its own so that everything else is board-
related, and then rename BOARD_ADAPTER.
At some point the flags should probably be moved out too, and they
can have the EDA_3D_SETTINGS name.
2020-03-28 16:09:40 +00:00
jean-pierre charras
615deb40f3
Eeschema: move, mirror and rotate block: fix some issues.
...
Fixes #4111
https://gitlab.com/kicad/code/kicad/issues/4111
2020-03-28 13:17:59 +01:00
Jeff Young
6e27904791
More code hygiene.
2020-03-25 18:06:18 +00:00
Jeff Young
ba36fc0009
Fix some Coverity issues.
2020-03-25 14:38:43 +00:00
Jeff Young
d69ebfae49
Push tool framework base down into TOOL_HOLDER.
...
This allows us to use it outside of EDA_BASE_FRAMEs (in this case, in
PANEL_PREVIEW_3D.)
2020-03-24 19:00:25 +00:00
Jeff Young
c4aed3a8de
Add user-configurability of the LibEdit axes color.
2020-03-24 19:00:25 +00:00
Alexander
cf25975876
EEschema: Fix back annotation
...
Repairs back annotation after some schematic code modifications
2020-03-24 10:53:00 +00:00
Sylwester Kocjan
c7daca1e78
Eeschema: Adding new source types in SPICE model
...
NEW: Adds support in eeschema for three new source types
used in .TRAN simulation: single frequency FM, AM, and random.
2020-03-23 16:49:21 +00:00
jean-pierre charras
cc47062b17
Fix a few Coverity issues
2020-03-23 16:17:22 +01:00
jean-pierre charras
4d9d1a5380
Fix a few compil minor warnings and Coverity minor issues
2020-03-22 09:45:51 +01:00
Jeff Young
d25a63cd02
Don't allow selection flags to leak in to the libmanager cache.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4021
2020-03-21 23:25:08 +00:00
Jeff Young
66382db7dd
Add some defensive code for selection anomalies.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4021
2020-03-21 20:55:50 +00:00
Jeff Young
93b7eacfb2
Fixup some Coverity issues.
2020-03-21 16:32:22 +00:00
Seth Hillbrand
ba8c3a5582
Reverting part of cee973dc04
...
Iterators are invalidated by vector reallocation. We need to keep the
count in the loop in order to have a valid position in the vector
Fixes https://gitlab.com/kicad/code/kicad/issues/4073
2020-03-20 08:44:21 -07:00
Jeff Young
204f2cd580
Reference -> reference designator.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4012
2020-03-17 16:09:25 +00:00
Jeff Young
40b2eabfc1
Add a user-defined ratio for text offset from wire/bus.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2392
2020-03-17 12:50:31 +00:00
jean-pierre charras
0f0b9bdf87
SIM_PLOT_FRAME_BASE: gives a minimal size for right panels.
...
On KDE, a too small size can hang wxWidgets.
2020-03-17 08:27:34 +01:00
Jeff Young
c9f8716414
Fix copy/paste error.
2020-03-16 19:17:21 +00:00
jean-pierre charras
53dfcd84cb
Fix missing include
...
Fixes #4058
https://gitlab.com/kicad/code/kicad/issues/4058
2020-03-16 19:09:35 +01:00
Wayne Stambaugh
7dc64f08b7
Eeschema: implement s-expression schematic file formatter.
...
Please note that the symbol cache is not embedded in the schematic file
to allow for round robin testing with the existing file format. Once
the parser round robin testing is complete, the symbol cache will be
embedded in the schematic file.
2020-03-16 09:05:16 -04:00
Jeff Young
cee973dc04
Move ERC error reporting over to the new framework.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1989
2020-03-16 11:06:15 +00:00
Jeff Young
222b222299
Improve ease of understanding around PCB <-> schematic links.
...
Includes improvements to Update PCB from Schematic dialog and
corresponding changes to Symbol Properties, Sheet Properties and
Footprint Properties.
Fixes https://gitlab.com/kicad/code/kicad/issues/4012
2020-03-16 11:06:15 +00:00
Jeff Young
095bede3ba
Fix initialisation issue.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4014
2020-03-13 17:28:53 +00:00
Jeff Young
085d80e3f3
Remove duplicated settings from preferences.
...
These have now moved to project-specific settings.
2020-03-13 17:28:53 +00:00
Jeff Young
dc9882c3b9
Fix a few bugs with Sheet field dragging and rotating.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4046
2020-03-12 13:57:29 +00:00
Seth Hillbrand
9de7547c25
Partial revert of 134a7ba85
...
The margin fix prevented some schematics from printing. Reverting in
favor of transitioning to the Cairo print base in eeschema
2020-03-11 15:24:08 -07:00
Jeff Young
c699fb9e39
Move pin-to-pin errors to Setup Schematic.
2020-03-11 21:43:55 +00:00
Jeff Young
437f888c25
Schematic Setup dialog.
...
Includes:
- moving some of the project settings from the Preferences dialog
- ERC severites
- project-specific field-name templates
Fixes https://gitlab.com/kicad/code/kicad/issues/2145
2020-03-10 18:54:17 +00:00
Jeff Young
b054e59a41
Get rid of cursors in preview panels.
2020-03-10 18:54:17 +00:00
Jeff Young
bbf5ad6160
Improve dialog spacing and remove 'auto' type decls.
...
Also fixes a couple more coding style issues.
2020-03-10 18:54:17 +00:00
Wayne Stambaugh
8cc80e3b35
Add unit test for testing LIB_ARC objects.
...
Added tests for calculating radius angles and arc mid point.
2020-03-10 11:04:05 -04:00
Jeff Young
457f12a5df
Remove extra SyncLibraries() call.
...
I imagine this was inserted to ensure the selected item is visible,
but selecting the item does that. SyncLibraries() rebuilds the
entire tree, causing it to lose the user's scroll position.
Fixes https://gitlab.com/kicad/code/kicad/issues/4020
2020-03-08 15:18:19 +00:00
Jeff Young
3e34c1783f
Added sheet border width, border color and background color.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2216
2020-03-08 15:18:19 +00:00
Jeff Young
0905ef8eb5
Autoplacement only handles mandatory fields for Sheets.
2020-03-08 15:18:19 +00:00
jean-pierre charras
37befc5a42
fix compil issue.
2020-03-07 20:49:45 +01:00
Jeff Young
535033c5c9
Enable editing of sheet fields.
2020-03-07 18:52:30 +00:00
Jeff Young
fe3e0307d8
Move sheet name and filename to SCH_FIELD architecture.
...
Only internal storage architecture has changed (so far).
2020-03-06 16:23:44 +00:00
Jeff Young
dccc367864
Remove code missed in the modern-toolset move.
2020-03-06 16:23:44 +00:00
Jon Evans
34ceee14ed
Improve color button padding
2020-03-06 08:14:12 -05:00
Jon Evans
5ed173ef1b
ADDED: LibEdit can have a different color theme than Eeschema
2020-03-06 00:01:02 -05:00
Jon Evans
643c97a2f4
ADDED: Schematic plotting can use a dedicated color theme
...
ADDED: PDF, PS, and SVG plots can optionally include the page background color
Fixes #1830
2020-03-06 00:01:02 -05:00
Jon Evans
8660b4c144
ADDED: New color theme editor and multi-theme support
2020-03-06 00:01:03 -05:00
Jon Evans
1e104d5bd4
Don't promote globals from locals on a different sheet
...
Fixes #4004
2020-03-05 19:08:55 -05:00
jean-pierre charras
3e78403576
Eeschema: cosmetic enhancement: display sheet UUID and path in dialog and bottom frame.
2020-03-05 13:20:38 +01:00
jean-pierre charras
b7cd0c54c2
Fix compil issues, especially on Windows:
...
Replace SEVERITY_ERROR by RPT_SEVERITY_ERROR to avoid collision with a system definition.
Replace other SEVERITY_XXX by RPT_SEVERITY_XX for consistency.
Fix compil warnings and some other compil issues.
2020-03-04 10:48:18 +01:00
Jeff Young
21469efa63
Make sure EESCHEMA definition gets passed into common.cpp.
...
Also includes a fix to seed timestamps that got incorrectly
written out as '00000000' because of the above.
Fixes https://gitlab.com/kicad/code/kicad/issues/3977
2020-03-04 02:04:18 +00:00
Jeff Young
85c2e0d23a
Add user-defined severities, exclusions and colors to DRC markers.
...
Exclusions are currently persisted in the project file.
Fixes https://gitlab.com/kicad/code/kicad/issues/1989
2020-03-04 00:39:28 +00:00
Seth Hillbrand
e359144305
Missed one file for previous commit
...
This is the actual fix for issue #3982
2020-03-03 14:05:49 -08:00
Seth Hillbrand
2cff50d7a8
Fix return value for new plugin
...
Even when we throw, we still need to provide a default return value that
will never be reached for MSVC
Fixes #3982 | https://gitlab.com/kicad/code/kicad/issues/3982
2020-03-03 14:02:37 -08:00
jean-pierre charras
30bc8fac5d
Annotate dialog: fix incorrect list of changes in complex hierarchies
...
Previously, to list changes, the Reference field was used in comparisons.
In complex hierarchies, this is incorrect: the Reference field contains
only the last displayed reference, not the reference of a given sheet.
The comparison uses now the sheet paths for ref and unit selection.
2020-03-03 19:41:19 +01:00
Seth Hillbrand
20fde2c16f
eeschema: Fix find from RTree change
...
The RTree doesn't keep pins and fields in the tree, so we need to search
for them differently.
Fixes #3979 | https://gitlab.com/kicad/code/kicad/issues/3979
2020-03-03 09:35:12 -08:00
Wayne Stambaugh
18f9ba110d
Fix minor symbol library s-expression formatter and parser bugs.
2020-03-03 08:06:23 -05:00
Wayne Stambaugh
9d6f64da9a
Implement symbol library s-expression parser.
...
This implements all existing symbol library object support and the ability
to save and load symbol library files between file formats for round robin
testing.
2020-03-03 08:06:23 -05:00
Wayne Stambaugh
738a93db68
Fix s-expression symbol library formatter build issue due to UUID support.
2020-03-03 08:06:22 -05:00
Wayne Stambaugh
1af503509d
Fix s-expression symbol library formatter build issue.
2020-03-03 08:06:22 -05:00
Wayne Stambaugh
1d205e4442
Fix points formatting in s-expression symbol library file formatter.
2020-03-03 08:06:22 -05:00
Wayne Stambaugh
e1900161a7
Eeschema: implement new symbol library file s-expression formatter.
...
CHANGES: Symbol library file format has been converted to s-expressions.
Add support code for picking apart symbols at some future junction that
will allow full inheritance conversion of existing symbol libraries. For
now, symbols arranged by unit and body style numbers are nested for round
robin testing of symbol libraries once the parser is complete.
2020-03-03 08:06:22 -05:00
jean-pierre charras
20ca5a6973
Eeschema, dialog_edit_component_in_xxx: minor cosmetic enhancements.
...
Especially, UUID is bigger than old timestamp, so enlarge display widget.
2020-03-02 14:29:18 +01:00
Jon Evans
90bd351807
Properly flush color settings after migration
...
Also fix missing gerbview migration
Fixes #3965
2020-02-29 21:49:35 -05:00
Simon Richter
866aac9737
Clean up a few unused names of caught exceptions
2020-03-01 00:33:45 +00:00