Commit Graph

7954 Commits

Author SHA1 Message Date
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
Jeff Young e02c05d38f Add unit and eval support to WX_GRIDs.
Fixes https://gitlab.com/kicad/code/kicad/issues/1871

Fixes https://gitlab.com/kicad/code/kicad/issues/4285
2022-10-11 23:40:58 +01:00
Jeff Young 3221877fe8 Push autosave-require down in to EDA_BASE_FRAME.
Fixes https://gitlab.com/kicad/code/kicad/issues/11790
2022-10-10 14:03:52 +01:00
Jeff Young be6f08deca Code clarity. (No functional changes.) 2022-10-10 14:03:52 +01:00
Marek Roszko 3b63ce8a48 Don't use the 3d resolver config anymore 2022-10-08 14:27:10 -04:00
Alex 2577ebb94d Increase dynamic ratsnest opacity for better visibility. 2022-10-07 21:50:12 +00:00
jean-pierre charras b8dfbe02ad Fix some issues in STEP exporter 2022-10-07 18:53:31 +02:00
Seth Hillbrand 863184e3dc Ensure node count is signed
Fixes a broken commit from a0865082fb
2022-10-07 08:14:53 -07:00
Alex d44a52ceee Make arc endpoint theta consistent with polar coordinate system. 2022-10-07 08:35:14 +03:00
Jeff Young 19d270fe74 Text size sanity checking for TEXT_ITEMS_GRID.
Oh dear, there was a bunch going on here.  Firstly the move from int
to long long int for ValueFromString() means that we were no longer
catching overflows (as we were C-style casting it back to int in many
places).  But even when the overflow is caught, it would run in to
wxWidgets' empty string bug while trying to log it.

Fixes https://gitlab.com/kicad/code/kicad/issues/12577
2022-10-06 13:19:08 +01:00
Jeff Young b52106aa37 Formatting and commenting. 2022-10-06 13:19:08 +01:00
jean-pierre charras 0a620816a8 Eeschema: edit arc: keep arc angle <= 180 degrees when moving a arc end. 2022-10-06 09:22:59 +02:00
Marek Roszko 40a279ae32 Hotglue the unit tests to work for now
The mocks never expected InitPgm to work and I accidentally fixed it for the kicad-cli
2022-10-05 17:12:32 -04:00
jean-pierre charras 92f70a9fa2 Eeschema: ensure arcs are < 180 deg when creating them. 2022-10-05 11:33:12 +02:00
Marek Roszko 3fe004fd1b New kicad-cli will now be the cli interface 2022-10-04 22:24:13 -04:00
Seth Hillbrand a0865082fb Fix compile warnings 2022-10-04 17:06:45 -07:00
jean-pierre charras 0c7b6c3cbc fix minor compil warnings 2022-10-04 19:51:51 +02:00
Jeff Young 2be9586c38 Improve default new-library destination logic to be more project aware.
Fixes https://gitlab.com/kicad/code/kicad/issues/12570
2022-10-04 17:56:00 +01:00
jean-pierre charras 4611817f25 Eeschema: fix a crash when invoking eeschema.exe with 2 filenames to open
Fix also a minor compil warning
2022-10-04 16:56:13 +02:00
Marek Roszko 7d16fba8f9 Fix launching of files 2022-10-04 07:32:22 -04:00
Mark Roszko fb8a4c10f7 Shove kicad2step into pcbnew itself with a new cli 2022-10-04 01:53:37 +00:00
Seth Hillbrand b716afd6f1 Clarify various uses of "Center"
Distinguish between the english verb "Center" and the noun "Center",
which may be translated differently

Fixes https://gitlab.com/kicad/code/kicad/issues/11109
2022-10-03 12:48:57 -07:00
Seth Hillbrand 46016cfc61 Remove duplicated text in Report Bug
Now that GitLab insists on inserting this text, we shouldn't duplicate
it in the Report Bug action

Fixes https://gitlab.com/kicad/code/kicad/issues/10939
2022-10-03 11:12:50 -07:00
Jeff Young 01e6491046 Fix side-effect of multi-select in lib trees. 2022-10-03 19:11:31 +01:00
Jeff Young 230762053d Translate mod flags between wx and Kicad.
Also we have to use wxEVT_CHAR_HOOK instead of wxEVT_CHAR or up/down
end up getting handed to COMMON_TOOLS.

Fixes https://gitlab.com/kicad/code/kicad/issues/11034
2022-10-03 18:42:50 +01:00
Jeff Young 2422b9a7c8 Simplification, formatting, and spelling. 2022-10-03 18:42:50 +01:00
Jeff Young e335c1c612 Fix for LIB_TREE hotkeys over canvas and possible fix for over LIB_TREE itself.
Fixes https://gitlab.com/kicad/code/kicad/issues/11034
2022-10-02 22:22:21 +01:00
Jeff Young 1fc5ecae6e Minor dialog layout improvements.
Fixes https://gitlab.com/kicad/code/kicad/issues/12497
2022-10-02 11:45:30 +01:00