Jeff Young
508df402f6
Cleanup.
2022-08-19 18:54:19 +01:00
jean-pierre charras
e0fbe2542f
Fix a few compil and Coverity warnings.
2022-08-19 10:53:29 +02:00
Seth Hillbrand
5ed7e28252
Remove KICAD_OCC build option
...
We don't really support builds without OCC these days. Removing to
clear up build flags and settings
2022-08-18 17:06:29 -07:00
qu1ck
f4fa3b02c5
PCM: automatic check for repository updates
2022-08-18 20:41:43 +00:00
Seth Hillbrand
97d7ee1f30
Remove `/` from our forbidden LIB_ID list
...
It is still forbidden from footprint file names but that is handled
separately and it should not be forbidden in symbol files at all
2022-08-18 12:49:40 -07:00
jean-pierre charras
afacec3acb
Protect RC_TREE_MODEL::GetValue() against null pointer
2022-08-18 10:14:02 +02:00
Marek Roszko
19e27ef587
Avoid missing null check in RC_TREE_MODEL::DeleteItems
2022-08-17 07:12:26 -04:00
Alex
371f6d917f
Use VECTOR2I::extended_type instead of long, and int for numeric limits.
2022-08-16 12:08:55 +00:00
Alex
6d739ca9da
Improve handling of long distances
2022-08-16 12:08:55 +00:00
Marek Roszko
d33830e570
Switch sentry to commit hash for kicad nightly releases
2022-08-15 20:57:44 -04:00
Marek Roszko
2ee6f67892
Handle leading whitespace with std::from_chars
...
Testing the parsers, this doesn't generally happen but there was a comment about it before the changes
2022-08-15 19:30:43 -04:00
Marek Roszko
e4ba1d4879
Remove unused string helper
2022-08-15 19:12:45 -04:00
Jeff Young
a3dc38cb32
Update schema versions so we can patch bad data from earlier bug.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12180
2022-08-15 23:48:38 +01:00
Jeff Young
e015f5b086
Formatting.
2022-08-15 23:48:38 +01:00
Seth Hillbrand
34a5a32a52
Prevent GTK from zero-ing out column size
...
Related to https://gitlab.com/kicad/code/kicad/-/issues/12180
2022-08-15 14:24:02 -07:00
Wayne Stambaugh
7155d1af29
Fix a few more compile warnings.
2022-08-15 15:15:35 -04:00
Seth Hillbrand
759e1a64ef
Fix broken const ref in wildcard
2022-08-15 12:09:30 -07:00
Seth Hillbrand
35ac39844f
Clean up some auto usage
...
Don't make new copies of shared_ptr if we can use references. Keep auto
usage down to hard-to-type-out sequences
2022-08-15 11:29:45 -07:00
Jeff Young
1f347582f8
Introduce new marker type so we can track DRC errors on the drawing sheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12221
2022-08-15 18:03:03 +01:00
Seth Hillbrand
4b3ac52b1d
Fix shadowed variables
2022-08-15 08:03:30 -07:00
Wayne Stambaugh
898ec0d094
Fix wxWidgets 3.1 and later deprecated build warnings.
...
wxWidgets 3.1 has deprecated wxPATH_NORM_ALL when normalizing file
paths when calling wxFileName::Normalize(). This change keeps the
existing behavior except in places where our own internal
ExpandEnvVarSubstitutions() to expand environment variables.
2022-08-15 08:00:40 -04:00
Jon Evans
6365a37042
Add {fmt} library
2022-08-14 22:49:55 -04:00
Marek Roszko
c418b25756
Centralize the parseDouble functions in the parsers and gcc specialcase
2022-08-14 18:46:19 -04:00
Jeff Young
84138d5039
Fix bug adding netclass in Eeschema.
2022-08-14 23:26:40 +01:00
Jeff Young
86938aa425
Read, write and process the board-wide Allow soldermask bridges in FPs.
2022-08-14 22:56:29 +01:00
Jeff Young
a9536b5de9
CHANGED netclass assignments now done via canvas or via patterns.
2022-08-14 22:56:29 +01:00
Jeff Young
18ac169ac7
Add contexts to EDA_COMBINED_MATCHER.
2022-08-14 22:56:29 +01:00
Marek Roszko
4472435380
Fix broken constructor
2022-08-14 12:57:22 -04:00
Marek Roszko
a070959209
Switch from strtod to std::from_chars for performance
2022-08-14 16:19:24 +00:00
Marek Roszko
90a62d8b02
Use fgetc directly under msvc in richio
...
getc is a real function instead of macro like under gcc implementations. This adds a tiny cost of calls.
2022-08-14 16:19:24 +00:00
Marek Roszko
fd6564cc82
Allow KIID to directly take in std::string
...
Reduces multibyte conversion banging on library load. uuids already are ASCII by their nature and the logic checks that or else it generates a new kiid.
2022-08-14 16:19:24 +00:00
Forrest Voight
bbc0c61ccb
kiid.cpp: Fix Boost version incompatibility and use of boost::*::detail
...
Fix compile with Boost 1.65.1 (and possibly some or all of the 1.59-1.66
range); remove dependence on private boost::*::detail members.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12175
Comment tweaks by Mark Roszko @mroszko
2022-08-11 19:42:07 +00:00
jean-pierre charras
39de92bba2
DIALOG_COLOR_PICKER: fix an issue in DC.SetDeviceOrigin() due to changes in wxWidgets.
...
DC.SetDeviceOrigin() behavior has changed in version 3.1.7 (or 3.1.6), and the settings
needs a small change.
Fixes #12204
https://gitlab.com/kicad/code/kicad/issues/12204
2022-08-11 10:15:50 +02:00
Mikolaj Wielgus
67d149ca73
QA: Use wxLogError() (not wxLogDebug()) in DisplayError[Message]()
2022-08-09 21:08:48 +02:00
Jeff Young
2e2264cb74
Minor cleanup.
2022-08-09 08:46:12 +01:00
Marek Roszko
f695ae5522
Generate const keyword_hash maps at compile time
...
Or else the map gets pointlessly recreated during footprint loading thousands of times
2022-08-09 00:56:49 -04:00
Jeff Young
a11f48ef10
Markers provider is no longer responsible for all markers.
...
Unconnected items and schematic partity violations are also now
represented by markers, so the ERC/DRC window itself needs to do
the deep-delete.
Fixes https://gitlab.com/kicad/code/kicad/issues/12182
2022-08-08 22:02:20 +01:00
Jeff Young
51b905ba32
Move Configure Paths help inside dialog.
...
This allows us to switch back to a standard modal dialog (instead of
quasi-modal, which has problems with Ctrl-V in a search box inside a
standard file dialog -- such as when picking a path).
Fixes https://gitlab.com/kicad/code/kicad/issues/9473
2022-08-07 11:28:16 +01:00
Jeff Young
5c9aed62aa
Use wxWidgets IDs for cut/copy/paste.
...
This allows them to work in places like search boxes in standard file
dialogs. If wxWidgets doesn't find the standard IDs in our menus
then it won't enable them.
2022-08-07 11:28:16 +01:00
Jeff Young
509d233d97
Fix knockout text bounding boxes and hit testing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12133
2022-08-06 00:00:04 +01:00
jean-pierre charras
d0d19423e0
Eeschema: Try to fix bitmap printing in wx version > 3.1.5
...
We had on a regular basis problems when printing bitmaps.
Probably due to issues in wx and in our code.
2022-08-04 14:25:52 +02:00
Jeff Young
e4b6da287f
Fix errant string format char.
2022-08-03 14:27:56 +01:00
Jeff Young
96f01d33c8
Performance improvements.
...
1) Move a bunch of std::map's to std::unordered_map to get constant-time
look-ups
2) Lengthen progress-reporting intervals to spend more time doing work
and less time talking about it
3) Reverse order of SHAPE_LINE_CHAINs in thermal intersection checks to
make (much) better use of bbox caches
4) Don't re-generate bboxes we already have
5) Fix some autos that weren't by reference (and were therefore copying
large datasets)
6) Rename delta progressDelta so it's easier to search for in future
7) Get rid of a few more autos (because I don't like them)
8) Pass large items to lambdas by reference
Fixes https://gitlab.com/kicad/code/kicad/issues/12130
2022-08-03 11:59:42 +01:00
Jeff Young
0304ad4494
Move connection width testing to rule system.
...
Also copies connection width progress reporting architecture over to
the sliver checker.
2022-08-01 13:09:51 +01:00
Jeff Young
6f49b57f9b
Cleanup & performance enhancements.
2022-08-01 13:09:51 +01:00
jean-pierre charras
d1ff8f4781
PROGRESS_REPORTER_BASE: call code to resize it only if the message has change.
...
In wxWidgets 3.15 (and perhaps older version) the call to GetTextExtent() probably
creates major issues when called too many times, at least oo msys2.
It was probably also time costly.
Calling it and resize the PROGRESS_REPORTER only when needed fixes these serious issues.
Issues happened only when the board has a lot of zones (when teardrops are added)
2022-08-01 13:18:50 +02:00
jean-pierre charras
32551cf1ea
minor coding style fix.
2022-07-31 18:35:37 +02:00
jean-pierre charras
4bfbf91369
3D viewer: Fix incorrect behavior when moving the scene
...
Fixes #12114
https://gitlab.com/kicad/code/kicad/issues/12114
2022-07-30 13:27:25 +02:00
Mikolaj Wielgus
7cf5138c63
Sim: Bugfixes, mostly for MS Windows compilation errors
...
Unfortunately, Windows headers define a lot of macros for common words,
so we had to rename some enums to not collide.
We also fix some of the many bugs related to the new simulation
architecture and the Spice Model Editor dialog.
2022-07-30 02:25:34 +00:00
Marek Roszko
a8505d9c76
SEARCH_RESULT -> INSPECT_RESULT
...
To fix the name squatting it's doing for future functionality
2022-07-29 20:01:10 -04:00
jean-pierre charras
490875e222
Fix a missing call to aEvent.Skip() in commit 753f2f3
.
...
Any wxSizeEvent handler must call Skip() to propagate the event.
2022-07-29 16:46:35 +02:00
jean-pierre charras
905df71977
Fix an issue when printing bitmaps when not on wxWidgets 3.1.6 and 3.1.7
...
Commit 6e35d5473
added a hack to fix an issue on wxWidgets 3.1.6. But this hack
must by applied to 3.1.6 and 3.1.7, not to other versions.
Modify commit 048cf6df
that applied the fix to 3.1.6 only
2022-07-29 13:09:20 +02:00
jean-pierre charras
048cf6df7a
Fix an issue when printing bitmaps when not on wxWidgets 3.1.6
...
Commit 6e35d5473
added a hack to fix an issue on wxWidgets 3.1.6. But this hack
must by applied only to 3.1.6, not to other versions.
Fixes #12108
https://gitlab.com/kicad/code/kicad/issues/12108
2022-07-29 10:26:45 +02:00
Jeff Young
753f2f3e4c
Display descriptions in second column of library trees.
...
Also fixes some bugs in how the columns are sized.
Fixes https://gitlab.com/kicad/code/kicad/issues/12090
2022-07-28 14:51:47 +01:00
Seth Hillbrand
ee8116e55f
Protect against double-refresh
...
The wxtimer can fire multiple times and there exists the possiblity for
this to happen before the flags are properly set to prevent it. This
creates a concurrency mutex to skip the EDA_DRAW_PANEL_GAL refresh if
one is already underway.
Fixes https://gitlab.com/kicad/code/kicad/issues/12094
(cherry picked from commit 39dd51490d
)
2022-07-27 20:28:48 -07:00
Jeff Young
bb43d923af
Save preferences immediately (in case of future crash).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11162
2022-07-27 18:57:45 +01:00
Jeff Young
4a40d94b5a
More hotkey label cleanup.
2022-07-27 12:29:01 +01:00
Jeff Young
6e0d31b812
Improve grid tooltip.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9841
2022-07-27 12:29:01 +01:00
Jeff Young
d9d579c895
Clean strings before displaying in hotkeys list.
...
Also make sure the description column is wide enough.
Fixes https://gitlab.com/kicad/code/kicad/issues/11994
2022-07-27 12:29:01 +01:00
Mike Williams
ece9a782ac
Gerbview: unexceptional exception cleanups
2022-07-26 18:42:55 +00:00
Mike Williams
be7104c24c
Gerber Viewer: gerbview -> Gerber Viewer in Settings
2022-07-26 18:42:55 +00:00
Seth Hillbrand
2245e99a89
Apply Wayne's suggestion for better error recov
...
No need to exit the draw routine on a bad layer, we can skip that layer
and continue processing the valid elements
2022-07-26 11:06:29 -07:00
Jeff Young
c3a5947fe6
Make Scintilla paste a separate undo operation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11756
2022-07-26 18:45:02 +01:00
Seth Hillbrand
008b4f583b
Fix typo in lib_text layer id
...
Also adds CHECK_RET to catch similar errors in the future
Fixes https://gitlab.com/kicad/code/kicad/issues/12078
2022-07-25 17:08:16 -07: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
Jeff Young
e10158ff10
ADDED show pin names on footprint pads when assigning to symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4576
2022-07-24 23:41:41 +01:00
Jeff Young
582c133835
CSV escaping.
2022-07-24 23:41:41 +01:00
Jeff Young
6eada34f41
Use "Cancel" for cancel semantics, even when affirmitave to question.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11983
2022-07-24 08:47:01 +01:00
Jeff Young
74b9ff5865
Don't specify a severity when traversing the filtered list.
2022-07-24 08:41:02 +01:00
Jeff Young
def87c969e
Redo the pinned-libraries storage architecture.
...
1) always use preferences directly
2) allow nicknames from either preferences or project
3) store-after-modify
Fixes https://gitlab.com/kicad/code/kicad/issues/12000
Fixes https://gitlab.com/kicad/code/kicad/issues/11892
2022-07-22 09:31:10 +01:00
Marek Roszko
47fe8ff8eb
bitmaps and template are resources.
2022-07-21 20:14:10 -04:00
luz paz
79fa911e0e
Fix various typos
...
Found via `codespell -q 3 -S *.po,./thirdparty,./Documentation/changelogs -L aactual,acount,aline,alocation,alog,anormal,anumber,aother,apoints,aparent,aray,ba,busses,dout,einstance,leaded,modul,ontext,ot,overide,serie,te,,tesselate,tesselator,tht`
2022-07-21 16:31:41 +00:00
Jeff Young
7386e64923
Attempt to work-around wxWidgets bug with Serbian & Russian locales.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12002
Fixes https://gitlab.com/kicad/code/kicad/issues/11963
2022-07-20 17:52:48 +01:00
Jeff Young
e5a664c6b3
Try a slightly different tack for cancelling net highlighting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12029
2022-07-19 10:31:49 +01:00
Seth Hillbrand
0335df77fa
Ensure global tooltip is created for each app
2022-07-18 17:08:48 -07:00
dsa-t
e2e574c84d
Fix a mistake in EDA_RECT::Intersects.
2022-07-18 18:51:52 +00:00
Jeff Young
b727bfc16d
Performance: avoid sqrt at all costs.
2022-07-16 18:42:32 +01:00
Alex
ebbfc25420
Don't evaluate arguments passed to KI_TRACE if tracing is disabled.
2022-07-16 17:35:22 +00:00
Jeff Young
d0547cbde7
Don't allow 0 line-width for unfilled shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12010
2022-07-16 16:26:05 +01:00
Seth Hillbrand
db4f2d9dd8
Catch some crashes on shutdown
...
These can happen when a tool is active that sends signals when exiting
(e.g. deselectEvent). These may be caught by the active loop in another
tool which might try to update the UI after it has been freed. By
marking all tools as "shutdown", the only event returned to them should
be null. As an extra precaution, we flag the shutdown globally within
the tool manager and check this flag before launching either events or
new tools
Fixes https://gitlab.com/kicad/code/kicad/issues/10698
2022-07-15 16:56:01 -07:00
Seth Hillbrand
b792a3f3f5
Add angle display to line drawing
...
Helpful to see what angle you are at when setting graphic lines
2022-07-15 12:03:11 -07:00
Seth Hillbrand
bed38d2fc8
Stroke, don't fill fonts in preview
...
Fixed new vector-style font display to avoid the non-closed polyline
fills that make it hard to read the proper text
Fixes https://gitlab.com/kicad/code/kicad/issues/11781
2022-07-15 11:58:33 -07:00
Seth Hillbrand
595e5cb3f2
Add sort feature to pre-defined list
...
Board setup rows should be sortable when inserting new elements. They
get sorted when saving, this keeps that representation while editing
Fixes https://gitlab.com/kicad/code/kicad/issues/12015
2022-07-15 11:16:15 -07:00
Seth Hillbrand
9faff78258
Keep the reset text correct
...
Ensures that after setting the initial dialog page, we also set the
proper text in the reset button as the event does not get fired
Fixes https://gitlab.com/kicad/code/kicad/issues/11856
2022-07-14 14:19:09 -07:00
Seth Hillbrand
93fb00d815
Protect the Kiway dereference
...
Also find a few more places where we are reaching into a new frame to
perform actions that need to have dialogs closed.
Running actions should also wait for the next cycle rather than being
immediately executed when we are calling into a new frame. This allow
for the cleanup actions onClose() to happen prior to the next action
starting
Fixes https://gitlab.com/kicad/code/kicad/issues/11891
2022-07-14 11:37:45 -07:00
Mike Williams
d44e34d513
Images: Add full properties editor
...
Converts dialog_image_editor to panel_image_editor. Embeds this panel in
a new properties dialog for the schematic and PCB editors that allows
editing position, layer, locked status, etc. like other items.
2022-07-14 11:23:23 +00:00
Mike Williams
99f8b21ed1
PCB: Add bitmap layer per board layer
2022-07-14 11:23:23 +00:00
Mike Williams
3669cb4673
PCB Editor: Add User Background Images
2022-07-14 11:23:23 +00:00
Mike Williams
cbc3bfbf08
GAL: Re-enable OpenGL bitmap cache
...
Might still have issues, re-enabling for wider test.
2022-07-14 11:23:23 +00:00
Mike Williams
3e80963482
GAL: Delete no-effect target changes
2022-07-14 11:23:23 +00:00
Seth Hillbrand
b5bf1da251
Keep track of blocking windows
...
Allows the calling KiWAY player to send messages to the blocking window
before signaling a separate call
Fixes https://gitlab.com/kicad/code/kicad/issues/11891
Fixes https://gitlab.com/kicad/code/kicad/issues/11772
2022-07-13 19:25:24 -07:00
Seth Hillbrand
86ac77258f
Don't clear our mutex when drawing
...
The (lite) mutex protects DoRePaint() from reentry but this breaks if it
is cleared by a timer.
Fixes https://gitlab.com/kicad/code/kicad/issues/12003
2022-07-12 20:10:46 -07:00
jean-pierre charras
1a5b0d7e39
Rework on bitmap_info.cpp cmake build process.
...
on gcc 12.1 / msys2 the large initialized list in bitmap_info.cpp breaks
the compiler (perhaps a bug in the compiler).
So, as workaround, the initialization sequence is modified.
2022-07-12 16:48:48 +02:00
Jeff Young
57acce9e55
Share more code between selection tools.
2022-07-11 19:04:08 -06:00
Seth Hillbrand
3081023b5e
ADDED: Minimum copper connection width DRC check
...
Checks all copper connections in each net/layer for minimum width
setting.
Fixes https://gitlab.com/kicad/code/kicad/issues/9870
2022-07-11 19:26:56 +00:00
Jeff Young
e122dc38bd
Add context menu item for clearing net highlighting.
...
In selection tools, drawing tools, router tool, line_wire_bus tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/11920
2022-07-10 17:15:20 -06:00
Jeff Young
eb27a3f8b9
Added pinning support to various EDA_LIST_DIALOGs.
...
Footprint Save As, Symbol Save As, etc.
2022-07-09 20:44:49 -06:00
Jeff Young
05219e4d9a
Add pinned library support to Choose Symbol and Choose Footprint.
2022-07-09 20:06:31 -06:00
Jeff Young
190fb23e88
Add pinned library support to Footprint and Symbol Viewers.
...
Also includes adding libraray and symbol filters to Symbol Viewer.
2022-07-09 17:41:10 -06:00
Jeff Young
120c5b9ac1
Reimplement pinning now that we're no longer sorting on score.
2022-07-09 12:26:44 -06:00
Jeff Young
0953395c87
LIB_SHAPE slightly abuses SHAPE_POLY_SET by using it for line chains.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11956
2022-07-08 21:35:40 -06:00
Jeff Young
62cef3d830
Add LAYER_PRIVATE_NOTES for private text & graphics in symbol editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11957
2022-07-08 17:27:05 -06:00
jean-pierre charras
d90a2cc6b5
tread_pool: create it on the heap, because creating it static generate a DTOR issue on mingw.
...
When built with mingw, the tread_pool DTOR is probably called too late, and treads are
not cleaned correctly, and the application hangs on exit.
2022-07-08 19:07:21 +02:00
Marek Roszko
7473528cf4
Ensure user paths are created early
...
Fix #11962
2022-07-05 20:47:53 -04:00
Mike Williams
193248e202
Hotkeys: show user config for unloaded KiFACEs
...
Otherwise, only the default hotkeys will be listed.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10687
2022-07-05 13:37:45 +00:00
jean-pierre charras
16667717a2
Pcbnew, printing in B&W: never draw the background color.
...
Otherwise a black background is printed.
Fixes #11625
https://gitlab.com/kicad/code/kicad/issues/11625
2022-07-04 12:00:44 +02:00
Seth Hillbrand
907d8fc018
Revert "Fix Swatch sizes"
...
This reverts commit 25c3a4681f
.
Windows default sizes are too big when they are the correct size on
Linux. We need the DU scaling for swatches
2022-07-01 11:37:55 -07:00
Seth Hillbrand
25c3a4681f
Fix Swatch sizes
...
The swatches are surrounded by non-scaling icons. We should not scale
the swatches unless we also scale the icons. This patch makes all
elements in the appearance panel equally non-scaling
This relates to https://gitlab.com/kicad/code/kicad/-/issues/11880
2022-07-01 10:56:13 -07:00
jean-pierre charras
1598ce762b
bitmap_info.h: move g_BitmapInfo initialization to bitmap_info.cpp.
...
The main purpose is to make changes in g_BitmapInfo more easy.
Although it is automatically generated, it is sometime more easy to modify
it by hand (the recreation of bitmaps stuff is time consumming), especially
during testing.
2022-06-30 13:00:37 +02:00
Jeff Young
b512d64148
Naming conventions.
2022-06-29 07:34:46 -06:00
Jeff Young
dbbdc9d2e6
Don't rely on the penWidth already being set when setting the dash style.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11908
2022-06-29 07:34:45 -06:00
Mike Williams
64b89639cf
PCB Editor: Make Ctrl-Click net highlighting configurable
...
Defaults to ctrl-click is exclusive or selection like other
applications. Footprint editor can only be exclusive or.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/10810
2022-06-28 16:29:14 +00:00
Seth Hillbrand
89eeba3312
Correct WX check for DPI handler calls
2022-06-27 13:34:39 -07:00
jean-pierre charras
4be4c5f4a1
Avoid compil warning (when possible) about deprecated GetArchName() in wx >=3.1.5.
...
Use GetArchName() in wx >= 3.1.6.
2022-06-25 11:25:45 +02:00
Seth Hillbrand
03c279ffd4
ADDED: Threadpool
...
Thread pools are long-lasting executors that have close to zero overhead
when launching new jobs. This is advantageous over creating new threads
as we can use this for threading smalling jobs and smaller quanta. It
also avoids the heuristics needed to determine the optimal number of
threads to spawn
2022-06-24 22:59:24 +00:00
Seth Hillbrand
a118f20464
Hide cursor while warping on Wayland
...
Based on https://gitlab.freedesktop.org/xorg/xserver/-/issues/734 we
hide the window cursor prior to warping, which allows XWayland to
reposition the cursor. This is only performed when Wayland is detected;
all other configurations call the standard warp routine
Fixes https://gitlab.com/kicad/code/kicad/issues/9785
2022-06-24 09:56:43 -07:00
Seth Hillbrand
7b9dc1b9f0
Fix Eeschema Arc plotting
...
The start/end point plotting is not reliable for eeschema. We need to
preconvert to angles to get the correct winding as the default plotter
conversion in the PLOTTER class makes pcbnew-based assumptions
Fixes https://gitlab.com/kicad/code/kicad/issues/11885
2022-06-22 16:46:28 -07:00
Seth Hillbrand
a852286eb5
Cleanup compile warnings
2022-06-21 17:04:56 -07:00
Fabien Corona
976670e987
Move 3D controls to a new class
2022-06-21 23:38:22 +00:00
Miklós Márton
f2382a7bd1
Add Make selected active/inactive actions to the symbol libraries
...
context menu
Fixes #11372
2022-06-21 23:32:02 +00:00
Seth Hillbrand
67d9729311
Treat all units equally when converting to string
...
Excessive trucation in mils can lead to data loss when round-tripping
values. Better to keep decimal count consistent between units
Fixes https://gitlab.com/kicad/code/kicad/issues/11878
2022-06-21 15:21:57 -07:00
Zoltan Puskas
1c04eb6d0e
Fix -Wuninitialized warning in tool manager
...
Fixes #11866
https://gitlab.com/kicad/code/kicad/-/issues/11866
2022-06-20 22:40:42 +00:00
Jeff Young
231ac567b8
Bug fixes for printing vias.
...
Blind/buried and microvias didn't get their layers trimmed properly,
nor did through vias with dropped pads.
Fixes https://gitlab.com/kicad/code/kicad/issues/11851
2022-06-19 11:58:21 +01:00
jean-pierre charras
6f05bb9a83
EDA_TEXT::printOneLineOfText(): fix incorrect line thickness calculation.
...
(It was not the same as the one used to draw texts)
Fixes #11849
https://gitlab.com/kicad/code/kicad/issues/11849
2022-06-18 09:31:14 +02:00
Jeff Young
97b0005780
More caching for DRC.
...
Also fixes a bug where some physical clearance tests would be run even
if the clearance was 0 (or if the rule was set to IGNORE).
2022-06-17 23:58:31 +01:00
jean-pierre charras
f20cb0fda8
Activate teardrops: remove advanced config option and add teardrop keywords in files. (the ability to read teardrop keywords was added some time ago)
2022-06-17 19:42:27 +02:00
jean-pierre charras
c2707e0c8d
Add some missing icons.
2022-06-17 17:51:19 +02:00
Jeff Young
a7cb985b80
Don't allow PCBNew netclass cols in Eesceham and vice versa.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11804
2022-06-13 21:28:35 +01:00
jean-pierre charras
fa5150b05f
Add bitmaps paste_special to context menu.
2022-06-13 14:40:21 +02:00
Jeff Young
52bc2511cd
Add a radioButton mode to IMAGE_BUTTON.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11797
2022-06-12 20:09:46 +01:00
Jeff Young
f22cf1cc3a
Fill in missing bits of LAYER variable for printing/plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11788
2022-06-10 22:38:01 +01:00
Seth Hillbrand
4790257616
Don't break alphabetical sorting on search
...
When using the "Filter" search for footprints/symbols, the least
surprising outcome is that the window filters the existing
(alphabetically sorted) list but does not change the display order based
on scoring.
This also needs to adjust the fix for
https://gitlab.com/kicad/code/kicad/-/issues/259 as that assumed the
selected element would be the first below the group (not the case if we
are sorting alphabetically)
Fixes https://gitlab.com/kicad/code/kicad/issues/11746
2022-06-10 11:48:47 -07:00
dsa-t
3a76435eda
OpenGL: Use glGetProgramiv instead of the extension function.
2022-06-09 19:37:42 +00:00
Jeff Young
bf71cada4e
ADDED: User viewports for 3D viewer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5724
2022-06-06 22:24:02 +01:00
Jeff Young
244042ce51
Keep footprint selection in Symbol Chooser history list.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1841
2022-06-06 22:24:02 +01:00
jean-pierre charras
9f38fa43cd
Fix some minor compil and Coverity warnings.
2022-06-05 11:44:49 +02:00
Jeff Young
dd2e12bdf1
Formatting.
2022-06-04 22:22:55 +01:00
jean-pierre charras
bb2fc2860a
Pcbnew, physical layer names: never translate them (they are proper noun)
...
physical layer names are not translated in files, but they were translated
in UI. Using these translated names can create issues and misunderstanding for users.
Now physical layer names are seen as proper nouns and are never translated.
Fixes #11715
https://gitlab.com/kicad/code/kicad/issues/11715
2022-06-04 11:02:23 +02:00
Jeff Young
d0023add81
Code clarity.
2022-06-03 23:27:10 +01:00
Roberto Fernandez Bautista
41bf397d24
CADSTAR Schematic: Fix parsing of ATTRCOLORS.
...
Apparently there can be a `INVISIBLE` token. Unclear what it means,
but lets read it anyway
2022-06-03 23:07:12 +02:00
Jeff Young
7ede2c70bd
Performance enhancements for hotkeys.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11592
2022-06-03 00:36:33 +01:00
Mike Williams
857990a883
Hierarchy: turn into a left side pane
...
Drop auto-closing option as well.
2022-06-02 21:56:17 +00:00
Jon Evans
f4372a2de9
UNIT_BINDER should support long long ints
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10870
(cherry picked from commit eb1164fc93
)
2022-05-31 21:54:51 -04:00
Jeff Young
abba1b04bd
Add "Enter Sheet" to Sheet tool (context menu & double-click).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11531
2022-05-30 14:08:26 +01:00
Jeff Young
5cae4cf918
Give zoom tool its own menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11702
2022-05-30 11:44:02 +01:00
Jeff Young
5c3b6980a5
Tooltip for bounding boxes.
2022-05-29 21:30:14 +01:00
Mike Williams
dabd42bbc4
Schematic: Automatic Symbol Annotation
2022-05-27 15:54:00 +00:00
Seth Hillbrand
c0a9a02591
Handle settings sequencing
...
Avoids crash when window close ordering places 3d viewer after the
common settings are closed
2022-05-25 16:56:54 -07:00
Seth Hillbrand
5cd91a952f
Adding Ukranian language option
...
Ukranian translations added via weblate. This enables the menu option
to view them
2022-05-25 16:37:48 -07:00
Mario Luzeiro
ef4f0b49fc
3D-Viewer, raytracing: implement bevel edges on item layers
2022-05-25 00:11:46 +00:00
jean-pierre charras
57e59a4959
Pcbnew, on line DRC when moving footprints: add visible collisions between courtyards
2022-05-20 12:58:05 +02:00
Seth Hillbrand
2da470e1f9
Prevent programatic changes from sending events
...
When setting search history using the CTOR, we need to avoid triggering
an event that will run independent of the user interaction. Our
LIB_TREE interface is fragile on GTK and needs explicit conditions to
avoid segfaults
Fixes https://gitlab.com/kicad/code/kicad/issues/11633
2022-05-19 09:12:15 -07:00
Marek Roszko
417f2f357c
Cleanup naming of shader params/uniforms
2022-05-19 07:49:24 -04:00
Jeff Young
23fb4c7433
Uniformly use a single facility for location-less prime events.
...
Also implements a uniform mechanism for avoiding auto-scroll after
a prime event or dialog which results in a mouse position at the
edge of the canvas.
Fixes https://gitlab.com/kicad/code/kicad/issues/11057
2022-05-16 23:43:00 +01:00
Jeff Young
f2fc78f380
Don't copy modifiers to prime events.
...
The modifiers go with the hotkey, not with the action.
Fixes https://gitlab.com/kicad/code/kicad/issues/11618
2022-05-16 13:51:40 +01:00
Jeff Young
38e5faf21b
Overhaul bitmap text for performance.
...
Also adjusts metrics to better match stroke font.
Also removes text-halo highlighting as it's too expensive to re-render
when the zoom changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/11460
2022-05-14 20:09:54 +01:00
Marek Roszko
6d7835e742
Switch shader storage to char arrays
2022-05-14 11:39:46 -04:00
Marek Roszko
88c7322a0d
EDA_TEXT Get/SetTextSize should use VECTOR2I
2022-05-14 08:16:15 -04:00
jean-pierre charras
5c7a79e287
(WIP) Teardrop: use a specific attribute in .kicad_pcb file to identify teardrops
...
the new attribute is:
"(attr (teardrop type padvia)))" or "(attr (teardrop (type track_end)))"
However (Work in Progress) writing this attribute in file is temporarily disabled.
2022-05-14 09:50:00 +02:00
jean-pierre charras
20d1d0705e
Fix a few issues related to field names and their translation. - Do not use translated field names outside strings displayed in dialogs. - fix code that does not work well with default locale. - fix some (not all) I18n issues in DIALOG_UPDATE_SYMBOL_FIELDS.
2022-05-13 11:45:37 +02:00
Marek Roszko
8288f24264
Move all the shaders to glsl files (and fix the processor more)
2022-05-12 23:37:44 -04:00
Marek Roszko
6188f632b9
Initial implementation of shader translation to cpp at build time
2022-05-12 23:37:44 -04:00
Seth Hillbrand
110728af48
Prevent focus stealing in some Linux WMs
...
OnEnter events will only raise the windows within KiCad rather than
between applications
Fixes https://gitlab.com/kicad/code/kicad/issues/10809
2022-05-12 11:06:30 -07:00
Marek Roszko
abfe944299
Split gal cmake target to a subdirectory
2022-05-11 20:22:22 -04:00
Marek Roszko
f85251ef75
Fix eda_doc not looking for schematic locally
...
It looks like this was overlooked by Jeff in 2020 not realizing eda_doc isn't built under eeschema but common in cc9ac37a0e
2022-05-10 21:28:48 -04:00
Mike Williams
b7a77a9498
Schematic: Add CSV export to Symbol Fields Table
2022-05-09 12:02:12 -04:00
jean-pierre charras
623dc8980f
PS_plotter: fix a minor issue (forgotten in commit 91dfa79a
).
2022-05-09 12:34:25 +02:00
Marek Roszko
ccf235a8c3
Suppress wx3.1.6 assert because it wants the window handle for dpi
2022-05-08 19:26:41 -04:00
Jeff Young
643fa65fc2
Don't allow cut or paste into read-only grids.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11541
2022-05-08 19:06:46 +01:00
Jeff Young
717ea48395
Don't interpred IS_CHANGED as busy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11570
2022-05-06 22:36:30 +01:00
Jeff Young
30ecca464d
Rename mechanical_clearance -> physical_clearance.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11554
2022-05-06 15:54:46 +01:00
jean-pierre charras
ee4e50518f
EDA_LIST_DIALOG: fix a crash due to use after delete data.
...
A list of wxArrayString was used in dialog, but not stored in this dialog.
(and this list was deleted by the caller)
A copy is now stored in dialog.
Fixes #11543
https://gitlab.com/kicad/code/kicad/issues/11543
2022-05-03 17:21:34 +02:00
jean-pierre charras
3ef397b4bd
PDF plotter: fix a not working PDF_PLOTTER::Arc() function.
2022-04-29 10:53:31 +02:00
jean-pierre charras
65cdef0290
Better code.
2022-04-29 10:52:41 +02:00
Marek Roszko
b123f7f35f
Extra sanity to avoid a gal repaint when not initialized
2022-04-28 18:34:44 -04:00
jean-pierre charras
91dfa79a67
Plot pad outlines on Fab files: fix many issues.
...
Depending on plotter type and pad type, the plotted shapes were not always the outlines,
but a outline inside the pad shape (due to legacy reasons).
In many cases the plotted shape was in fact incorrect.
(only noticeable for very small pads)
Now the actual pad outlines are plotted without modification.
Fixes #11484
https://gitlab.com/kicad/code/kicad/issues/11484
2022-04-28 12:42:43 +02:00
Jeff Young
47e002a33d
Add font to status bar for text objects.
2022-04-26 18:52:53 +01:00
Jeff Young
85680886f8
Adjust outline font SCH_TEXT positioning so it better matches SCH_FIELD text.
2022-04-26 12:52:29 +01:00
Jeff Young
662c1ce88f
Improve outline font overbar metrics.
2022-04-26 12:52:29 +01:00
Jeff Young
90bfe2d94b
Remove Save Copy As from fp editor, and rename to Save a Copy elsewhere.
...
It's still used by Eeschema and PCBNew when not in stand-alone mode.
Fixes https://gitlab.com/kicad/code/kicad/issues/9185
2022-04-24 19:46:57 +01:00
Jeff Young
9b6a10fa6a
Fix mirrored overbars.
...
Also fixes a bug that we'd render too many glyphs when some glyphs
were combined. (To test, render "text" in Apple Chancery. The opening
"te" is combined into a ligature after which we render an extra 't' at
the end.
Fixes https://gitlab.com/kicad/code/kicad/issues/11441
2022-04-23 14:21:12 +01:00
Jeff Young
c6f83b6dec
ADDED Duplicate Footprint, Rename Symbol and Rename Footprint.
2022-04-22 22:06:51 +01:00
Jeff Young
fb1e1aec9a
Add tab processing for outline fonts.
2022-04-20 12:00:19 +01:00
Jeff Young
37a2ee7d03
Replace tab processing that got lost in move to new font engine.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11123
2022-04-20 00:06:34 +01:00
Jeff Young
08f15fe587
ADDED New Library functionality to Footprint/Symbol Save As.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2343
2022-04-19 19:55:30 +01:00
Jeff Young
7f4f5f2882
Save and re-load query string in Choose Symbol dialog.
...
While this has been requested on its own, it's primarily done here
because wxWidgets decided to send a SEARCH_CANCEL from a wxSearchCtrl
when hitting <ENTER> if the search control holes the empty string.
This causes us to not do a symbol instert in the Chooser dialog.
Fixes https://gitlab.com/kicad/code/kicad/issues/10169
Fixes https://gitlab.com/kicad/code/kicad/issues/7699
2022-04-17 00:33:56 +01:00
Jeff Young
d01c2a6614
Add PCB_ARCs to type enum.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11384
2022-04-14 17:09:27 +01:00
Jeff Young
739f4d0a1e
Improvements to Eagle dimension importing.
...
1) Import leaders
2) Drop radius and angle dimensions
3) Import dimension text sizes
4) Correctly interpret which side dimension offset is on
5) Correclty handle offsets for non-cardinal dimensions
Fixes https://gitlab.com/kicad/code/kicad/issues/10763
2022-04-12 15:47:39 +01:00
Marek Roszko
392ed5fecd
Add policy to enable/disable pcm
2022-04-12 10:08:34 -04:00
Marek Roszko
f88e0481c8
Change the behavior of ACTION_MENU::Add to require clones if required outside the function
...
This reverts commit 2a5769607f
.
2022-04-11 19:03:01 -04:00
Seth Hillbrand
2a5769607f
Revert "Change the behavior of ACTION_MENU::Add to require clones if required outside the function"
...
This reverts commit 403992a6f4
.
2022-04-11 11:39:03 -07:00
jean-pierre charras
ac8e2d0768
Ensure "Open Recent" and "Clear files" menu titles are updated after language change.
2022-04-11 11:09:05 +02:00
Marek Roszko
403992a6f4
Change the behavior of ACTION_MENU::Add to require clones if required outside the function
...
Fix https://gitlab.com/kicad/code/kicad/-/issues/10994
2022-04-10 22:38:13 -04:00
Marek Roszko
5bb2cdf73d
Revert "Stop leaking submenu items"
...
This reverts commit 34c70a51ea
.
2022-04-10 22:33:43 -04:00
Marek Roszko
34c70a51ea
Stop leaking submenu items
...
Our menu bar code is interestingly complex. But we were throwing away newly made menu items to the void in the cases of constructed on the fly submenus
2022-04-10 22:04:48 -04:00
Jeff Young
c2bf691e56
Don't allow grid dialog to be resized, but do set help text before laying out.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10171
2022-04-10 23:41:46 +01:00
Marek Roszko
fd83e675a2
Don't pointlessly construct a wxBitmap
2022-04-10 07:47:13 -04:00
Marek Roszko
b3c5054d6c
Add initial system policy checking for turning off data collection
2022-04-09 14:05:28 -04:00
Roberto Fernandez Bautista
0015574a60
${SHEETNAME} represents the sheet name + introduce ${SHEETPATH}
...
CHANGED: The text variable ${SHEETNAME} now always represents the name of the
sheet when used anywhere in the schematic editor, including the title block
ADDED: A new text variable ${SHEETPATH} which is replaced with the path to the
current sheet - e.g. "/Sheet 1/Sheet 2".
To ensure backward compatibility, the default drawing sheet now uses
${SHEETPATH}. Custom drawing sheets will need to be manually edited.
2022-04-09 15:45:58 +01:00
jean-pierre charras
1d5be1adeb
Cairo GAL: fix incorrect size and thickness of text drawn by GAL::BitmapText()
2022-04-08 18:40:26 +02:00
jean-pierre charras
6e35d5473e
Fix an issue on wxWidgets 3.1.6 when printing bitmaps
2022-04-08 18:40:25 +02:00
Jeff Young
007906cd16
Fix a degeneracy bug in arc collisions.
...
This also fixes a failure to use the correct effective width for
shapes (which might, for instance, inherit their widths from schematic
defaults, netclasses, etc.).
Fixes https://gitlab.com/kicad/code/kicad/issues/11358
2022-04-08 16:15:58 +01:00
Jeff Young
079d4a603a
Improve transparency handling while plotting.
...
Only SVG can actually handle transparency, but we should at least mimic
the color value of other transparent fills by blending with a (presumed)
white paper.
Fixes https://gitlab.com/kicad/code/kicad/issues/11304
2022-04-08 11:40:53 +01:00
Jeff Young
dead84e7a1
A right-to-left single-char sel followed by typing leaves cursor the same.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11349
2022-04-07 11:51:58 +01:00
Seth Hillbrand
91a3024e34
Check pointer after yield
...
Yielding can change the status of the m_rcItemsProvider, so we need to
check after the yield to ensure we don't try to dereference it after
freeing
Fixes https://gitlab.com/kicad/code/kicad/issues/11347
2022-04-06 15:59:29 -07:00
Jeff Young
68ca385e07
On-the-fly translations for pin electrical types.
...
Also add on-the-fly translation for editor title bars.
Fixes https://gitlab.com/kicad/code/kicad/issues/11324
2022-04-05 13:57:28 +01:00
Wayne Stambaugh
0bdbfe1446
Pcbnew: add plot on all layers feature.
...
ADDED: Any addition board layers can be plotted on all selected board layer
when plotting.
CHANGED: The new plot to all layers feature made the plot edge cuts option
obsolete. Users must now select the edge cuts layer from the list of
plot to all layer selections to include edge cuts on all layers when
plotting.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2449
2022-04-02 14:33:40 -04:00
Mark Roszko
f0f33ef1d3
Introduce sentry for crash data collection
2022-04-02 01:21:55 +00:00
Jeff Young
9402b2aeda
Take fill into account when hit-testing arcs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11305
2022-04-01 22:40:29 +01:00
Seth Hillbrand
49c48e2fe0
Consistently handle env/prj variables
...
User-defined variables cannot be used for internally-reserved variables
Fixes https://gitlab.com/kicad/code/kicad/issues/11232
(cherry picked from commit c23679d9bd
)
2022-03-31 17:05:53 -07:00
Jeff Young
48a70a65b5
Fix a typo and add a missing color definition.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10351
Fixes https://gitlab.com/kicad/code/kicad/issues/10352
2022-03-31 22:10:45 +01:00
markus-bonk
1a9ef4bd0f
Add support for using a SpaceMouse to pan & zoom in the schematic editor.
2022-03-31 19:03:41 +00:00
Jeff Young
e8a543f1ea
Colors for text in PL_Editor and Eeschema.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1952
2022-03-31 19:43:56 +01:00
Jeff Young
659e61355c
Adjust text spacing a bit more so 6.0 boards are more likely to pass DRC.
2022-03-30 16:32:24 +01:00
Jeff Young
4424865577
Make sure spaces at start of line get accounted for.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11276
2022-03-30 16:32:23 +01:00
Wayne Stambaugh
c0d8657d97
Plot on all layers prep work.
...
We only need one bottom to top layer sequence definition.
Plot a sequence of layer IDs (LSEQ) in the order of the sequence.
Add helper method to layer set (LSET) to create a sequence of layer IDs
using another sequence for ordering.
2022-03-29 16:08:23 -04:00
Jeff Young
6a3c5b6e0e
Adjust bottom- and centre-aligned linespacing to better match 6.0.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11269
2022-03-29 19:31:02 +01:00
Marek Roszko
d440ff7c37
Try and ducktape boost api change for seeder
...
idk what im doing
2022-03-27 21:47:47 -04:00
Marek Roszko
7a0d8c2fe0
Remove extra boost include
2022-03-27 21:43:18 -04:00
Jeff Young
1c158a4ea4
Use a standard HTML reporter for Symbol Checker.
2022-03-26 14:22:31 +00:00
Wayne Stambaugh
7da7864f5e
Fix some Coverity issues.
2022-03-25 15:51:05 -04:00
Johannes Maibaum
edc7261099
Fix stock templates path for flatpak
...
Commit ad251b7b
broke the template path
lookup for flatpak via `PATHS::GetStockTemplatesPath()`. Fix this by
using `::GetStockEDALibraryPath()` in all EDA Library related path
lookup functions.
`GetStockEDALibraryPath()` effectively does the same as
`GetStockDataPath()`, but it takes care to check the
`KICAD_LIBRARY_DATA` build config, which is being used by flatpak to
point to the flatpak EDA Library extensions in
`/app/extensions/Library/`.
Closes #11174
2022-03-25 08:15:59 +01:00
Marek Roszko
3f0f846435
Read the boost manual right-side up
2022-03-24 18:13:39 -04:00
Wayne Stambaugh
7b2d9dfc0c
Fix some Coverity uninitialized scalar variable issues.
2022-03-24 13:17:07 -04:00
Jeff Young
92a229eec7
ADDED separate user-defined color for page limits.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5271
2022-03-24 14:11:41 +00:00
Marek Roszko
2e689901fc
Ensure the kiid generator rng is actually uniquely seeded each start
2022-03-23 18:49:51 -04:00
Jeff Young
cf33cfcad1
Round Altium unit conversions to nearest 10nm.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6462
2022-03-22 23:22:44 +00:00
jean-pierre charras
21144481d2
PLOTTER: do not clamp coordinates to an arbitrary value.
...
Previously, coordinates were clamped to +- 60 inches. It makes no sense to
clamp them at plotter level: max cooed depends on the editor (schematic/board...)
Rename MAX_PAGE_SIZE_MILS to MAX_PAGE_SIZE_EESCHEMA_MILS and use it only for Eeschema.
Fixes #11196
https://gitlab.com/kicad/code/kicad/issues/11196
2022-03-22 10:32:36 +01:00
Seth Hillbrand
9722a05820
Attempt to fix the Mac DPI grid mixing
...
When moving windows between monitors on Mac that changes the DPI, we
observe incorrect re-sizing of columns and rows. This attempts to
rectify the situation by avoiding DPI changes for Mac builds.
Fixes https://gitlab.com/kicad/code/kicad/issues/10586
2022-03-22 00:02:05 +00:00
jean-pierre charras
d27d2e0ad9
Pcbnew: fix lost of focus after clicking on a wxChoice in toolbar.
...
After changing track width, via size, grid or zoom from the toolbar, the
canvas has no longer the focus on Windows. So we force the focus after clicking
on these widgets.
Fixes #11103
https://gitlab.com/kicad/code/kicad/issues/11103
2022-03-21 18:10:07 +01:00
Jeff Young
4f62960334
Update message panel from PCB point editor and SCH drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11186
2022-03-21 10:32:36 +00:00
jean-pierre charras
09d8ac7d7c
Zoom wxChoice in horizontal toolbar: display the actual or nearest zoom level.
2022-03-20 18:41:38 +01:00
jean-pierre charras
2bba277c5e
Unit binder: fix hang and DIALOG_WIRE_BUS_PROPERTIES: fix uninitialized variable.
...
The hang can be Windows specific.
2022-03-19 10:22:41 +01:00
Seth Hillbrand
3b6e8464c2
Fix expand variables for built-in
...
Allow falling back to the alternate variable definitions if the built-in
text block variables are not set.
Also push the project into variable resolution when plotting
Fixes https://gitlab.com/kicad/code/kicad/issues/11168
(cherry picked from commit c44d31fcfb
)
2022-03-18 16:47:18 -07:00
Seth Hillbrand
ba4b8bfa69
Prevent WX_PROGRESS_REPORTER from dominating system
...
Raising the window on each updateUI prevents multitasking by stealing
focus from the current window.
2022-03-18 15:50:44 -07:00
Jeff Young
dc39703d0e
Bring pcbnew print dialog in line with plot.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2171
2022-03-18 13:37:20 +00:00
jean-pierre charras
1a493ed9ed
Gerber plotter: fix incorrect handling of arcs in polygons.
...
Fixes #11156
https://gitlab.com/kicad/code/kicad/issues/11156
2022-03-17 12:55:24 +01:00
Jeff Young
ce21da8cbb
Select all when UNIT_BINDER is a token rather than a string.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9757
2022-03-16 14:56:32 +00:00
Jeff Young
4225f92573
Slight improvements to via drawing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8717
2022-03-16 14:56:32 +00:00
Jeff Young
65185f53a1
Rotate fp zones before comparing with library versions.
...
Also includes some performance fixes to not copy around triangulation
data when it's not needed.
Fixes https://gitlab.com/kicad/code/kicad/issues/10143
2022-03-14 15:53:24 +00:00
Marek Roszko
605dd8a580
Don't use wxScreenDC as this returns "a" screen but not "the" screen
...
Windows supports per-monitor and per-app DPI. wxScreenDC is unable to resolve the actual DPI setting since it has no window context.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10681
2022-03-13 23:31:16 -04:00
Marek Roszko
d6c1f52b55
Plant the ability to verify code signing signatures when trying to load kifaces
...
Off by default and intended for use in released builds only
2022-03-12 21:40:47 -05:00
Jeff Young
e03b06927d
Fix rotation problems for knockout fp text, and implement 3D rendering.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11086
2022-03-12 14:17:52 +00:00
Jeff Young
3fddf0414b
A bit of wxT().
2022-03-11 20:52:11 +00: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
Jeff Young
a9eb7a0e28
Make sure LIB_ID escape context allows for formatting constructs.
...
Also make sure that value field is updated from name changes when the
symbol is a power symbol (even if it's from the schematic instead of
the library).
Fixes https://gitlab.com/kicad/code/kicad/issues/11093
2022-03-10 13:46:42 +00:00
jean-pierre charras
016af235db
Pcbnew: add a GAL layer (LAYER_LOCKED_ITEM_SHADOW) to draw markers on locked footprints
2022-03-09 17:54:58 +01:00
jean-pierre charras
e37bb2e0c3
swig: disable a few warnings generated by pcb_shape.i, math.i and version.i
2022-03-09 17:29:29 +01:00
jean-pierre charras
e7f379c31d
Pcbnew, Knockout texts: fix issues seen with rotated texts.
...
Fixes #11085
https://gitlab.com/kicad/code/kicad/issues/11085
2022-03-09 11:22:05 +01:00
Marek Roszko
2df80c6473
Add some more reserves for string funcs
2022-03-08 20:07:55 -05:00
Marek Roszko
ca5049b6bc
Try and reduce memory allocs when (un)escaping strings
2022-03-08 19:36:08 -05:00
Jeff Young
40fd8860fe
Plotting (and some bug fixes) for knockout text.
2022-03-08 18:06:41 +00:00
Jeff Young
293021c58c
ADDED: knockout pcb and fp text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7055
2022-03-08 13:22:20 +00:00
Jeff Young
96f9ea286e
Natural sorting for nets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10534
2022-03-08 13:22:20 +00:00
Jeff Young
bf0f2aa4a8
Adjust bitmap text spacing a bit so it's closer to the stroke font.
...
This helps the text better match the highlighting when it gets small
enough that we switch to the bitmap font for performance.
2022-03-07 20:30:50 +00:00
Ola Rinta-Koski
6196f2bdf0
Version info: report all font libraries
2022-03-07 14:01:37 +00:00
Jeff Young
a8d2dd8dc7
Bitmap text can't yet handle multi-line text.
2022-03-06 16:59:18 +00: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
cd7141fd10
Cache read arc data for stability
...
Arcs can be altered by the process of changing from on-disk
representation to in-memory representation. Saving back to disk without
modifying the arc should not modify the calculated values.
This stores a copy of the on-disk representation that is only used to
save back to disk in the event that the arc is not modified during
editing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10442
2022-03-04 15:20:31 -08:00
Tomasz Wlostowski
7e8f14e738
VIEW_OVERLAY: enforce always on top behaviour through Z ordering
2022-03-03 01:02:00 +01:00
Jeff Young
b55bda8d6f
Font support for drawing sheet editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10306
2022-02-28 18:05:26 +00:00
jean-pierre charras
aa0787f2b4
Gerber plotter: fix broken plot of SHAPE_LINE_CHAIN with arcs.
...
Also simplify SHAPE_T::POLY plot.
Fixes #10989
https://gitlab.com/kicad/code/kicad/issues/10989
2022-02-28 18:10:16 +01:00
Jeff Young
1f16092e29
Infobar warning if symbol loading was cancelled.
...
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
2022-02-27 17:06:08 +00:00
Jeff Young
d299ddbc7e
Cleanup.
2022-02-27 12:05:39 +00:00
Jeff Young
98f4b1d16c
Make gcc (or linux?) happy.
2022-02-26 22:56:10 +00:00
Jeff Young
941d7f94ad
Use safer UTF8 conversion routines to prevent crashes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10982
2022-02-26 19:03:00 +00:00
qu1ck
b06c2585d9
Change GetEffectiveTextShape() to return outline
...
instead of triangulated polygon
2022-02-26 00:55:07 +00:00
Seth Hillbrand
a7ea868282
Avoid overflow in textbox
...
Count() returns unsigned values. Since, we subtract 1 from this value,
if the count is 0, we will underflow the unsigned value, creating an
extremely large value that we multiply by the interline spacing.
(cherry picked from commit d29d981784
)
2022-02-25 11:14:53 -08:00
Jeff Young
107067ad05
On-the-fly translations for Grid and Zoom menus.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10961
2022-02-25 17:36:35 +00:00
Jeff Young
6d8507d44f
Formatting.
2022-02-25 17:36:35 +00:00
Jeff Young
a29968fa91
Make sure bitmap fallback is only used for non-cached text.
...
Also fixes backwards vertical justification for bitmap text.
Fixes https://gitlab.com/kicad/code/kicad/issues/10956
2022-02-24 18:16:45 +00:00
Jeff Young
d465eb6425
ADDED: automatic zone refilling.
...
This is for the out-of-box experience for novice users. It is presumed
that folks with larger more complicated boards will turn it off.
Fixes https://gitlab.com/kicad/code/kicad/issues/6413
2022-02-24 18:16:45 +00:00
Jeff Young
cb16ad7557
Debounce layer visibility buttons and fix issues with FP Editor.
2022-02-23 17:52:08 +00:00
Jeff Young
41f6e634c6
Partially integrate grid snapping with constraints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10941
2022-02-22 22:19:55 +00:00
Marek Roszko
6420bd777f
Sprinkle some wxT
2022-02-21 18:49:36 -05:00
Marek Roszko
0b46c75197
Simplify locale data path setting...
2022-02-21 13:08:29 -05:00
Marek Roszko
ad251b7b8c
Simplify KICAD6_TEMPLATE_DIR default
...
The search_stack method is bugland
Fix https://gitlab.com/kicad/code/kicad/-/issues/10119
2022-02-21 12:22:23 -05:00
Jeff Young
47315864c4
EEschema features need to process ~ for empty string; not EDA_TEXT.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10918
2022-02-20 20:54:06 +00:00
jean-pierre charras
d2cf68bcdd
Plotters: add plot Arcs using EDA_SHAPE or center, start point and end point.
...
It avoid trying to calculate arc angles (start, end or arc angle) that
frequently create issues due to reverse Y axis, plot mirrored and/or
angle normalization with different criteria.
Fixes #10914
https://gitlab.com/kicad/code/kicad/issues/10914
2022-02-20 17:17:20 +01:00
Thomas Pointhuber
8ef7252330
altium: Don't use string concatenation for paths pointing in the compound file
...
* std::vector do not need to be split apart again
* supports backslash in footprint names
2022-02-19 16:46:20 +01:00
Jeff Young
c27ec5cae1
Don't paste into hidden columns.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10168
2022-02-18 17:12:46 +00:00
Jeff Young
9fb3032c77
Fix Mac button-text grid control spacing.
2022-02-17 12:42:10 +00:00
jean-pierre charras
0ed3bba108
Fix a wxWidgets alert
2022-02-17 10:06:19 +01:00
qu1ck
a041492736
SWIG mappings for all shapes
2022-02-16 20:58:52 +00:00
Jeff Young
d9507dbaf4
We handle variable replacements elsewhere.
...
The markup parser needs to ignore them so they get rendered when we're
not doing replacement.
2022-02-15 23:05:22 +00:00
Jeff Young
8e26946567
Don't shrink progress reporter when message changes; only grow.
2022-02-15 19:19:02 +00:00
Jeff Young
d1b8b68c68
No need to partition font glyph triangulation.
2022-02-15 19:19:02 +00:00
Roberto Fernandez Bautista
1b6fe615e5
Don't lock OpenGL context twice
...
Use GAL_DRAWING_CONTEXT as this unlocks the context in its destructor,
so that when an exception is thrown inside the `try` block, it should
automatically unlock before we switch backend.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10840
2022-02-13 21:09:54 +00:00
jean-pierre charras
f8d6dd1efd
Gerbview: fix a long standing issue: negative objects are now correctly printed.
2022-02-12 11:44:34 +01:00
dsa-t
68655540eb
Clamp cursor to limits of coordinates representation
...
Also improves large distance handling.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8846
2022-02-11 16:42:52 +00:00
Werni
946f62d949
Add separate wildcard for OrCAD netlists
2022-02-11 09:24:20 +00:00
Jeff Young
082c6f5bd6
Make sure plotter uses default font when specified.
2022-02-10 20:33:06 +00:00
Jeff Young
ca56de7816
Show DRC overflows in both tab titles and number badges.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10617
2022-02-09 17:04:32 +00:00
Ola Rinta-Koski
44c93e48e9
Markup parser fix: subscript/superscript/overbar handling
2022-02-08 18:50:53 +00:00
Jeff Young
f2440978ec
Fix some issues with ruler drawing.
2022-02-08 15:59:48 +00:00
Jeff Young
3b5474f190
Don't punt on TrueType char thickness; analyze it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10740
2022-02-08 14:10:37 +00:00
Seth Hillbrand
d0d472f39d
Hide icon option when platforms disable
...
Mac and some Linux configs disable menu icons. We shouldn't offer the
option when the system does not support this as it leads to confusion
Fixes https://gitlab.com/kicad/code/kicad/issues/10425
2022-02-07 10:28:07 -08:00
Jeff Young
5ce559176d
Overhaul the font metrics calcs for overbar, italics and bboxes.
2022-02-07 17:36:40 +00:00
jean-pierre charras
2485648a54
Fix typo in a copy/paste and a minor compil warning
2022-02-07 17:32:19 +01:00
jean-pierre charras
bc710e3d97
Rework on commit 6a9607bto fix non printable char codes
2022-02-07 12:37:36 +01:00
jean-pierre charras
a37a7aa1d5
move a misplaced include
2022-02-07 08:22:43 +01:00
Marek Roszko
1f8d101b1d
Fix color4d distance return type
2022-02-06 21:05:44 -05:00
jean-pierre charras
b042e8cc41
outline_decomposer.cpp: fix a typo from commit 0a5ddb8
...
stroke_font.cpp better fix for commit 6a9607b
2022-02-06 18:09:30 +01:00
jean-pierre charras
6a9607b76f
Fix crash when trying to draw a text with non printable chars.
...
Fixes #10772
https://gitlab.com/kicad/code/kicad/issues/10772
2022-02-06 08:34:19 +01:00
Marek Roszko
d9c04da407
Sprinkle in some make_unique
2022-02-05 21:26:36 -05:00
Marek Roszko
0a5ddb8d40
Add some vector reservations
2022-02-05 21:12:29 -05:00
Marek Roszko
41f54349a5
Replace inserts/push_backs with emplace in some spots
2022-02-05 19:53:31 -05:00
Marek Roszko
18eda73f60
Initialize m_face in constructor PVS V730
2022-02-05 11:36:02 -05:00
jean-pierre charras
07e1278c05
fix incorrect calculation EDA_TEXT::GetTextBox() for empty texts.
...
It generates KiROUND alert.
2022-02-04 19:22:33 +01:00
Marek Roszko
ca7840334c
Mark some limits as constexpr
...
gcc doesn't need it and computes during compile regardless, but experimenting in godbolt, both clang and MSVC actually do need it or else it's partially computed at runtime
2022-02-04 07:50:13 -05:00
jean-pierre charras
ac7cbcce61
WX_GRID: highlight the selected cell after selection by tab or arrow keys.
...
Fixes #9290
https://gitlab.com/kicad/code/kicad/issues/9290
2022-02-04 12:36:27 +01:00
Jeff Young
7dadc9d2f0
Fix text bounding boxes.
2022-02-03 23:07:41 +00:00
Jeff Young
b9eb3e9b05
Be more explicit about string conversions.
2022-02-03 23:07:41 +00: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
jean-pierre charras
ff277a36af
EDA_SHAPE::MakeEffectiveShapes(): protect against empty polygons.
...
Fixes #10713
https://gitlab.com/kicad/code/kicad/issues/10713
2022-02-02 20:40:54 +01:00
Jeff Young
0634cf261a
Don't try to move bounding box caches.
2022-02-01 21:55:09 +00:00
Seth Hillbrand
098e8f7d9b
Revert "cmake: adding KICAD_MACOSX_APP_BUNDLE option"
...
This reverts commit ea9f960cc1
.
Reverted for updates as this currently breaks kicad-mac-builder
2022-01-31 15:57:56 -08:00
Jeff Young
5739505aa3
TextBoxes for PCBNew.
2022-01-31 20:00:47 +00:00
Jeff Young
60bcfd1bf1
Bug fixes in arc & textbox printing.
...
Also removal of the no-longer-used clipping code from GR*.
2022-01-31 20:00:47 +00:00
Alex
4c4089e836
Allow overlay scrolling on GTK, except for GAL canvases.
...
This prevents glitches when both scrollbars
are visible and scrolling to the end.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10559
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9988
2022-01-31 18:45:47 +03:00
Roberto Fernandez Bautista
8393e02524
text boxes: remember to add the original newline characters back in!
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10665
2022-01-30 14:35:55 +00:00
Roberto Fernandez Bautista
6cf170c2c9
Text boxes: Return full word even if it doesn't fit in the column width
...
It does mean that the text now can be outside the text box, but this is
better than an infinite loop.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10668
2022-01-30 14:35:55 +00:00
Marek Roszko
7ec326c003
Fix compilation error
2022-01-28 20:19:42 -05:00
Seth Hillbrand
16e802aff4
Don't count zero-length as duplicate
...
We were checking for duplicate tracks by looking to see if the two
tracks had two shared points. A null track always matched this case,
which removed the valid track. We solve this by avoiding null tracks in
the duplicate checker. They are removed separately in the null track
stage.
This also fixes a GTK-specific tree issue where we require the
BeforeReset()/AfterReset() calls instead of Cleared() to prevent GTK
from dereferencing a parent after freeing
Fixes https://gitlab.com/kicad/code/kicad/issues/10624
(cherry picked from commit 8753051db6
)
2022-01-28 16:34:34 -08:00
Davide Gerhard
ea9f960cc1
cmake: adding KICAD_MACOSX_APP_BUNDLE option
...
ADDED: with cmake KICAD_MACOSX_APP_BUNDLE option the user can disable
the macOS app bundle creation when compiling on macOS. This permit to
use/install KiCad like any other *nix platform (/usr/bin, /usr/share,
ecc.). By default, cmake build the app bundle.
2022-01-28 15:49:37 -08:00
Jeff Young
c6a8100d46
Schematic and symbol text boxes.
...
Also fixes some plot bugs with arcs.
Also moves polygonization of arcs (when required) in plotting code
from 5 degrees to calculated based on ARC_HIGH_DEF.
Fixes https://gitlab.com/kicad/code/kicad/issues/5017
2022-01-28 21:38:15 +00:00
Jeff Young
3409783d9f
Break sch_text.h/.cpp into sch_text and sch_label.
...
Also moves SCH_NETCLASS_FLAG to SCH_DIRECTIVE_LABEL, and remaps Altium
harnesses from SCH_TEXT to SCH_DIRECTIVE_LABEL.
2022-01-28 21:38:15 +00:00
Jeff Young
0036f44e37
Support (and save/recall) zoom in/out in Custom Rules editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5796
2022-01-28 21:38:15 +00:00
Seth Hillbrand
3b87ab630e
There is one source of truth in AC
...
Don't store default values in two separate places. Passes the existing
by value as the default.
Issue identified by @axemagn
Fixes https://gitlab.com/kicad/code/kicad/issues/10221
2022-01-28 13:33:28 -08:00
jean-pierre charras
5b8eb8f9ec
SVG plotter rework: use mm as units in file. Remove useless inch option.
...
Use 4 digits in mantissa as default and when exporting SVG.
Allow 0 as line width: this is the right value to draw filled shapes with no outline thickness.
2022-01-28 19:33:51 +01:00
markus-bonk
8663a399ac
Move pcbnew_navlib compilation into pcbcommon.
...
Although pcb_base_frame.cpp is in the pcbnew source tree, it is compiled
and included in pcbcommon.lib. Because pcb_base_frame has a dependency
on pcbnew_navlib, the latter also needs to be included in pcbcommon to
avoid linkage issues.
The superfluous references to pcbnew_navlib in the qa projects have been
removed.
2022-01-28 12:21:42 +00:00
markus-bonk
47603fbc76
Wx_view_controls: Allow two input devices to simultaneously pan & zoom
...
Instead of the mouse move and zoom algorithms calculating the new
position or scale values relative to a starting value, the new values
are calculated relative to the current values. This allows the user to
use a second input device to move or zoom the view at the same time
without its change being undone by the mouse.
2022-01-28 12:21:42 +00:00
Tom Keddie
8c907f1fdc
hotkeys: add missing function key strings
2022-01-27 17:20:52 +00:00
Seth Hillbrand
b87e4efc68
Add additional buffer space around cell text buttons
...
The baseline -1 buffer works for some GTK themes but not others. -3
appears to work for chunky themes like those used in KDE (and others).
Fixes https://gitlab.com/kicad/code/kicad/issues/5690
2022-01-26 12:44:11 -08:00
jean-pierre charras
810a49ef1b
Fix broken PDF plotter for arcs.
2022-01-26 20:15:17 +01:00
Wayne Stambaugh
9af365b5b3
Fix broken environment variable substitution on Windows.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10303
2022-01-26 09:24:36 -05:00
jean-pierre charras
f651e31965
Fix minor compil and Coverity warnings.
2022-01-25 12:52:13 +01:00
Wayne Stambaugh
8426ffa238
Fix wxWidgets invalid string specifier assertion.
...
(cherry picked from commit ab184ba9f3
)
2022-01-24 15:50:40 -05:00
Marek Roszko
8030bf1cc4
Implement use of the kicad nightly icon where needed
2022-01-23 09:21:07 -05:00
jean-pierre charras
1b42152ba0
Teardrops: store parameters in BOARD_DESIGN_SETTINGS.
2022-01-23 10:57:08 +01:00
Jeff Young
a187076438
Use natural order sorting for FP libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10349
2022-01-22 12:16:07 +00:00
Jeff Young
de49f5090d
Formatting (and auto reduction).
2022-01-22 12:16:07 +00:00
Marek Roszko
65d4d6eada
Fix typo in comment
2022-01-22 00:07:07 -05:00
Marek Roszko
3ede5f42be
Set curl to use the Windows cert store
2022-01-21 22:09:34 -05:00
Jeff Young
09d0f6e17c
Map zone layers before checking their visibility.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10509
2022-01-21 23:26:10 +00:00
Jeff Young
d5a2059c21
Error messages for zone merging.
...
Also fixes a bug where zones meeting at a point would get merged
resulting in a self-intersecting zone.
Also fixes a bug where undo would not be handled correctly when zones
could not be merged.
Fixes https://gitlab.com/kicad/code/kicad/issues/10466
2022-01-21 19:55:57 +00:00
Jeff Young
6dc8cd3f18
Add FreeType version to version info.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10393
2022-01-21 13:21:21 +00:00
jean-pierre charras
4ffea8aae4
code cleaning.
2022-01-21 14:10:26 +01:00
jean-pierre charras
0bc5cb33ed
Fix a few issues in plotting code. Fix bug in EDA_ANGLE::IsCardinal()
...
Fixes #10547
https://gitlab.com/kicad/code/kicad/issues/10547
2022-01-21 12:35:58 +01:00
Jeff Young
c8a50d9b50
Remove unit-less angles from VECTOR2I/D APIs.
2022-01-20 23:58:20 +00:00
Jeff Young
4eac8d7c66
Remove unit-less angles from geometry lib APIs.
2022-01-20 21:10:04 +00:00
Jeff Young
ba3a810e55
Prefer EDA_ANGLE to naked degrees.
2022-01-20 21:10:04 +00:00
Jeff Young
4a05b36bc6
Prefer EDA_ANGLE to naked radians.
2022-01-20 21:10:04 +00:00
Jeff Young
854987f663
Remove unit-less angles from geometry manager APIs.
2022-01-20 21:10:04 +00:00
Jeff Young
fbab335128
Retire DPOINT and DSIZE.
2022-01-20 21:10:04 +00:00
Jeff Young
67eb3116ce
Remove DPOINT from drawing sheet stuff. (Use VECTOR2D instead.)
2022-01-20 21:10:04 +00:00
Seth Hillbrand
881af75029
Always use the project directory for default save
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10478
(cherry picked from commit dd7029ea07
)
2022-01-20 11:51:45 -08:00
Seth Hillbrand
4c8f556b80
Prevent UI updates from changing zoom selection
...
The zoom selection should only change when requested by the user, not in
response to UI updates. This can cause unexpected zoom shifts when the
calculated zoom is within a range of one of the presets. It also adds
unneeded calls during the UI update cycle
Fixes https://gitlab.com/kicad/code/kicad/issues/10498
(cherry picked from commit 6810479a19
)
2022-01-20 10:10:06 -08:00
jean-pierre charras
b084115a9e
BITMAP_BASE::DrawBitmap(): fix position of the clipping area when using matrix transform.
...
Fixes #10525
https://gitlab.com/kicad/code/kicad/issues/10525
2022-01-20 16:15:39 +01:00
Jeff Young
3ba89f50ef
Maybe, just maybe, fix LibEdit arc parsing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10455
2022-01-19 22:22:18 +00:00
Jeff Young
9d5322cfdf
Move rotation angle increments to UNIT_BINDER and EDA_ANGLE.
2022-01-19 15:15:33 +00:00
Jeff Young
0091c76a6f
Excise deci-degrees from UNIT_BINDER.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10495
2022-01-19 00:10:32 +00:00
Jeff Young
a808e2396b
Run font/laguage checks only on Mac.
2022-01-18 14:19:57 +00:00
Jeff Young
8445783216
Fix backwards arcs in legacy LIB_ARCs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10455
2022-01-18 14:08:47 +00:00
Jeff Young
d4ff829c26
Trace logging for fonts.
2022-01-18 14:08:47 +00:00
jean-pierre charras
1c8ba6dafc
fix python QA tests to run with latest changes in eda_angle.h
2022-01-18 13:49:50 +01:00
Jeff Young
b828355206
A bit more angle cleanup.
2022-01-18 09:48:24 +00:00
Jeff Young
e37ca2f757
Remove dead code.
2022-01-18 01:40:03 +00:00
Jeff Young
8c246a761d
Move EDA_ANGLE from int to double.
2022-01-17 20:57:54 +00:00
Thomas Pointhuber
5aff3ef949
altium: First prototype to parse tracks of a footprint
2022-01-17 19:54:28 +01:00
Thomas Pointhuber
0129e49b79
altium: Introduce new ALTIUM_COMPOUND_FILE object to handle file opening and searching for streams at a central place
2022-01-17 19:54:26 +01:00
Thomas Pointhuber
2cc9517cfd
altium: Allow extraction of names of footprints stored in *.PcbLib file
...
See: https://gitlab.com/kicad/code/kicad/-/issues/10274
2022-01-17 19:51:51 +01:00
Thomas Pointhuber
c6504628f0
altium: Fix Compound File Reader which returned wrong entries
...
It was possible that we confuse multiple files with the same name. This should not be that relevant for board and schematic import, but is important for library import!
2022-01-17 19:51:51 +01:00
jean-pierre charras
8d5eba7649
DRAWING_SHEET_PARSER: fix missing parse of "T_comment" case for DS_DATA_ITEM_BITMAP.
...
Fixes #10477
https://gitlab.com/kicad/code/kicad/issues/10477
2022-01-17 18:02:44 +01:00
Scott Candey
23fdbe4b21
Common: Corrects Mac OS text navigation shortcuts in Scintilla
...
Ctrl-A moves cursor to beginning of current line in text box.
Ctrl-E moves cursor to the end of the line.
This change makes navigation in Scintilla text boxes consistent
with other text boxes in KiCad.
Fixes https://gitlab.com/kicad/code/kicad/issues/9996
2022-01-17 14:31:06 +00:00
Jeff Young
2defd8d911
Move show-bounding-boxes to a tool on the toolbars.
2022-01-17 11:56:40 +00:00
jean-pierre charras
1f2d1528cb
LSET::SeqStackupBottom2Top(): add missing user layers to list of layers
...
These missing layers were not exported in export SVG.
2022-01-17 10:54:19 +01:00
Jeff Young
5cc3368b14
Fix bounding boxes and hittesting for arcs in eeschema.
2022-01-16 23:54:59 +00:00
Jeff Young
e61144d45a
Finish with EDA_ANGLE.
2022-01-16 21:15:40 +00:00
dsa-t
bc1ff6756f
Cross-probing/selection for multiple items (SCH->PCB)
2022-01-16 20:29:03 +00:00
Jeff Young
e84c574830
Some more EDA_ANGLE cleanup.
2022-01-16 19:16:18 +00:00
Jeff Young
9b661aea10
EDA_ANGLE for plotters.
...
Also fixes a compile error in the PNS Playground.
2022-01-16 01:19:45 +00:00
Jeff Young
1539fa5af2
Move SHAPE_ARC to EDA_ANGLE.
2022-01-16 01:19:45 +00:00
Ola Rinta-Koski
da65fe0469
Font outline decomposition fixes
2022-01-15 12:51:09 +00:00
Marek Roszko
8fe16690b7
Add array deleter
2022-01-14 22:04:47 -05:00
Jeff Young
3f98769a77
More EDA_ANGLE.
...
Includes bug fix for catastrophic error in Add() for converting to
radians.
Includes bug fixes for the fact that the pcbnew test can't seem to
find the ANGLE_* objects (getting all 0's instead).
2022-01-15 01:30:04 +00:00
Seth Hillbrand
22a77d3556
Move EDA_ANGLE to KiMath lib
...
KiMath should only depend on itself not on other elements in the tree
2022-01-14 17:12:24 -08:00
Seth Hillbrand
de006fc010
Fix transparent circle printing
...
DrawEllipse seems to work fine using transparent bg for all DCs except
printing (which is the only one we use now) Use two arcs to draw a
transparent fill for the circle instead as a workaround until we
implement Cairo printing
Fixes https://gitlab.com/kicad/code/kicad/issues/10431
(cherry picked from commit cccdac136f
)
2022-01-14 16:13:35 -08:00
Seth Hillbrand
728ca8265f
Print fonts as polygons, not triangles
...
Similar to plotting, print engines are probably happier dealing with
filled polygons than hundreds of triangles
2022-01-14 09:18:42 -08:00
Jeff Young
07013d00e1
More EDA_ANGLE.
2022-01-14 16:08:19 +00:00
Jeff Young
1b19ff5f42
More EDA_ANGLE changes.
2022-01-14 16:08:19 +00:00
Jeff Young
c9487bad18
Move BOARD_ITEM::Rotate() to EDA_ANGLE.
2022-01-14 16:08:19 +00:00
Jeff Young
abd3f5bc2b
Move footprints to EDA_ANGLE.
2022-01-14 16:08:18 +00:00
Jeff Young
70ad554343
Coverity fixes.
2022-01-14 16:08:18 +00:00
Jeff Young
d485eb2514
Move pads to EDA_ANGLE.
2022-01-14 16:08:18 +00:00
Jeff Young
e048e51f5d
Improve SNR of EDA_ANGLE stuff.
2022-01-14 16:08:18 +00:00
jean-pierre charras
431560a46b
EDA_SHAPE::SwapShape() : add missing items to the swap list.
...
Some items (color, fill) were missing in list, so the undo/redo was incorrect
2022-01-14 09:40:15 +01:00
Seth Hillbrand
e7d0318fb2
Plot fonts in outline mode, not triangulated
...
Putting 1,000s of tiny triangles on a gerber file will cause mfg fits.
Instead, we use easy outline plotting for plots and triangulation for
everything else.
2022-01-13 17:04:14 -08:00
jean-pierre charras
d0f2c20235
Define our kicad font name only once, and do not translate it.
...
Especially using a translated name breaks kicad config and files because
in non English languages both translated and not translated names were used in code.
2022-01-13 14:32:55 +01:00
dana
8373180cbb
Handle Unicode clipboard data in pcbnew and symbol editor
...
Fixes #10323
2022-01-12 17:15:47 +00:00
jean-pierre charras
cf11abda3d
Fix test_drc_regressions.cpp: disable tests that need a footprint library
...
DRCE_LIB_FOOTPRINT_ISSUES and DRCE_LIB_FOOTPRINT_MISMATCH imply a library
but the test cases do not have a library.
2022-01-12 15:57:41 +01:00
jean-pierre charras
0aca35bcab
Eeschema, plot: fix missing initialization that created 0 size texts.
...
0 sized texts are hard to read
2022-01-11 20:47:16 +01:00
Seth Hillbrand
7ef8843545
Assign font if null
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10370
2022-01-11 11:05:38 -08:00
jean-pierre charras
083193c3d4
Eeschema, print: fix missing initialization that created 0 size texts.
2022-01-11 18:16:23 +01:00
Jeff Young
33338aa0f2
Formatting.
2022-01-11 14:34:16 +00:00
Jeff Young
8f7d2dd06a
More VECTOR2D -> VECTOR2I and wxPoint cleanup.
2022-01-11 14:20:14 +00:00
Marek Roszko
fcfe42d67c
Continue the war on wxPoint
2022-01-10 19:52:26 -05:00
Jeff Young
cdb411bb14
Fix issue with hotkeys getting overridden by non-running Kifaces.
2022-01-10 23:41:56 +00:00
Ola Rinta-Koski
dcab2833b8
PEGTL 2.x->3.x
2022-01-10 23:22:23 +00:00
Seth Hillbrand
d5faac7614
Better fix for missing end segment
...
Rather than skipping our endEdit() call in libedit, we need to
parameterize whether we want the shape open/closed. Closed will remove
the last segment if it lands on the first point. We don't want that
but we do want to remove the last point if it duplicates the second to
last (in the case of double-clicking)
Fixes https://gitlab.com/kicad/code/kicad/issues/10334
(cherry picked from commit 55020c2b89
)
2022-01-10 13:39:39 -08:00
Jeff Young
21790fcab7
Fix a pair of dereference-freed-pointers in DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10335
2022-01-10 21:06:03 +00:00
Jeff Young
73a2984963
Fixes for rotated footprint text.
2022-01-10 15:30:19 +00:00
Jeff Young
236feeb592
Cleanup GRText APIs, 3D Viewer <-> board APIs, and Plotter APIs.
...
Also fixes a bug where outline fonts weren't being handled for footprint
text in 3D Viewer, and a copy/paste error in stroke font handling for
both PCB and footprint text in 3D Viewer.
Fixes https://gitlab.com/kicad/code/kicad/issues/10319
2022-01-10 14:17:11 +00:00
Jeff Young
7d032f9c2f
Outline font rendering for Cairo, plotter, printer and 3D viewer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10319
2022-01-10 01:54:28 +00:00
Jeff Young
76368af7b9
Font cleanup and bug fixes.
2022-01-09 18:33:53 +00:00
Jeff Young
7e18256386
Performance optimizations for building the stroke font.
2022-01-09 15:47:08 +00:00
Jeff Young
78cac128b7
Careful: symbol fonts have no language.
...
Also a bit of clean up to shut up a false-positive in Coverity (and
clangd) on dereferencing a possibly (not) nullptr.
2022-01-09 11:34:20 +00:00
Jeff Young
a170d3f006
Commenting.
2022-01-09 11:34:20 +00:00
Jeff Young
a4349ae638
Cleanup and error reporting for fonts.
2022-01-09 11:34:20 +00:00
Mikolaj Wielgus
a42f33414e
Update contributor name
2022-01-09 09:22:41 +01:00
Jeff Young
6242b40cde
Supported language filtering for fonts.
...
If the language isn't supported by the system, no point showing the
user the fonts.
2022-01-08 22:02:17 +00:00
Jeff Young
c5eb77d765
Fix second case of font name mismatch.
2022-01-08 20:11:37 +00:00
Marek Roszko
263513b8cf
Fix default font name check
2022-01-08 14:37:50 -05:00
Jeff Young
05cfdd3907
Supply a text size & thickness for GAL::StrokeText
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10226
2022-01-08 16:47:45 +00:00
Jeff Young
04c76f10e9
Performance enhancements for fonts.
2022-01-08 16:47:45 +00:00
Jeff Young
438c63f587
Fix outline font boundingbox issues.
2022-01-08 16:47:45 +00:00
Jeff Young
aef2a3fca4
Default font for eeschema.
2022-01-08 16:47:45 +00:00
Jeff Young
eb58d7e44c
Text glyph caches and bug fixes.
...
1) Unify metrics between stroke and outline fonts
2) Unify handling of rotation and mirroring
3) Bug fixes in collision handling
4) Use of VECTOR2I (instead of VECTOR2D) for world-coordinates
5) Generate outline font overbar with rounded ends and fix rotation
bugs
6) Generate wxEVT_CHOICE events from FONT_CHOICE::SetFontSelection
7) Change text-item PNS SOLIDs to use compound shapes
2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
5b7198dfc8
Fixes as per @sethhillbrand's comments
2022-01-08 16:47:45 +00:00
Jeff Young
383beeba8e
Fix font name that shouldn't be translated.
2022-01-08 16:47:45 +00:00
Jeff Young
72340fcee2
Implement router and DRC collisions for outline fonts.
2022-01-08 16:47:45 +00:00
Jeff Young
a2030a5956
GUI for font selection.
2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
72b69e8d7f
File format changes for fonts.
2022-01-08 16:47:45 +00:00
Ola Rinta-Koski
9b406c1da4
Outline font support.
2022-01-08 16:47:45 +00:00
jean-pierre charras
9c29cc945c
prepare teardrops, round 2
2022-01-08 16:56:41 +01:00
jean-pierre charras
563e8817a2
Fix a compil issue.
2022-01-08 08:10:18 +01:00
Seth Hillbrand
c72593ca01
Printing multiple bitmaps
...
A long-standing issue with multiple workarounds
(https://gitlab.com/kicad/code/kicad/-/issues/1877 ) prevented eeschema
printouts with multiple images or images in both the worksheet and the
schematic.
We worked around this by ordering the bitmap printing to be the first
step in the printing process. This partially worked but didn't get
everything correct. The primary difficulty in debugging this was that
the wxPrintPreview that we generate looked correct. Only the actual
printout was incorrect.
The fix is to explicitly clip bitmap drawing to the bitmap area,
regardless of how large the bitmap is.
(cherry picked from commit 69469b254a
)
2022-01-07 17:22:16 -08:00
Seth Hillbrand
26c0a78947
Plot pads in layer color
...
v6 pads are not allowed to be a different color from the rest of the
copper layer, so don't query the GAL layer for a color
Fixes https://gitlab.com/kicad/code/kicad/issues/10293
(cherry picked from commit bfca928900
)
2022-01-07 08:56:22 -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
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
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
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
Marek Roszko
726d873c53
Tear down the wxPoint trigo helpers
2022-01-04 21:23:11 -05: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
Jeff Young
cbd665db7b
Remove markup_parser from headers so PEGTL doesn't leak windows.h.
2022-01-04 12:20:18 +00:00
Marek Roszko
38a25fbc4d
Fix windows compile error
...
pegtl.hpp is dumb and leaks windows.h which then causes #define conflicts
2022-01-04 00:49:29 -05:00
Marek Roszko
ac715d2e51
Scoop up some more wxPoint instances
2022-01-03 20:00:53 -05:00
Jeff Young
8e4a4306c7
Go back to using inter-character spacing from the stroke font.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1078
2022-01-04 00:46:08 +00:00
Wayne Stambaugh
ff38853886
Make footprint and symbol editors use MRU path for new libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10216
2022-01-03 18:02:41 -05:00
Jeff Young
f40f516af6
KiCad Manager doesn't implement Kiface().
...
Fixes crash bug from Help > List Hotkeys in Kicad Manager.
2022-01-03 22:24:44 +00:00