Wayne Stambaugh
922aee1532
Coding policy fixes.
2023-12-20 07:17:23 -05:00
Jon Evans
c6c808a7fa
Support system-installed color themes
...
Install to ${KICAD_DATA}/colors/
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15920
2023-10-31 23:05:08 -04:00
Marek Roszko
c006482feb
Add SETTINGS_MANAGER::GetUserSettingsPath back because swig
2023-09-24 20:10:32 -04:00
Marek Roszko
121ea99824
Move the settings path to PATHS to allow shifting other classes into kicommon
2023-09-23 20:06:58 -04:00
Seth Hillbrand
c7758999af
Handle LOCKFILE logistics for ro
...
We need to check if a lockfile is valid to determine if we should
override the lock. Valid() is true if the lockfile couldn't be created
b/c of permissions or if the lockfile could be created and acquired.
2023-05-31 17:04:32 -07:00
Seth Hillbrand
122be418bb
Upgrade file locking
...
wxSingleInstanceChecker is meant for running programs, not file locking.
This implements an RAII class for file locking that stores the lock
files next to the file being locked, allowing it to be easily found and
removed. Also includes the ability to override the lock, with
information about the original owner
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14734
2023-05-24 13:51:54 -07:00
Jon Evans
2ab47ee1e9
Allow for settings to be added during load
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14691
2023-05-07 08:48:07 -04:00
Alex
b89545e484
GTK: Fix settings import paths showing up twice.
2023-03-19 12:51:37 +03:00
Salvador E. Tropea
13de3c0656
Use constants for the names of the built-in colors
...
- Avoid repetition and errors from typos
- Allow simple changes
- Simpler data type handling, the constants are wxString
(Cherry-picked from f135881bd6
in 7.0)
2023-03-07 10:34:42 +00:00
Salvador E. Tropea
915446a472
Create the built-in colors in the constructor
...
This is needed so Python scripts can get built-in colors using the
SETTINGS_MANAGER.GetColorSettings() member.
Otherwise calling it with a built-in name crashes.
(cherry picked from commit aee6d9d01c
)
2023-02-22 12:52:44 +00:00
Marek Roszko
719be61627
Silence some kicad-cli loading errors on clean installs
2023-01-31 20:57:31 -05:00
Marek Roszko
088cadfefc
Attempt to select PCM themes for cli by their display name
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13648
2023-01-28 17:07:06 -05:00
Seth Hillbrand
a9ed47f06c
Update KICAD6->KICAD7
2023-01-23 22:21:12 +00:00
Marek Roszko
0ff32d20cd
wxS more things
2023-01-22 09:41:42 -05:00
Marek Roszko
1edf84d756
More wxS ugh
2023-01-17 07:43:04 -05:00
Alex
53dedb2c99
Prefer later versions in import of previous settings
2023-01-08 00:24:23 +05:00
Jeff Young
f5770fe7e0
Actually free the projects before the settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10973
2022-12-01 00:05:21 +00:00
Jeff Young
a0b6247a06
Try a different order of destruction.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10973
2022-11-16 00:42:38 +00:00
Marek Roszko
3fe004fd1b
New kicad-cli will now be the cli interface
2022-10-04 22:24:13 -04:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Jeff Young
6f49b57f9b
Cleanup & performance enhancements.
2022-08-01 13:09:51 +01:00
jean-pierre charras
993c446fdf
Fix some warnings detected by PVS-STUDIO (most are not used vars)
2022-07-25 18:23:52 +02:00
Marek Roszko
7473528cf4
Ensure user paths are created early
...
Fix #11962
2022-07-05 20:47:53 -04:00
Jon Evans
507d7916ee
Use actual project path when saving project
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10540
(cherry picked from commit 9c386026a8
)
2022-03-10 09:08:48 -05:00
Jon Evans
cb6d6d7ef4
Settings: allow multiple project access from Python standalone
...
We can't handle this in the UI, but we can externally, so allow
it for Python scripting and eventually we'll use this in the UI
also...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10540
(cherry picked from commit 1394509734
)
2022-03-05 13:04:19 -05:00
Seth Hillbrand
168ad58eef
Convert strings to wide when using wxString routines
...
WxString does not allocate space for wide strings needed during
conversion unless the string is explicitly wide. This can cause buffer
over/underflow
Fixes https://gitlab.com/kicad/code/kicad/issues/10605
(cherry picked from commit 7601a3385f
)
2022-02-03 13:08:33 -08:00
Jon Evans
59be6a8d19
Load local settings even when not setting project active
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10179
(cherry picked from commit 0065036899
)
2022-01-02 12:40:49 -05:00
Ian McInerney
cec258f7dd
Normalize the settings migration path to have no trailing slash
...
If we use the raw user input, it may or may not have a trailing slash on
the directory name, and then if the user provides a trailing slash
migrating the folders inside the old settings directory will fail.
2021-12-03 01:43:53 +00:00
qu1ck
18b4ebcc17
Skip migrating installed_packages.json
2021-11-23 14:49:40 -08:00
Jon Evans
22b9856a6a
Fix shadowing
2021-11-20 15:32:28 -05:00
Roberto Fernandez Bautista
bfad40bdcc
Also erase KICAD6_TEMPLATE_DIR when library tables are not migrated
...
That path contains the default library table and should be set to the
latest one in from the installation.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9660
2021-11-17 19:45:33 +00:00
Jon Evans
f6263e0129
Erase library env vars if tables are not migrated
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9660
2021-11-16 20:48:25 -05:00
Jon Evans
42eb063697
PCM: Treat color themes as read-only; don't copy to settings dir
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9548
2021-11-09 22:11:59 -05:00
Seth Hillbrand
6e5a918377
Writeable -> Writable
2021-11-08 15:56:51 -08:00
Jeff Young
c05e4376f9
Update backups folder name when doing project save as.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9254
2021-09-27 13:24:45 +01:00
qu1ck
a1521d338e
Add colortheme package type
2021-08-27 21:11:47 +00:00
Jon Evans
0814219513
Clean up some handling of project files in standalone
...
Add control of project creation to Eeschema; change defaults
to enable project creation in both programs. Properly set
project on newly-created schematics so "Save As" doesn't
get triggered repeatedly.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9000
2021-08-21 12:09:21 -04:00
Jon Evans
781fb0ad0d
Fix loading of auxiliary projects
...
Projects list wasn't being used properly to track active Prj
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8998
2021-08-19 20:50:41 -04:00
jean-pierre charras
a0da252a6a
SETTINGS_MANAGER::Prj(): add a wxASSERT to allow python script debug before a crash
...
Due to a bug, SETTINGS_MANAGER::Prj() returns a null PROJECT when running a
python script from the python console. this wxASSERT helps debugging.
2021-08-13 11:15:12 +02:00
Jeff Young
d6443d5a2c
Reduce type-casting a bit.
2021-08-04 17:11:35 +01:00
Jeff Young
ae99e627bd
Quiet Coverity.
2021-08-04 13:55:42 +01:00
Jeff Young
4876e1b327
Make sure user.json file gets created if it didn't already exist.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8856
2021-08-02 02:48:23 +01:00
Jeff Young
6f1837b300
Formatting.
2021-08-02 01:52:58 +01:00
Jeff Young
0d2ea6223b
Don't throw in a release build if the "keep" namespace is missing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8618
2021-06-16 17:31:31 +01:00
Jon Evans
c9a660a80c
Rework JSON integration to speed up build
2021-06-05 17:08:38 -04:00
Jon Evans
e7d3bf29aa
Don't save project for legacy board without explicit action
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7368
2021-04-21 21:27:23 -04:00
Jon Evans
693413b47e
Fix project saving in pcbnew standalone when project is new
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8244
2021-04-20 20:59:51 -04:00
Jeff Young
f7cc6d1e1e
Fix save as and save copy as for project files.
2021-04-13 17:56:50 +01:00
Jon Evans
c1573744be
Lock project files when opening; open locked projects read-only
...
Also clean up an include-what-you-use problem
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8037
2021-04-02 19:29:56 -04:00
Jon Evans
0377eea45e
Do not migrate hotkeys from old versions
...
We don't have a migration handler that can resolve conflicts
and tell the difference between hotkey changes that KiCad made
that we want users to adapt to, and hotkey changes made by the
user.
So, the least-bad option for 6.0 is to just not migrate old
hotkey config files.
See https://gitlab.com/kicad/code/kicad/-/issues/7816
2021-03-29 18:14:24 -04:00