Ian McInerney
34527630d0
Small cleanup
2020-09-18 11:17:37 +01:00
Ian McInerney
a53f3899d4
Initialize variables properly
2020-09-18 11:17:37 +01:00
Ian McInerney
aa0b0ca7e7
Fix some warnings in the cadstar importer
2020-09-18 11:17:37 +01:00
Ian McInerney
4ca103c82c
Fix problem in groups QA test
...
The items should always be added to the group.
2020-09-18 11:17:37 +01:00
PJM
c8879d9034
Eeschema: Check if user wants to warp mouse to origin of moved object
...
CHANGED: When moving a footprint, Eeschema was always warping the mouse
when moving an item regardless of the state of the "Warp mouse to
origin of moved object" checkbox. This MR now honors the state of the
checkbox when moving schematic items.
NOTE: Issue 5279 originally only mentioned Pcbnew, but after the fix
for Pcbnew was submitted, a user pointed out it also happened in
Eeschema. Becuase of this, there are two MRs that "fix" the same issue.
Fixes https://gitlab.com/kicad/code/kicad/issues/5279
2020-09-18 02:49:59 +00:00
PJM
5feb4d3a7a
Pcbnew: Check if user wants to warp mouse to origin of moved object
...
CHANGED: When moving a footprint, Pcbnew was always warping the mouse
to the origin of the moved object regardless of the state of the "Warp
mouse to origin of moved object" checkbox. This MR now honors the
state of the checkbox when moving footprints.
Fixes https://gitlab.com/kicad/code/kicad/issues/5279
2020-09-18 02:47:59 +00:00
Jeff Young
81b523f9a4
Make sure the board itself is in the item map.
...
Also makes closing the DRC dialog a bit more foolproof.
Fixes https://gitlab.com/kicad/code/kicad/issues/5665
2020-09-18 00:53:14 +01:00
Jeff Young
8dd725469f
Process properties command locally within drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5612
Fixes https://gitlab.com/kicad/code/kicad/issues/5615
2020-09-17 22:32:22 +01:00
Jeff Young
4d24c9d610
Increase size of error count badge to show up to 999 errors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5535
2020-09-17 22:32:22 +01:00
Jeff Young
e202dba386
Be careful not to unload current project if settings imported from it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5684
2020-09-17 20:56:51 +01:00
Seth Hillbrand
471f81742f
ADDED: Align to Grid function in Eeschema
...
Adds tool option to align selected elements to the current grid.
Fixes https://gitlab.com/kicad/code/kicad/issues/5481
2020-09-17 12:27:43 -07:00
Jeff Young
7b2a111a1c
Implicit rules go first so that other rules will take priority.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5687
2020-09-17 20:13:39 +01:00
Jeff Young
0f3d2147aa
Performance enhancements for DRC.
2020-09-17 20:13:39 +01:00
Jeff Young
8e530db633
Reporting must be kept inside the REPORT macro.
...
Reporting is run on a single clearance where performance doesn't
matter much. Doing the string building during a DRC, however, kills
performance.
2020-09-17 20:13:39 +01:00
Jeff Young
a3d65a2b43
Smoother progress reporting for DRC checks.
...
Also moves Messages tab out to an overlay, and restores the longer
messages now that messages are no longer a textbox in the upper right.
2020-09-17 20:13:39 +01:00
jean-pierre charras
6ec6baf401
3d viewer: save color settings.
...
The call to SaveColorSettings() was not at the right place, and the new
color settings never saved.
Fixes #5529
https://gitlab.com/kicad/code/kicad/issues/5529
2020-09-17 17:15:25 +02:00
jean-pierre charras
e8d09cd998
Pcbnew: fix incorrect creation of scripting/plugins in user directory.
...
Initialize Python scripting even if this directory cannot be created
It is not a mandatory dir, and not initializing python scripting can create crashes.
Fixes #5667
https://gitlab.com/kicad/code/kicad/issues/5667
2020-09-17 10:47:21 +02:00
jean-pierre charras
a1439881b7
Fix a collision name with a Windows header.
2020-09-17 07:46:02 +02:00
Seth Hillbrand
45ca1709bb
Unify scripting dirs and open user-based
...
This consolidates python scripting in two locations: the system-wide
package-based location and the user configuration location. It also
updates the "Show Scripting Folder" action to open the user
configuration location instead of the package-based one.
Fixes https://gitlab.com/kicad/code/kicad/issues/5652
Fixes https://gitlab.com/kicad/code/kicad/issues/5115
2020-09-16 20:09:23 -07:00
PJM
f3586ccd45
Pcbnew: Make 'GetBoundingBox' return correct answer when passed false
...
CHANGED: 'GetBoundingBox' has a variant that accepts a boolean that
determines if invisible text is included in the Bbox calculations. The
'IsVisible' function for the value and reference strings doesn't
factor in if the layer it's on is visible or even in the PCB stackup,
so 'GetBoundingBox' returns a bbox that factors in invisible text
regardless of what it's passed. This MR fixes that problem.
CHANGED: Refactored the original 'GetBoundingBox' function that doesn't
take a parameter. It now just calls the variant that does take a
parameter and passes it 'true'. The two versions had a lot of
duplicate code and this eliminates it.
Note: Issue 5629 might be better solved at the PCB module level, but this
does fix the known problems caused by it which were discovered in
'GetBoundingBox'.
Fixes https://gitlab.com/kicad/code/kicad/issues/5629
2020-09-17 00:59:07 +00:00
Jon Evans
e9b627bfd8
ADDED: Center marker dimension type
2020-09-16 20:55:11 -04:00
Jon Evans
5109857883
Disable deselect net from main context menu
...
Right now we can't track the intended item to deselect
when there's an active selection already.
Having this feature available just from the appearance panel
should be fine.
2020-09-16 20:55:11 -04:00
Marek Roszko
a82edb60fe
Rotate the bounding box for hit tests on the fly
2020-09-16 23:29:21 +00:00
Marek Roszko
721c30e464
Make SetPosition and SetOrientation simply adjust the bounding box rather than continously recalculate it.
...
SetPosition is called on every pixel of a move operation which could be performance impacting on some systems.
2020-09-16 23:29:21 +00:00
Jon Evans
4a25db599e
ADDED: Deselect net action
...
You can now deselect nets and netclasses (i.e. remove them from the
active selection) via the context menus in the appearance panel
2020-09-16 19:10:12 -04: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
Jon Evans
db40e0c595
Fix dimension point editor ordering
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5656
2020-09-16 12:05:30 -04:00
Jeff Young
ce3819abf8
Remove redundant clearances from DRC dialog. Fold progress bar in.
2020-09-16 16:06:29 +01:00
Jeff Young
c0f83b30d3
Minor reformatting and performance improvement.
2020-09-16 16:04:28 +01:00
Tomasz Wlostowski
b993a29695
drc: fix heap overflow
2020-09-16 13:45:12 +02:00
jean-pierre charras
e137d61b29
Fix typo
2020-09-16 11:46:16 +02:00
jean-pierre charras
c4b66e7cd3
drc/drc_test_provider: Fix a crash due to code change, at least on Windows.
...
The new code has not a lot of change, and is a bit cleaner.
2020-09-16 11:46:16 +02:00
Jeff Young
0ca09abbd3
Don't assume colour theme preview board will have a DRCEngine.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5650
2020-09-16 10:42:25 +01:00
jean-pierre charras
652a59b781
Fix null pointer use
2020-09-16 09:21:39 +02:00
Jon Evans
fd4a96d8be
Add missing sources
2020-09-15 23:50:17 -04:00
Jon Evans
75ffce1a0b
ADDED: Leader dimension object
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5555
2020-09-15 23:37:38 -04:00
Seth Hillbrand
0f22e8e2fe
Make SWIG aware of PYTHON3 for its bindings and remove threads
...
This removes the threading from the SWIG interface (it was supposed to
be off by default) and adds support for Python3 bindings when supported
by the system
2020-09-15 19:46:53 -07:00
Ian McInerney
ea06c16255
Cleanup PCB_GROUP objects on the board when deleting the board
2020-09-16 02:04:17 +01:00
Ian McInerney
9ea2dbe87b
Cleanup the PCB_GROUP QA test set
2020-09-16 02:04:17 +01:00
Ian McInerney
8bd77c4fe7
Rename the ITEM_SET types to be descriptive of their contents
...
Now that we have one set type for BOARD_ITEMs and another for SCH_ITEMs
it is better to explictly say if they are board or schematic sets.
2020-09-16 02:04:17 +01:00
PJM
abdd1906c2
Change 'Zoom to Fit' margins and add 'Zoom to Objects'
...
CHANGED: The margin used in 'Zoom to Fit' is now 2% instead of 10%.
ADDED: Added 'Zoom to Objects' to Eeschema which does not include
the page and border in the bbox calculations.
CHANGED: Removed pre-existing code that tweaked the center to account
for the scrollbars. It actually made the view off center. Removing it
results in perfectly centered zooms.
Fixes https://gitlab.com/kicad/code/kicad/issues/5145
2020-09-16 00:53:39 +00:00
Jeff Young
43ab963650
Don't expect footprint viewer frame to have a DRC engine.
2020-09-16 01:10:16 +01:00
Jeff Young
7e35658c28
Use schematic colours in symbol preview status panel.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4998
2020-09-16 00:58:36 +01:00
Jeff Young
cdbe2fd2d2
User terminology specific to Change Footprint/Symbol.
...
Also implements separate session settings for the reset checkboxes
for Change Footprint and Update Footprint.
Fixes https://gitlab.com/kicad/code/kicad/issues/5614
2020-09-16 00:15:26 +01:00
Roberto Fernandez Bautista
8b82852054
Hide header inside #ifdef statement
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5645
2020-09-15 21:30:50 +00:00
Jeff Young
b4229d9a3e
Fix testcase crash when progressReporter was null.
...
(And it helps if the DRC tester you're trying to test is actually
in the make file.)
2020-09-15 22:25:12 +01:00
Ian McInerney
6a7266d589
Only update DRC progress reporter if the reporter exists
...
The DRC engine might not have a reporter when run headless
2020-09-15 21:18:58 +01:00
Ian McInerney
c399d489ba
Remove project condition from the symbol and footprint editors
2020-09-15 21:18:56 +01:00
Jeff Young
b6a8e165c3
Don't allow schematic/pcb DRC tests when in standalone mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5635
2020-09-15 21:14:11 +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