Commit Graph

8035 Commits

Author SHA1 Message Date
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
Jon Evans 7059ef9b89 Store netclass visibility separately from nets
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10290
2022-10-01 19:54:13 -04:00
Seth Hillbrand 1b38acd9c6 Add "Letter-like character" Omega for Unicode x2126
Fixes https://gitlab.com/kicad/code/kicad/issues/12531
2022-10-01 16:39:00 -07:00
Seth Hillbrand fdf9fcc24d Fix missing token initializer
Fixes https://gitlab.com/kicad/code/kicad/issues/12555
2022-10-01 12:15:49 -07:00
Seth Hillbrand 19378675f1 Ensure that token size is large enough
Input tokens can be arbitrary, so output needs to keep pace

Fixes https://gitlab.com/kicad/code/kicad/issues/12555
2022-10-01 11:30:30 -07:00
jean-pierre charras efdb67aa64 Minor fixes. 2022-10-01 18:42:02 +02:00
Seth Hillbrand 93239516d9 Remove ID from property fields
ID was not maintained or used other than to ensure unique fields.
Instead of saving, we assign the known IDs to specific field names and
sequentially create new IDs on load

Fixes https://gitlab.com/kicad/code/kicad/issues/12390
2022-09-30 17:19:53 -07:00
Jeff Young c0a666507c Work around more instances of the wxWidgets color string locale bug.
Fixes https://gitlab.com/kicad/code/kicad/issues/12552
2022-09-30 20:56:25 +01:00
dsa-t 01572c0f7d ADDED: Focus follows mouse between SCH and PCB editors (option). 2022-09-30 18:32:06 +00:00
Jeff Young f2de3e9f67 Minor cleanup. 2022-09-30 13:02:08 +01:00
Seth Hillbrand 519084546e Ensure dtor throws into catch block
Explicitly destruct the GAL context to get StopDrawing throws in the
proper try block

Fixes https://gitlab.com/kicad/code/kicad/issues/12117
2022-09-29 15:26:39 -07:00
Marek Roszko 8ae48bb093 Ensure the socket server is killed during destruction of the kiway player 2022-09-28 21:37:19 -04:00
Marek Roszko f3be769095 Fix comment placement 2022-09-28 21:19:19 -04:00
Marek Roszko 0b1b37a75f Try and avoid a crash by suppressing the socket events first before deleting
Might fix a sentry issue, unknown
2022-09-28 21:18:09 -04:00
Seth Hillbrand 3d3b7d839c Prevent out of scope lambda use
Keeping a function reference is only in scope when the call is
immediately executed, not when it enters its own event loop.

This commit also excises one more onUpdateUI call as it is not needed

