- Move PLUGIN_FILE_DESC to common.
- SCH_PLUGIN: rename Load -> LoadSchematicFile, Save -> SaveSchematicFile.
- Use PLUGIN_FILE_DESC and CanRead* in schematic plugins.
- Return none/unknown types from Find/GuessPluginType functions.
- Iterate over file types for file wildcards.
- Clean-up header checking in IO plugins.
- Use PCB plugin list in IO_MGR::GuessPluginTypeFromLibPath.
Removes old defines and work arounds for earlier wx versions and adds a
CMake requirement to use at least 3.2 (or the minimum matching wxPython
version)
Using a boolean argument just leads to a lot of trailing booleans in the
function calls and is not user friendly. Instead, introduce PostAction()
to send an action that runs after the coroutine (equivalent to passing
false or the default argument), and leave RunAction as the immediate
execution function.
Before, an improper symbol (one without the starting toekn) weren't
detected and reported to the user properly and would instead assert. Now
properly detect these and pass the error up the stack to the tool.
(Sentry issue KICAD-21J).
When editing or viewing library symbols, the files are watched for
underlying changes. If any occur, the user is either prompted to reload
(if reloading would overwrite their current edits) or the file is
silently updated to the current version on disk.
This also sets a custom assertion handler to avoid unneeded crashes when
recieving invalid SAMBA packets and turns off assertions entirely when
running in release (non-debug) mode
We need to handle both the case where the new symbol is an alias as well
as free the proper memory after loading symbols in the duplicate
Fixes https://gitlab.com/kicad/code/kicad/issues/12578
There is no technical reason for this restriction for non-power symbols, so let's remove it.
This will allow more flexibility and compatibility with other tools.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9389
When double-clicking to open a symbol, it is no longer selected in the
tree. We need to use the `GetTargetLibId()` to pick the correct symbol
(first selected, then current) when using the duplicate command
Fixes https://gitlab.com/kicad/code/kicad/issues/11034
(cherry picked from commit 802d20c409)
Also makes sure the progress dialog is closed when we're done reading
symbols (it used to stay up for much of the symbol editor initialization).
Also makes sure that any cancel in the preLoad step is honoured in the
sync step. (The preload is done because it is multi-threaded and therefore
faster than the single-threaded sync.)
Also makes sure that individual threads pay attention to the cancellation,
not just the GUI thread.
Fixes https://gitlab.com/kicad/code/kicad/issues/8372