Commit Graph

2061 Commits

Author SHA1 Message Date
Jon Evans f1c599fa4d Tweak PCB selection behavior to reduce unintuitive behavior
We were discarding shapes too aggressively for having a
larger area than a shape underneath.

Let's also try showing fewer disambiguation menus, in particular
always preferring items on the active layer when the candidates
include overlapping items of similar area on other layers.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/7949
2021-03-20 13:11:51 -04:00
Jon Evans 6924b98bc3 Remove deprecated BRIGHT_BOX preview item 2021-03-20 12:09:20 -04:00
Jon Evans c04e19f9ac Include optimization: move some things from common.h to point-of-use 2021-03-20 12:09:18 -04:00
Jeff Young 90742bba9f Adjust constraints after editing other points.
Fixes https://gitlab.com/kicad/code/kicad/issues/7103
2021-03-19 11:35:17 +00:00
Jonathan Haas 95051c4786 Also duplicate arcs in pcbnew
Fixes https://gitlab.com/kicad/code/kicad/issues/7943
2021-03-18 13:35:30 +00:00
pgvoorhees bb8d31cd06 Fix context item selection filter type omissions
Fixes #7839
2021-03-16 13:08:50 +00:00
jean-pierre charras cb451dc4b2 Pcbnew: Fix memory leaks and fix inefficient code. 2021-03-14 20:27:59 +01:00
jean-pierre charras a1b4bcc210 Refinements (add icons to menuitems and better help strings) 2021-03-14 18:44:31 +01:00
jean-pierre charras c763b0088e Fix some issues in drawing_stackup_table_tool.cpp 2021-03-14 17:44:16 +01:00
jean-pierre charras 3ba7fc0cc2 Move board stackup table drawing code from drawing_tool.cpp to drawing_stackup_table_tool.cpp
This avoid a too large drawing_tool.cpp file.
Remove also values in internal units and convert them to mm.
2021-03-14 17:44:16 +01:00
Fabien Corona f428ce03f2 ADDED: pcbnew - stackup / characteristics table 2021-03-13 20:19:46 +00:00
Jeff Young 18470693fe Copy linewidths when coverting to polygons.
Fixes https://gitlab.com/kicad/code/kicad/issues/7893
2021-03-13 17:06:49 +00:00
Jeff Young 93db7a130a Offset 3D models when moving footprint origin.
Fixes https://gitlab.com/kicad/code/kicad/issues/7868
2021-03-12 17:37:38 +00:00
Jeff Young a01bd52571 Use default line width when creating polygons.
Fixes https://gitlab.com/kicad/code/kicad/issues/7876
2021-03-12 14:54:54 +00:00
Jon Evans 18037e2f65 Rework bitmap system to load from archived PNGs
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.

Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz

The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.

Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.

Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
Jeff Young ea9c269914 Don't fill polygons converted from lines.
The lines couldn't have been filled, so the polygon shouldn't start
out filled either.  The user can set it to filled if they want.

Fixes https://gitlab.com/kicad/code/kicad/issues/7867
2021-03-11 10:42:21 +00:00
Jeff Young e48f86bfd6 Move default assignment on Mac.
CHANGED: add corner and repeat last command now default to 'I' instead
of '<insert>' on Mac.

1) wxWidgets doesn't currently display the correct graphic in the menu
for the insert key
2) Mac laptops don't have an instert key

Fixes https://gitlab.com/kicad/code/kicad/issues/5016
2021-03-10 13:35:04 +00:00
Dominik Wernberger e2aa7be4b3 Added a lot of consts and refactored a few lines 2021-03-08 12:49:48 -08:00
Jeff Young 2bc10d58b5 Fix some cases where PCB_FP_ZONE_T was left out.
Fixes https://gitlab.com/kicad/code/kicad/issues/7615
2021-03-08 13:00:46 +00:00
Jonathan Haas 274d4e2eb4 Fix orientation of orthogonal dimensions
When drawing and editing orthogonal dimensions, take distance and
relative position to the end points into account.

Fixes https://gitlab.com/kicad/code/kicad/issues/7243

Fixes https://gitlab.com/kicad/code/kicad/issues/7189
2021-03-08 00:13:38 +00:00
Jon Evans 4ddb942ec0 Do not allow drag selection or drag move when already moving something
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7800
2021-03-04 19:01:31 -05:00
Jon Evans 1fc399fa31 Fix a few more cases of picking up wrong mouse positions
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7745
2021-03-03 20:09:24 -05:00
Wayne Stambaugh 79a9d69ff5 Coverity fixes for issues 314755, 316287, 324536, 324539, and 324539. 2021-03-02 08:10:37 -05:00
Jon Evans 63b5d8db43 Pcbnew: use MRU path when opening files in standalone mode
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7734
2021-02-28 14:30:16 -05:00
Marek Roszko b82fcbcad6 More exception var disuse warnings 2021-02-26 19:30:58 -05:00
Jeff Young 86aaa2e9cb Rationalize footprint bounding boxes and cache all of them.
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 13:50:27 +00:00
Tomasz Wlostowski e221b11e3b GRID_HELPER: fixed arithmetic issue in segment snap distance check disguised as 'excessive optimization' by the dragger in the router 2021-02-25 17:18:23 +01:00
Seth Hillbrand 0bab025832 Fixup toolchaining for immediate mode
The move tool can stack on others, so when we re-enter the previous tool
this caused another immediate action.  We flag re-entry in the tool
stack to check for this and avoid unexpected tool starts
2021-02-24 10:44:54 -08:00
Seth Hillbrand 0518d9c546 Add more force-immediate tools 2021-02-23 17:05:03 -08:00
Seth Hillbrand 005622027f Add component/footprint is always immediate
When a user clicks on the "Add Component", "Add Power" or "Add Footprint"
icon, they want to add the item.  Requiring an extra click on the screen
before selecting the component/footprint is not needed.
2021-02-23 16:15:31 -08:00
Jeff Young a3b9e8ddb4 Round 2 of Worksheet -> Drawing Sheet. 2021-02-23 11:57:44 +00:00
Seth Hillbrand 2013a801d1 Fix zone merge undo
Also remove an implicit zone merge that was happening when the user
edited the zone parameters.  This appears to have been a feature but it
happened without a) telling the user and b) having the option to prevent
it.

