Jeff Young
14a55facf2
Clearer naming and commenting.
...
Also some const& hygiene and some formatting.
2024-06-25 11:07:14 +01:00
Kuba Sunderland-Ober
8f02944437
Optimize the newstroke font representation
...
Remove redundant strokes that start where the last stroke ended.
2024-06-24 19:44:06 +00:00
Jeff Young
080cbbe0dd
Error reporting for drawing sheet loading.
2024-06-24 20:22:29 +01:00
Jeff Young
26b86b3922
Don't use wxLogMessage/wxLogError for messages not meant for user.
...
They are particularly damaging when our event loop
gets tied up in knots with the log message window
behind a modal window -- thereby locking up KiCad.
2024-06-24 20:22:29 +01:00
Seth Hillbrand
11c6164934
Silence font replace warnings for libs
...
When loading schematics/pcbs, notification of font replacements might be
warranted but in libraries, this warning is not helpful and intrusive
2024-06-24 09:55:10 -07:00
Jeff Young
92c8ddfddb
Prefer infobar to logged warnings/messages.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18242
2024-06-24 16:26:40 +01:00
Jeff Young
5fba8289aa
Formatting.
2024-06-22 23:54:57 +01:00
Alex Shvartzkop
1613816e77
Fix EasyEDA/JLCEDA Pro 2.2 footprint/symbol library import.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18250
2024-06-21 22:20:54 +03:00
Alex Shvartzkop
84091b163e
Fix warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
2024-06-21 21:31:14 +03:00
Jeff Young
c549a214c9
Performance: don't alloc std::vector in critical areas.
...
For some history, see also aa2ad3b44c
2024-06-21 19:07:46 +01:00
Wayne Stambaugh
b494166b10
Fix empty label names when importing Eagle schematic.
2024-06-21 12:07:06 -04:00
Alex Shvartzkop
ece46223c9
Fix shadowed/conflicting enum values.
2024-06-21 16:16:29 +03:00
Marek Roszko
acec5552c0
Don't use message as part of the assert dedup
...
kimath overflow can generate thousands of unique messages in one run lolol
2024-06-21 07:19:53 -04:00
Wayne Stambaugh
8df28d4f5f
Fix crash in symbol editor when importing Eagle symbol library.
...
https://gitlab.com/kicad/code/kicad/-/issues/18221
2024-06-21 01:07:01 -04:00
Wayne Stambaugh
3df2109c43
Fix issues with the new Eagle schematic parser.
2024-06-20 23:07:59 -04:00
Alex Shvartzkop
7eb600e5a6
Fix typo.
2024-06-20 15:47:36 +03:00
Alex Shvartzkop
386651153b
Improve EDA_ITEM memory layout slightly.
2024-06-20 15:33:56 +03:00
Alex Shvartzkop
b143ffb797
Reduce KIID size from 20 to 16 bytes.
...
Removes separate legacy timestamp value.
2024-06-20 13:59:15 +03:00
Jeff Young
31ab276aaf
Ease-of-use for un-commented ERC/DRC exclusions.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18220
2024-06-19 17:07:50 +01:00
Seth Hillbrand
bf68b11ff9
Cleanup unused vars
2024-06-18 21:35:32 -07:00
Seth Hillbrand
bcf6b620a8
Large rework of BEZIER_POLY
...
Add direct handling of quadratic beziers to save compute time and number
of points. Update cubic interpolation to reduce number of points
generated for a given smoothness
Cache data on open and used cached data to avoid multiple re-calcs
Remove minimum line length and number of segments and replace with
standard max error level. Allows us to specify the tolerance of bezier
interpolation
2024-06-18 17:55:41 -07:00
dsa-t
c5056beeb3
Fix crash in wxSocketBase when the event handler has been destroyed.
...
Fixes KICAD-37B
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18234
(cherry picked from commit ebdfeb4c0a
)
Co-authored-by: Alex Shvartzkop <dudesuchamazing@gmail.com>
2024-06-18 21:50:18 +00:00
Jon Evans
02502342a5
Try harder to keep searchable text hidden in SVG exports
2024-06-18 12:01:15 -04:00
Seth Hillbrand
5c699e3c1e
Handle not found fonts reliably
...
Check if the font isn't found when selecting (we seem to always have a
selection even if we fail on GTK) and properly set the index of the
final <not found> font name
2024-06-16 17:20:58 -07:00
jean-pierre charras
16e708a0e7
Fix minor compil and Coverity warnings.
2024-06-15 11:20:21 +02:00
Seth Hillbrand
9f4dfe77cb
Freeze the adapter to avoid invalid deref
...
GTK tries to get the parent item of selected elements when unselecting.
If we don't freeze, we run the risk of crashing if a selected item is
removed before being unselected. This causes a wx warning but a) this
is suppressed in release and b) warning message is better than crash.
See next commit for fix to avoid common case of the error
2024-06-14 16:49:56 -07:00
Jeff Young
0f8d543172
Consistent capitalization.
2024-06-14 22:02:08 +01:00
Jeff Young
7fef6e8d83
Use view's RTree for redrawing netnames.
2024-06-14 00:20:37 +01:00
Jeff Young
0ca7a81181
Deferred redraw for netnames.
2024-06-12 17:20:20 +01:00
Jeff Young
b7161181e8
Hidden footprint libraries are not yet supported.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18183
2024-06-12 16:59:20 +01:00
Alex Shvartzkop
73a3b880a6
Slightly optimize GPU_CACHED_MANAGER::DrawIndices.
2024-06-12 16:04:47 +03:00
Jeff Young
694a7db457
Performance improvements.
...
Don't construct a wxString or a LSEQ when you don't
have to. They're both more expensive than you might
think.
2024-06-12 11:06:10 +01:00
Jon Evans
4aab9f59aa
ADDED: Support tenting control of individual vias
...
REMOVED: Tenting option from plot dialog (tenting is now
controlled from Board Setup and via properties)
See https://gitlab.com/kicad/code/kicad/-/issues/2402
2024-06-11 21:25:02 -04:00
Seth Hillbrand
439c25fca9
Altium schematic parser: Add fraction pin placement
...
In the schematic libaries, pin positions that are off 10mil spacing need
fractional elements stored in a different location
2024-06-10 15:02:18 -07:00
Alex Shvartzkop
d40bbed591
Cairo GAL: improve alignment between arcs and segments and of odd-width lines.
...
(cherry picked from commit f60b76696a
)
2024-06-10 21:26:17 +03:00
Wayne Stambaugh
5e048bc64c
Fix several Eagle schematic import issues.
...
Fix broken arc angle polarity due to library symbol changes.
Fix broken wire and text Y axis coordinate polarity due to library symbol
changes.
Fix broken field visibility and position on library symbols with multiple
units that have fields with different visibility and positions. Because
KiCad does not support this, when parsing the Eagle schematic file, the
last library symbol unit parsed ends up being the field visibility and
position for all units in the symbol.
2024-06-10 11:28:20 -04:00
Wayne Stambaugh
889931505b
Eagle schematic importer improvements.
...
Change Eagle file importer to use a two pass import. The first pass
parses the entire Eagle file into an associated E* object. The second
pass converts the parsed E* objects into the appropriate KiCad objects.
Improve handling of Eagle versioned libraries.
Add helpers to IO_BASE to ease handling of PROGRESS_REPORTER and REPORTER
objects.
ADDED: Support for importing Eagle schematic modules.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1813
2024-06-10 11:28:20 -04:00
Jon Evans
74517856ca
Make touchscreen events Windows-only
...
They break things on macOS and probably also on GTK
according to the wxWidgets documentation.
2024-06-09 13:18:32 -04:00
Alex Shvartzkop
7bca6cdea7
Make crosshair follow view movement when using pan/zoom gestures.
2024-06-09 18:46:42 +03:00
jean-pierre charras
b20a32f2fd
bitmap_info.xxx: add comments to try to avoid issues like 8b1e971f
...
No actual code change
2024-06-08 20:18:11 +02:00
Alex Shvartzkop
4b96bb5d8f
Support touchscreen gestures (zoom/pan/rotate) in 3D viewer.
...
Though rotate doesn't work yet on MSW due to a wxWidgets bug.
2024-06-08 21:13:16 +03:00
Jeff Young
ed0869aa0c
Share more library tree code.
2024-06-08 19:06:10 +01:00
Alex Shvartzkop
832393b07c
Remove debug line.
2024-06-08 17:25:49 +03:00
Alex Shvartzkop
8f8a68229c
Handle touchscreen gesture events for zoom/pan.
2024-06-08 16:00:34 +03:00
Alex Shvartzkop
8e90063258
Support hidpi in Cairo GAL canvas; performance improvements.
...
We now draw onto wxBitmap directly, reducing the amount of copying.
Also moves the bitmap blit into paint event handler.
Modifies ClearScreen to work universally between Cairo/OpenGL backends.
2024-06-08 12:51:27 +03:00
jean-pierre charras
dc6b211227
better tool tips
2024-06-07 11:19:56 +02:00
jean-pierre charras
8b1e971f29
bitmap_info.cpp: fix a crash when opening the simulator frame.
...
It was due to missing bitmaps, used in simulator frame horizontal toolbar.
They were removed probably by mistake in commit 0e66adbc
2024-06-07 11:13:58 +02:00
Jon Evans
10922a194c
Remove extraneous cache fill per row
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18159
(cherry picked from commit 64da49f22e
)
Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-06-05 16:08:45 +00:00
dsa-t
34f0fb8f21
Revert "Don't reset the view controls state just because we are setting the already active tool state again"
...
This reverts commit e914c0c1a0
(cherry picked from commit 6b7b6fa3e3
)
Co-authored-by: Mark Roszko <mark.roszko@gmail.com>
2024-06-04 18:03:41 +00:00
dsa-t
ca18112041
Fix ellipse angles when importing DXF.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/18121
(cherry picked from commit 044a2305e3
)
Co-authored-by: Alex Shvartzkop <dudesuchamazing@gmail.com>
2024-06-04 04:19:51 +00:00