Commit Graph

9473 Commits

Author SHA1 Message Date
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
Jon Evans 249de20c6b Fix show/hide of default netclass 2020-08-19 07:47:20 -04:00
Jeff Young 4b7c883095 Add layer presets switcher.
Fixes https://gitlab.com/kicad/code/kicad/issues/5247
2020-08-19 11:56:28 +01:00
Jeff Young 01bf395cc2 Make via cleaning options clearer.
Fixes https://gitlab.com/kicad/code/kicad/issues/5253
2020-08-19 11:56:28 +01:00
Michael Kavanagh 1aad216647 Move Geographical Reannotate menu below separator 2020-08-19 10:18:24 +00:00
Seth Hillbrand a3fc028c9b CHANGED: locked parameter explictly written
Removed the bitmap status field that saved internal states into the
file, creating rcs churn.  Also removed the unneeded count variables at
the start of the file as these created merge conflicts for every board
that had multiple revisions

Fixes https://gitlab.com/kicad/code/kicad/issues/1850
2020-08-19 03:51:30 +00:00
Jon Evans d7b38d10c2 Use layer base color to create selection candidate color
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5072
2020-08-18 22:57:17 -04:00
Jon Evans a0f2435ccd Clarify net selection tooltip
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5242
2020-08-18 22:42:21 -04:00
Jon Evans a36d30656f Fix selection/highlighting of Default netclass 2020-08-18 22:19:25 -04:00
Jon Evans 4cd13c3867 Fix focus handling on appearance panel
wxScrolledWindow doesn't like to give up its focus events,
use wxScrolledCanvas instead.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/5251
2020-08-18 21:55:45 -04:00
Jon Evans 17066134f4 Fix brightness factor application for selected items
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5236
2020-08-18 20:55:41 -04:00
Jon Evans eb9756840d Better defaults for brightness factors
Also store them in the JSON so they can be tweaked
2020-08-18 20:55:39 -04:00
Ian McInerney 8bca145b75 Initialize the PCB_LAYER_T enum in the property manager
Since all the property descriptions are static initialization, each instance
should contain the code to initially populate the enum if it is empty,
otherwise an assert is thrown warning the enum may be empty.
2020-08-18 22:42:56 +01:00
Jeff Young f2a902c0b1 Remove extraneous drag actions. 2020-08-18 19:05:30 +01:00
Jeff Young 1711b489b6 Dark-mode proof the undefined colour swatch. 2020-08-18 19:05:30 +01:00
Jeff Young 1cce03acb1 Commenting and formatting. 2020-08-18 19:05:30 +01:00
Wayne Stambaugh e2bdd34d82 Fix overzealous delete from previous commit. 2020-08-18 13:34:48 -04: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
Seth Hillbrand 4cc820f550 PNS: skip hulls for layers where the solid isn't
If we don't have an object on the required layer and there isn't a
through-hole (m_alternateShape), then we shouldn't return a hull

Fixes https://gitlab.com/kicad/code/kicad/issues/5233
2020-08-18 06:53:03 -07: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 96f4e8f6f8 Remember the last active tab on the appearance panel
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5216
2020-08-17 22:06:31 -04:00
Jon Evans ab7c96f672 Pass focus back to canvas from appearance panel
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5225
2020-08-17 21:57:49 -04: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
Jeff Young 88d76eaf62 Enforce Apple's destructive button distance guideline.
Also fixes a few errant icon buttons that were still setting a fixed
size.
2020-08-17 23:55:31 +01:00
Jeff Young e6a0732e64 Minor cosmetic issues. 2020-08-17 23:55:31 +01:00
Jeff Young 66ff16dd3d Better board-edge error reporting.
Fixes https://gitlab.com/kicad/code/kicad/issues/4950
2020-08-17 23:55:31 +01:00
Jeff Young 01eb8ad032 Better handling of excluded layers for Color Preferences.
Fixes https://gitlab.com/kicad/code/kicad/issues/5184
2020-08-17 23:55:31 +01:00
Jeff Young 8234e70e77 Remove unused footprint text front & back colours. 2020-08-17 23:55:31 +01: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
Jeff Young aceed2b0a4 Cleaner look for colour swatches and the undefined colour. 2020-08-17 18:31:20 +01:00
Seth Hillbrand 5c3a1d059e Fix memory mgmt issue with SOLID shapes
We don't delete items from the CTOR but we do need to check if they
exist in the incoming SOLID before cloning

