Jon Evans
2eaefb4874
Improve performance of schematic load and connectivity
...
Store component paths and references efficiently
Remove redundant calls to RecalculateConnections
2020-04-30 19:53:25 +00:00
jean-pierre charras
b26e9520b3
DIALOG_EDIT_SHEET_PIN: allows only the text size to be edited (and sizeX = sizeY).
...
In Eeschema, texts are expected to have the same size X and size Y.
So we cannot set 2 different values for X and Y pin size:
- only size X is saved in file
- 2 different values for X and Y create bad look for pin + associated graphic symbol
Allowing separte values need a file format change *and* a code change.
2020-04-30 10:33:53 +02:00
jean-pierre charras
687c2f3e82
eeschema: fix a readability issue for small texts.
...
Texts were drawn with a minimal line thickness = GetDefaultPenWidth().
The default pen width can be to large for small texts.
So the actual text thickness is now always clamped.
2020-04-30 09:38:23 +02:00
jean-pierre charras
d10c8cd75b
Sheet pins: fix incorrect size and plot thickness of the graphic symbol.
...
Unlike the global labels, the hierarchical label is not inside the graphic symbol.
So the graphic symbol size depends only of the text size, not of the text offset.
2020-04-29 17:46:36 +02:00
jean-pierre charras
62d78cdf49
erc_item.cpp: fix issue that created broken error list in panel setup severities
...
Fix a minor Coverity warning.
2020-04-29 15:30:31 +02:00
Jeff Young
1daa2224d0
Tidy up the layout of the Colors Editor.
2020-04-27 11:59:57 +01:00
Ian McInerney
d006acecf4
More window sizing fixes
...
* Push all sizing operations into EDA_BASE_FRAME
* Save the unmaximized window size when maximizing
so that we can then save it in the config if the
window is maximized. Otherwise the config ends up
with the maximized size saved, and weird behavior
occurs when unmaximizing on the next opening.
2020-04-27 00:14:12 +01:00
Wayne Stambaugh
1a8082c6d6
Eeschema: fix partial schematic load bug in the legacy plugin.
...
Move the hierarchical sheet loading outside of the try exception block
so that any sheets that were loaded when a schematic file load fails
are loaded rather than skipped. This allows more of the schematic to
be loaded when any parser errors occur.
2020-04-26 15:47:25 -04:00
Wayne Stambaugh
fa57c8a570
Eeschema: fix sheet bug in schematic editor drawing tool.
...
SCH_SHEET objects can only have another SCH_SHEET object as a parent
or nullptr for the root sheet so overload EDA_ITEM::SetParent() to
prevent the parent from being set to another type of object and add
some checks to the root sheet code just in case someone gets clever
and attempts to bypass the overloaded SetParent() call.
2020-04-26 14:27:51 -04:00
jean-pierre charras
349ec2031b
Eeschema plot worksheet: use the color defined in Eeschema settings.
...
Fixes #4265
https://gitlab.com/kicad/code/kicad/issues/4265
2020-04-26 09:06:02 +02:00
jean-pierre charras
4f369801f2
Fix a few compil and Coverity warnings.
2020-04-25 08:49:16 +02:00
Ian McInerney
99dcadf7e6
Introduce new KI_FALLTHROUGH macro
...
Annotate purposeful fallthroughs in switch statements with the
KI_FALLTHROUGH macro.
2020-04-25 00:44:09 +01:00
Jeff Young
49c46dc796
Fix typo.
2020-04-24 23:22:11 +01:00
Jeff Young
2fb2eac4d5
Performance enhancements.
2020-04-24 22:17:45 +01:00
Jeff Young
32db9eb0f1
Add some distances to a few DRC errors.
2020-04-24 22:17:45 +01:00
Jeff Young
e14e3faed6
Use resolved text for connections.
2020-04-24 22:17:45 +01:00
Jeff Young
1535c83b88
Lay some groundwork for adding distances to DRC errors.
...
modified: eeschema/lib_rectangle.cpp
2020-04-24 14:46:22 +01:00
Jeff Young
cb89e18281
Get rid of the visible axes in Eeschema.
2020-04-24 14:46:22 +01:00
Jeff Young
7308099852
Add an icon and put Schematic Setup in the toolbar.
2020-04-24 14:46:22 +01:00
Jon Evans
69db66e1ea
Fix saving of pcbnew colors when edited from layers widget
2020-04-23 22:33:02 -04:00
Jon Evans
2d95270a31
Add color theme settings to pcbnew
2020-04-23 21:55:29 -04:00
Ian McInerney
facf40d3ce
libedit: Add drag to move behavior
...
ADDED: Drag to move behavior in the symbol editor
Fixes https://gitlab.com/kicad/code/kicad/issues/1904
2020-04-23 23:58:33 +01:00
Jon Evans
f7ebf2af5e
Add separate color setting for bus junctions
...
Fix plotting and printing to use bus color when
connectivity detects that the junction is on a bus.
Fixes #4098
2020-04-22 21:55:48 -04:00
Jeff Young
615ad9abfc
Check sheet file extension when editing, and add if missing when reading.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4107
2020-04-22 21:27:33 +01:00
Jeff Young
fe383efb93
That gcc is a squirrelley beast...
2020-04-22 12:35:32 +01:00
Jeff Young
1fdaac3440
Safer way to do std::string conversions.
2020-04-22 12:31:06 +01:00
Jeff Young
857aca78cd
More std::string vs. wxString compile issues.
2020-04-22 12:28:25 +01:00
Jon Evans
61f28f0958
Fix build error on gcc
2020-04-21 19:29:34 -04:00
Jeff Young
93d0f19e3f
Fix compile error on linux (perhaps all gcc platforms?).
2020-04-21 22:53:33 +01:00
Jeff Young
f3a2495757
Fix compile issue on GTK (or possibly just with some versions of wxWidgets).
2020-04-21 22:19:36 +01:00
Jeff Young
da7205ff32
Re-implement negative-width-means-don't-stroke hack.
2020-04-21 21:17:59 +01:00
Jeff Young
1916ea868b
Highlight current row in Edit Symbol Fields, and save col widths.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4235
2020-04-21 21:17:59 +01:00
Jeff Young
f113370e1e
Edit worksheet properties when no other selection is available.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4044
2020-04-21 21:17:59 +01:00
jean-pierre charras
83cb9c0d14
Fix a few Coverity and compil minor warnings. Remove dead code
2020-04-21 12:47:48 +02:00
Jon Evans
d7d1ea33ac
Check for conflicts before promoting sheet pins to be strong drivers
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4201
2020-04-19 19:13:24 -04:00
Jon Evans
b802a3e776
Add command-line option to generate netlist and exit
2020-04-19 19:13:24 -04:00
Jeff Young
7e4d255cdd
Apply Scintilla hack to get auto-sizing canvas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4207
2020-04-19 20:09:43 +01:00
Jeff Young
a286cb5a8f
Keep labels on dragged wires.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2107
2020-04-19 18:24:39 +01:00
Jeff Young
71fd560735
Add "Export to other sheets" to paper settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2177
2020-04-19 18:24:39 +01:00
Jeff Young
895f46da8f
Another attempt to fix the textbox scrollbars on GTK.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4207
2020-04-18 21:41:20 +01:00
Jeff Young
2b6089240a
Change super/subscript syntax to ^{foo} and _{foo}.
2020-04-18 21:04:41 +01:00
Jeff Young
42cd604c3c
Expose Show Hidden Fields to GUI.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2010
2020-04-18 16:36:51 +01:00
Jeff Young
d7d1cb6f78
A bunch of fixes to Eeschema Find/Replace.
2020-04-18 14:43:08 +01:00
jean-pierre charras
98b9c80eb4
Schematic editor: fix not working tool to show/hide invisible pins.
...
Fixes #4222
https://gitlab.com/kicad/code/kicad/issues/4222
2020-04-18 09:57:04 +02:00
Ian McInerney
3b67e3d0a4
Rewrite window positioning logic
...
Now only reposition a window if it is completely on a
disconnected display or if only one corner is on screen
and it is within a region close to the screen border.
CHANGED: Window position on startup should be preserved more
2020-04-18 00:47:38 +01:00
Jeff Young
7526d2affb
Fix possible null-dereference.
2020-04-17 21:13:56 +01:00
Jeff Young
0dfdc37ae7
Clean up label spacing to be more predictable.
...
Don't try to use complex algorithms taking into account default
margins, line-widths and pen-widths (especially when they differed
between label types). We now use the (user-controlled) text
offset ratio to determine the margins (from the center-point of
the attached line).
2020-04-17 14:47:57 +01:00
Jeff Young
66059d6d55
Remove scrollbars from multi-line text ctrl.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4207
2020-04-16 20:36:12 +01:00
Jeff Young
96db1c7b1e
Add pin reference to PINLABEL for use when generating ERC marker.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4208
2020-04-16 19:53:03 +01:00
Jeff Young
37023da56f
Tidy some compiler warnings.
2020-04-16 17:34:46 +01:00
Jeff Young
9c8941e040
Remove a bunch of globals.
2020-04-16 17:34:46 +01:00
jean-pierre charras
25d7c0cae2
Opencascade: fix min version: OCE=0.18, OCC=6.9.0
...
Fix also a few minor Coverity warnings.
2020-04-16 10:22:20 +02:00
Sylwester Kocjan
fdccdd5cb9
Eeschema: adding .op SPICE simulation support
...
ADDED new tab on simulation settings dialog, which allows to run .op analysis.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2368
2020-04-15 01:51:58 +00:00
jean-pierre charras
952e7a5fb4
Eeschema: move some default values to default_values.h.
...
These default values are used in many files, and some files were using
magic numbers.
2020-04-14 20:15:18 +02:00
jean-pierre charras
4a2a5a9403
qa_eeschema: fix a crash due to LIB_PIN ctor that was using default config values,
...
but in QA tests, we do not have config values available.
2020-04-14 18:12:15 +02:00
jean-pierre charras
a49deec278
Eeschema: fix crash when plotting in HPGL format.
2020-04-14 13:50:09 +02:00
jean-pierre charras
6148461484
Eeschema plot: fix (temporary) line 0 thickness.
...
Plotting lines having 0 thickness is not acceptable and create issues.
2020-04-14 12:43:51 +02:00
jean-pierre charras
04ea20dd44
Eeschema, SCH_PAINTER: fix max text thickness issue, to have small texts readable.
2020-04-14 11:08:42 +02:00
Jeff Young
6e800bddae
Rationalize penWidth processing as first step in removing some globals.
2020-04-13 20:58:13 +01:00
Jeff Young
d014dc47ab
Finish moving text markup flags to project-level settings.
2020-04-13 20:58:13 +01:00
Jeff Young
122b1ddaae
Unwrap an unnecessary layer now that we have new config stuff.
2020-04-13 20:58:12 +01:00
jean-pierre charras
5405c09b81
Eeschema: avoid initializing default line thickness to 0: it can create issues.
...
Some graphic line thickness were initialized to 0.
The actual line thickness is set after reading config.
But in some cases the config does not exist, and 0 line thickness creates draw issues.
2020-04-12 19:50:33 +02:00
jean-pierre charras
bcf31ef3d1
DIALOG_SCHEMATIC_SETUP: fix incorrect parent of some sub-page panels.
...
These panels must have the wxTreeBook as parent to receive mouse and key events.
They previously have the dialog itself, but it does not work on any OS.
2020-04-12 18:17:57 +02:00
Jeff Young
c82679a6f2
Fix crash bug when highlighting no net (found by Coverity).
2020-04-12 11:19:44 +01:00
jean-pierre charras
bdada70ee7
Cosmetic enhancements: add bitmaps to a few context menus.
...
Fix also a minor compil warning.
2020-04-12 10:29:28 +02:00
Jeff Young
292a9fadd9
Allow a click in the value field when searching for power nodes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4180
2020-04-11 23:51:00 +01:00
Jeff Young
350696ecdd
Only convert references to KIIDs if the variable resolves.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2458
2020-04-11 20:47:44 +01:00
Jeff Young
dbded3e5dc
Make sure to check for unit designator when converting to KIIDs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2458
2020-04-11 20:47:44 +01:00
Jeff Young
505d8bf56e
Allow ':'s in field name references in text variables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2458
2020-04-11 20:47:44 +01:00
Jeff Young
c66fe5e91e
Don't try to add unit designator for a component without multiple units.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2458
2020-04-11 20:47:44 +01:00
jean-pierre charras
48a0f25ce6
EE_COLLECTOR::Collect(): fix an issue when called with filter = SCH_LOCATE_ANY_T.
...
When the filter = SCH_LOCATE_ANY_T, components and sheets were selected twice, one
from the main loop, and one from specialized loops for SCH_COMPONENT_T and SCH_SHEET_T.
2020-04-11 16:08:10 +02:00
Jeff Young
8854b799e8
Fix a minor spelling error.
...
Also changes the capitalisation of a string which isn't used, but looks
so wrong in FormBuilder that I couldn't help fixing it.
2020-04-11 13:06:45 +01:00
Jeff Young
c4994eee7b
Fix a pair of bugs in the new highlight net logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4180
2020-04-11 13:02:18 +01:00
jean-pierre charras
096564ec0c
Fix some typos and I18n issues
2020-04-11 08:57:46 +02:00
Jeff Young
84944524cc
Fix crash on OSX when page was changed before hack array was alloc'ed.
2020-04-10 22:49:56 +01:00
jean-pierre charras
dac78d2562
fix a few minor Coverity warnings.
2020-04-10 18:28:12 +02:00
Jeff Young
962aa73e12
Improve EE_COLLECTOR to not miss children of sheets or symbols.
...
Also implements pin highlighting and special cases for power symbols.
Fixes https://gitlab.com/kicad/code/kicad/issues/4180
2020-04-10 14:09:26 +01:00
Jeff Young
b067e441c7
Show/hide sheet colors when flipping override flag.
2020-04-10 00:35:17 +01:00
Jeff Young
f4e22a9264
Add ability to override individual item colors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4167
2020-04-09 17:17:27 +01:00
Jeff Young
317e98b344
Simplify user model for editing color themes.
2020-04-08 22:34:56 +01:00
jean-pierre charras
6e593aa1e0
SCH_BASE_FRAME::FocusOnItem() fix incorrect calculation of a pin physical position.
...
Only ERC dialog was affected: when clicking on a error item, if the item is a pin
the cursor was put far from the right location.
2020-04-08 11:06:41 +02:00
jean-pierre charras
cb7263d017
Eeschema: fix ERC dialog not shown after a double click, when recalled by tool ERC.
...
(the dialog was reactivated by calling Raise(), but this is not enough: Show()
must be called also, at least on Windows).
Fix also a minor wxWidgets alert in ERC dialog.
Fixes #4171
https://gitlab.com/kicad/code/kicad/issues/4171
2020-04-08 10:03:51 +02:00
Jeff Young
6aaee01f1c
Generalize fill parsing and add support for sheet background R/W.
...
Also fixes a bug in colour parsing (the alpha channel is a float).
2020-04-07 17:29:58 +01:00
Jeff Young
8eb15fe911
Tidy up some Coverity issues.
2020-04-07 17:29:58 +01:00
Jeff Young
aba0fa7bf8
Allow cross-referencing text substitutions.
2020-04-07 17:29:58 +01:00
Jeff Young
76bbb71402
Correct some formatting issues.
2020-04-07 17:29:58 +01:00
Wayne Stambaugh
95089623a4
Eeschema: fix s-expression build errors due to global variable changes.
2020-04-06 22:47:42 +00:00
Wayne Stambaugh
c9b00e3898
Eeschema: minor s-expression file format improvements.
...
I could not find a reasonable solution to the mandatory field canonical
name issue so field indices are back in play as much as I did not want
to use them. They really only have meaning for the mandatory fields.
For all other fields, the index number is meaningless and the field name
is the primary means for searching.
Fix a broken field size bug in the symbol library formatter.
2020-04-06 22:47:42 +00:00
Wayne Stambaugh
992d141292
Eeschema: minor s-expression schematic file format improvement.
...
Save image data using a base64 encoded string to reduce the file size.
2020-04-06 22:47:42 +00:00
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