Seth Hillbrand
c9fc15b5eb
Clear edited point when exiting tool
...
When leaving the main point editor loop, we need to ensure that the edit
point is cleared as well. This is usually cleared by a ClearEvent call
but in case this is missed, we need to ensure that other tools are not
caught out
Fixes https://gitlab.com/kicad/code/kicad/issues/10288
(cherry picked from commit 9a2332dfcf
)
2022-01-07 08:25:49 -08:00
jean-pierre charras
53770fec68
Ensure thermal spoke widths are smaller than the pad size (fix a regression)
...
This is needed to create good thermal reliefs, and ensure the DRC about
thermal spoke count works.
Fixes #10246
https://gitlab.com/kicad/code/kicad/issues/10246
2022-01-07 16:38:27 +01:00
jean-pierre charras
534d635dd4
DIALOG_DRC: avoid use UNDEFINED_LAYER when select or activate a physical layer.
...
Although strangely it did not create issues on Linux, it does not work on Windows
2022-01-07 12:53:10 +01:00
Seth Hillbrand
5fde992ed4
Forgot to build ninja files
2022-01-06 19:44:45 -08:00
Seth Hillbrand
2e232703bd
Swap make for ninja in Fedora CI
...
Take advantage of extra cores on hetzner machine
2022-01-06 19:41:12 -08:00
Seth Hillbrand
7f81badaa7
Use KiCad builders for Fedora
2022-01-06 19:29:39 -08:00
Seth Hillbrand
ac9693bb8d
Safely sort view layers
...
Changing view order of only some layers can cause overwriting of the
original layer if not pre-staged
Fixes https://gitlab.com/kicad/code/kicad/issues/10283
(cherry picked from commit 3e6bf7814b
)
2022-01-06 14:41:51 -08:00
Seth Hillbrand
fd9d923bb7
Do not call SafeYield on close
...
wxSafeYield() is not "safe". Pending actions may include deletion of
the currently active class. This will cause crashes when exiting. If
needed for specific behaviors, we should use wxSafeYieldFor( flag ) with
the appropriate events specified rather than a general yield which can
cause more problems
(cherry picked from commit 9864337914
)
2022-01-06 12:36:51 -08:00
Seth Hillbrand
4f874057ab
DRC scripting: load project from board if possible
...
s_SettingsManager is not always initialized when the WriteDRCReport is
run. We should first attempt to extract the project from the actual
board being checked. Failing that, we fall back to the static settings manager and then exit if we don't have a project associated.
Fixes https://gitlab.com/kicad/code/kicad/issues/10221
(cherry picked from commit 78e737b9d8
)
2022-01-06 11:51:05 -08:00
Brian Mayton
e4f73c8dc9
Add ORANGE to DXF output
...
Matches the schematic color options to DXF layers
Fixes https://gitlab.com/kicad/code/kicad/issues/10281
Signed-off-by: Seth Hillbrand <seth@kipro-pcb.com>
(cherry picked from commit d014f0307b
)
2022-01-06 11:06:31 -08:00
Seth Hillbrand
3a730361d3
Fix swap interval checking
...
Checking for the existence of the call only validated that our header
defined the value, not that the video card/driver supported the call.
We query the extensions string directly to check for support. This
should fix both the X11 and virtualization issues (potentially other
crashes with older video cards as well)
Fixes https://gitlab.com/kicad/code/kicad/issues/8944
(cherry picked from commit 7c9340f855
)
2022-01-06 10:53:44 -08:00
jean-pierre charras
e00e9ff41f
PANEL_TEMPLATE_FIELDNAMES: fix incorrect management of boolean options
...
(it was impossible to disable them)
Fixes #10280
https://gitlab.com/kicad/code/kicad/issues/10280
2022-01-06 19:00:52 +01:00
Seth Hillbrand
3ff87858de
Prevent cvpcb from losing text focus on filter
...
Refresh event changes focus (on GTK). We fix this by storing the
existing insertion point in the text box, refocusing and restoring the
text position
Fixes https://gitlab.com/kicad/code/kicad/issues/10029
(cherry picked from commit 05d3dc533b
)
2022-01-06 09:17:02 -08:00
jean-pierre charras
0f0a540a65
Panel 3D previewer: for show 3D body shapes, regardless the 3D viewer itself.
...
the Panel 3D previewer is made to show 3D body shapes, so do not show them
when disabled in the board 3D viewer, is really stupid.
2022-01-06 12:04:28 +01:00
jean-pierre charras
bf5cdec743
QA test code: fix some issues:
...
- in python tests force the "C" locale is in use (remove wx alerts in some locales)
- disable some new DRC tests that are irrelevant in QA tests and create false positives
2022-01-06 09:37:14 +01:00
jean-pierre charras
7fa451dc93
Thermal reliefs: fix incorrect calculation
...
commit eeef655
did not fix the calculations.
2022-01-06 09:00:29 +01:00
Seth Hillbrand
b01715dd22
Fix crash in SVG plot
...
NULL fonts need to be assigned a default.
KSC internal ticket #459
2022-01-05 17:26:18 -08:00
Seth Hillbrand
3ace4446e7
Use 'special' escaping for certain fields
...
Most fields are escaped using the `\` notation. But the VALUE field and
the symbol name need to be escaped using braces notation.
Fixes https://gitlab.com/kicad/code/kicad/issues/10097
(cherry picked from commit 71e7b4b77b
)
2022-01-05 17:19:36 -08:00
Seth Hillbrand
88a8ad2ca1
Keep symbol synced with edit tool
...
Undo/Redo can change the symbol referenced by the symbol drawing tool.
This updates the current symbol before important steps to keep the
system synced
Fixes https://gitlab.com/kicad/code/kicad/issues/10125
(cherry picked from commit b8a7a66a0a
)
2022-01-05 16:52:02 -08:00
Seth Hillbrand
5a8b0921eb
Don't remove last point in libedit
...
SHAPE_LINE_CHAIN in libedit doesn't make a polygon, so we always need
the last point and it shouldn't be closed
Fixes https://gitlab.com/kicad/code/kicad/issues/9934
(cherry picked from commit 55087a9e82
)
2022-01-05 16:06:38 -08:00
Seth Hillbrand
c340760eaa
Prevent unneeded fallback
...
Starting in be8327bd54
, we assume that all
exceptions in DoRePaint() are caused by OpenGL. But many calls in
UpdateItems() will throw if there are internal errors such as
std::out_of_range. Here, we catch those errors and simply skip ahead
rather than falling back to Cairo
(cherry picked from commit 444801ada6
)
2022-01-05 13:47:43 -08:00
Steffen Mauch
3ced3afa68
eeschema: automatic generated symbol library from EAGLE plugin does not include footprint reference
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10262
2022-01-05 19:48:40 +00:00
Seth Hillbrand
e4961cb956
Update pin cache when undoing
...
The pin cache is invalidated by swap, so we need to ensure that it is
reset when we undo a change to the pins in schematic editor
Fixes https://gitlab.com/kicad/code/kicad/issues/10272
(cherry picked from commit 7f1648934f
)
2022-01-05 11:33:35 -08:00
Ian McInerney
bd828f598c
Fix compile error with UTF8 unicode wxWidgets build
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10210
2022-01-05 19:23:30 +00:00
Steffen Mauch
502e34349e
eeschema: EAGLE plugin does not reference footprint with library suffix
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10261
2022-01-05 19:14:27 +00:00
Seth Hillbrand
30549a5e6a
Don't strip extensions twice in BOM export
...
Exporting the Bill of Materials uses the netlist exporter. Both of
these routines were stripping the extension, leading to projects like
"test.project.kicad_pro" having the project name stripped. We separate
the BOM netlist export from generic plugin netlist export to allow the
correct behavior when exporting netlists and generating BOMs
Fixes https://gitlab.com/kicad/code/kicad/issues/10270
(cherry picked from commit bef762e652
)
2022-01-05 11:07:49 -08:00
Seth Hillbrand
9ca41cc8ee
Set readable flags correctly on open
...
Missing files may be thrown during open. These should have existence
and readable flags set correctly
(cherry picked from commit a05ec04ee8
)
2022-01-05 09:55:51 -08:00
jean-pierre charras
cd0ac9e698
eeschema, DIALOG_FIELD_PROPERTIES: fix a few issues.
...
(incorrect handling of H and V justify bitmap buttons
Fixes #10267
https://gitlab.com/kicad/code/kicad/issues/10267
2022-01-05 17:25:18 +01:00
Steffen Mauch
82f147ecef
pcbnew: EAGLE plugin is case sensitive to >VALUE / >NAME
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10253
2022-01-05 12:51:02 +00:00
Steffen Mauch
a5307c6f59
pcbnew: fixing eagle_plugin with empty class names
...
Fixes #10229
https://gitlab.com/kicad/code/kicad/issues/10229
2022-01-05 12:19:53 +00:00
jean-pierre charras
eeef65533a
Pad Thermal Reliefs: fix spoke incorrect angle for rotated pads.
...
Fixes #10251
https://gitlab.com/kicad/code/kicad/issues/10251
2022-01-05 11:19:43 +01:00
jean-pierre charras
c8d6ad0714
Pcbnew, dimensions fix params incorrectly saved for ortho dim
...
Fixes #10254
https://gitlab.com/kicad/code/kicad/issues/10254
2022-01-05 10:57:32 +01:00
Seth Hillbrand
b0fddef9b4
Don't rename existing schematic file
...
We should never leave a situation where the schematic file may no longer
exist (if the first rename succeeds and the second fails). So, make a
backup copy of the original schematic file and then attempt to rename
the autosave over the first file. In this case, if either attempt
fails, we do not lose the original file
Fixes https://gitlab.com/kicad/code/kicad/issues/10074
Fixes https://gitlab.com/kicad/code/kicad/issues/10256
Fixes https://gitlab.com/kicad/code/kicad/issues/10219
(cherry picked from commit b1658fdf9a
)
2022-01-04 20:28:21 -08:00
Marek Roszko
cc5003a919
Update python for the pad wxSize switch
2022-01-04 23:28:06 -05:00
Marek Roszko
6d2fd17a39
Remove a wxPoint dependence in trigo
2022-01-04 23:23:36 -05:00
Jon Evans
bf38cb56b7
Handle footprint shapes in polygon creation
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10259
(cherry picked from commit f9d8ec6137
)
2022-01-04 21:31:47 -05:00
Jon Evans
4be56825bb
Fix creating polygons from footprint rule areas
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10257
(cherry picked from commit e9b91b6fab
)
2022-01-04 21:31:40 -05:00
Marek Roszko
d7e790b6c1
Remove wx/gdicmn.h from trigo.h
2022-01-04 21:26:04 -05:00
Marek Roszko
726d873c53
Tear down the wxPoint trigo helpers
2022-01-04 21:23:11 -05:00
Marek Roszko
e4dbfcd92d
Swap out some wxSize for VECTOR2I
2022-01-04 20:42:27 -05:00
Marek Roszko
98ee6c5f85
Cleanup some wx/gdicmn.h includes
2022-01-04 20:32:27 -05:00
Marek Roszko
5d3609b20b
Nix the deprecated binary/unary base class that aren't actually needed
...
The std::unordered_map custom function objects here don't require inheritance from the deprecated base
2022-01-04 18:58:42 -05:00
Seth Hillbrand
e6b5cb3a5c
Fix missing FOOTPRINT cast in swig
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10236
(cherry picked from commit ca8cf14dff
)
2022-01-04 11:09:51 -08:00
Seth Hillbrand
dda569d486
Don't split legacy paths
...
The '.' is a valid character in the legacy preferences, not a separator.
Also adds fail-safe catch for JSON throws
Fixes https://gitlab.com/kicad/code/kicad/issues/10211
(cherry picked from commit a326d777f0
)
2022-01-04 11:09:40 -08:00
Thomas Pointhuber
de39bffd90
altium: Fix board outline import with arcs using SHAPE_LINE_CHAIN instead of a hack
2022-01-04 19:10:33 +01:00
jean-pierre charras
2bfff9d4ce
Fix crash when trying tp draw a text with over-bar.
...
(missing initialization of a pointer)
Fixes #10252
https://gitlab.com/kicad/code/kicad/issues/10252
2022-01-04 18:18:34 +01:00
jean-pierre charras
a09741597f
qa test: allows epsilon (1 unit) to compare 2 coordinates
...
It avoids false qa errors (false positive) when comparing coordinates after transform
2022-01-04 16:38:31 +01:00
jean-pierre charras
c2b54faceb
CvPcb: fix crash due to a null pointer: pcbconfig() can return null.
...
CvPcb has no config option and pcbconfig() returns nullptr.
In this case use default settings.
Fixes #10250
https://gitlab.com/kicad/code/kicad/issues/10250
2022-01-04 14:51:32 +01:00
Mark Roszko
0d64fdc5c7
Put back original expected segment data for unit test
2022-01-04 13:42:08 +00:00
Jeff Young
cbd665db7b
Remove markup_parser from headers so PEGTL doesn't leak windows.h.
2022-01-04 12:20:18 +00:00