Alex
d3aed6c408
Optimize hot loop in UpdateItems.
2022-11-19 04:02:05 +05:00
Jeff Young
bc271a8d15
Protect move tool from re-entrancy.
...
m_dragInProgress is usually sufficient, except when we haven't started
one yet. In any case, conflating the two is probably a bad idea.
Fixes https://gitlab.com/kicad/code/kicad/issues/12936
2022-11-18 17:08:38 +00:00
Jeff Young
c409646aad
Update message panel after rebuilding connectivity.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10122
2022-11-18 15:29:16 +00:00
Jeff Young
b09a106880
Split gerbview diff and xor into two separate view modes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10122
2022-11-18 15:29:16 +00:00
Alex
53b9baa5ba
Some refactoring around Gerber files extension checking.
...
Fixes a case where most Protel inner layer files couldn't be drag and dropped.
2022-11-18 09:55:34 +05:00
Alex
95b8fe26b4
Fix display and archiving of Protel gerber files in Project manager.
2022-11-18 04:39:18 +05:00
Alex
4b1994e554
Don't update hidden scrollbars.
2022-11-18 00:33:22 +05:00
Alex
dcb131c20d
Improve canvas responsiveness by better swap interval management.
2022-11-18 00:32:25 +05:00
Alex
6418441218
Fix status bar flicker.
2022-11-17 09:31:24 +05:00
Alex
c5c5a3fe91
Use a single-shot timer for auto-panning.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11425
2022-11-17 05:30:55 +05:00
Alex
5e7c4b734c
Small optimizations in DRC and SHAPE_POLY_SET.
2022-11-17 02:10:22 +05:00
Jeff Young
a61ac363c2
Excise the remaining occurrences of "Alias" for derived symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12895
2022-11-16 18:37:40 +00:00
Jeff Young
1b3f03a800
Don't feed wxWidgets negative column widths.
2022-11-16 13:33:55 +00:00
Jeff Young
13f5c78e89
More tightening of group parent lifecycles.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12908
2022-11-16 00:42:38 +00:00
Jeff Young
a0b6247a06
Try a different order of destruction.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10973
2022-11-16 00:42:38 +00:00
Wayne Stambaugh
8ad35604b4
Fix build error with wxWidgets 3.0.
2022-11-15 13:27:20 -05:00
Jeff Young
2db6b25b51
Allow setting "mixed" properties to a value.
2022-11-15 16:01:24 +00:00
Jeff Young
3af4e889b9
Unobfuscate wxAnyToVariant registration and remove global var hack.
...
Note that I don't have any data that the global var hack was causing
the bug, so this may or may not fix it. But it seems as good a candidate
as any.
Fixes https://gitlab.com/kicad/code/kicad/issues/12871
2022-11-15 16:01:24 +00:00
Jeff Young
93c6d99a6d
Move saving preferences out of the destructor.
...
For other reasons we wrap the adapters in a wxDataObject, which has
delayed destruction semantics, but that means the settings stuff may
no longer be around when the d'tor executes.
Fixes https://gitlab.com/kicad/code/kicad/issues/12371
2022-11-14 20:01:37 +00:00
Marek Roszko
39d5cc31d4
Add schematic xml bom output
2022-11-12 21:51:32 -05:00
Marek Roszko
3dd2ae762d
Refactor step export to use our normal board processing routines
2022-11-12 21:27:10 -05:00
jean-pierre charras
248181e62d
Fix Coverity and compil warnings.
2022-11-12 16:02:24 +01:00
Marek Roszko
29bf96f7f0
Sanitize the variable names in the 3d alias migration
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12683
2022-11-10 06:21:57 -05:00
Marek Roszko
43f039ef5f
Add netlist export cli
2022-11-09 22:37:55 -05:00
Jon Evans
d9d3ccd6eb
DbLib: Allow inheriting field properties from source symbol
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12856
2022-11-09 21:24:31 -05:00
Jon Evans
dbd498f451
Re-add keyword mapping
2022-11-09 20:50:01 -05:00
Jon Evans
3a15fa5e0f
Don't remove a read-only settings file
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12844
2022-11-08 23:27:26 -05:00
Jon Evans
c07477b94c
Move to explicit symbol properties mapping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12845
2022-11-08 22:19:08 -05:00
Seth Hillbrand
056f45cd70
Fixup most intersecting polygon points
...
Remaining is the intersecting complex pad, so this keeps the error
message when drawing
Fixes https://gitlab.com/kicad/code/kicad/issues/12806
2022-11-08 16:05:04 -08:00
jean-pierre charras
9501f4303d
Rename CreateWindow to CreateKiWindow to avoid a collision name with a windows header
...
No code change, but it fix an issue specific to msys2 that bother me when
trying to fix issues with wx 3.0.x version
2022-11-08 12:31:07 +01:00
jean-pierre charras
cb3d215b6a
Fix compil and Coverity warnings.
2022-11-08 11:53:13 +01:00
Marek Roszko
cd30da179a
Round out the cli with position file export
2022-11-07 19:53:35 -05:00
Jeff Young
ae741b93e6
Resore push/pop-less PickerTool.
...
(Functionality was accidentallly lost when we removed the opt command
strings.)
2022-11-07 19:11:12 +00:00
Jeff Young
095f02e6ef
Fix encoding issues in Simulation Model dialog's property grid.
2022-11-07 15:03:18 +00:00
Jon Evans
32b3f24f8b
Thanks xorg
2022-11-06 18:27:18 -05:00
Jon Evans
f708dad5cd
Don't use frame events for PROPERTY_EDITOR_UNIT_BINDER
2022-11-06 18:26:17 -05:00
Jon Evans
dd94b2d3a7
Rename PROPERTIES to STRING_UTF8_MAP for clarity
...
This class has nothing to do with the properties system
2022-11-06 11:51:52 -05:00
Jon Evans
68de92313e
Properties: move to custom editor for distances; refactoring
...
Also fix display of angle values since EDA_ANGLE was introduced
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12290
2022-11-06 11:40:45 -05:00
Jeff Young
76ce580bd0
Don't use KiCad escape sequences for JS text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-11-06 15:21:38 +00:00
Jeff Young
be142af4d0
Another attempt at string encoding for JS inside a PDF.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-11-06 14:34:54 +00:00
Jeff Young
165c9bf68b
Reference assignment is not the same thing as pointer assignment.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12837
2022-11-06 12:01:06 +00:00
Jeff Young
b385a4b60a
Implement DarkMode for the Appearances Palette.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11734
2022-11-06 00:34:45 +00:00
Jeff Young
25f06eed8c
Move zone borders back to their "host" layer.
...
Zone borders shouldn't be affected by zone-opacity control; we always
draw them in full layer opacity.
Fixes https://gitlab.com/kicad/code/kicad/issues/12438
2022-11-05 16:50:54 +00:00
Jon Evans
995a153f27
Update nlohmann::json to 3.11.2
...
Also update json_schema_validator to match new deprecations
2022-11-05 10:53:57 -04:00
Jeff Young
cf581137d8
Handle multiple unitProviders in a WX_GRID.
...
This allows us to provide a more consistent and less buggy presentation
of the netclasses grid in both eeschema and pcbnew.
Fixes https://gitlab.com/kicad/code/kicad/issues/12826
2022-11-05 10:23:12 +00:00
Seth Hillbrand
de21eb5268
Remove errant debugging printf
2022-11-04 13:22:49 -07:00
Seth Hillbrand
685185bd68
Remove unneeded assert
...
Asserts should really only be used if the condition would trigger a
program error. These just need a warning
2022-11-04 11:49:50 -07:00
Bevan Weiss
4f634d7df7
Updated accelerating zoom controller to use default (non-accelerated)
...
zoom if changing direction.
Signed-off-by: Bevan Weiss <bevan.weiss@gmail.com>
2022-11-04 16:28:32 +00:00
jean-pierre charras
9dba54190e
PDF plotter: Encode '\' as "{backslash}" for CTX_JS_STR context.
...
This is a poor hack (similar to hack for the ' char), but it allows displaying
context menu when '\' is inserted in a property.
2022-11-04 07:31:23 +01:00
Seth Hillbrand
bd4c2df3ba
Suppress signedness warning
2022-11-03 15:08:45 -07:00
Jeff Young
4ad0eeefc6
Fix compile error on Mac.
2022-11-03 17:19:59 +00:00
Jeff Young
1b93b8c51b
Fix JS to support more Acrobat versions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12819
2022-11-03 17:19:59 +00:00
Sylwester Kocjan
a234d5a2c8
common,eeschema,pcbnew: path cleanup
2022-11-02 13:29:52 +00:00
Alex
e992bd13bf
Remove what looks like forgotten lines
2022-11-02 11:06:41 +05:00
Marek Roszko
b60c42ea41
Add schematic cli plotting
2022-11-01 23:34:49 -04:00
dsa-t
aeef215ffb
gal: Pass aReserve to drawLineQuad in drawPolyline.
2022-11-01 05:02:17 +00:00
Jon Evans
a5d685ff5c
Handle coordinate transforms in properties system
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12320
2022-10-31 23:01:52 -04:00
Seth Hillbrand
5be0ddca27
Draw degenerate lines as points
...
Rather than not drawing, which will miss some imported elements that
should be visible due to the line width, we draw a zero-length line that
appears as a point.
2022-10-31 16:18:38 -07:00
Mike Williams
6c43ace018
common: fix build (missing return)
2022-10-31 10:29:50 -04:00
Tomasz Wlostowski
f25d449d5f
JSON_SETTINGS: added direct serialization to a string (FormatAsString) and parsing
...
from explicitly provided file (bypassing the migration and settings framework). Used for
router regression tests.
2022-10-31 11:17:31 +01:00
Marek Roszko
0deebab8a8
Try and make the msg panel resize more correctly due to dpi
2022-10-30 18:34:58 -04:00
Marek Roszko
321d6e3ea8
Try a hackfix for windows icon scaling
...
Related https://gitlab.com/kicad/code/kicad/-/issues/11880
2022-10-30 18:34:08 -04:00
Marek Roszko
c0f8810759
Don't fix the visibility icon size or it will never scale properly
...
Related https://gitlab.com/kicad/code/kicad/-/issues/11880
2022-10-30 15:03:00 -04:00
Jeff Young
a2679f62cd
Enormous hack to deal with JS encoding issues in PDF.
...
No, PDFDocEncoding (as spit out by encodeStringForPlotter()) does
not seem to work.
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-10-29 22:03:52 +01:00
Marek Roszko
0a134788d0
Implement cli for gerber, drill, pdf export of pcb
2022-10-29 11:56:10 -04:00
Marek Roszko
30211da69f
Move the cli definitions to kicad
2022-10-29 11:55:38 -04:00
jean-pierre charras
50d2237f06
command_export_pcb_dxf.cpp: switch to "C" locale before exporting the file
...
Fix also a minor Coverity warning
2022-10-29 09:45:45 +02:00
Wayne Stambaugh
fb21eb7457
Coverity issue fixes.
2022-10-28 13:01:23 -04:00
Jeff Young
fb8493d0bc
Move model pin editor to GRID_CELL_ICON_TEXT_POPUP.
...
wxChoice is hopeless on Mac (it still doesn't highlight on rollover),
and using a char for the "assigned" graphic isn't great.
2022-10-28 15:27:00 +01:00
Jeff Young
78db69bb48
Don't append '+' when modifier used on its own.
2022-10-27 18:03:07 +01:00
Jeff Young
58ac62d493
Return cursor to arrow when leaving search ctrl.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12764
2022-10-27 16:27:19 +01:00
Jeff Young
f6c441c434
Viewport switcher keys are platform-specific.
...
Also fixes a regression where ctrl-tab doesn't get recognized.
Fixes https://gitlab.com/kicad/code/kicad/issues/11778
Fixes https://gitlab.com/kicad/code/kicad/issues/10127
2022-10-27 14:28:11 +01:00
Wayne Stambaugh
6a0db3e7e2
Fix Coverity warnings.
2022-10-26 14:39:44 -04:00
Marek Roszko
ee92ace419
Fix some cli switch values
2022-10-26 07:10:19 -04:00
jean-pierre charras
5f7213e419
fix a compil warning
2022-10-26 08:03:48 +02:00
Marek Roszko
a7e1f668a7
Some cleanup of the cli functions
2022-10-25 23:26:23 -04:00
Jon Evans
a01de6bf53
Fix starting path in worksheet selection dialog when using env vars
2022-10-25 22:08:36 -04:00
Marek Roszko
2b8a29b662
Try and make the svg command handling warn a little, also default the output
2022-10-25 20:17:25 -04:00
Jeff Young
f480cbf93f
Treat internal copper layers as side-specific.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12726
2022-10-25 12:08:57 +01:00
Jeff Young
d37526ba42
Don't stroke outline font polygons, even with a really narrow pen.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12739
2022-10-25 11:58:25 +01:00
Jeff Young
4778122aa0
Flip anything on a side-specific layer, rather than physical layer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12726
2022-10-24 16:54:33 +01:00
Jeff Young
c8261d13a5
Better platform fidelity on Mac for SPLIT_BUTTON.
2022-10-24 00:14:12 +01:00
Jeff Young
064e7f0f2c
Dark mode hacks for SPLIT_BUTTON on OSX.
2022-10-23 17:56:44 +01:00
Jeff Young
cef7cd8f7c
Move default font to RENDER_SETTINGS.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12723
2022-10-22 21:32:42 +01:00
Wayne Stambaugh
d78b41969f
Fix broken autosave when board is modified.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12700
2022-10-22 15:49:03 -04:00
Jeff Young
38c863c3f4
Attempt to fix nullptr error when looking up units scale in pl_editor.
...
(I can't be sure if this works or not because my M1 build won't launch
pl_editor for some reason.)
Fixes https://gitlab.com/kicad/code/kicad/issues/12717
2022-10-22 14:11:01 +01:00
Jeff Young
d16b23d16e
Name shortening and line-break reduction.
2022-10-21 18:41:39 +01:00
Seth Hillbrand
d1bf889e71
Resolve embedded text vars
...
Title Block text variables are embedded into the pcb file and should
be used for resolving when the project file is missing
2022-10-21 08:37:37 -07:00
Jeff Young
0ae2a8483e
Debugging aid.
2022-10-20 18:37:48 +01:00
Seth Hillbrand
53fea46fed
Re-order headers to avoid X11 None def
...
X.h helpfully defines the word "None" because surely no one would ever
use that as a token, right? Right?
2022-10-19 20:04:00 -07:00
Seth Hillbrand
27add591ec
Add Clipper2
...
Currently this lives behind the advanced config flag `UseClipper2`.
Enabling this flag will route all Clipper-based calls through the
Clipper2 library instead of the older Clipper. The changes should be
mostly transparent.
Of note, Clipper2 does not utilize the `STRICTLY_SIMPLE` flag because
clipper1 did not actually guarantee a strictly simple polygon.
Currently we ignore this flag but we may decide to run strictly-simple
operations through a second NULL union to simplify the results as much
as possible.
Additionally, the inflation options are slightly different. We cannot
choose the fallback miter. The fallback miter is always square. This
only affects the CHAMFER_ACUTE_CORNERS option in inflate, which does not
appear to be used.
Lastly, we currently utilize the 64-bit integer coordinates for
calculations. This appears to still be faster than 32-bit calculations
in Clipper1 on a modern x86 system. This may not be the case for older
systems, particularly 32-bit systems.
2022-10-19 16:25:45 -07:00
Jeff Young
e3842514e7
Move courtyard collision setting to preferences.
...
Also cleans up PCBNew/FPEditor edit options panel to be more in sync
with each other.
2022-10-19 11:33:11 +01:00
Jeff Young
437d2c4589
Overhaul of remove-unconnected's zone filling and drawing strategies.
...
1) The highest priority zone that a via/pad collides with "owns" its
connectivity state. Once set, lower priority zones cannot change it --
and in fact, if they would have connected to it are forced not to.
2) The connectivity state goes with the zone fill state, and therefore
must be saved in the file.
3) Display of remove-unconnected's pads is no longer done in GetViewLOD()
(which isn't called for selected items), and is instead done in PCB_PAINTER.
This allows us to draw the full pad in outline mode when a via/pad is
selected which would otherwise only show the hole.
4) Note that in some cases this will still generate DRC errors -- in
particular when a via nearly collides with a higher priority zone it
won't get "owned" by that zone and may therefore have insufficient
clearance if said zone concludes it's unconnected and a subsequent
(lower priority) zone connects to it (causing it to now become flashed).
Fixes https://gitlab.com/kicad/code/kicad/issues/11299
2022-10-18 13:05:42 +01:00
Wayne Stambaugh
598b09821a
Coverity fixes.
2022-10-17 15:30:20 -04:00
Jeff Young
92f1ee556f
Don't fill drawing sheet rects with transparent fill.
...
It might make sense to do that with board and/or schematic items for
hit-testing or something, but it definitely doesn't make any sense for
the drawing sheet border.
Also, when reading in items with a transparent fill, treat them as
unfilled (otherwise we get filled with layer colour in at least PCBNew).
2022-10-17 17:51:11 +01:00
jean-pierre charras
6be87d41e1
Pcbnew, Print preview frame: remember last size & pos during a session.
...
This feature was already existing in Eeschema.
Fixes #10980
https://gitlab.com/kicad/code/kicad/issues/10980
2022-10-17 16:57:19 +02:00
Jeff Young
054649fa38
Formatting.
2022-10-16 18:39:37 +01:00
Jeff Young
390069cee9
Formatting. (No functional changes.)
2022-10-13 13:05:51 +01:00
Marek Roszko
d6f8ca9a2e
Patch out the install for argparse
2022-10-12 23:17:05 -04:00
Jeff Young
a02d156e5d
Improved auto-save message.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12589
2022-10-12 11:22:02 +01:00