Commit Graph

62 Commits

Author SHA1 Message Date
Jeff Young 1ce1e493d6 A rule zone is not really a BOARD_CONNECTED_ITEM.
Or at least it shouldn't always be treated as one.

Fixes https://gitlab.com/kicad/code/kicad/issues/6382
2020-11-15 20:23:15 +00:00
Jeff Young bdbb68f813 MODULE -> FOOTPRINT. 2020-11-13 16:04:03 +00:00
Jeff Young 3451ac3088 PCB_MODULE_T -> PCB_FOOTPRINT_T 2020-11-13 15:16:24 +00:00
Jeff Young 52a46341db More module -> footprint. 2020-11-13 15:16:24 +00:00
Jeff Young f5443de7f9 D_PAD -> PAD. 2020-11-13 15:16:24 +00:00
Jeff Young 84dd5108ba Remove some "class_" prefixes from files. 2020-11-13 15:16:23 +00:00
Jeff Young f7333ad64a Update some classnames including archaic zone names. 2020-11-12 10:31:25 +00:00
Jeff Young 43001cae38 Simplify Net Inspector. (Remove via length and group sorting ctrls.)
Also renames files & classes to fit dialog title and updates method
names to match coding guidelines.
2020-11-11 14:41:17 +00:00
Jeff Young ae9afdd169 SNR. (Mostly for progammers, but a little for user messages.) 2020-11-02 16:20:00 +00:00
Jeff Young 6bf29deb7f Improve formatting. 2020-10-31 17:25:08 +00:00
Jeff Young 386cefbe84 Do footprint keepouts by courtyard.
Fixes https://gitlab.com/kicad/code/kicad/issues/6162
2020-10-25 18:17:58 +00:00
Jeff Young 07b8a03432 Improve translatability and add keepout inspection. 2020-10-25 18:17:58 +00:00
Seth Hillbrand 4085757aeb Remove beginning/ending spaces in translations
Adding space padding makes translations more difficult by increasing
string counts
2020-10-20 12:08:04 -07:00
Jeff Young 6cbe2131ab Simplify string processing and ease translation. 2020-10-20 19:42:37 +01:00
Jeff Young 51ab639ce4 Implement a better interface between inspectors and DRC rule editor. 2020-10-17 10:58:08 +01:00
Jeff Young eea7957e16 Inform user of bad DRC rules when filling zones.
ADDED: facility for hypertext links in infobar.

Also made use of this for via constraint errors when routing.

Fixes https://gitlab.com/kicad/code/kicad/issues/5800
2020-10-16 12:44:20 +01:00
Jeff Young fad0916f0b Make sure inspection dialogs get raised. 2020-10-15 21:21:34 +01:00
Jeff Young 6b7749658e Report all implicit rules for resolution reports. 2020-10-15 20:53:27 +01:00
Jeff Young 92d84b0d67 Naming updates. 2020-10-15 01:35:16 +01:00
Jon Evans a0c0bda1db Fix crash when highlighting via 2020-10-13 21:45:09 -04:00
Jon Evans 2abce40553 Better selection heuristics for highlight tool
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4011
2020-10-12 22:47:31 -04:00
Jeff Young af90642440 Hook board edge clearance constraints up to zone filling.
Also hooks them up to the clearance resolution reporter, and makes
some general improvements to reporting.

Fixes https://gitlab.com/kicad/code/kicad/issues/5947
2020-10-12 18:31:00 +01:00
Jeff Young 32dffd27ab Add silk clearance to board setup constraints. 2020-10-12 18:31:00 +01:00
Jeff Young af28ef9d56 Add silk clearance checking to Resolve Clearances...
Also fixes a bug in order of RTrees in silk collision checker.
2020-10-11 14:18:11 +01:00
Jeff Young 298d5b6a11 Report units in clearance/width/etc. resolution reports. 2020-10-09 00:16:30 +01:00
Jeff Young 6550e01318 Sort synthetic netclass rules by min clearance.
This way when 'A' and 'B' have different netclasses the largest will
fire (rather than just a random one of the two).

Fixes https://gitlab.com/kicad/code/kicad/issues/5926
2020-10-08 23:41:27 +01:00
Mikolaj Wielgus 400c15b8eb Add mils to units, remove useMils variables 2020-10-03 20:06:56 +00:00
Seth Hillbrand bf3cb0b1d0 Standardize pad type enums 2020-09-30 08:38:35 -07:00
Mario Luzeiro 5a362dfeeb Request redraw of 3D-Viewer when a selection from Schematic is made 2020-09-28 02:26:25 +00:00
Mario Luzeiro a1e94c2583 3D-Viewer: request a redraw when a footprint is selected in pcbnew 2020-09-28 02:26:25 +00:00
Jon Evans 0783669633 CHANGED: Design rules files now use .kicad_dru extension
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5763
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5444
2020-09-24 21:26:23 -04:00
Jeff Young 6dae769944 Progress reporting for connectivity tests.
Also makes via annulus terminology more consistent.
2020-09-23 16:28:00 +01:00
Jeff Young 6d18f20093 ADDED constraints reporter for diagnosing constraints.
Also fixes an issue with via type property and makes property
comparisons in rule case-insensitive.

Fixes https://gitlab.com/kicad/code/kicad/issues/5754
2020-09-23 01:14:35 +01:00
Ian McInerney 89dcc46898 Coverity cleanup and remove unused variables 2020-09-20 02:20:41 +01:00
Jeff Young 2b43ffd12d Better error reporting; better nullptr safety.
Also clears the marker lists before running a DRC, and sets
the drcRun flags afterwards so that the notebook tab counts
get updated.

Fixes https://gitlab.com/kicad/code/kicad/issues/5659
2020-09-16 22:14:41 +01:00
Jeff Young e2e229da96 Finish exorcising the old DRC system.
This moves the various BOARD_ITEM calls to the new system, and make
the DRC_ENGINE long-lived so that it can field those queries.
2020-09-15 20:15:46 +01:00
Jeff Young 514da2f886 Move DRC dialog to new DRC engine. 2020-09-14 22:39:36 +01:00
Jeff Young 5be887a60f Iron out some wrinkles in the DRC migration. 2020-09-12 01:57:37 +01:00
Jeff Young 8ac7288696 Fix a crash bug loading DRC rules.
Also moves the clearance report to the new DRC engine.
2020-09-12 00:46:55 +01:00
Jeff Young fc1665ff28 ADDED Clearance Inspector. 2020-09-10 20:58:38 +01:00
Jeff Young 502f2ca2ef Fix some snarled up event processing.
See the bug for details.  It's complicated.

Fixes https://gitlab.com/kicad/code/kicad/issues/5336
2020-08-24 13:20:29 +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
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 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
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
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
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
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