Jon Evans
3ff3d2cb14
Fix errant $
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
c977addfa2
Fix conflict between special char escaper and super/subscript.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4227
2020-04-19 21:16:22 +01:00
Jeff Young
c08a6adb2a
Implement GUI and file R/W for 3D model opacity.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2087
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
Ian McInerney
e528769637
Move TOOLS_HOLDER into tools/ folder
...
Also clean up some compiler warnings
2020-04-19 01:51:49 +01:00
Ian McInerney
7bda8178d1
Move library includes to main CMake file
...
Placing them behind the SYSTEM directive tells CMake to tell
the compiler they are system libraries, so it shouldn't show
warnings created from them.
2020-04-19 01:11:56 +01:00
Jeff Young
2b6089240a
Change super/subscript syntax to ^{foo} and _{foo}.
2020-04-18 21:04:41 +01:00
Jeff Young
d7d1cb6f78
A bunch of fixes to Eeschema Find/Replace.
2020-04-18 14:43:08 +01:00
jean-pierre charras
56c31e65f6
Fix a compil issue: Try a better fix than commit 8f0449c
.
2020-04-18 12:36:05 +02:00
jean-pierre charras
8f0449cbab
Fix a compil issue.
2020-04-18 09:02:51 +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
Ian McInerney
b8d2802cfe
Add missing cases to silence compiler warnings
2020-04-18 00:47:35 +01:00
Jeff Young
919a66a703
Remove side-effect from finishTool().
...
It belongs out in the calling loop so that if someone else uses
finishTool() later they won't get bit by it.
This also fixes a crash bug where we weren't deactivating all tools
because we couldn't back up at the beginning of the stack (and the
loop increment therefore went past the first element).
Fixes https://gitlab.com/kicad/code/kicad/issues/4206
2020-04-16 21:58:45 +01:00
Jeff Young
9c8941e040
Remove a bunch of globals.
2020-04-16 17:34:46 +01:00
Tomasz Wlostowski
ee70c6dd5b
NESTED_SETTINGS: allow to create/load without a parent settings object. Used for test/mocking
2020-04-15 13:00:48 +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
122b1ddaae
Unwrap an unnecessary layer now that we have new config stuff.
2020-04-13 20:58:12 +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
84944524cc
Fix crash on OSX when page was changed before hack array was alloc'ed.
2020-04-10 22:49:56 +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
Jeff Young
8eb15fe911
Tidy up some Coverity issues.
2020-04-07 17:29:58 +01:00
Jeff Young
76bbb71402
Correct some formatting issues.
2020-04-07 17:29:58 +01:00
Jeff Young
5b70856a85
Change default sheet background color to transparent.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4166
2020-04-06 12:31:59 +01:00
Jeff Young
322ab60cc5
Fix some Coverity issues.
2020-04-06 12:31:59 +01:00
Ian McInerney
cb380cda0c
Fix some build warnings
2020-04-06 00:31:45 +01: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
Ian McInerney
c0b03a043e
Force menubar update when file history is changed
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4137
2020-04-05 18:05:43 +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
Ian McInerney
306ebb0e89
Cleanup dynamic casts in unit binder
2020-04-04 12:24:54 +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
Jeff Young
78dfbca9a3
Save pre-eval values for Move Exactly dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4088
2020-04-03 21:47:47 +01:00
Wayne Stambaugh
082944ad06
Minor build warning fixes.
2020-04-03 13:03:23 -04:00
jean-pierre charras
b1b8a32078
fix a few Coverity warnings and compil minor warnings.
2020-04-03 09:54:47 +02:00
Jon Evans
23c1baae8e
Defer image surface destruction until next paint
...
Fixes #4043
(cherry picked from commit dbf786e456f2792476791caf9dadfeb43e9ab383)
2020-04-02 14:36:57 -04:00
jean-pierre charras
161b73e55b
Enable storing pin function (pin name) in pads.
...
This is useful in board routing.
It is plotted in pad attribute TO.P in Gerber files.
2020-04-02 20:14:45 +02: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
Jeff Young
811968716c
Add OSX layout hack to PAGED_DIALOG for preferences.
2020-04-02 14:01:30 +01:00
Jeff Young
4966ab802e
Support single-click colour editing in dialogs.
2020-04-02 14:01:30 +01: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
eb855d40bb
Restore lib tree refreshing, but don't attempt to refresh tree root.
2020-03-30 17:30:26 +01:00
jean-pierre charras
58e03be23c
Fix a compil issue.
2020-03-30 17:38:19 +02:00
Jeff Young
a1d62e0622
Improve some comments.
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
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
Ian McInerney
c29c3d9cc1
Diferentiate action types in the tool trace
2020-03-28 22:01:35 +00:00
Jeff Young
88c4254bb5
Discourage use of wxDataViews. WX_GRID is much less problematic.
2020-03-28 16:09:40 +00:00
jean-pierre charras
c41199f048
lib_tree.cpp: Fix a lot of wxWidgets alerts on Windows.
...
On Windows calling m_adapter->RefreshTree() to refresh the tree does not work fine.
Just calling Refresh() is enough.
2020-03-28 11:00:54 +01:00
jean-pierre charras
aebfbda183
DRC dialog: fix a crash when clicking on a item in Footprint Warning panel:
...
if the warning is a missing footprint, obviously there is no marker associated.
It creates a crash due to a null pointer.
Fixes #4114
https://gitlab.com/kicad/code/kicad/issues/4114
2020-03-28 11:00:54 +01:00
jean-pierre charras
53a98b45f0
DIALOG_ABOUT_BASE: fix a minor wxWidgets alert
2020-03-28 11:00:54 +01:00
jean-pierre charras
de7154e8e9
Gerber plotter: Non horiz or vertical oval pads: better plot output:
...
These pads were plotted as a segment. This is not the right way.
Pads must be flashed or plotted as regions, not painted.
They are now plotted as Gerber regions round rectangle pads.
These regions are similar to flashed pads.
2020-03-27 10:34:41 +01: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
14788eec94
Performance improvement in wx_grid column label height calc.
...
Don't call GetColLabelValue() repeatedly. It's expensive as it doesn't
cache the string translations.
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
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
jean-pierre charras
9cb3333d05
Gerber plotter: plot round rectangle pads using a region with arcs.
...
Previously, the region was a usual polygon with arc approximated by segment.
Using a region with arcs is a better way because it allows CAM tools to
identify this region as a round-rect pad.
A side effect is a better shape and smaller files, however not really noticeable in fact.
2020-03-20 19:45:05 +01:00
Jeff Young
e9cd9ee8ff
Actionize the rest of the 3D viewer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2228
2020-03-19 15:10:32 +00:00
jean-pierre charras
04e4599989
PANEL_SETUP_SEVERITIES: skip non existing error codes in TransferDataFrom/ToWindow
...
Fixes #4066
https://gitlab.com/kicad/code/kicad/issues/4066
2020-03-18 09:17:43 +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
085d80e3f3
Remove duplicated settings from preferences.
...
These have now moved to project-specific settings.
2020-03-13 17:28:53 +00:00
jean-pierre charras
08f0e8d6e8
Pcbnew, Gerber output: always generates Aperture Attributes.
...
Previously, for historical reasons, they were added only if
Include Netlist Attributes option was on.
But Aperture Attributes have nothing to do with Netlist Attributes, and good
Gerber files must include them.
2020-03-12 16:57:13 +01: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
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
Jeff Young
becc66b583
Change some layer names for better grouping when alphabeticized.
2020-03-10 18:54:17 +00:00
Jeff Young
d875d5850e
Update library trees when their items change.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4019
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
Jon Evans
8cb8d55843
Remove unnecessary exception handling in settings
...
Use optionals instead where a value can be absent
Fixes #4024
2020-03-07 16:06:33 -05:00
Jeff Young
fb00ca12d6
Performance enhancements for stroke font initialisation.
2020-03-07 18:52:30 +00:00
Jeff Young
535033c5c9
Enable editing of sheet fields.
2020-03-07 18:52:30 +00:00
Ian McInerney
a2ad9d67ba
Expose more version strings from CMake
...
Let cmake generate the needed version strings, so we don't
have to spend program time doing it. This simplifies the
settings manager versioning.
Also, convert some file line endings to UNIX from Windows.
A more robust fix for https://gitlab.com/kicad/code/kicad/-/issues/4015 .
2020-03-07 18:43:24 +00:00
Jon Evans
01a6d0067b
Add missing layer name for sheet fields
...
Fixes #4018
2020-03-07 09:44:06 -05:00
Jon Evans
1e61668cee
Make GetSettingsVersion handle extra version appends better
...
Fixes #4015
2020-03-07 09:33:35 -05: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
Jon Evans
dd56f6f8e2
Increase width of bitmap button on settings migration dialog
2020-03-06 08:15:14 -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
ca1ab0af16
Set expand flags and minimum button size on migration dialog
...
Hopefully fixes #3989
2020-03-04 21:47:28 -05:00
Seth Hillbrand
e38ab6c699
Treat 0-length ovals as circles
...
Some buggy SVG interpreters can't handle 0-length ovals. In this case,
they are meant to be circles, so we can export as circles in our
plotter.
Fixes https://gitlab.com/kicad/code/kicad/issues/3995
2020-03-04 18:03:20 -06:00
Seth Hillbrand
ecbfea68dd
ADDED: Allow creation of nets in pcbnew
...
When editing pcb items, the creation of a new net to connect existing
pads or traces can be a useful shortcut. This inserts the ability to
optionally create a new net from the Net Selector dropdown menu.
2020-03-04 16:11:47 -06:00
Seth Hillbrand
12088f240d
Fix a couple crashes with small canvases
...
The canvas size is not guaranteed to be strictly > 0, so we need to
enforce a minimum returned size before dividing by it or passing to GAL
initialization
2020-03-04 14:33:42 -06: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
Marcus Comstedt
349c0e1a14
gal/opengl: Fix shader link state check
...
The old code caused a bool (size 1) to be overwritten by a GLint (size
4) causing undefined behaviour.
Fixes https://gitlab.com/kicad/code/kicad/issues/3981
2020-03-03 21:47:43 +00:00
Marcus Comstedt
55ac575a88
Cairo GAL: fix incorrect use of pixman formats
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3970
2020-03-03 18:07:30 +00: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
Jon Evans
08ef7de493
Use STL replace instead of Boost in JSON_SETTINGS
2020-03-02 19:18:52 -05:00
jean-pierre charras
911c6eb781
Pcbnew, DIALOG_NETLIST: fix incorrect storage of wx_MessageWindow options.
...
Config values were not stored into the right variables.
Make also an option persistent during the session
in DIALOG_UPDATE_PCB and DIALOG_NETLIST
DIALOG_UPDATE_PCB and DIALOG_NETLIST match options: use same order in dialogs.
2020-03-01 20:49:56 +01:00
Simon Richter
0f105c4c9a
Fix preprocessor expression
...
The "and" and "or" keywords are only defined if <iso646.h> is included.
This fixes the C4067 warnings.
2020-03-01 00:33:45 +00:00
Andrew Downing
2f7ac2b5b4
Don't truncate polar coordinates in position relative dialog/move exact dialog
2020-02-29 02:21:18 +00:00
Jon Evans
72a6963e9e
Free some memory that asan was complaining about
2020-02-27 22:58:33 -05:00
Jon Evans
9cc5b4b3f9
Fix management of nested settings for PNS
2020-02-27 22:53:00 -05:00