Jeff Young
d8c4f2cb09
Performance improvements for zone filler.
2022-02-15 19:19:02 +00:00
Jeff Young
5c9e718407
Performance enhancements for connectivity.
...
1) Generate SHAPE_POLY_SET triangulation by outline so they can be
shared between connectivity system and other clients.
2) Don't add items to connectivity when reading board; we're going
to do a total rebuild anyway.
3) Use multithreading when caching triangulation.
2022-02-15 12:20:34 +00:00
Jeff Young
3deaf902bb
Retire the V5 zone fill algorithm.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10578
2022-02-11 13:10:52 +00:00
Jeff Young
7ccac79192
More wxString wide literals.
2022-02-05 21:29:34 +00:00
Jeff Young
5739505aa3
TextBoxes for PCBNew.
2022-01-31 20:00:47 +00:00
Marek Roszko
c91d3e3cf9
Remove some more wxPoint
2022-01-01 14:12:20 -05:00
Marek Roszko
c4c56de708
Neurotically update position wxPoint usages
2022-01-01 11:55:51 -05:00
Jeff Young
fa908e1f98
Dimensions for footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8441
2021-12-24 21:10:28 +00:00
Jeff Young
b4c5e64db2
Exclusions for Unconnected Items; Markers & exclusions for Parity checks
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5589
Fixes https://gitlab.com/kicad/code/kicad/issues/5504
2021-12-24 21:10:28 +00:00
Jeff Young
5f37c2b247
Custom rule severities.
...
ADDED severity token to custom rule syntax. Each rule can now define
its own severity.
Fixes https://gitlab.com/kicad/code/kicad/issues/6148
2021-12-24 15:42:22 +00:00
Jeff Young
a48867ea01
Solder mask integrity testing.
...
ADDED DRC test for solder mask aperture bridging copper from different
nets.
ADDED visualization of minimum web width processing for solder masks.
ADDED allow_soldermask_bridges property for footprints.
Fixes https://gitlab.com/kicad/code/kicad/issues/2183
Fixes https://gitlab.com/kicad/code/kicad/issues/1792
2021-12-23 22:31:14 +00:00
Jeff Young
e26341d424
Cleanup.
2021-12-23 20:36:18 +00:00
Jeff Young
4b6bf3095a
Radial dimensions.
...
ADDED radial type dimensions.
Fixes https://gitlab.com/kicad/code/kicad/issues/2056
2021-12-23 19:34:54 +00:00
Jon Evans
8026863d4c
Use progress reporting in more places when loading a board
...
Prevents application-not-responding events while opening large designs
2021-11-25 11:19:03 -05:00
Wayne Stambaugh
1f7fd436a2
Move board object polygon code into the object source files.
...
Having the board object polygon code all defined in a separate file made
finding the polygon code for an object difficult to find.
2021-10-25 17:42:11 -04:00
Jeff Young
a41944020d
Push most of PCB_SHAPE impl down in to EDA_SHAPE.
2021-10-15 12:45:43 +01:00
Jeff Young
f606679164
Proper numeric sorting for intersheet refs.
...
Also expunges the horrifically named std::remove and std::remove_if
(neither of which remove anything).
2021-10-01 18:29:21 +01:00
Jeff Young
fac48ddafb
Don't include stale nets in net counts.
...
Fixes bug reported by Franck.
2021-09-28 14:28:12 +01:00
Jeff Young
f34e280c81
Garden-variety 100X performance improvement.
...
Adds a compile mode for layer strings.
2021-08-15 22:24:51 +01:00
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
...
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01:00
Jeff Young
d613292b67
Fix type in group command enablement.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8821
2021-07-25 13:31:52 +01:00
Jeff Young
70ac70f360
Don't attempt to round-trip netnames through wxListBox.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8684
2021-06-27 12:02:21 +01:00
Jeff Young
096e342386
Prefix TRACK, ARC and VIA.
2021-06-11 22:07:02 +01:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Marek Roszko
10e60acf34
Clean up including of board_design_settings.h
2021-06-06 15:03:42 -04:00
Wayne Stambaugh
2a6c7a7c0f
Pcbnew header housekeeping round 1.
2021-06-04 09:08:38 -04:00
Ian McInerney
4f05262705
Cleanup includes in board.h and footprint.h
2021-06-03 20:19:52 +01:00
Marek Roszko
4df3cb912d
Remove another leaky wx/log.h header
2021-06-03 08:11:15 -04:00
Jon Evans
bc6b9b527a
Allow stackup height to be excluded from length calculations
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8384
2021-05-10 22:11:58 -04:00
Jon Evans
ce01a28aad
Don't double-remove nets when netcodes are reused
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8206
2021-05-10 19:52:19 -04:00
Ian McInerney
ecd9bf696e
Be consistent about using nullptr instead of 0
...
0 can be too easily overloaded into an int, so ensure we use nullptr
when we mean pointers.
2021-04-22 22:20:34 +01:00
Jon Evans
29c45743b7
Fix calculation of arc lengths; include them in net inspector
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8140
2021-04-15 21:06:35 -04:00
Jon Evans
36ef198610
Clean up nets from items when deleting in the inspector
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8162
2021-04-12 21:17:42 -04:00
Jon Evans
c7ecb51f77
Update PNS length tuning algorithm to match the new BOARD algorithm
...
Now tracks inside pads are optimized to give a more accurate length.
Also, the start/end of the assembled line is used to identify the right
pad joints for pad-to-die length calculation.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4204
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1765
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6877
2021-04-04 20:27:22 -04:00
Jon Evans
41c54d383e
Fix some edge cases with length calculation
2021-04-04 19:38:54 -04:00
Jon Evans
cdfb014ab6
CHANGED: Account for via height in track length calculations
2021-04-04 13:59:18 -04:00
Jon Evans
80728f8d78
Improve algorithm for calculating net length; use it for netinfo message panel
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4258
2021-04-04 12:27:09 -04:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Jeff Young
86aaa2e9cb
Rationalize footprint bounding boxes and cache all of them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 13:50:27 +00:00
Jeff Young
a3b9e8ddb4
Round 2 of Worksheet -> Drawing Sheet.
2021-02-23 11:57:44 +00:00
Jeff Young
b08862e445
Fix group undo/redo bugs.
...
1) Don't remove items from group when the group is being deleted as
well. We need those pointers for undo/redo.
2) Flip the GROUP/UNGROUP undo status when undoing/redoing group and
ungroup actions.
3) Remove PCB_GROUP_T from the rebuild-netlists section. Nothing
about an item's group/ungrouped status changes its netlisting.
4) Add PCB_PAD_T to the rebuild-netlists section. It can probably
only happen in the footprint editor where we don't care about
netlisting, but it's conceptually more correct and who knows what
might change in the future....
Fixes https://gitlab.com/kicad/code/kicad/issues/7540
2021-02-15 14:13:43 +00:00
Wayne Stambaugh
5ecef204cd
Coding policy fixes.
...
Using "this->" violates coding policy section 2.7.
2021-02-09 11:35:43 -05:00
Jeff Young
d261fa3792
Make sure items are removed from groups when deleted.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7387
2021-02-02 14:23:29 +00:00
Jon Evans
bea310569b
Fix parsing of track/via user sizes from legacy boards
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6134
2021-01-26 21:51:36 -05:00
Jeff Young
360953ba98
"comp" -> "symbol".
2021-01-19 23:50:40 +00:00
Jeff Young
08d595c9bf
Move title block fields to global availability in PCBNew.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7118
2021-01-15 15:41:18 +00:00
Jon Evans
5c8927678a
Don't link a project to a board more than once
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6929
2021-01-04 13:23:19 -05:00
Roberto Fernandez Bautista
f74a86b7e1
Add missing dimension objects to BOARD::Move collector
...
Fixes import of orthogonal dimensions
2020-12-30 18:53:43 +00:00
Jeff Young
efd16dca66
Fix a bunch of issues with group selection and highlighting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6686
2020-12-29 12:41:24 +00:00
Jeff Young
ef25c78a04
Separate polygonization error from chaining error.
...
This way we can report anything that doesn't exactly chain while still
applying a fudge factor for our own stuff.
Fixes https://gitlab.com/kicad/code/kicad/issues/1795
2020-12-24 21:02:14 +00:00
Jeff Young
2f087dfa1b
Fix crash bug trying to delete zone from list twice.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6815
2020-12-23 14:24:35 +00:00
Jeff Young
5d4042d6b0
Don't check edge cuts visibility when getting board bbox from edges.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6805
2020-12-21 19:47:36 +00:00
Jeff Young
acfbcb4beb
Make distinction between PCBNew-wide tools and Board-specific tools.
...
The old names were really hard to keep straight (even for me, who named
many of them).
2020-12-16 13:32:46 +00:00
Jeff Young
b1f0bf7334
More consistent naming.
2020-12-08 13:05:39 +00:00
Marek Roszko
9407e6dc83
Another set of color msgpanel items stripped
2020-12-08 00:52:21 -05:00
Marek Roszko
e88d41f764
Add bulk add/remove mode flag to the BOARD_LISTENER
...
This attempts to fix performance when importing large changesets from schematics.
The appearance control is a BOARD_LISTENER that would otherwise redraw per item imported which may cause lockups
2020-12-07 22:04:13 -05:00
Jeff Young
2f3f4c209e
Make sure DRC reports a missing board outline.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6481
2020-11-24 14:22:27 +00:00
Jeff Young
1391774f64
Re-factor boundary/courtyard checker error handling.
...
ADDED Footprint Checker dialog to display the results in.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-21 20:57:35 +00:00
Jeff Young
b123318cf6
Encourage use of full DRC for board & footprint malformed outlines.
...
It shows much more detail. Removes some nag dialogs and places
hypertext links in others.
Also fixes the auto-layer-showing to correctly show Edge.Cuts or
F.CrtYd or B.CrtYd for errors relating to them.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-20 17:24:52 +00:00
Jeff Young
18ad58cf4c
Replace legacy copper edge heuristics.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6435
2020-11-19 13:35:26 +00:00
Marek Roszko
16e3e59495
Split out arrayDim and MIRROR templates from macros.h
...
These were not macros
2020-11-17 20:21:04 -05:00
Jeff Young
7bd31d5237
Naming conventions.
2020-11-14 18:26:03 +00:00
Jeff Young
8bae52d1c3
Correct naming conventions.
2020-11-14 14:29:11 +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
63a54d003e
More module -> footprint.
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
jean-pierre charras
be832f8855
Pcbnew: move files relative to autoroute/autoplace to autorouter folder.
...
fix nanometer compatibility.
minor code and comments cleaning (although theses files need a lot of code cleaning)
2012-06-05 21:07:33 +02:00
Dick Hollenbeck
b8a0ab4c52
switch to <> for includes from "" per conversation with Jean-Pierre and Wayne, adjust search paths
2012-01-22 22:33:36 -06:00
Wayne Stambaugh
6c28cdc62c
More encapsulation work and other minor improvements.
...
* EDA_RECT and EDA_ITEM completely encapsulated.
* Removed unnecessary EDA_ITEM member m_Selected and replaced functionality
with SELECTED flag bit.
2011-12-21 08:42:02 -05:00
Dick Hollenbeck
96bb90dee1
kicad_plugin
2011-12-13 22:29:25 -06:00
Dick Hollenbeck
4c2a1dd5d1
more kicad_plugin work, make BOARD::m_NetInfo private
2011-12-09 23:33:24 -06:00
Wayne Stambaugh
68d752bb13
Zero memory to duplicate behavior changed when C malloc() was replaced by C++ new().
2011-12-06 09:46:48 -05:00
jean-pierre charras
e8c3ca2929
Pcbnew: remove global variables (g_TabOneLayerMask and g_ViaType_Name)
2011-12-06 09:35:13 +01:00
Dick Hollenbeck
b26580d5df
++PCBNew
...
* Removed Pcb_Frame argument from BOARD() constructor, since it precludes
having a BOARD being edited by more than one editor, it was a bad design.
And this meant removing m_PcbFrame from BOARD.
* removed BOARD::SetWindowFrame(), and BOARD::m_PcbFrame
* Removed the global BOARD_DESIGN_SETTINGS which was in class_board.cpp
* added BOARD_DESIGN_SETTINGS to the BOARD class, a full instance
* a couple dialogs now only change BOARD_DESIGN_SETTINGS when OK is pressed,
such as dialog_mask_clearance, dialog_drc, etc.
* Removed common/pcbcommon.cpp's int g_CurrentVersionPCB = 1 and replaced it
with build_version.h's #define BOARD_FILE_VERSION, although there may be a
better place for this constant.
* Made the public functions in PARAM_CFG_ARRAY be type const.
void SaveParam(..) const and void ReadParam(..) const
* PARAM_CFG_BASE now has virtual destructor since we have various way of
destroying the derived class and boost::ptr_vector must be told about this.
* Pass const PARAM_CFG_ARRAY& instead of PARAM_CFG_ARRAY so that we can use
an automatic PARAM_CFG_ARRAY which is on the stack.\
* PCB_EDIT_FRAME::GetProjectFileParameters() may no longer cache the array,
since it has to access the current BOARD and the BOARD can change.
Remember BOARD_DESIGN_SETTINGS are now in the BOARD.
* Made the m_BoundingBox member private, this was a brutally hard task,
and indicative of the lack of commitment to accessors and object oriented
design on the part of KiCad developers. We must do better.
Added BOARD::GetBoundingBox, SetBoundingBox(), ComputeBoundingBox().
* Added PCB_BASE_FRAME::GetBoardBoundingBox() which calls BOARD::ComputeBoundingBox()
2011-12-05 00:15:33 -06:00
Wayne Stambaugh
cc7e7fc5ca
Memory allocation improvements and other minor fixes.
...
* Replace C malloc() and free() functions with C++ new and delete
operators or the appropriate STL container.
* Add option to end mouse capture function to skip executing the end
mouse capture callback.
* Lots of coding policy and Doxygen comment goodness.
2011-11-10 10:55:05 -05:00
Wayne Stambaugh
c2f1113e5d
Fix Pcbnew KICAD_T enum names for consistency.
2011-10-01 15:24:27 -04:00
Wayne Stambaugh
edd35b4e90
PCB common library header rationalization.
...
* All header files used to create the PCB common library now compile as
stand alone code. This prevents the need to define them in a specific
order to make source code compile properly. It should also now be
possible to relocate the source code to build the common PCB library
to a separate folder.
2011-09-23 09:57:12 -04:00
Wayne Stambaugh
4230ac4ca7
Remove sine and cosine look up tables and other minor fixes.
...
* Remove sine and cosine look up tables from trigo.cpp and replace them with
sin() and cos() math functions.
* Large include file clean up to prevent header ordering dependency build
failures.
* Translate French code names and comments.
* Lots of coding style policy and doxygen comment fixes.
2011-09-20 09:57:40 -04:00
Wayne Stambaugh
0c44335795
Lots and lots of PCBNew code cleaning and fix build bug introduced in r3108.
...
* Changed <wx-2.8/xml/xml.h> to "xnode.h" in pcbnew_config.cpp to fix bug
when building against wxWidgets 2.9 and above.
* Convert broken wxXmlNode code to use XNODE.
* Overloaded XNODE constructor for creating child nodes.
* Translate French naming conventions.
* Translate French comments.
* Remove tabs from several source files.
* Coding style policy and Doxygen comment fixes.
2011-09-07 15:41:04 -04:00
Wayne Stambaugh
67f70fe079
Coding style and Doxygen comment fixes.
...
* Rename EDA_Rect class to EDA_RECT.
* Rename EDA_TextStruct class to EDA_TEXT.
* Remove duplicate Doxygen comments from sch_sheet_path.cpp.
2011-03-29 15:33:07 -04:00
jean-pierre charras
155a9dbe19
All: fix a minor bur annoying issue: incorrect cursor shape after a block command (mainly when a tool is selected)
2011-03-09 21:09:11 +01:00
jean-pierre charras
dc24d6fcb2
Minor fixes. Code cleaning.
2011-03-09 15:30:39 +01:00
Wayne Stambaugh
1010601a78
PCBNew control update bug fixes, fixes lp:725963.
...
* Fix grid select box update bug on context menu.
* Fix via size and track width select box update bugs.
* Fix layer pair indicator button update bug.
* Fix auto track width tool bar control enable bug.
* Fix via size and track width select status bug in context menu.
* Fix layer select box and layer control widget select bug when current
layer is removed.
* Add virtual function to notify objects derived from EDA_DRAW_FRAME that
the units setting has changed.
* Coding policy class naming fixes.
2011-03-01 14:26:17 -05:00
Marco Mattila
97003fefae
Change board bounding box calculation to include all board items by default in pcbnew. Add a parameter to look for board edges only.
2011-02-25 18:23:24 +02:00
charras
537d4861ba
fixed tagged translation
2009-11-15 14:12:53 +00:00
stambaughw
506a73c387
More comment translation work.
...
* Translate source files D through L in pcbnew.
* Add translate tag for comments that did not translate correctly.
2009-11-14 22:15:22 +00:00
stambaughw
4611bfd58c
Comment translations.
...
* Completed translation of all kicad source.
* Translated source files A through C in pcbnew.
2009-11-12 15:43:38 +00:00
dickelbeck
362b6b53f6
NETCLASS work, see CHANGELOG.txt
2009-09-10 15:22:26 +00:00
charras
f43d1aaa54
Added text justification for graphic texts in libedit and more(see changelog)
2009-06-11 14:26:17 +00:00
charras
edb48d461b
Fixed minor bugs. Code cleaning
2009-06-06 18:08:49 +00:00
faa
d31c0995f9
pcb crashes autoroute
2009-06-03 17:18:39 +00:00
charras
42b4cae45e
commit hershey patch
2009-05-28 17:39:40 +00:00
charras
b1d1a71101
Finished code cleaning about ratsnets calculations and handling.
...
Minor others changes.
2009-05-28 08:42:24 +00:00
charras
e073bdc042
Pcbnew: cleaned code in ratsnet calculations (work in progress). The new code is also faster.
2009-05-24 18:28:36 +00:00
stambaughw
b833a46bad
More header file realignments to reduce recompiling and general code cleaning.
2009-02-04 15:25:03 +00:00
dickelbeck
b603580355
WinEDA_BasePcbFrame::m_Pcb is now private, use GetBoard() to access it.
2009-01-05 05:21:35 +00:00
dickelbeck
aab39d1de7
injected DLIST<> into many list heads, see change_log.txt
2008-12-04 04:28:11 +00:00
dickelbeck
3ef380f936
dlist cleanups, start of edit component in schematic rework
2008-11-24 06:53:43 +00:00
charras
6393de352b
made cvpcb and gerbview compilable with last changes in pcbnew
2008-10-20 05:59:58 +00:00
CHARRAS
10f1040b42
Solved problem in fill zone calculations when using buried or blind vias (like micro vias)
2008-03-05 14:57:24 +00:00
dickelbeck
128521f0fe
2nd of 3 commits for DrcDialog rework
2007-12-01 03:42:52 +00:00
dickelbeck
3cd47555ca
see 2007-Oct-12 change_log.txt
2007-10-13 06:18:44 +00:00
dickelbeck
dff70646a2
see change_log for 2007-Aug-31
2007-09-01 12:00:30 +00:00
dickelbeck
cc62305777
see change_log.txt for 2007-Aug-22
2007-08-23 04:28:46 +00:00
dickelbeck
3312da3152
beautification
2007-08-21 14:34:54 +00:00
raburton
dedb0228dc
add files not currently available in source (e.g. docs, modules, etc.)
...
set svn:eol-style property to native for all ascii files to support cross platform development
2007-06-05 12:10:51 +00:00
plyatov
23c40f7e86
Initial import of KiCad.
2007-05-06 16:03:28 +00:00