Fixes https://gitlab.com/kicad/code/kicad/issues/12395
2022-09-28 17:18:04 -07:00
Seth Hillbrand 18d7a1b427 Update contributions 2022-09-28 13:49:30 -07:00
Alex 4095172259 ADDED: Pack and Move Footprints, improved footprint spread algorithm. 2022-09-28 13:37:23 +00:00
jean-pierre charras 7d20418d6f Fix compil issues and warnings, especially in ibis code. 2022-09-28 09:55:00 +02:00
Marek Roszko 46471247ff Some header cleanup 2022-09-27 23:25:20 -04:00
Marek Roszko 1a43187fb7 Display the sentry uid in preferences 2022-09-27 19:31:32 -04:00
Marek Roszko 21c1c97bf3 Unbind search pane listview events on destruction to avoid event race 2022-09-27 19:16:29 -04:00
Alex dc07ab9df1 Replace PROF_COUNTER with PROF_TIMER in some conditional places. 2022-09-27 14:07:47 +00:00
Jeff Young 9e580b3116 Other -> Unspecified and a couple of other terminology improvements. 2022-09-27 12:15:18 +01:00
jean-pierre charras 7584ccc758 Fix duplicate variable member m_userUnits, creating issues depending on
the way it was acceded (by name or by accessor).
2022-09-26 19:47:28 +02:00
Alex d0b4fb7b32 Don't fail when reserving 0 vertices. 2022-09-26 12:18:45 +03:00
Marek Roszko c50b4fb04f Add relative to footprint 3d model path resolution
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2073
2022-09-25 22:56:16 -04:00
Jon Evans 375b530dad ADDED: Column selection and reordering in symbol chooser 2022-09-25 22:49:49 -04:00
Marek Roszko 8e96751af2 Strip out and migrate 3d search paths in favor of env vars
This mainly stops reading/writing 3dresolver.cfg
We still keep some sillyness for kicad2step for now

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9164
2022-09-25 21:29:52 -04:00
Jeff Young 76a7a2b4bc Fix asserting when drawing empty line of text. 2022-09-25 22:20:51 +01:00
Marek Roszko 2490ad1458 Fix search panel not remembering visibility
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12494
2022-09-25 11:56:41 -04:00
Ian McInerney 40ff7cb9bd Fix some UI element spacing in settings panels 2022-09-25 15:41:39 +01:00
Ian McInerney 3a297093e6 Fix lambda capture in ACTION_TOOLBAR 2022-09-25 15:41:39 +01:00
jean-pierre charras 28165c6a31 SEARCH_PANE_TAB: fix a typo and add missing event handler. 2022-09-25 16:40:08 +02:00
Marek Roszko 8f52821cd4 Add missing clear of children memory in outline node 2022-09-25 08:47:28 -04:00
jean-pierre charras 7c44dbd9d6 Fix gcc compil warnings. 2022-09-25 11:01:25 +02:00
Marek Roszko 0595efd0a7 Make the page outline nodes goto page... 2022-09-24 23:37:55 -04:00
Marek Roszko 209e1b2086 Add naming of the outline page entries 2022-09-24 22:54:38 -04:00
Marek Roszko a381a0acb2 Generalize bookmarks to support additional groups and names 2022-09-24 22:35:20 -04:00
Marek Roszko 6f8205235f ADDED: Add outline support to schematic PDF and PCB plot 2022-09-24 21:45:48 -04:00
Ian McInerney 1683e552f7 Add/fix some variable initializations 2022-09-25 00:48:38 +01:00
Jeff Young 659a6e5b04 Replace macHack as its requirement sadly never went away. 2022-09-24 23:50:45 +01:00
jean-pierre charras 22cd2a3428 3D viewer: add option to show/hide fp not in position file.
Previously they were not shown, and this is really bad, because
"not in pos file" does not mean never mounted, and not even not mounted.
2022-09-24 13:58:31 +02:00
Jon Evans dcfcfd5f29 Don't run context menu actions when clicking outside the menu 2022-09-23 23:44:08 -04:00
Jon Evans f37086e840 Remove size handler that messes up column sizes
Could not reproduce an issue on wxGTK.  If this causes problems
on other OS's, let's find a more appropriate fix
2022-09-23 22:08:33 -04:00
Ian McInerney 6310f84a57 Fix shadowed definition of EAGLE constant 2022-09-24 01:37:57 +01:00
Jon Evans 201b45b41a Remove call that crashes MySQL connector sometimes
It no longer is necessary anyway

Fixes https://gitlab.com/kicad/code/kicad/-/issues/12471
2022-09-23 19:28:04 -04:00
jean-pierre charras bd28bd7a00 fix a few compil warnings 2022-09-23 18:30:42 +02:00
qu1ck 6ebb3baa3b PCM: autoload libs from installed packages to global lib tables
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9713
2022-09-23 16:16:13 +00:00
Jeff Young bb1eb94aa0 Fix typo.
Fixes https://gitlab.com/kicad/code/kicad/issues/12467
2022-09-22 10:53:42 +01:00
jean-pierre charras c44e54756a search panel: fix a crash and a refresh issue after selecting a second item
at least on W10/msys2
2022-09-21 19:36:35 +02:00
Jeff Young 8eb68ee472 Add pin/unpin context menu to Symbol Chooser and Footprint Chooser.
Also moves some more code down into common so it can be shared.

