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
Jeff Young
5ffd2751ef
Fix default netclass membership handling.
...
There's no such thing as an "unassigned" net. That's what the
"Default" netclass is.
2020-08-16 21:00:46 +01: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
dbe5537fa9
Don't run the hotkey if the action isn't enabled
...
CHANGED: Don't run the hotkey if the action's UI elements aren't enabled
This makes it so the action can't be run from either the hotkey or the
UI if its enabling conditions are not met.
2020-08-16 19:10:26 +00: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
fd4388710d
Migrate eeschema, libview and libedit to the UI condition framework
...
Also, fix some issues in other frames identified along the way.
2020-08-16 19:10:25 +00:00
Ian McInerney
75bc1ef6a7
pleditor: Remove background color toggle action
...
The new color theme system replaces the need to toggle the background
color in the editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/5050
2020-08-16 19:10:25 +00:00
Ian McInerney
45fb030b9b
Rename and shorten the names in ACTION_CONDITIONS
2020-08-16 19:10:25 +00:00
Ian McInerney
3b05d7cddd
Move more frames to the new UI condition framework
...
* Frames moved: cvpcb, cvpcb footprints frame, gerbview, pagelayout editor
This also introduces new EDITOR_CONDITIONS that are used to set the
conditions of very common editor settings.
Also, some IDs were converted to tools in the pagelayout editor.
2020-08-16 19:10:25 +00:00
Ian McInerney
f34ffd3906
Migrate more 3d viewer actions to the tool framework
2020-08-16 19:10:25 +00:00
Ian McInerney
72a1c71e07
Implement a framework to handle wxUpdateUIEvents for tool actions
...
This allows for the tool framework to keep track of a universal
set of conditions for the UI state (enabled/checked/shown) for
controls of actions. It removes the need for the main menubar
menus to be CONDITIONAL_MENUs and be rebuilt on each open,
and instead makes the updates of the check and enabling of
items handled in the native wxWidgets way.
This commit switchs the 3d viewer and kicad project manager window
over to this system.
2020-08-16 19:10:25 +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
6cb0343c6a
Fix typo causing repeated migration
2020-08-16 14:55:00 -04: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
d01e22232a
Remove unused GerbView IDs for items that were already actions
...
All these IDs were for commands that have already been transitioned
to actions and there was no wxCommandEvent interface for them.
2020-08-16 12:37:51 +01:00
Ian McInerney
61cdf3436b
Ensure PAINTER::Draw routines properly handle EDA_ITEM casting
...
EDA_ITEM is a child of VIEW_ITEM, so a static_cast is not appropriate,
since in some cases it could be called with a non-EDA_ITEM argument.
This was triggering an ASAN heap-buffer-overflow in GerbView.
2020-08-16 12:37:51 +01:00
Ian McInerney
0975f3817a
Fix project handling in eagle project import and ensure the titlebar is correct
...
Previously it didn't properly close or create a new project for the
Eagle project.
Also, update the titlebar text whenever the project changes (so it is
cleared properly when a project is unloaded).
Fixes https://gitlab.com/kicad/code/kicad/issues/5152
2020-08-16 12:37:51 +01:00
Ian McInerney
4c535c160c
Set the about program name for cvpcb
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
PJM
f58221ca98
Add 'GetBoundingBox' that optionally only calcs w visible fields
...
Cross-probing from Pcbnew to Eeschema revealed that EEschema was
including all fields, visible or not, when calculating the bounding
box of the probed componentt. This caused problems with long strings
such as URLs that were not set as visible. The cross-probing code
tries to minimize 'Zoom to Fit' operations when it's not necessary,
and the overly large bbox values often resulted in zooms not being
performed and components displayed very small.
This code adds a version of 'GetBoundingBox' that takes a boolean
to tell it to include invisble fields or not.
Addresses issue: https://gitlab.com/kicad/code/kicad/-/issues/5149
2020-08-15 22:15:30 +00: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
d7f26cfdf2
Fix test failures.
2020-08-15 19:33:21 +01:00
Jeff Young
b42395ec8d
Attempt to fix locale issue with decimal separator in rules.
2020-08-15 17:32:13 +01:00