Fixes https://gitlab.com/kicad/code/kicad/issues/7661
2021-02-22 15:45:17 -08:00
Jeff Young cad5198ab7 Worksheet -> (industry standard) Drawing Sheet. 2021-02-22 17:35:46 +00:00
Jon Evans 68b81c8271 Don't copy footprint text along with the footprint
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7647
2021-02-21 19:59:16 -05:00
Mikolaj Wielgus 2a9d76f1e3 Pcbnew: Fix snapping segment traces and graphics when initiating move
Fixes https://gitlab.com/kicad/code/kicad/issues/4746
2021-02-20 20:29:43 +00:00
Jeff Young 9dacd4abb7 Don't allow footprint children in groups outside their footprint.
Fixes https://gitlab.com/kicad/code/kicad/issues/7625
2021-02-20 18:09:56 +00:00
Jeff Young 91e876ce0d Make sure the title is updated when file is saved/reverted/etc.
Fixes https://gitlab.com/kicad/code/kicad/issues/7626
2021-02-20 15:09:47 +00:00
Zoltan Gyarmati 5a0a2a8366 pcbnew: only update cursor instead of activating selection tool when quiting delete tool
Fixes: https://gitlab.com/kicad/code/kicad/issues/7531
2021-02-20 06:40:00 +00:00
Jeff Young c2f68ca4da Whittle down library tree context menus to be more contextual.
(From discussion on Zulip.)
2021-02-19 19:07:45 +00:00
Jeff Young 828cdacc6f Add some missing tooltips.
Fixes https://gitlab.com/kicad/code/kicad/issues/7582
2021-02-18 18:33:52 +00:00
PJM c001c26575 Pcbnew: Drag selections containing only tracks or vias
CHANGED: If the user made a selection and then tried dragging it, the
drag would only succeed if the selection contained at least one
footprint.  Selections with only tracks and vias would instead make
KiCad drag a new selection box.

This MR allows routing of selections of a single track or via, while moving
selections containing more than one item, whether or not they also contain
a footprint.

Fixes https://gitlab.com/kicad/code/kicad/issues/7539
2021-02-18 17:49:48 +00:00
Jon Evans b2cd97fd84 Don't rotate/flip footprint texts along with the footprint 2021-02-18 12:39:28 -05:00
Seth Hillbrand 25e78162c8 Cleanup icons
- Adjust group/ungroup
- Use Mirror triangles for rotate
- Smooth goto badge
2021-02-17 17:26:16 -08:00
jean-pierre charras 5d2dc0b50e Fix a few (minor) issues:
- Make DIALOG_SHIM::SetPosition working)
- rename PCB_BASE_FRAME::SelectLayer() to PCB_BASE_FRAME::SelectOneLayer()
- PCB_BASE_FRAME::SelectOneLayer(): make dismiss dialog by escape key working.
Fixes #7578
https://gitlab.com/kicad/code/kicad/issues/7578
2021-02-17 20:56:43 +01:00
Jeff Young 34c2028e7b Assign via net before running DRC checks.
Fixes https://gitlab.com/kicad/code/kicad/issues/7579
2021-02-17 19:39:56 +00:00
Jeff Young d66de5bb35 Exclude footprints and groups from VIA_PLACER DRC testing.
(Their children need to get tested, but not the parent objects
themselves.)

Fixes https://gitlab.com/kicad/code/kicad/issues/7569
2021-02-17 14:08:53 +00:00
Jon Evans ba6aa3e034 Pcbnew: allow multiple selection of footprint text
With the selection filter and other improvements, we no longer
need to use this workaround to prevent accidental selections.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/7527
2021-02-16 22:40:23 -05:00
Jon Evans 34c2bbfe51 Don't rebuild the whole nets grid on show/hide
Besides being slow, this causes the scroll position
of the grid to be lost.
2021-02-16 22:31:09 -05:00
Jeff Young 2a7e60960a Use standard mirror icons & terminology.
Also use standard group icons.

Also put both (and rotate commands) in toolbar.

Fixes https://gitlab.com/kicad/code/kicad/issues/7504
2021-02-16 21:11:36 +00:00
James Jackson dd7030a28f Keepout and graphic selection filters in footprint editor behave as per PCB editor
Fixes #7547

Fixes https://gitlab.com/kicad/code/kicad/issues/7545
2021-02-16 20:49:14 +00:00