Ian McInerney
9e6a1225db
Catch exception when creating app settings objects
...
These settings objects could be created in a constructor/destructor
so we should catch the exception since those are noexcept.
Also change the settings trace to match the other kicad traces
as KICAD_SETTINGS
2020-09-21 12:07:51 +01:00
Ian McInerney
e0c2531f53
Catch exception inside JSON_SETTINGS constructor
...
This exception will probably never be thrown in real life,
but the constructors are normally noexcept, so throwing
any exception from the json library causes Coverity to
have a fit.
2020-09-20 23:50:09 +01:00
Jon Evans
375f1b8129
Avoid throwing exception when starting from scratch
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5661
for some reason
2020-09-18 20:41:27 -04:00
Ian McInerney
a53f3899d4
Initialize variables properly
2020-09-18 11:17:37 +01:00
Jon Evans
ae7877c6cb
Migrate dimension precision
2020-09-11 21:12:36 -04:00
Seth Hillbrand
f493e270ea
ADDED: Menu option to enable/disable snap to grid
...
You can now enable and disable snap to grid when drawing/editing across
all apps. You can also tie snap to grid to the visibility of the grid
to allow rapid enable/disable via grid display.
2020-09-10 20:09:30 -07:00
jean-pierre charras
276d77a1d7
SETTINGS_MANAGER: Fix bug: ensure the destination folder exists.
...
Better fix than a0df876d
For new users, if this folder does not exist, saving colors does not work,
because if this folder does not exist, it is not created.
2020-09-05 13:04:49 +02:00
jean-pierre charras
a0df876d58
SETTINGS_MANAGER::SaveColorSettings(): Ensure the destination folder exists.
...
For new users, this folder noes not exists, and saving colors does not work.
If this folder does not exist, it is not created.
2020-09-04 19:49:19 +02:00
Mario Luzeiro
820e3089a2
3D-Viewer: use the correct opacity meaning in the color settings
2020-09-01 01:08:38 +00:00
Mario Luzeiro
40d5746df6
3D-Viewer: Parameterize body board transparency
...
Fix/workarround raytracing render issues related with refraction
2020-09-01 01:08:38 +00:00
Mario Luzeiro
0302fe5570
3D-Viewer: Parameterize soldermask transparency
2020-09-01 01:08:37 +00:00
Jeff Young
2697fc3864
Remove canvas-switching from OSX.
...
The Cairo renderer doesn't work on Retina displays.
Fixes https://gitlab.com/kicad/code/kicad/issues/4788
2020-08-31 18:48:25 +01:00
Jon Evans
9f7bca38b3
A better way of handling standalone project files
2020-08-30 16:04:39 -04:00
Jeff Young
20211eed49
Unroll a level of prefs for fieldname templates.
...
It was playing havoc with the saving of project and global templates
without one overwriting the other.
Fixes https://gitlab.com/kicad/code/kicad/issues/5415
2020-08-30 18:58:18 +01:00
Jon Evans
046fef2cc1
Only load an empty project if we don't have one already
...
We may have multiple projects if one of them is a temporary
project used for importing settings
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5423
2020-08-30 12:27:20 -04:00
Jon Evans
cd54ba7b01
Fix project unloading in LoadProject
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5380
2020-08-26 20:46:20 -04:00
Jon Evans
dc7e1783b3
Make sure a project is loaded at all times
...
For now, much of KiCad depends on Prj() working, so when we
are asked to unload a project, immediately load the null project
so that nothing breaks.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5374
2020-08-26 18:37:34 -04:00
Mark Roszko
89e74140eb
Save file / window states for kicad project locally
2020-08-24 02:01:14 +00:00
jean-pierre charras
c80d029681
json_settings.cpp: add more log traces on errors, when trying to save a json config.
...
pcb_calculator: fix a minor cosmetic issue: disabled wxStaticTexts are not very readable
on wxWidgets 3.1.4, so do not use disabled wxStaticTexts.
2020-08-23 15:01:52 +02:00
Jon Evans
eb9756840d
Better defaults for brightness factors
...
Also store them in the JSON so they can be tweaked
2020-08-18 20:55:39 -04:00
Jeff Young
8234e70e77
Remove unused footprint text front & back colours.
2020-08-17 23:55:31 +01:00
Jeff Young
aceed2b0a4
Cleaner look for colour swatches and the undefined colour.
2020-08-17 18:31:20 +01:00
Jon Evans
92174d414c
Ensure pads and zones come up visible by default
...
These visibility layers didn't exist until now
2020-08-16 10:17:20 -04:00
Jon Evans
bd14f8a82a
ADDED: New appearance control widget for PcbNew
...
Featuring:
- Layer view presets
- Per-type opacity for tracks, vias, pads, zones
- Net and netclass color and visibility controls
CHANGED: Simplified object visibilty controls
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1951
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1981
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2003
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2173
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2254
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4325
2020-08-15 15:24:28 -04:00
Jon Evans
2fc9c7233d
Add color layer for schematic aux items
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4825
2020-08-09 17:39:52 -04:00
Ian McInerney
c458b50fd9
Ensure the environment variables are synchronized between KiCad and Python
...
Before this, the environment variables inside Python wouldn't reflect
the updates to them made after the interpreter was started in Pcbnew.
This will call into Python and set the variables when they are changed,
since Python can't synchronize itself when running in an embedded
interpreter.
Fixes https://gitlab.com/kicad/code/kicad/issues/5071
2020-08-09 19:56:12 +01:00
Jon Evans
43ab43ec9e
Fix a few issues with Close Project
...
A new empty project needs to be reopened for now
Footprint info cache write only works with a project for now
2020-08-09 11:13:50 -04:00
Peter Montgomery
4d460ec073
Delete 3D cache files with GUI settable number of days
...
KiCad stores 3D cache files but never gets rid of any of them.
This patch adds a new function called 'CleanCacheDir()'. Any cache
files older than the passed 'number of days' parameter are deleted.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1928
2020-08-09 10:41:45 +00:00
Jon Evans
79e40cf765
Fix a few issues with Close Projects MR
...
Store list of previously open projects only in kicad.json
Keep all management of open projects in SETTINGS_MANAGER
Also add kicadSettings() for convenience
2020-08-08 16:00:49 -04:00
jean-pierre charras
f46c1ccb32
Fix another incorrect (and useless) conversion of a wxString to and from std::string.
...
This useless conversion breaks non ASCII8 strings.
2020-08-07 19:44:34 +02:00
jean-pierre charras
ea71d9db81
Fix incorrect (and useless) conversion of a wxString to and from std::string.
...
This useless conversion breaks non ASCII8 strings.
2020-08-05 18:34:49 +02:00
jean-pierre charras
a146cd9e2e
JSON_SETTINGS: add more wxLogTrace() calls.
2020-08-03 08:44:34 +02:00
jean-pierre charras
df4226f896
Settings management: try to fix full filename issues when using non ASCII7 chars.
...
The fix convert all std::string storing a path to wxString (unicode support)
wxString were already used at many place to store paths, but not all.
For internal calculations mixing char strings and wide char strings is a recipe
for bug: any missing conversion between UTF8 and wxString breaks paths.
2020-08-02 21:31:03 +02:00
Jon Evans
aae40148dc
Switch to ordered_json and enable ignore_comments parser option
2020-08-02 13:11:16 +00:00
Jeff Young
a58a75366e
Give up on a cross-platform solution to non-ascii filenames.
...
Sometime it might be worth giving another go at it, but for now I
just put conditional compilation in.
Fixes https://gitlab.com/kicad/code/kicad/issues/5024
2020-08-01 19:47:29 +01:00
Jeff Young
689910ab0a
Add missing include.
2020-08-01 15:57:44 +01:00
jean-pierre charras
91e00e14a9
JSON_SETTINGS: partial fix of non ascii7 filenames on Windows.
...
It should work with ASCII8 filenames, but the member
m_filename is probably not always correctly initialized in all cases.
2020-08-01 16:08:39 +02:00
Jeff Young
61c817377f
Support for wchar_t Windows filenames in JSON settings.
2020-07-31 21:01:13 +01:00
Jeff Young
6e4d4401ae
Make sure to translate UTF8 std::string to wchars for wxString.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5024
2020-07-31 14:48:45 +01:00
Mark Roszko
8324cb30b7
Save the wxDisplay index to set the position of windows correctly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4338
2020-07-27 02:53:56 +00:00
Jeff Young
f97c50bfde
Give excluded DRC items their own layer.
...
(And fix a bug with the new mulit-layer zones and rule-based keepouts
at the same time which prevented me from testing it.)
Fixes https://gitlab.com/kicad/code/kicad/issues/4954
2020-07-24 01:28:25 +01:00
Jon Evans
a107f7ce5b
Fix a few issues with legacy project loading
...
- Prevent crash on project tree for "Empty project" item
- Correctly handle loading of legacy projects in tree view
- Fix an issue where legacy projects would not get saved
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4944
2020-07-20 19:39:59 -04:00
Ian McInerney
50b2271f84
Fix missing variable initialization
2020-07-18 23:56:39 +01:00
Jon Evans
5401f06fce
Don't nag when we can't save project settings
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4164
2020-07-16 22:56:02 -04:00
Jeff Young
7d07e6719f
Make sure eeschema default grid is 50mils.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4835
2020-07-15 13:51:12 +01:00
Jon Evans
b1b9cef5fb
Full-project automatic backup system
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4763
2020-07-09 13:55:19 +00:00
jean-pierre charras
8c15ecf8e4
Gerbview: fix issues when setting the grid color and the worksheet color.
...
The issue for the grid color was due to the fact there are 2 places to
store the color: the color settings and the m_gridColor GERBVIEW_FRAME member.
The worksheet color (color set to RED after a color change in layer render)
is a bit strange: looks like LAYER_GERBVIEW_WORKSHEET and LAYER_WORKSHEET
are both used to draw the worksheet.
2020-07-08 18:49:12 +02:00
Jon Evans
3dd2dc89ad
Fix default values for color theme editor
...
At the time of creating a copy, the defaultColors map
is not initialized, so needs to be initialized from the
copy constructor.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4841
2020-07-08 12:19:10 -04:00
Jon Evans
6eca886292
Fix some UTF8 issues with project settings
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4808
2020-07-05 12:26:14 -04:00
Jon Evans
d143e14694
Fix memory leaks in color theme editor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4794
2020-07-03 22:34:41 -04:00