Fixes https://gitlab.com/kicad/code/kicad/issues/12384
2022-09-21 14:45:12 +01:00
jean-pierre charras 25f1f7b0df Fix a compil issue on GCC 2022-09-21 09:04:31 +02:00
Marek Roszko ec25463fed Allow multi-selecting from the search pane
Fix https://gitlab.com/kicad/code/kicad/-/issues/12476
2022-09-20 23:58:49 -04:00
Marek Roszko 30dbcbbcf5 Only search the current tab on events 2022-09-20 23:38:06 -04:00
jean-pierre charras f851526c67 Plotters: make virtual void PLOTTER::Arc() using arc angles protected.
Using arc angles to plot an arc is really error prone due to different
options between plotters, and angles defined in Kicad, using this version of
arc plotting from Kicad is no longer allowed in Kicad code.
2022-09-20 18:55:20 +02:00
Jeff Young 7f34586c7e Allow text variable resolution through properties in drawing sheet text.
Fixes https://gitlab.com/kicad/code/kicad/issues/12473
2022-09-20 15:28:05 +01:00
jean-pierre charras bbaf5a21c2 Eeschema: fix a plot issue with arcs.
Arcs are really error prone, due to different Y axis orientation, and geometry transforms.
Probably we should remove plot and print functions using arc angles as parameters
that are a can of worms.
Fixes #12465
https://gitlab.com/kicad/code/kicad/issues/12465
2022-09-20 16:04:17 +02:00
Jeff Young 7e8b6083f4 Try to find a better brace highlight color strategy.
Fixes https://gitlab.com/kicad/code/kicad/issues/12467
2022-09-20 13:31:38 +01:00
Jeff Young 30a4d3d2de Coverity fixes. 2022-09-20 00:19:15 +01:00
Jeff Young 7fe3999457 Fix a bit of fall-out from making command strings non-optional. 2022-09-20 00:08:12 +01:00
Jeff Young 64a6fc0fd4 Push UNITS_PROVIDER down into a low-level mixin.
This allows us to also construct cheap UNIT_PROVIDERs for specific
tasks when necessary.
2022-09-19 17:10:59 +01:00
Mike Williams 9304607624 TOOL_EVENT: make command string non-optional
We're getting segfaults in places where this isn't checked. Also, add
some asserts so we can catch bad tool push/pop.

Removes all uses of GetCommandStr() and makes it private.
2022-09-19 10:23:09 -04:00
Mike Williams b7ba24b2d9 TOOL_EVENT: fix lifetime issues with const aEvent& refs
Without this the event is on the stack, and as soon as the tool calls
Wait(), the event will be deallocated. The aEvent reference will then
point to invalid memory.
2022-09-19 07:59:11 -04:00
Jeff Young 45d6b4a9fc Readability improvements. 2022-09-19 11:18:20 +01:00
Alex bdf4cf51b8 Add a missing statement in segments reservation.
Also adds an assert in FinishItem.

Fixes https://gitlab.com/kicad/code/kicad/issues/12448
2022-09-19 02:36:21 +00:00
Marek Roszko 63295cfb9e Remove unused vars 2022-09-18 08:49:07 -04:00
Marek Roszko f26a6f76e4 IUToMils should return int
It was already truncating even in old code...lets just clean this up
2022-09-17 09:27:27 -04:00
jean-pierre charras 97963a2bba Better after base_units.cpp changes in python stuff.
Move an include to kicad.i
2022-09-17 11:21:48 +02:00
Marek Roszko ece23d434b Split up Double2Str to a format function to make its use case clear 2022-09-17 00:10:22 -04:00
Marek Roszko 59a9ddac20 Convert the primary file io formatter for doubles 2022-09-16 23:20:15 -04:00
Marek Roszko 3d5913c825 Remove convert_to_biu.h, merge contents to base_units.h 2022-09-16 21:09:28 -04:00
Marek Roszko 0f2411587e Remove Millimeter2iu 2022-09-16 21:09:27 -04:00
Marek Roszko 7a5829f8d6 Move IU2Mils 2022-09-16 21:09:27 -04:00
Marek Roszko 61e11d6896 Strip out Mils2Iu 2022-09-16 21:09:27 -04:00
Marek Roszko ee48c8d232 Remove some more 2022-09-16 21:09:26 -04:00
Marek Roszko a8613ee80f Combine Iu2Millimeter & remove PcbMm2iu 2022-09-16 21:09:26 -04:00
Jeff Young 85e8d1eb38 Try re-organizing the events for the search ctrl to allow MSW icon to be shown.
See further comments in bug report.

Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-16 17:04:46 +01:00
Jeff Young 4de264ddaa Don't steal up/down arrows from textboxes and the like. 2022-09-16 16:52:26 +01:00
Jeff Young 4f453d6b92 Remove turning the cursor on in FocusOnLocation.
We don't (at present) have any good way to turn it back off.

