Seth Hillbrand
1e315bc3fe
pcbnew: Add "Select All" Action to pcbnew and fpedit
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2497
2020-08-20 16:07:10 -07:00
Jeff Young
38a994975b
Output resolved text from PCBNew BOM generator.
2020-08-20 13:41:50 +01:00
Ian McInerney
c479deaf02
Use groups when doing graphics import
...
ADDED: Allow DXF/SVG graphics to be imported as a group
Also, cleanup the placement routine to allow the edit tool's flip
and rotate routines to be used when placing the items.
2020-08-20 01:22:48 +01:00
Jeff Young
631b5a9340
Don't allow point editor inversion when editing pad shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5272
2020-08-19 23:27:16 +01:00
Jeff Young
95591669f1
Merge board properties when appending board.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5255
2020-08-19 19:32:20 +01:00
Jeff Young
2bf4fcae2a
Cancel preceeding command if Move was called to place it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5252
2020-08-19 13:18:53 +01:00
Jeff Young
f2a902c0b1
Remove extraneous drag actions.
2020-08-18 19:05:30 +01:00
Wayne Stambaugh
ede39780e2
Remove all debugging output that cannot be disabled.
...
The use of printf, wxLogDebug, and std::err/std::out causes excessive
debugging output which makes finding specific debugging messages more
difficult than it needs to be.
There is still some debugging output in test code that really needs to
be moved into a unit test.
Add debugging output section to the coding policy regarding debugging
output.
2020-08-18 10:17:36 -04:00
Marek Roszko
294de666a4
Don't update msgpanel while dragging zone points
2020-08-18 13:11:47 +00:00
Marek Roszko
d2086eecdd
Don't update panel while drawing a dimension
2020-08-18 13:11:47 +00:00
Marek Roszko
73b2a10cab
Don't try updating msgpanel while segments.
2020-08-18 13:11:47 +00:00
Marek Roszko
a417da4ce0
Split selecteditemmodified to a selecteditemmoved to reduce updatemsgpanel spam
2020-08-18 13:11:47 +00:00
Marek Roszko
3696064f6f
Don't post update events twice and on motion for movement of items
...
Fix #4880
Fix #4741 (hopefully)
2020-08-18 13:11:47 +00:00
Marek Roszko
a0956fbf97
text tool: msgpanel on motion is the same as msgpanel on not moved text....
2020-08-18 13:11:47 +00:00
Jon Evans
3c66f932bf
Synchronize flip board checkbox
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5224
2020-08-17 21:48:11 -04:00
Ian McInerney
e825a99b9a
Consolidate some UI conditions from context menu enabling
...
These conditions are for enabling/disabling a control,
so place them inside the new UI conditions framework instead
of the separate update routine.
2020-08-17 23:21:25 +01:00
Seth Hillbrand
0debaa5866
Update selection ratsnest should do slow updates sometimes
...
When rotating/mirroring/etc, the selection ratsnest should be
recalculated to keep the lines correctly connected for the fast tree
move.
Fixes https://gitlab.com/kicad/code/kicad/issues/5194
2020-08-16 13:31:50 -07:00
Ian McInerney
4491f24d5e
Ripout the old SyncToolbars infrastructure reminants
...
The tool framework no longer needs to request updates of the UI
state for the controls, wxWidgets will do it for us.
2020-08-16 19:10:26 +00:00
Ian McInerney
e8b11c911e
Migrate Pcbnew/footprint viewer/footprint editor to the new UI update system
2020-08-16 19:10:26 +00:00
Ian McInerney
d19ff3e595
Unify the UI IDs for actions between the menus and toolbars
...
By unifying the IDs so that an action only has one UI ID,
it will receive only one update event that will work for
all controls using the action.
2020-08-16 19:10:24 +00:00
Jon Evans
bd14f8a82a
ADDED: New appearance control widget for PcbNew
...
Featuring:
- Layer view presets
- Per-type opacity for tracks, vias, pads, zones
- Net and netclass color and visibility controls
CHANGED: Simplified object visibilty controls
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1951
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1981
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2003
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2173
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2254
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4325
2020-08-15 15:24:28 -04:00
jean-pierre charras
e4021a9ffa
Fix some I18n issues.
...
Strings used for debug and strings containing only a print format like "%i"
are not translated
2020-08-15 17:56:32 +02:00
Seth Hillbrand
a0c54951db
pcbnew: Clean up group move
...
SetPosition() only changes the base position of tracks, we need to use
Move() to move the whole element.
This also cleans up white space and group handling in ratsnest
Fixes https://gitlab.com/kicad/code/kicad/issues/5188
2020-08-14 19:47:03 -07:00
Seth Hillbrand
b8b3d5c16d
pcbnew: Remove all threading from dynamic ratsnest
...
The last remaining threaded operation in dynamic ratsnest was the
recalculation of the dynamic connectivity map. Because we do not
require any of the extra features of the connectivity map, we can get
away with a lightweight move of the anchors to update the ratsnest. The
resulting connectivity tree is not valid but it is not needed for the
ratsnest, which only needs a list of nets/anchors.
2020-08-14 17:48:33 -07:00
Jeff Young
393bb0fd83
Fix assert where geometry routine wasn't ready to handle layers.
...
This introduces layer handling to a lot of the geometry routines.
Many of them don't do much with it now, but it does help multi-layer
zones and will help when padstacks are implemented.
2020-08-12 22:20:08 +01:00
Jeff Young
a6d44676b3
Move commit handling outside of ZoneFiller.
...
This allows us to rever the commit on a cancel.
Fixes https://gitlab.com/kicad/code/kicad/issues/5107
2020-08-12 22:20:07 +01:00
Qbort
b41892e4da
Rename class GROUP in pcbnew to PCB_GROUP
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5156
2020-08-12 15:36:08 +01:00
Seth Hillbrand
ab58b67842
Adding triangulation viewing to AC
...
This adds a helper routine to visualize the quality of our
triangulation. It also renames an excessively long variable name for
the arc editor
2020-08-12 06:22:45 -07:00
Joshua Redstone
ee428876ec
ADDED: Group/Ungroup function
...
This implements the group/ungroup functions to mark a set of EDA_ITEMs as a unit, allowing them to be moved and rotated as a unit
2020-08-11 19:37:07 +00:00
Jeff Young
a0f95855d1
ADDED board repair tool.
...
Currently it just fixes duplicate UUIDs.
2020-08-11 15:02:27 +01:00
Jeff Young
5ab39b7c06
Clean up reannotation UI.
2020-08-11 15:02:27 +01:00
Ian McInerney
e03f6a3b49
Pcbnew: Route all display options updates through the frame
...
The frame contains the main option set that is used for setting the UI
state, so it must be updated. The frame also updates the view when set,
so calling the view separately to update the options isn't needed.
Fixes https://gitlab.com/kicad/code/kicad/issues/5069
2020-08-11 01:20:11 +01:00
Seth Hillbrand
211cbadc24
pcbnew: MODULEs are not BOARD_CONNECTED_ITEMS
...
Handling ratsnest requires first checking for modules, handling their
pads and then checking that the remaining elements derive from
BOARD_CONNECTED_ITEM
Fixes https://gitlab.com/kicad/code/kicad/issues/5131
2020-08-10 11:01:03 -07:00
jean-pierre charras
23a5b0ca5f
fix a few compil warnings and a Coverity warning.
2020-08-10 18:32:44 +02:00
Jeff Young
34705fd8b2
More clone vs duplicate bugs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5120
2020-08-10 14:45:01 +01:00
Jeff Young
692aeff334
Fix a bunch of usages of copy ctor that really meant duplicate.
...
In particular, "duplicate" means "with a new KIID".
Fixes https://gitlab.com/kicad/code/kicad/issues/5127
2020-08-10 14:23:11 +01:00
Seth Hillbrand
5fc6b74c89
ADDED: Remove unused pads
...
This option removes copper layers from pads and vias where they are not
connected to other board elements. This allows the inner layers to be
more closely routed if the via landing pad is not needed.
Fixes https://gitlab.com/kicad/code/kicad/issues/1835
2020-08-10 03:27:26 +00:00
Fabien Corona
133d082cc5
Pcbnew fix arc edition
2020-08-09 23:03:31 +00:00
bjpiccioni
d08bf90576
ADDED: Geographic Reannotation
2020-08-09 12:43:05 -04:00
Jeff Young
4317881012
Improve delete-unused-layers to better handle multi-layer items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5116
2020-08-09 15:39:51 +01:00
Jeff Young
5c3fddffa6
Handle module keepout zones on internal layers.
...
Make sure the Keepout Zone dialog allows specifiying them and make
sure they're selectable.
Fixes https://gitlab.com/kicad/code/kicad/issues/5113
2020-08-09 00:24:53 +01:00
Jeff Young
e5b50d90a7
Update DRC rules to new layer and disallow grammars.
...
Also adds support for hooking rules up to named zones.
Fixes https://gitlab.com/kicad/code/kicad/issues/2041
2020-08-07 21:49:36 +01:00
Seth Hillbrand
406de56964
pcbnew: Prevent use of non-connected item in ratsnest
...
We need to be careful in the connectivity system to always use
dyn_cast/dynamic_cast and check the return when dealing with board
items. Getting non-connected items will result in null nets when
propagated.
Fixes https://gitlab.com/kicad/code/kicad/issues/5082
2020-08-07 13:38:51 -07:00
Jeff Young
00e77d1ba4
Implement pad & via aprons for hatched zones.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2519
2020-08-07 15:15:43 +01:00
Jeff Young
4b51184678
Don't try and select if we don't have a location.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5088
2020-08-06 01:22:59 +01:00
Jeff Young
e2ec9d9f00
A more fail-safe way to disallow editing while routing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4413
Fixes https://gitlab.com/kicad/code/kicad/issues/5067
2020-08-05 16:51:58 +01:00
Jeff Young
59ba793096
Disable various combinations of router and editing commands.
...
They just confuse each other.
Fixes https://gitlab.com/kicad/code/kicad/issues/5067
2020-08-04 14:32:02 +01:00
Jeff Young
7108a25278
Fix issues flipping text.
...
This is a really hard problem to get right. This algorithm won't
look quite right if you assemble a paragraph from disjoint text
objects and flip them all top-to-bottom (as it will re-order the
text). But this is really the nature of the problem (and has to
stay that way to correctly flip disjoint graphic items or mixed
text and graphic items). The real fix here is to support text
wrapped in a single text box.
Fixes https://gitlab.com/kicad/code/kicad/issues/4480
2020-08-02 17:05:13 +01:00
Jeff Young
dae40d5c9f
Don't use std::set_difference which assumes sorted lists.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4968
2020-08-01 22:15:53 +01:00
Jeff Young
b2dc592bf1
Clear UUID and path when pasting board items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4992
Fixes https://gitlab.com/kicad/code/kicad/issues/4041
2020-07-30 18:06:42 +01:00
Jeff Young
be957e0105
Convert parent-less module items to board items on paste.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4938
2020-07-27 19:53:42 +01:00
jean-pierre charras
6f7d5f5e2b
Footprint editor: fix some issues in flip and mirror commands.
...
more about fixes #4958
https://gitlab.com/kicad/code/kicad/issues/4958
2020-07-25 18:10:24 +02:00
Ian McInerney
50b2271f84
Fix missing variable initialization
2020-07-18 23:56:39 +01:00
Ian McInerney
da6d0c9de6
Add cancel to the selection context menu if a tool is running
...
The selection tool's context menu is displayed during the move tool,
so it should contain the ability to cancel the current action.
2020-07-16 15:12:58 +01:00
Jeff Young
7340c97ef9
Undo for schematic-wide operations.
...
Editing value/footprint fields of multi-unit components.
Find/Change.
Annotation.
Back annotation.
Fixes https://gitlab.com/kicad/code/kicad/issues/2122
Fixes https://gitlab.com/kicad/code/kicad/issues/4869
Fixes https://gitlab.com/kicad/code/kicad/issues/3933
Fixes https://gitlab.com/kicad/code/kicad/issues/4871
Fixes https://gitlab.com/kicad/code/kicad/issues/3899
2020-07-13 12:32:17 +01:00
Jon Evans
2f31bf278b
Fix layer hotkey dispatch
...
Hotkeys received by more than one tool need AF_NOTIFY
2020-07-11 21:59:16 -04:00
Jon Evans
5d118b0700
More visibility settings infrastructure
...
ADDED: Three-state high contrast mode action
ADDED: Save contrast mode in local settings
Also some initial infrastructure for layer presets
2020-07-11 21:59:07 -04:00
Jon Evans
72b08f2b18
ADDED: Hide ratsnest for specific nets
...
List of hidden nets stored in project local settings
Hide/Show actions in context menu only for now, will
add them to some more GUI places soon.
Ref https://gitlab.com/kicad/code/kicad/-/issues/1951
2020-07-10 21:06:17 -04:00
Jon Evans
bb596ac139
Add Move with Reference to Special Tools menu
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4838
2020-07-09 12:02:26 -04:00
Seth Hillbrand
7cea4b23f1
ADDED: Expand selection in context menu
...
Break out the context menu with heuristically limited choices being
appended to the main list rather than re-selecting
Fixes https://gitlab.com/kicad/code/kicad/issues/4799
2020-07-07 14:18:35 -07:00
Jon Evans
a3655225cd
Save selection filter state in project local settings
2020-07-06 21:53:12 -04:00
Jon Evans
707ce66cc6
ADDED: Move with Reference action
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/4755
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/2304
2020-07-06 19:33:14 -04:00
jean-pierre charras
1463dd10b2
Pcbnew fix: Select/Expand Connection can be used only once on the same segment
...
Was due to a incorrect cleared flag in calculations.
Fixes #4767
https://gitlab.com/kicad/code/kicad/issues/4767
2020-07-05 12:42:12 +02:00
Jon Evans
0148c1db84
Support layer switch hotkeys while routing
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4699
2020-07-03 19:49:19 -04:00
Thomas Pointhuber
7ba6a77c94
Improve arc geometry manager to choose the direction which makes more sense
...
As long as the arc angle stays below <60°, it will automatically choose between
clockwise and counter clockwise. This allows the user to choose the direction
with a simple mouse movement.
2020-07-03 15:05:17 +00:00
Jon Evans
c0aa6965de
Migrate PcbNew project settings to new framework
...
Various architecture upgrades to support this.
Creating a BOARD now requires a valid PROJECT, which caused
some (mostly transparent) changes to the Python API internals.
ADDED: Project local settings file
CHANGED: Board design settings are no longer stored in PCB file
CHANGED: Net classes are no longer stored in PCB file
CHANGED: Importing board settings now reads boards, not just projects
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2578
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4070
2020-07-02 22:08:54 -04:00
jean-pierre charras
bba5cfe17e
fix a minor compil warning
2020-07-01 18:52:42 +02:00
Jeff Young
8c4bfed001
Slight improvement on function names.
2020-07-01 16:57:00 +01:00
Jeff Young
7b042f4a75
Add rectangle tool to PCBNew toolbar in favour of Aux Origin.
...
ADDED new rectangle graphics tool for PCBNew and Footprint Editor.
Also adds rectangle tool to both Footprint Editor and PCBNew Place
menus.
The Aux Origin tool can come back once we have multi-select toobar
buttons.
Also collapses an unnecessary level out of the auxOrigin and gridOrigin
settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/2246
2020-07-01 13:31:30 +01:00
Jeff Young
e91b7cf18f
Separate the two offset strategies for PointEditor Pad editing.
...
This doesn't indicate what I think we should do with them; it will
just make whatever we decide easier to do.
2020-06-29 23:25:13 +01:00
Jeff Young
36e94773a3
Adjustments to point-editing of pads.
...
1) Don't offset pad with no hole and no offset: move them instead.
2) Don't allow editing of locked pads in board editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/2153
2020-06-29 19:22:38 +01:00
Jeff Young
516de9c85e
Point editor hookup for non-custom-shaped pads.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2153
2020-06-29 11:50:44 +01:00
Jon Evans
65f5ebd8f2
ADDED: Persistent selection filter UI for PcbNew
2020-06-28 15:12:47 +00:00
Jon Evans
0d4ee39f75
CHANGED: Copper zones can be on more than one layer
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1963
2020-06-28 08:52:37 -04:00
Jeff Young
367fd79b5f
Don't try and second-guess the user.
...
(Especially now that polygons are useful on copper layers for custom
pad shapes.)
2020-06-27 22:08:13 +01:00
Jeff Young
32c3ea4edd
Flags cleanup.
...
Remove extraneous use of FLAG0 from tracks cleaner (it was checked but
never set).
Fix issue in expand connections where two parts of it couldn't agree
on the same flag (BUSY vs SKIP_STRUCT), and where the second part was
clearing the flag instead of setting it.
Remove obsolete HIGHLIGHT infrastructure (we now use selection).
Remove extraneous use of BUSY flag in several places (it was never
set).
2020-06-27 17:53:04 +01:00
Jeff Young
da2b7071b4
WYSISYG custom pad editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2153
Fixes https://gitlab.com/kicad/code/kicad/issues/2305
2020-06-27 14:37:01 +01:00
Jon Evans
129c16cf7d
Fix unselected event not firing when clicking empty space
2020-06-26 22:00:12 -04:00
Peter Montgomery
19b7755ab7
Coverted Gerbview files to version in master so hotkey_rollover repo only contains changes for the hotkey fix
2020-06-25 22:43:29 +00:00
Seth Hillbrand
a893d19d26
pcbnew: Allow slow ratsnest to turn off
...
Depending on where you move the selection, the slow ratsnest might turn
on. This prevents that setting from being sticky, reverting to smooth
movement.
2020-06-24 17:16:07 -07:00
Jeff Young
e376750f62
Flatten CS_PAD_PRIMITIVE out in favour of reusing DRAWSEGMENT.
...
(In prep for the eventual replacement of DRAWSEGMENT internals with
SHAPE.)
2020-06-24 12:22:42 +01:00
Seth Hillbrand
1a7c270dcd
Fix invalid dereference on first highlight
...
When highlighting nets we don't save the previous net when there isn't a
previous net highlighted.
2020-06-23 20:36:05 -07:00
Jon Evans
2ab9ceaf02
Pick up net for new zone from selection if no net is highlighted
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4706
2020-06-23 17:16:34 -04:00
Jeff Young
d01b29ab37
Cleanup pad geometry handling.
...
There were a lot of plotters, exporters, etc. that were rolling their
own implementations.
This also introduces a lazily-built set of SHAPE objects for doing
collision detection and some forms of rendering (and later DRC).
2020-06-22 22:28:37 +01:00
Jon Evans
c0175c48af
ADDED: Setting to control track mouse drag behavior
...
Default is now to perform a 45-degree drag
2020-06-21 15:39:39 -04:00
Jon Evans
713cd4a47a
Point editor: show dragged points with a highlight
...
Take points editor colors from color theme
Also fix an issue where the edited object sometimes didn't
update when a point is dragged.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4600
2020-06-21 14:43:41 -04:00
Jon Evans
a16c9df79c
Delete the right object in arc cleanup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4694
2020-06-21 13:03:14 -04:00
jean-pierre charras
ad69e449fe
Fix a collision name in drawing_tool.h with a msys2 header
2020-06-21 10:36:01 +02:00
Jeff Young
b779715996
Don't whack original pad shape when converting to custom.
...
Rectangles and circles convert easily, but a chamfered rectangle
(for instance) needs more careful handling.
2020-06-19 14:10:41 +01:00
Jeff Young
cae493fe65
More infrastructure work for shape editor.
2020-06-18 15:38:01 +01:00
Seth Hillbrand
eb89d1c68b
pcbnew: Minor update to ratsnest calc
...
BuildConnectivity updates the ratsnest after it completes. By compiling
the ratsnest before connectivity, we update it twice with the dirty flag
being reset after connectivity updates.
2020-06-17 19:43:11 -07:00
Jeff Young
a7703d1207
Cleanup Graphics to parallel Cleanup Tracks & Vias.
...
This also allows for easier migration to DRAWSEGMENT::S_RECTs by
auto-converting 4 rectilinear lines to a rectangle.
2020-06-17 18:44:39 +01:00
Jeff Young
a3cab09fb4
Make it clearer that drawSegment() can modifiy the current seg pointer.
...
This might also quiet the Coverity warning, but I've also marked it as a
false positive (as it might still mess up on the new code).
2020-06-17 18:44:39 +01:00
Seth Hillbrand
8c57821e9b
pcbnew: Move ratsnest items to separate folder
2020-06-16 11:15:14 -07:00
Jeff Young
aeed8e6e2c
Finish implementation of DRAWSEGMENT::C_RECT.
...
It's currently only supported in the Footprint Editor. It could be
easily added to the board editor (all the code is there), but the board
editor is a little short on room in the drawing tools toolbar.
2020-06-15 20:51:31 +01:00
Eli
2a334a5c59
Updates wording used in alignment submenu to make the actions clearer when icons are missing. Also reorganises the order of items in the submenu.
2020-06-15 16:49:36 +00:00
Jeff Young
ad12c42e8b
Push grid settings dialogs down into common.
...
This also gives support for fast grid switching and a user grid
to eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/2200
2020-06-14 19:26:37 +01:00
Seth Hillbrand
899496baaa
pcbnew: Remove item from edit selection in favor of parent
2020-06-14 07:29:44 -07:00
Seth Hillbrand
491ac0256d
pcbnew: Add a number of missing handles for module zones
2020-06-14 07:23:10 -07:00
Seth Hillbrand
09eee84a3e
pcbnew: Handle module zone area in delete
...
Selections containing zone areas need to be handled separately by
modifying the parent rather than the item itself
Fixes https://gitlab.com/kicad/code/kicad/issues/4653
2020-06-14 07:05:14 -07:00
Jeff Young
47ab7c78a6
Divorce GRID_HELPER from the parent frame.
...
This moves GRID_HELPER fully into the tool framework.
2020-06-13 22:44:16 +01:00
Seth Hillbrand
4d4d24fc61
Don't snap to arc midpoints
...
This removes the extra snap points in the arcs, ensuring the endpoint
snaps connect to the correct location on an arc.
2020-06-13 11:23:14 -07:00
Jeff Young
f84406009b
Push a couple of layers of indirection out of grid settings.
2020-06-13 11:35:56 +01:00
Ian McInerney
a843c74529
Add new kiplatform library for platform-specific code
...
* Implement ReparentQuasiModal for OSX natively
* Implement ForceFocus of OSX natively
This change means we no longer rely on the kicad-specific functions in our osx wx fork.
2020-06-03 14:58:54 +00:00
jean-pierre charras
e3c3dae776
Fix PCBnew crash when show local ratsnest and selecting a footprint with no pads
...
Fixes #4506
https://gitlab.com/kicad/code/kicad/issues/4506
2020-06-01 09:09:40 +02:00
Jon Evans
5250215d97
Use the calculated bbox for zoomFitSelection
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4120
2020-05-29 16:38:25 -04:00
Jeff Young
d99febba6c
Treat sketch mode module items and board items the same.
2020-05-26 23:21:38 +01:00
Jeff Young
160981ee71
Better error reporting for DRC rule parsing.
2020-05-25 22:51:47 +01:00
Mikołaj Wielgus
ecec7192fc
Add "Select All" in schematic & layout disambiguation popup menu
...
ADDED: "Select All" in schematic editor disambiguation menu
ADDED: "Select All" in layout edtor disambiguation menu
Fixes https://gitlab.com/kicad/code/kicad/-/issues/3877
2020-05-24 23:35:04 +00:00
Ian McInerney
e18a9d4aa3
Fix mac compile issue introduced in 66929358
2020-05-24 23:53:55 +01:00
Jon Evans
c7daf8a8f3
ADDED: Cross-probe highlighting of bus members
...
Note: this is a basic implementation but it could be
improved once we include bus information in the netlist
and pcbnew can natively keep track of buses and nets
instead of just nets.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4158
2020-05-24 13:30:23 -04:00
Ian McInerney
4ecf99e7c8
Give the footprint viewer a toolbar and remove the options dialog
...
CHANGED: Cvpcb fpviewer and the pcbnew fpviewer no longer have an options dialog
ADDED: Add a side toolbar to the pcbnew footprint viewer (and the measure tool)
This also cleans up some of the settings structs in the viewers, since
it was somewhat confusing before.
Fixes https://gitlab.com/kicad/code/kicad/issues/2205
2020-05-24 11:58:33 +01:00
Ian McInerney
6692935808
Consolidate common viewer actions across cvpcb and pcbnew frames
...
* Consolidate the measure tool into one tool (this gives cvpcb
unit changing and snapping capabilities in its measure tool)
* Transition cvpcb to use actions for the sketch modes
* Replumb how magnetic items settings are stored and used
2020-05-24 11:58:33 +01:00
Jon Evans
f2e003147e
ADDED: Enable color themes for PcbNew printing
2020-05-16 13:19:43 -04:00
jean-pierre charras
1d914133c9
Pcbnew, context menu: move createArray,moveExact,positionRelative in a submenu
2020-05-16 16:09:00 +02:00
jean-pierre charras
c805b52c39
Tool pad enumerate: show it only in footprint editor.
...
In board editor, its use makes no sense, and crash Pcbnew.
2020-05-16 15:52:47 +02:00
Jeff Young
935cab160b
A bit of defensive code for an unreproducible bug.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4376
2020-05-09 14:14:38 +01:00
Jeff Young
19dc1f8b69
Make sure text gets drawn after placing even if the mouse isn't moved.
2020-05-09 14:14:38 +01:00
Michael Kavanagh
8418ac34bc
Allow fp text to be group selected in HC mode
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2259
2020-05-07 21:57:37 +00:00
Jeff Young
889b6cb1b1
Clean up some commenting and rename MODULE_EDITOR_TOOLs to match filename.
2020-05-03 20:56:32 +01:00
Jeff Young
56946f4db1
Fix pad name increment to use last edited pad.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1882
2020-05-03 08:59:51 +01:00
Jeff Young
199bb2ffb0
Add hittesting for worksheets in Pcbnew and Eeschema.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4282
2020-05-03 00:07:38 +01:00
Jeff Young
fec0c235d9
Hook up Footprint Text Line Mode action to handler.
2020-04-27 00:24:57 +01:00
Michael Kavanagh
e05f36f9a7
Convert graphic polygons on CrtYd layers to lines
...
Same restriction as Edge_Cuts, due to their intended purpose polygons
don't make sense.
2020-04-26 18:51:47 +00:00
Ian McInerney
99dcadf7e6
Introduce new KI_FALLTHROUGH macro
...
Annotate purposeful fallthroughs in switch statements with the
KI_FALLTHROUGH macro.
2020-04-25 00:44:09 +01:00
Ian McInerney
f649204c04
Allow graphic polygons/keepouts to be closed automatically
...
ADDED: Auto close option for graphic polygons/keepouts/cutouts
ADDED: Delete last point option for graphic polygons/keepouts/cutouts
Fixes https://gitlab.com/kicad/code/kicad/issues/2350
2020-04-24 18:35:43 +01:00
Jeff Young
1535c83b88
Lay some groundwork for adding distances to DRC errors.
...
modified: eeschema/lib_rectangle.cpp
2020-04-24 14:46:22 +01:00
jean-pierre charras
825d202480
Fix some strings to help translation.
...
Remove translation mark for strings used in debug, or strings
that cannot be translated (for instance because they are char strings
instead of wide char strings)
2020-04-23 07:40:19 +02:00
Jon Evans
b22ff26688
Rename List Nets to Net Inspector to better reflect function
2020-04-21 20:24:27 -04:00
Jeff Young
f113370e1e
Edit worksheet properties when no other selection is available.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4044
2020-04-21 21:17:59 +01:00
Oleg Endo
80e40b862c
destroy window when list nets dialog is closed
...
avoid potential performance issues when the dialog is still listening to
the board updates and refreshing its data and view structures.
it seems useful to keep the settings of the dialog across dialog
open-close cycles.
2020-04-21 13:23:56 +00:00
Oleg Endo
980f4a1f6a
make select net dialog non-modal
...
also make sure to call BOARD::HighLightON before/after calling
BOARD::SetHighLightNet
2020-04-21 13:23:56 +00:00
Oleg Endo
137fe48d88
rewrite select net dialog
2020-04-21 13:23:56 +00:00
Oleg Endo
e3aec20f82
move PCB_INSPECTION_TOOL::ListNets into pcb_inspection_tool.cpp, split out dialog_select_net_from_list.h
2020-04-21 13:23:56 +00:00
Michael Kavanagh
7db355e34a
ADDED: TOOL_ACTION for switching PNS router mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2249
2020-04-19 22:44:05 +00:00
Jeff Young
cb708aaadb
Fix some memory leaks.
2020-04-16 21:57:07 +01:00
Jeff Young
9c8941e040
Remove a bunch of globals.
2020-04-16 17:34:46 +01:00
Simon Richter
5aac36dba9
New enum for trace selection mode
...
This avoids giving KICAD_T another meaning, which is especially messy here
as "select up to the next via" is encoded as SCH_JUNCTION_T, which belongs
to eeschema.
Also, document what is happening.
2020-04-15 11:17:51 +00:00
Ian McInerney
37a4dd927b
Allow deletion of zone cutout areas
...
ADDED: Ability to delete zone cutout areas
Fixes https://gitlab.com/kicad/code/kicad/issues/4188
2020-04-14 17:57:47 +01:00
Jeff Young
6e800bddae
Rationalize penWidth processing as first step in removing some globals.
2020-04-13 20:58:13 +01:00
Jeff Young
e016b629d3
Be smarter about determining if there are modules in the selection list.
...
The old algorithm would delete modules if another module was in the
list, which was not the intention.
Fixes https://gitlab.com/kicad/code/kicad/issues/4175
2020-04-09 00:06:17 +01:00
jean-pierre charras
25fb2595c8
Fix fully broken selection of items of the same sheet, in pcbnew and from eeschema.
...
Previously, the full UUID path used to select footprints was full broken.
2020-04-02 14:21:09 +02:00
Ian McInerney
0d79ada3ec
Show the pencil cursor when placing an item, but it isn't created yet
2020-04-01 18:24:58 +01:00
Ian McInerney
4b647ba6b1
Refactor microwave parts into the microwave tool
2020-04-01 18:24:31 +01:00
Jeff Young
4990d1e7b2
Variable substitution framework.
...
This implements editing of variables and moving SCH_FIELDs,
TEXTE_MODULEs, TEXTE_PCB and worksheet items over to the new
framework.
2020-03-30 14:15:59 +01:00
Jeff Young
204f2cd580
Reference -> reference designator.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4012
2020-03-17 16:09:25 +00:00
Jeff Young
3b97993daf
Another attempt to fix offset issues when pasting board items to ModEdit.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4032
2020-03-16 18:45:55 +00:00
jean-pierre charras
78a7c7dfe0
Zones: fix a crash when adding a zone cutout to a zone having already holes.
...
Fixes #4039
https://gitlab.com/kicad/code/kicad/issues/4039
2020-03-12 14:42:32 +01:00
Jeff Young
51b9944667
Fix pasting of items from board to Footprint Editor.
...
In particular, map the netlist info to the orphaned item, and
adjust the position of module graphic items to no longer be
module-relative.
Fixes https://gitlab.com/kicad/code/kicad/issues/4032
2020-03-10 23:07:01 +00:00
Seth Hillbrand
12088f240d
Fix a couple crashes with small canvases
...
The canvas size is not guaranteed to be strictly > 0, so we need to
enforce a minimum returned size before dividing by it or passing to GAL
initialization
2020-03-04 14:33:42 -06:00