Fixes https://gitlab.com/kicad/code/kicad/issues/5214
2020-08-17 06:16:11 -07:00
Ian McInerney cff76e55d5 Only update the layer icon bitmap when it has actually changed
This was causing unnecessary calls to refresh the toolbar, causing
flickering in the layer widget.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/5212
2020-08-17 12:37:25 +01:00
jean-pierre charras 5b365053db Fix a few I18n issues.
Especially, only ASCII7 chars can be used in messages.
Do not mark debug messages as I18n strings
2020-08-17 09:18:49 +02:00
Michael Kavanagh b06e605255 Remove duplicate code in Eagle PCB plugin 2020-08-17 03:02:44 +00:00
Jon Evans 595ea70b0f Don't rebuild on page change in MSW
This bug appears to not happen on MSW, so we can avoid the refresh

Fixes https://gitlab.com/kicad/code/kicad/-/issues/5210
2020-08-16 18:42:50 -04:00
Jeff Young fd53df6f10 Collapse space out of the presets area.
Hopefully this will save us from conditional compilation as the
OSX spacing here is wildly different from GTK.
2020-08-16 22:22:47 +01:00
Jeff Young 1134d99bb7 Repair some more merge conflicts. 2020-08-16 22:22:47 +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
Jon Evans 126565cbed Fix visibility control for Default netclass 2020-08-16 15:43:14 -04:00
Seth Hillbrand afc94fdec3 PNS: Be better about handling multiple layers
Rather than adding pads/vias multiple times for each layer, we introduce
the "alternate shape" idiom to PNS that allows us to optionally place
the collision constraint on the hole instead of the pad for those
vias/pads that have inner layers removed.

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

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

Fixes https://gitlab.com/kicad/code/kicad/issues/5195
2020-08-16 12:39:15 -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 75cdf9df4e Don't say the board must be empty to be modified
It is possible to empty a full board and have modifications that
should be saved.

Fixes https://gitlab.com/kicad/code/kicad/issues/3739
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
Jeff Young 15edac4738 Implement a more flexible layout for the objects tab of appearances. 2020-08-16 19:51:26 +01:00
Jon Evans 54682d39ff Remember width of right AUI panel in PcbNew 2020-08-16 14:33:40 -04:00
Jon Evans 92174d414c Ensure pads and zones come up visible by default
These visibility layers didn't exist until now
2020-08-16 10:17:20 -04:00
Jon Evans 6bfb32245b Show the Default netclass in the appearance panel 2020-08-16 09:57:21 -04:00
Jon Evans 7da5419a2c Reduce flicker on layout change in MSW 2020-08-16 09:38:12 -04:00
Jon Evans 1f5a3c57a0 Fix net color radio buttons 2020-08-16 09:32:03 -04:00
Ian McInerney 453976be5e Add cleanup to the new appearance widget
It really should be cleaning up the heap-allocated objects
it owns.
2020-08-16 12:37:51 +01:00
Ian McInerney 25f2a13157 Fix pcbnew/fpedit editing options panel
The panel was incorrectly saving the preferences for the footprint
editor.
2020-08-16 12:37:50 +01:00
Ian McInerney ade7f529b8 Switch shared_ptr creation to using make_shared 2020-08-16 12:37:50 +01:00
Jeff Young 198d9a4243 Fix merge conflicts. 2020-08-16 12:26:15 +01:00
Jeff Young 92322667d6 Fix asserts on later wxWidgets versions.
Fixes https://gitlab.com/kicad/code/kicad/issues/5197
2020-08-16 11:49:36 +01:00
Jeff Young e5f2015a9c More spacing adjustments for appearance manager. 2020-08-16 01:55:09 +01:00
Jeff Young 5938528a16 Move to conditional compilation for appearance palette spacing. 2020-08-16 00:43:19 +01:00
Jon Evans 103443f496 Back out some spacing changes for MacOS
These were too aggressive on other platforms
2020-08-15 19:20:49 -04:00
Jon Evans c124934831 Improve tooltips 2020-08-15 19:07:26 -04:00
Jon Evans 0db00046d1 Fix rendering of net colors on items 2020-08-15 18:50:44 -04:00
Jon Evans beab35472b Fix wrong style for slider
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5197
2020-08-15 18:50:44 -04:00
Jeff Young f83a9c0a22 Clean up some OSX issues in new appearance panel. 2020-08-15 23:26:58 +01:00
Jon Evans 2f604b4494 Add selection filter to footprint editor 2020-08-15 16:42:19 -04:00
Jeff Young 57c3d8e8d8 Make sure preview group gets added to view after a clear. 2020-08-15 21:13:44 +01: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
Jeff Young b42395ec8d Attempt to fix locale issue with decimal separator in rules. 2020-08-15 17:32:13 +01:00
Jeff Young 6c74658a98 Finish arc implementation of m_ThirdPoint for EDGE_MODULEs.
Fixes https://gitlab.com/kicad/code/kicad/issues/5191
2020-08-15 17:32:13 +01:00
Jeff Young 7342532276 Remove auto. 2020-08-15 17:32:13 +01:00
Jeff Young 4410df50a8 Remove layer check that prevents synthetic layer drawing.
In this particular case it was LAYER_PAD_FR.