Fixes https://gitlab.com/kicad/code/kicad/issues/12440
2022-09-16 16:44:18 +01:00
Jeff Young cf1565a16a Bug fixes for layer expression processing.
1) Push a VAR onto the stack, not a resolved value
2) Don't collapse a PCB_LAYER_VALUE to a VALUE during processing
3) Make sure we run overloaded operators from the correct side

Fixes https://gitlab.com/kicad/code/kicad/issues/12437
2022-09-16 14:14:43 +01:00
Mark Roszko b00178adb3 Nuke base_units from orbit 2022-09-16 04:38:10 +00:00
Jeff Young 9a4a68fb5e Hide search button on MSW.
Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-15 23:23:23 +01:00
Jeff Young a21d24a4c8 Experiment with loading recent searches into the search menu.
Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-15 14:44:02 +01:00
Jon Evans da9be1a812 ADDED: Multi-selection cut/copy/paste in symbol editor library tree
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11505
2022-09-14 22:20:38 -04:00
Jeff Young c48286b879 Fix missing variable initialization. 2022-09-15 00:45:29 +01:00
Jeff Young 12ee8b5d7c Improve DRC cross-probing a bit. 2022-09-15 00:45:29 +01:00
lulu731 0180bcf90a ADDED: Implement Drag and Drop
dropping files to Kicad manager :
  *.kicad_pro, *.pro -> open project;
  gerber and job files -> open in Gerbview editor;
  Eagle and Cadstar files -> open project.
