Tomasz Wlostowski
a6d3ae3c5b
router: NODE now can also query joints
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
6b767d50c3
router: initial support for user-provided constraints for the optimizer
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
c2d95a00c1
router: improved handling of corner cases in LINE::Walkaround
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
37a754c4dd
router: initial attempt at improved 'aim at mouse cursor' strategy in walkaround mode, wip...
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
43b71cd9e3
router: Clear() method for PNS::LINE
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
dbe90e163e
router: use one global logger object
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
4281bd8207
router: keep board in base Kicad Iface class
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
9e605d6958
router: DEBUG_DECORATOR now allows to name each primitive
2020-02-27 22:02:56 +01:00
Tomasz Wlostowski
065d634b30
router: put non-graphical part of ROUTER_IFACE into a parent class (for unit tests)
2020-02-27 22:02:56 +01:00
Ben Dooks
070c6b8ce0
Fix issue with DRC for through hole being applied to SMD pads
...
Commit d7272b7f5e
fixed the use of
the eagle DRC to change the library pad shapes. This was also
applied incorrectly to SMD stacks.
Remove the references to m_rules in packageSMD() and the code
that deals with them. eagle 7.7 does not have any SMD pad options
other than rectangle with rounding.
2020-02-27 16:58:15 +00:00
Jeff Young
82ae9db262
Another variation on the wxDataViewCtrl issue....
2020-02-26 17:56:47 +00:00
Jeff Young
a2234b348d
Another attempt to work around wxDataViewCtrl bug on GTK.
2020-02-26 17:35:10 +00:00
jean-pierre charras
2d0582daa7
Pcbnew, stack-up manager: allows 2 digits in mantissa for EpsilonR
...
Fixes #3942
https://gitlab.com/kicad/code/kicad/issues/3942
2020-02-26 18:12:24 +01:00
Jeff Young
4c563b541e
Another attempt to get GTK wxDataViewCtrl to reload properly.
2020-02-26 14:41:12 +00:00
Jon Evans
5e9e46c7bd
Fix crash opening footprint editor in debug mode with no board
2020-02-25 20:24:58 -05:00
Jon Evans
9f8ff236d6
Fix load and save of PNS settings
2020-02-25 19:36:36 -05:00
Seth Hillbrand
5b6a4d794f
pcbnew: Avoid wx scaling error
...
When drawing to a scaled DC, the window doesn't reflect the expected
size if scaled after. This causes elements drawn on the edge to reflect
back into the drawing area instead of being cut off.
We can simply scale our own values to avoid this issue.
Fixes #3849 | https://gitlab.com/kicad/code/kicad/issues/3849
2020-02-25 13:39:04 -08:00
Jeff Young
7c6f7e6b01
Try some undocumented wxWidgets call to fix DRC.
2020-02-25 18:26:42 +00:00
Jeff Young
0614bbc663
Silence a couple of compiler warnings.
2020-02-25 18:26:42 +00:00
Ian McInerney
879a8f4efb
Rework the file history menus to not need references to the file history
...
Keeping a pointer to the actual file history inside a special
file history menu led to many cases of use after free crashes,
so instead rework the actual file history to add the menu
items.
Fixes https://gitlab.com/kicad/code/kicad/issues/3741
2020-02-25 16:18:10 +00:00
Jeff Young
4e0cb3c1ad
Another attempt at fixing Linux issue.
...
Note that I have no Linux machine, so this is shooting in the dark....
2020-02-25 13:51:59 +00:00
Jeff Young
4b380f0dc3
Fix compile issue on Linux & crash issue on Windows.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3937
2020-02-25 12:28:05 +00:00
Jeff Young
cdad62022b
Bug fix for double-click in DRC dialog.
...
Also better clean-up of highlighting in board editor window.
2020-02-25 12:18:24 +00:00
Jeff Young
a4837f7d32
Move DRC dialogs to wxDataView.
...
This allows for hierarchy and better selection handling.
2020-02-24 23:19:17 +00:00
Jeff Young
c5077aeb97
Move weak-reference stuff to UUIDs.
2020-02-24 23:19:17 +00:00
Jeff Young
c7ec110fba
Only center focused items when they're not visible.
...
This includes outside the window and behind an occluding dialog.
This keeps the view from jumping around when focusing on nearby
objects.
2020-02-24 23:19:17 +00:00
Jeff Young
c68b554c8e
Promote PathsAndReferences from wxArrayString to first-class-citizen.
...
Keeping the data in an un-serialized format greatly simplifies usage,
and should make it more robust.
2020-02-24 23:19:17 +00:00
jean-pierre charras
fee5db80dc
parseARC: parsing UUID: fix missing call to NextTok(), creating parse error.
2020-02-23 17:20:04 +01:00
Jeff Young
41b7c62c15
Delay initialisation of global EDA_ITEMs.
...
It causes issues with boost::uuid generation in some versions of
boost.
2020-02-22 13:42:28 +00:00
jean-pierre charras
f206db2041
Pcbnew: fix crash on exit after using the track length tool.
...
This is due to the fact the PNS_TUNE_STATUS_POPUP was not hidden
before calling its destructor.
It is now fixed by setting its virtual destructor calling Hide().
TODO: see if it could be used for any class derived from STATUS_POPUP.
(We already have this issue in other places)
2020-02-22 10:34:11 +01:00
Seth Hillbrand
8c19b4b6ae
pcbnew: Adding arcs to PNS
...
This is allows ARCs in tracks to be synchronized with
the PNS router. Note this does not yet include the UI components
to route curved traces
2020-02-21 16:11:41 -08:00
Seth Hillbrand
3af868e3d1
Adding Arcs to TRACKS
...
This expands the TRACKS class to also include ARCS
2020-02-21 23:51:58 +00:00
Jeff Young
ea025a35e5
Change KUUID to KIID.
2020-02-21 22:20:42 +00:00
Jeff Young
383403ef98
Push deprecation warning suppression down into boost.
...
Note: requires boost 1.67 or later.
Current boost version is 1.72.
2020-02-21 17:36:12 +00:00
Jon Evans
e8e3b4f11e
Rename UUID to KUUID to fix MSVC build
...
Also add another newly-required boost flag
2020-02-20 22:07:17 -05:00
Jon Evans
affdaa8c33
Fix one more warning
2020-02-20 19:38:32 -05:00
Jeff Young
2778dc90f3
Cleanup.
2020-02-20 23:52:32 +00:00
Jeff Young
e1d59337d1
Protect GCC #pragmas.
2020-02-20 22:20:44 +00:00
Jeff Young
81dd1d7a68
Timestamp-based paths were ugly. UUID-based ones are worse.
...
Show a human-readable path in the Edit Footprint dialog.
2020-02-20 21:29:52 +00:00
Jeff Young
129042f8a6
Convert timestamps to UUIDs.
2020-02-20 21:29:52 +00:00
Jeff Young
4014afad54
Remove unused functionality.
2020-02-20 21:29:52 +00:00
Jon Evans
1a216f3703
Change action plugin settings storage to preserve hidden buttons
2020-02-20 11:01:49 -05:00
Jon Evans
4f555e7794
Fix QA crash: Pgm is null in test suite
2020-02-20 07:47:50 -05:00
Jon Evans
e59a3d981e
Implement a new settings framework across all of KiCad
...
CHANGED: Settings are now stored in versioned sub-directories
ADDED: First-run dialog for migrating settings from a previous version
CHANGED: Settings are now stored as JSON files instead of wxConfig-style INI files
CHANGED: Color settings are now all stored in a separate settings file
CHANGED: The symbol editor and footprint editor now have their own settings files
CHANGED: Color settings are no longer exposed through BOARD object
CHANGED: Page layout editor now uses Eeschema's color scheme
Settings are now managed through a central SETTINGS_MANAGER held by PGM_BASE.
Existing settings will be migrated from the wxConfig format on first run of each application.
Per-application settings are now stored in one class for each application.
2020-02-19 23:44:56 -05:00
jean-pierre charras
625249322e
Pcbnew: regroup drc files to the already existing drc folder.
2020-02-19 10:31:32 +01:00
jean-pierre charras
39c2c4e13b
Zone filler: pads non connected in zone option: use same algo as the 5.1 branch
...
to calculate thermal clearance (antipad size) for pads having the same netcode
as the zone, the net clearance has no meaning
(net clearance between object of the same net is 0)
and the zone_clearance can be set to 0 (i.e. use the netclass clearance).
Therefore use the antipad clearance (thermal clearance) or the zone_clearance if bigger.
2020-02-17 18:21:49 +01:00
jean-pierre charras
021eb2f3a8
Fix incorrect usage of a UTF8 char in a C string in code.
...
Using a UTF8 char inside a C string can work on unix, but not on Windows.
It must be explicitly converted in a unicode value inside a wide string
(like a wxString)
2020-02-16 10:21:36 +01:00
Ian McInerney
4fef513a3f
Fix library table panel path adding and cleanup duplicate dialog
...
When adding a .pretty library, if the actual .pretty folder were
selected then no folder would be added to the list of libraries.
This led to an assert when normalizing paths, and the library
not being added.
2020-02-14 19:07:27 +00:00
Jeff Young
3ec360f15c
Save pinned libraries in project.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2288
2020-02-14 14:22:54 +00:00
Ian McInerney
25b3cce474
Fix build error and cleanup overzealous refactor changes
2020-02-14 00:56:41 +00:00
Jeff Young
2017389f2d
Pinning for library trees in FPEditor and SymbolEditor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2288
2020-02-14 00:10:40 +00:00
jean-pierre charras
92af5531bc
Fp editor: fix: Reference and Value default values aren't saved
...
in Footprint Editor preferences
Fixes #3889
https://gitlab.com/kicad/code/kicad/issues/3889
2020-02-11 16:19:00 +01:00
Simon Richter
8d6e5953aa
Remove include path option hiding preprocessor definition
...
This variable is empty, so the argument evaluated to "-I", and the next
argument was then interpreted as a path (and thus ignored). This hides a
preprocessor definition (-D) from Swig.
2020-02-07 20:08:11 +01:00
Ian McInerney
8b7d4c2a55
Put tool graphics back on the stack
...
Now that the tool framework gracefully shutdowns the tools, graphics
can be created on the stack inside a tool function.
This reverts commit f6881ce3de
.
2020-02-05 22:23:44 +00:00
Ian McInerney
b1240b5b1e
Gracefully shutdown tools when frames are closed
...
If the tools are not gracefully exited, then the stack variables are
never destroyed, so variable lifetime issues can occur.
Fixes https://gitlab.com/kicad/code/kicad/issues/1753
2020-02-05 22:23:24 +00:00
Jeff Young
1e6840ea8f
Don't report Eagle errors on the Unrouted layer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3398
2020-02-05 22:21:16 +00:00
Jeff Young
d8cd48aa7f
Allow duplication of module texts from board editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3829
2020-02-05 22:21:16 +00:00
Ian McInerney
34e5b76c5f
Add virtual constructors to some classes that should have them
...
This is more for safety from undefined deletion behavior than
anything else (it also silences the Clang -Wnon-virtual-dtor warning).
2020-02-05 22:19:14 +00:00
Seth Hillbrand
e94f356ad5
pcbnew: Correct stop condition for expand
...
Typo in selection tool caused expansion past vias.
2020-02-05 14:14:50 -06:00
Ian McInerney
6b8d81e95d
Add zone area to message panel
...
ADDED: Area of zone fill is displayed in the message panel
Fixes https://gitlab.com/kicad/code/kicad/issues/2412
2020-02-05 09:44:53 +00:00
Jon Evans
ce4542cced
ADDED: Allow exporting IPC-356D netlists from Python
2020-02-04 13:31:56 +00:00
Jeff Young
fbeb0709ef
Formatting cleanup.
2020-02-03 19:35:48 +00:00
Jeff Young
f1b1c91961
Be a little more friendly towards SMD footprints.
...
Increase the coverage ratio a bit so that footprints that still
have 10% of their area available for selection won't bring up the
disambiguation menu.
Fixes https://gitlab.com/kicad/code/kicad/issues/3721
2020-02-03 19:35:48 +00:00
Jeff Young
d02c0da3ab
Remove preferred layer disambiguation for multiple modules.
...
The preferred list isn't actually in use anymore at this point, so
it currently has no effect other than to mess things up since we
aren't keeping track of which modules have been rejected when we
check the module count.
Fixes https://gitlab.com/kicad/code/kicad/issues/3721
2020-02-03 19:35:48 +00:00
Jeff Young
89dfee9ebe
Employ an accuracy when hittesting (particularly for lines).
...
Also fixes a bug where the parent module was being hit-tested
for its children.
Fixes https://gitlab.com/kicad/code/kicad/issues/3750
2020-02-03 15:08:01 +00:00
Jeff Young
2286652abe
Handle duplication of footprint ref and value.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3828
2020-02-03 15:08:01 +00:00
Jeff Young
a04fdf64da
Improve directory handling for Project Save As.
...
1) don't change directory names that we don't recognize
2) when we do, make sure the child files get copied to the
changed name.
Fixes https://gitlab.com/kicad/code/kicad/issues/3834
2020-02-03 15:08:01 +00:00
jean-pierre charras
8f3e8cf893
Dxf importer: fix issue when importing some "degenerated" splines.
...
Sometimes a dxf curve is a "degenerated" bezier curve having only 3 points.
(a control point is at same location as a end point)
This commit fix incorrect import of these curves.
2020-02-03 10:39:29 +01:00
jean-pierre charras
fd0728becf
Fix an other crash similar to f6881ce3
.
2020-01-31 16:41:47 +01:00
jean-pierre charras
f6881ce3de
Fix crash after calling EDIT_TOOL::pickCopyReferencePoint()
...
An instance of STATUS_TEXT_POPUP was created on the stack.
But it crashes pcbnew when closing the current main frame,
perhaps due to stack switching in coroutines.
It is now created on the heap.
2020-01-31 16:08:18 +01:00
Alexander Shuklin
3d0b3a51f3
Eeschema: Adding back annotation
...
ADDED: Back annotation algorithm,
eeschema back annotation dialog
CHANGED: added some minor helper methods to SCH_REFERENCE_LIST and SCH_REFERENCE,
split SCH_REFERENCE_LIST::CheckAnnotation on 2 parts to reuse code
2020-01-29 16:33:57 +00:00
jean-pierre charras
418dba440d
Pcbnew: DIALOG_FOOTPRINT_BOARD_EDITOR: minor enhancement.
...
The footprint sheet path (unique ID) is now displayed in this dialog.
2020-01-29 10:00:56 +01:00
jean-pierre charras
48ae188b15
Zone filler: fix a few issues, in Smoothed Polygons mode.
...
- Fix non optimal shape of solid polygons after inflate transform.
- Add a small extra clearance ((2 microns) when creating clearance areas
(especially, convert arc to polygons create small differences)
- Add a small threshold (1 micron) in drc test distances to avoid false positives
- fix a minor issue in TransformOvalToPolygon that created sometimes a not perfect shape
Fixes #3812
https://gitlab.com/kicad/code/kicad/issues/3812
2020-01-26 18:19:24 +01:00
Jon Evans
56a9670cf6
Fix running PcbNew from build dir on windows
2020-01-24 21:21:35 +00:00
jean-pierre charras
a98195f650
fix a minor compil warning
2020-01-24 10:15:55 +01:00
jean-pierre charras
d12e8479f2
Pcbnew: fix crash when trying to select the previous copper layer.
...
The function that calculates the previous layer id was using a illegal value
in some cases.
Fixes #3805
https://gitlab.com/kicad/code/kicad/issues/3805
2020-01-24 10:13:18 +01:00
Ian McInerney
06c979dfaa
Convert all CMake paths to absolute instead of relative
...
It is cleaner and safer to handle the include and source paths
as absolute from the source directory instead of relative to every
path.
2020-01-22 23:27:20 +00:00
Ian McInerney
752bc5b7ba
Update technical todo
...
Add a section mentioning C++20 and the new constexpr
std::string and std::vector that we can use.
2020-01-21 11:03:55 +00:00
Mark Roszko
10a862c458
Recursively add KiCad and GEDA libraries inside a folder
...
CHANGED: KiCad and GEDA libraries can now be added recursively by selecting a parent folder.
2020-01-21 10:39:07 +00:00
Jeff Young
a91ca785e5
Better to warn user and orphan nets than refuse to open board.
2020-01-21 09:29:33 +00:00
jean-pierre charras
dd46a918a8
Fix bug: Cross-probing of pins to pads selects entire footprint instead of desired pad.
...
Fixes #3791
https://gitlab.com/kicad/code/kicad/issues/3791
2020-01-20 18:35:20 +01:00
qu1ck
32674ef360
Fix polygon shape move
...
Move vector should not affect start/end points as they are assumed to
always be 0,0. Polygon is defined by outline only.
2020-01-20 03:49:41 +00:00
Seth Hillbrand
7c296fbcb7
GRID_HELPER: Provide alignment axes from snap points
...
ADDED: alignment lines from item snap points
Alignment lines are shown when moving the cursor horizontally or
vertically from a possible snap point.
2020-01-18 20:43:40 -08:00
Seth Hillbrand
73d6169338
pcbnew: Check before reading/writing cache
...
The open/create calls can fail so we need to account for this before
using the result that assumes success.
2020-01-17 18:30:17 -08:00
brian piccioni
8341398082
Save footprint errors in the DRC log
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3754
2020-01-18 01:40:43 +00:00
Seth Hillbrand
c4fff95078
PNS: Detect collisions including newline width
...
The new line collision search uses BBox() to check for colliding
objects. BBox in the SHAPE_LINE_CHAIN did not include width as the
chains were assumed to be zero-width. This is not the case for
PNS::LINE elements.
We mostly don't notice this because DRC checks for SEGMENT collisions
but it becomes obvious/annoying when we cannot place a track for unknown
reasons and the snap-back doesn't take line width into account.
Fixes #3776 | https://gitlab.com/kicad/code/kicad/issues/3776
2020-01-17 11:23:08 -08:00
Seth Hillbrand
f7cb970a02
PNS: Modify MarkObstacles logic to select shorter
...
When routing where we hit multiple obstacles, we choose the shortest
path to allow overlapping hits to choose the shorter path, thus giving a
better chance of returning true for the DRC-compliant path.
Fixes #3773 | https://gitlab.com/kicad/code/kicad/issues/3773
2020-01-16 19:57:38 -08:00
Ian McInerney
56f6b529c8
Simplify 3D object cache class structure
...
Remove the CACHE_WRAPPER whose sole purpose was to allow the
cache to be stored in the project, and instead just have the cache
inherit the proper class.
2020-01-15 23:32:05 +00:00
Jeff Young
102f5f479c
Handle uninitialized nets gracefully.
2020-01-15 19:40:20 +00:00
Jeff Young
cfa407616f
Don't allow degenerate arcs & circles. Trouble will follow.
2020-01-15 18:50:47 +00:00
Jeff Young
dcfb7cadce
Avoid divide-by-zero.
2020-01-15 18:21:42 +00:00
Jeff Young
9df2cfb328
More uninitialized variables.
2020-01-13 20:16:40 +00:00
Jeff Young
91d1508c16
Fix some Coverity identified issues.
2020-01-13 20:16:40 +00:00
Ian McInerney
3ab9db6ff1
Update cast in PNS since we are guaranteed to have text
...
We are guaranteed that the BOARD_ITEM will be a TEXTE_MODULE
since we have tested its type already, so just use a static_cast
to remove the overhead.
2020-01-13 19:42:49 +00:00
Ian McInerney
81ee5edcaf
Test dynamic_cast for safety from future changes
2020-01-13 15:22:26 +00:00
Ian McInerney
34bc0a4e96
pcbnew_control: Replace C casts with C++ casting
2020-01-13 14:19:44 +00:00
Ian McInerney
e2853862e5
Cleanup redundant type casting
2020-01-13 14:00:45 +00:00
Ian McInerney
8fc434be19
Formatting change for dynamic cast tests
2020-01-13 01:48:57 +00:00
Ian McInerney
36f6b4a9b4
Clean up redundant dynamic casts
2020-01-13 01:39:08 +00:00
Jeff Young
94f8aafec5
Fix missing variable initialization.
2020-01-13 00:18:49 +00:00
Jeff Young
d24bd5c832
Fix a couple of Coverity issues.
2020-01-12 21:07:41 +00:00
Jeff Young
8d0f31f6f4
Clean a bunch of legacy code out of the Filter Selection dialog.
2020-01-12 20:53:56 +00:00
Jeff Young
127c66285b
Rename old DIALOG_BLOCK_OPTIONS to DIALOG_FILTER_SELECTION....
...
... which is what it has done for some time now.
2020-01-12 20:30:58 +00:00
Jeff Young
836c1ea56e
Fix a bunch of un-caught boost::bad_pointer exceptions.
...
This also removes vector cover types which do nothing except obfuscate
the underlying implementation.
Mainly changes SCH_SHEET_PINS and CONFIG_PARAM_ARRAY (which will soon
be replaced by Jon's new stuff).
2020-01-12 19:55:00 +00:00
Ian McInerney
b445ce6632
Clean up pointer casting
...
* Make note of when dynamic cast is actually needed
* Convert some to static cast when we know the type for sure
2020-01-12 19:45:37 +00:00
Ian McInerney
4ffbefb9dc
Use the layer from the module item instead
...
They are both from the same argument, but this one make coverity happy.
2020-01-12 19:39:39 +00:00
Seth Hillbrand
52bfdb9703
PNS: Assume the current line is a base before optimizing
...
We use the cost of the current line before trying to improve the pad
breakout cost when optimizing the smart pads
Fixes #3759 | https://gitlab.com/kicad/code/kicad/issues/3759
2020-01-12 11:08:46 -08:00
Ian McInerney
3346f812a9
Cleanup error handling in VRML export (from coverity scan)
2020-01-12 17:18:08 +00:00
Ian McInerney
00e58cd974
Fix unintialized values (from coverity scan)
2020-01-12 13:00:42 +00:00
Seth Hillbrand
76c26d6ae1
Remove unneeded unique_ptr
...
The unique_ptr was useful when the original function took multiple paths
which could de-scope the pointer. Current use allowed potential
use-after-free. This is now re-written to pass pointer directly.
2020-01-11 17:29:12 -08:00
Jeff Young
3d8150032f
Fix some uninitialized variables found by Coverity.
2020-01-11 21:29:25 +00:00
Jeff Young
2e509480a4
Fix guaranteed divide-by-zero error when called with correction of 0.
2020-01-11 21:29:25 +00:00
Jeff Young
715448611d
Fix potential divide-by-zero (from Coverity scan).
2020-01-11 21:29:25 +00:00
Jeff Young
17710c15d3
Fix leak of empty PICKED_ITEMS_LIST.
2020-01-11 21:29:25 +00:00
Jeff Young
9182b3a850
Remove dead code and simplify remaining logic.
2020-01-11 21:29:25 +00:00
Ian McInerney
43abd53b19
Clarify limits of the if statement
2020-01-11 21:28:25 +00:00
Ian McInerney
f896043067
Fix comments for switch statement fall throughs
...
This cleans up all GCC warnings (-Wimplicit-fallthrough=2) about
implicitly falling through switch cases.
2020-01-11 19:16:32 +00:00
Seth Hillbrand
7c28c3838a
Comment-only changes
...
Makes class comments conform to coding standards
2020-01-10 16:43:01 -08:00
Jeff Young
254ba1f998
Fix null pointer access (from Coverity scan).
2020-01-11 00:15:47 +00:00
Jeff Young
88eab8134e
Fix a couple of uninitialized variables (from Coverity scan).
2020-01-11 00:11:31 +00:00
Jeff Young
7bb9551801
Handle boost exceptions. (From Coverity scan.)
2020-01-11 00:04:01 +00:00
Jeff Young
5e5edd03f6
Implement super- and subscript printing and plotting for eeschema.
2020-01-10 22:32:49 +00:00
Jeff Young
e03281a9ae
Allow exclusive-or selections on OSX.
2020-01-10 22:32:49 +00:00
Ian McInerney
7c61b83df6
Code cleanup
2020-01-10 20:10:29 +00:00
Ian McInerney
5e6c6e7e22
Fix memory leak in the footprint preview panel
...
The cached modules were never deleted, so they would
leak whenever the panel was closed.
2020-01-10 20:10:29 +00:00
Seth Hillbrand
77c60d9655
Remove the last vestiges of dlist
...
It served us (mostly) well for more than a decade. It helped KiCad grow
before the std:: came into decent shape or speed. It was a good little
list.
RIP DLIST 2008-2020
2020-01-10 06:37:08 -08:00
Ian McInerney
a8d9fcb4e0
Fix event handler type casting
...
The old methods were very clunky and not recommended (and didn't
properly cast the function types). This changes to useing the
recommended way of declaring events and casting the event handlers.
2020-01-09 18:08:49 +00:00
Seth Hillbrand
16026e75cf
pcbnew: Don't compare across containers
...
std:: defines cross-container comparison as invalid and is not
guaranteed to work. This breaks the comparison out into separate
steps, each for the separate containers.
2020-01-07 16:03:32 -08:00
Ian McInerney
9dff31c2ac
Remove unused DIALOG_FILE_DIR_PICKER
...
This class was replaced with native dialogs for choosing
the files and directories
2020-01-07 23:40:00 +00:00
Ian McInerney
13b6028e1b
Refactor all math into a new kimath library
...
* Split up the thirdparty code into the thirdparty folder (#3637 )
* Create a new kimath static library containing all the math functions
This is part of cleaning the build system for #1906 .
2020-01-07 17:12:59 +00:00
Simon Richter
270aaec443
Rewrite FBP files generated with unreleased wxFB
...
These use a few features that are too new, causing errors when trying to
edit with a released version of wxFormBuilder.
2020-01-07 13:32:33 +00:00
Simon Richter
b114dabbed
Convert line endings in three FBP files
2020-01-07 13:32:33 +00:00
jean-pierre charras
86f9ed1dd9
Allows pad property only by the kicad_advanced feature.
...
pad property is allowed if "UsePadProperty=1" is found in kicad_advanced.
2020-01-06 18:11:01 +01:00
jean-pierre charras
f2518a5120
ADDED: pad fabrication property, as required in latest Gerber file specification.
...
Property is a pad info used mainly for fabrication or test.
Currently, supported properties are:
BGA property (variant of SMD pad)
Fiducial (global to the board or local to the footprint)
Test Point
Heat sink
Castellated.
And are used in Gerber files (copper layers and drill files)
Increment BOARD_FILE_VERSION to 20200104
2020-01-06 16:37:35 +01:00
Jon Evans
28222d3bd0
Use existing pcb filename for Save As where possible
2020-01-06 14:26:03 +00:00
Simon Richter
a5c7d452ce
Convert line endings back to Unix
...
- pcbnew/class_board.h
2020-01-05 00:48:18 +01:00
Fabien Corona
820690d024
pcbnew : fix selection color for the 'hole' part of NPTHs
...
The inner circles of NPTHs now change color when selected
Fixes #1860
2020-01-04 20:59:49 +00:00
Jon Evans
772835e3e3
Add fifo_map and use it for Gerber job file generation
2020-01-04 11:05:09 -05:00
Jon Evans
21d577e638
Implement Gerber job file writing using nlohmann/json
2020-01-04 10:46:50 -05:00
Ian McInerney
4c1e64628e
pcbnew: Modify IDs in panel_fp_lib_table
...
Move the IDs from the main enum to be local and use
the end of the main enum as the starting point.
2020-01-03 16:10:53 +00:00
Ian McInerney
5d46e721e5
pcbnew: Cleanup includes of pcbnew_id.h
...
* Remove unused IDs from the enum
* Remove the include statements from files that no longer need it
2020-01-03 15:39:05 +00:00
Mark Roszko
49db816c82
Pcbnew: improve add existing footprint library browser and button
...
CHANGED: Modify Add Existing Footprint Library button to us OS file/directory browsers
2020-01-03 15:09:26 +00:00
jean-pierre charras
ed0a28769a
code cleaning: remove useless includes.
2019-12-31 14:58:39 +01:00
Fabien Corona
496f3d49e4
pcbnew: When using '+' and '-' hotkeys, skip non-visible layers
...
CHANGED: pcbnew: When using '+' and '-' hotkeys, skip non-visible layers
Fixes https://gitlab.com/kicad/code/kicad/issues/3443
2019-12-29 23:37:25 +00:00
jean-pierre charras
7241247fbc
Pcbnew: add missing storage of dimension units and dimension precision in pcb files.
...
https://gitlab.com/kicad/code/kicad/issues/3712
2019-12-28 13:27:31 +01:00
Jeff Young
ffe3fdf832
Set m_netNamesOnVias. We currently follow m_netNamesOnPads.
...
We could also follow m_netNamesOnTracks, or add another set of
options in the GUI. But for now I suspect this is sufficient.
2019-12-28 11:58:33 +00:00
jean-pierre charras
cd1f3acf49
Fix compil warnings
2019-12-28 08:43:29 +01:00
Mark Roszko
19ceb11ae7
Change more enums over to scoped enums
2019-12-28 00:55:11 +00:00
Ian McInerney
25a302758e
Fix macos plist version string generation
...
Generate these resource files similar to how it is done one Linux.
Fixes mac-builder issue https://gitlab.com/kicad/packaging/kicad-mac-builder/issues/275
2019-12-26 12:42:25 +00:00
Jon Evans
80fb3bde56
Don't try to write fp-info-cache to a read-only directory
...
Fixes #1890
2019-12-25 18:38:31 -05:00