Fixes https://gitlab.com/kicad/code/kicad/issues/5190
2020-08-15 17:32:13 +01:00
Jeff Young dbb7859b7c Move Eagle routing layer to Dwgs.User (instead of Edge.Cuts).
Fixes https://gitlab.com/kicad/code/kicad/issues/1899
2020-08-15 17:32:13 +01: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 ec5040aff5 Fix missing 'else' and EOF processing, both of which cause crashes. 2020-08-14 22:11:04 +01:00
Jeff Young 94ef2781bf Allow case-insensitive filtering and filter on keystrokes.
Fixes https://gitlab.com/kicad/code/kicad/issues/5177
2020-08-14 22:11:04 +01:00
Peter Montgomery 672224106c Pcbnew: Adjust soldermask dialog panel to scale properly
Added the wxExpand flag to all wxStatic Text widgets to prevent
text from being wrapped awkwardly under Linux (and possibly other
operating systems).

Made sure all sentences ended with a period.

Corrected some spelling mistakes.

Simplified tooltips to read and display better.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/5168

~Also in this commit:
~Rephrased main warning note at top to emphasize get clearance
~settings from your board house.
~Moved two notes at top into tooltips for entry fields
~Removed note that solder mask and paste only apply to copper pads.
2020-08-14 19:51:57 +00:00
Tomasz Wlostowski 9cdada9eb4 PCB_EXPR_EVALUATOR: another string fix for wx 3.0 2020-08-14 14:36:27 +02:00
Seth Hillbrand 027b6c8cf9 Account for via width in connectivity
Fixes https://gitlab.com/kicad/code/kicad/issues/5176
2020-08-13 20:31:17 -07:00
Seth Hillbrand b351bec0d7 Handle blind/buried vias in connectivity 2020-08-13 20:14:23 -07:00
Jeff Young 7a6a6c2272 Reset active layer if it gets deleted in board setup.
Fixes https://gitlab.com/kicad/code/kicad/issues/5118
2020-08-13 20:39:08 +01:00
Jeff Young 519bc80394 Replace error reporting in DRC rule compiler. 2020-08-13 18:47:41 +01:00
Jeff Young 0b17dbd123 Fix nesting issues in the DRC rule expression code generator.
We were executing function calls multiple times because we were
processing them at a depth the traversal algorithm wasn't expecting.
2020-08-13 18:36:10 +01:00
Jeff Young 2c60c4778e Do a layer-specific test only if the zone has the layer we're on.
Otherwise do a outline test (ie: for a keepout which isn't
layer-specific).
2020-08-13 16:16:36 +01:00
Tomasz Wlostowski 518a659185 Post-rebase fixes 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski 47919cdc54 pcbnew/dialogs: use shared_ptr for RC_ITEM 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski ae5eab1d85 TRACKS_CLEANER: post-rebase fixes 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski c607a60e3b PCB_EXPR_EVALUATOR: post-rebase fixes 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski e907e43bd9 pcbnew/drc: post-rebase fixes 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski d937fadd6f Migrate RC_ITEM to use shared_ptr 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski f6ea753968 pcbnew: implement GetEffectiveShape() for tracks/vias/arcs/texts 2020-08-13 14:50:59 +02:00
Tomasz Wlostowski 59303adaca BOARD_ITEM: assert on unimplemented GetEffectiveShape() 2020-08-13 14:50:59 +02:00
jean-pierre charras e0351b4e4c Zone filler: make new algo (no thickness for filled outlines) the default
Add also a message info to the pcbnew constraints panel for arc to segment
approx min error value.
2020-08-13 10:01:23 +02:00
Jeff Young a407befa4c Fix breakage from layer change.
We have to be careful about processing edges on the Edge_Cuts even
when we're talking about a zone on some other layer.
2020-08-13 00:18:09 +01:00
Jeff Young 0c9d08249f Fix crash where dummy edge doesn't have a valid parent. 2020-08-13 00:07:59 +01:00
Jeff Young e05cd0e914 Raise limit to prevent zooming on cross-probing.
Fixes https://gitlab.com/kicad/code/kicad/issues/5149
2020-08-12 22:28:18 +01:00