dropping file to schematic editor -> append schematic;
dropping library file to Symbol editor -> add library;
dropping board file to PCB editor -> append board;
dropping library or footprint file to Footprint editor -> add library or import footprint;
dropping ZIP file or gerber files to Gerbview editor -> open files;
dropping sheet file to Drawing Sheet editor -> open sheet.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/11638
2022-09-14 22:28:09 +00:00
kliment b97f9ea329 Add support for symbol unit display names in eeschema and symbol editor 2022-09-14 22:11:37 +00:00
dsa-t bd8b737c44 GAL: Do better job at reserving vertices. 2022-09-14 16:07:47 +00:00
Mark Roszko 75ae0d8e5e Revert "Use {fmt} for double -> string conversions"
This reverts commit 03fff6e58d
2022-09-14 10:56:50 +00:00
Jeff Young 281b9d405a ADDED ability to specify where pad number (& net name) go on custom shaped pads.
Fixes https://gitlab.com/kicad/code/kicad/issues/6627
2022-09-14 11:37:20 +01:00
Marek Roszko 03fff6e58d Use {fmt} for double -> string conversions
Faster at printing floats than sprintf due to the modern algos
2022-09-13 23:17:15 -04:00
Mark Roszko f304e2d4f6 ADDED: Search/inspect pane 2022-09-14 02:59:57 +00:00
aris-kimi 7bd8cfd7f9 Added common option to hide scrollbars
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9093
2022-09-13 22:15:27 +03:00
jean-pierre charras bde2d388f1 Fix a very serious memory leak in OUTLINE_FONT::getTextAsGlyphs(). 2022-09-13 17:55:12 +02:00
Wayne Stambaugh 4f3db82c68 Add debugging support for KiCad2Step command line generation. 2022-09-12 14:30:07 -04:00
Mike Williams 9cda5e200c Hotkeys: Swap on Shift S and revert old actions back to S 2022-09-12 14:18:54 -04:00
Mike Williams 37d2addf0e Icons: add swap 2022-09-12 11:11:49 -04:00
Mike Williams f70e1d0f22 SCH/PCB: Set Swap hotkey to 'S'
* Move Add Sheet to Shift+S in Schematic Editor
* Move Set Grid Origin to Shift+S in PCB Editor
2022-09-12 11:11:49 -04:00
Mike Williams fcfb9cc5ad Selection: track selection order 2022-09-12 09:39:43 -04:00
Jeff Young d95847ae79 Add missing format specifier to UnescapeString.
Fixes https://gitlab.com/kicad/code/kicad/issues/9542
2022-09-12 01:48:23 +01:00
Jon Evans b4e71de89f LIB_IDs can have forward slashes 2022-09-11 10:11:25 -04:00
Jeff Young 1b104f20b6 Don't give Scintilla a colour with alpha; it doesn't know what to do.
Fixes https://gitlab.com/kicad/code/kicad/issues/10829
2022-09-11 13:08:31 +01:00
Jeff Young da7eaeffd2 Move IsOK() to wxRichMessageDialog so it handles <ESC> properly.
Fixes https://gitlab.com/kicad/code/kicad/issues/12360
2022-09-11 12:21:16 +01:00
Jeff Young a9877ab117 Include markdown files in project view.
Fixes https://gitlab.com/kicad/code/kicad/issues/12178
2022-09-10 21:11:24 +01:00
Jeff Young 52ea9d0bc5 Don't allow preview canvases to steal focus when keyboard navigating preferences tree.
Fixes https://gitlab.com/kicad/code/kicad/issues/10407
2022-09-10 20:15:49 +01:00
Jeff Young d5430906d4 Make sure cursor settings get saved.
Fixes https://gitlab.com/kicad/code/kicad/issues/11663
2022-09-10 18:43:32 +01:00
Jeff Young b95d9d660d Move gerbview colors to preferences dialog. 2022-09-10 16:11:24 +01:00
Jeff Young f87bf3c46d Special case up-key so it can get past headers in paged dialogs.
Fixes https://gitlab.com/kicad/code/kicad/issues/10078
2022-09-10 09:31:27 +01:00
Seth Hillbrand 09ef7c8f1e Add RPT_SEVERITY_DEBUG for developer-type messages
Move a bunch of importer messages out of the user-visible space as they
are not information that the average user can act on.
2022-09-09 17:21:47 -07:00
Jeff Young 59f546ced0 Allow recursion up the sheet hierarchy for text variable resolution.
Fixes https://gitlab.com/kicad/code/kicad/issues/11953
2022-09-10 00:04:20 +01:00
jean-pierre charras df35576cf9 fix my previous commit (c0661468) broken. 2022-09-09 19:00:47 +02:00
jean-pierre charras c06614689e OPENGL_GAL: disable bitmap image caching due to serious issues (memory leak)
It was re-enabled by commit cbc3bfbf.
The current code to handle cached bitmaps is no longer compatible with the
current code.
Many cached items are created because a lot of clones are used to manage bitmap images.
Cached items are never cleaned, so a lot of memory is never freed after
using these temporary clones
And caching items do not significantly speedup drawings.
2022-09-09 18:37:30 +02:00
Jeff Young f179754118 Implement add-new-on-return for some of our grids.
Fixes https://gitlab.com/kicad/code/kicad/issues/12335
2022-09-09 13:41:13 +01:00
Marek Roszko 087550ebd3 Get 3d plugins working for running from build dir 2022-09-08 21:49:10 -04:00
jean-pierre charras c13b938a4b Free memory when unused, forgotten in my commit d4feb59e 2022-09-08 13:07:36 +02:00
jean-pierre charras d4feb59ed9 OPENGL_GAL, draw bitmap: Rebuild the bitmap cache if the bitmap itself was rotated.
Fixes #12378
https://gitlab.com/kicad/code/kicad/issues/12378
Fix also a Coverity warning.
2022-09-08 12:00:43 +02:00
Jeff Young 9523586bf1 Remove atrophied PCB NO_CONNECTS layer and its colour.
Fixes https://gitlab.com/kicad/code/kicad/issues/12316
2022-09-08 00:28:31 +01:00
Jeff Young 6f5281258e Separate text-thickness clamping into strict and lenient modes.
We used to use the bold setting, but since PCBNew allows you to
directly define the width you end up with settings in between normal
and bold that get clamped to the normal max.

Fixes https://gitlab.com/kicad/code/kicad/issues/12367
2022-09-08 00:28:30 +01:00
Marek Roszko 89310bc403 "Cleaner" pan fix and add internal setter on state 2022-09-07 07:19:39 -04:00