Jeff Young
b4492e0bd2
More EDA_RECE yeetage.
3 years ago
Jeff Young
ebe9617e77
More EDA_RECT expungification, and an attempt to fix the python test.
3 years ago
Jeff Young
f17a865593
Move EDA_ITEM hitTest to BOX2I.
3 years ago
Jeff Young
2dc6300501
Move EDA_ITEM bounding boxes to BOX2I.
3 years ago
Jeff Young
5679b9dbdc
Remove a few EDA_RECT instances.
3 years ago
Jeff Young
c7036ae076
Beef up BOX2's API so it can replace EDA_RECT.
3 years ago
Jeff Young
0c8787cbb9
Some more wxPoint/EDA_RECT yeeting.
3 years ago
Seth Hillbrand
b736460e71
Move optional access from value() to *operator
`value()` throws. Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
3 years ago
Mike Williams
a176bf383e
Properties: pick up single selections
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12302
3 years ago
Seth Hillbrand
91fbb5c957
Don't prevent immediate actions while router active
Immediate actions that can take place are useful. We should only be
preventing immediate actions while actively routing or dragging
Fixes https://gitlab.com/kicad/code/kicad/issues/12311
3 years ago
Jeff Young
63386ba64d
Pointer safety for ERC/DRC dialogs.
Also makes the "Edit ingored violations" easier to find.
Fixes https://gitlab.com/kicad/code/kicad/issues/12308
3 years ago
Marek Roszko
03aa63bd50
Move 5 helpers to EDA_UNIT_UTILS since they aren't iu specific
3 years ago
Roberto Fernandez Bautista
238c21ed0b
Properties: Special case PCB_SHAPE "Layer" property
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12304
3 years ago
Stefan Hamminga
2ff6a6aee1
Implement and enable option to not shove vias during push & shove routing
3 years ago
Jeff Young
2d68cdff94
Better reporting of hole-to-hole clearances and clearance resolutions.
3 years ago
Jeff Young
e0f6a6e475
Run hole-to-hole checks on Edge_Cuts layer.
Also makes the flashing logic inside PAD::GetEffectiveShape() easier
to understand.
Fixes https://gitlab.com/kicad/code/kicad/issues/12296
3 years ago
Marek Roszko
f0956e48f2
Make EDA_TEXT common
Since EDA_TEXT is a base class, we can just force the child classes to pass the correct iu scaled size
ALLOW_BOLD_THICKNESS removed because it's a pre-custom font holdover
3 years ago
Jeff Young
48f77973da
Another try at getting the Link combobox working on MSW.
3 years ago
Jeff Young
b886ec728e
Copy shape data when converting PCB TEXTBOX to FP.
Fixes https://gitlab.com/kicad/code/kicad/issues/12298
3 years ago
Jeff Young
77c79b6f6a
Apply searchArea architecture to courtyard functions.
3 years ago
Jeff Young
667a54ad86
Retire insideArea in favour of intersectsArea and enclosedByArea.
3 years ago
Jeff Young
122a6d7f46
Move hypertext linking to user-page-numbers.
Also moves most navigation code to SCH_NAVIGATION_TOOL.
Also changes page number href to anchor syntax ('#foo').
Also adds hypertext processing to SCH_TEXTBOXes.
Also adds combobox with schematic pages to text properties dialog.
3 years ago
Roberto Fernandez Bautista
840bcffefb
ADDED: Hyperlinks on text items in Schematic Editor
4 years ago
Marek Roszko
bf964d8678
Commonize page_info by simply making the Iu scale a parameter on call.
3 years ago
Roberto Fernandez Bautista
029cc65b34
EDA_SHAPE: Remove m_upsideDownCoords hack (Fixes hitTest routine)
3 years ago
jean-pierre charras
3b4c5f0dc4
French translation update
3 years ago
Jon Evans
300d92438c
Allow hiding symbol library tables from symbol chooser
Hidden but loaded libraries are useful when using database libraries
3 years ago
Marek Roszko
161775fdbc
Fix another type warning
3 years ago
Jeff Young
09511d176c
Quiet Coverity.
3 years ago
Seth Hillbrand
146495672e
Utilize our combine_hash routine for multiple hash
We should be using the one routine every time we want to build a hash
from indepedent values rather than rebuilding it differently in multiple
places
3 years ago
Seth Hillbrand
06786c34d7
Blacklist hashes for 2d integer elements
The hash table for integer hashes is extremely limited and places most
elements in the same buckets. This leads to a linear search time for
structures built on this.
This blocks hashes, directing the coder to utilize std::set or std::map
structures instead of hash tables for implementing integer-based
lookups.
3 years ago
Jeff Young
1a672aba56
Fix a couple of DRC bugs where the bbox wasn't inflated for largestClearance.
Also removes a case of double-testing a pad with a non-plated hole.
3 years ago
Jeff Young
909358e643
Make sure pair caches are layer-specific where they need to be.
3 years ago
Jeff Young
86944c4f9f
Marginal performance improvements.
3 years ago
Jeff Young
f99761e5bd
entirelyInsideArea() prototype.
3 years ago
Jeff Young
7baa56528a
Make sure via-gap-same-as-trace-gap gets turned off for board settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/12236
3 years ago
jean-pierre charras
d351d0c839
BOARD_NETLIST_UPDATER: disable auto refill zones if new footprints are loaded and waiting for placement.
Auto refill creates a crash when these footprints are moved, probably due to a partial
connectivity rebuild due to refilling when the connectivity data is not yet finalized.
Fixes #11830
https://gitlab.com/kicad/code/kicad/issues/11830
3 years ago
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
3 years ago
jean-pierre charras
a306246558
Fix a few (minor) compil and Coverity warnings.
3 years ago
Seth Hillbrand
fb74bdb059
Don't consider rule area zones in priority calc
3 years ago
Seth Hillbrand
e661545ecf
Choose the first unused priority value for zones
Default the new zone priority value to the lowest available unused
priority. Ensures that, by default, a new zone has a unique priority
level preventing zones from unintenionally shorting
3 years ago
Seth Hillbrand
ee95224517
Ensure that teardrops always get filled first
Teardrops are, by definition, higher priority than standard zones, so
ensure that they cannot be overriden
3 years ago
Seth Hillbrand
418df36790
Avoid teardrops in priority calculation
When choosing a new priority value, don't look at teardrops (which have
high priority)
3 years ago
Seth Hillbrand
3e4cfab254
Set new zone priority to unique number
Previously new zones' priorities were all set to 0. This is almost
always wrong and can lead to unintended conflicts. The new zone default
value is now set to one higher than the largest number on the board.
This is a better default value because it will not conflict with
existing values.
3 years ago
Jeff Young
ae86c6f3a7
Don't include text in locked-item-shadow-calc for footprints.
And make shadow margins consistent for all objects.
Fixes https://gitlab.com/kicad/code/kicad/issues/11545
3 years ago
Marek Roszko
fc99b3ba95
Don't link gdiplus everywhere anymore
Tested on msys2 which is the only place it would have been buggy
CMake seems to share the gdiplus linkage with the other dependencies automatically now
3 years ago
Marek Roszko
e0f28fc4e1
Replace wxFindReplaceData with our own container
By dropping the flags, we can be strict with options.
Also it makes future usage of search functionality a little more "UI" framework independent
3 years ago
Jeff Young
ec51955dad
Remove vestiges of old pad locking system.
We now use a session preference (Allow free pads) in the board editor,
and we never supported pad locking in the footprint editor.
3 years ago
Seth Hillbrand
e4bb1560c5
Set locale in python save routine
Fixes https://gitlab.com/kicad/code/kicad/issues/11006
(cherry picked from commit c3496d61eb )
3 years ago
Jeff Young
1871812f2b
Consolidate on a more widely used sub-type architecture.
3 years ago