Jeff Young
aab97c8385
Consolidate design rules UI.
...
Implement new Board Setup paged dialog which includes:
Layers Setup
Design Rules
Solder Mask & Paste
Text & Drawings
Moves line width and text properties to a layer-class-based
system. Renames unlocked to upright (which also reverses the
logic).
New Edit Text and Graphic Properties dialog which replaces
Edit Footprint Text and adds layer-class-based editing and the
italic, upright and visibility properties.
Adds Import Settings functionality which allows settings to
be imported from another project at page granularity.
Also UNIT_BINDERizes the dialog and adds editing of pcb text.
Fixes: lp:1731952
* https://bugs.launchpad.net/kicad/+bug/1731952
Fixes: lp:1743464
* https://bugs.launchpad.net/kicad/+bug/1743464
Fixes: lp:1664761
* https://bugs.launchpad.net/kicad/+bug/1664761
Fixes: lp:1753362
* https://bugs.launchpad.net/kicad/+bug/1753362
Fixes: lp:1545427
* https://bugs.launchpad.net/kicad/+bug/1545427
Fixes: lp:1753775
* https://bugs.launchpad.net/kicad/+bug/1753775
Fixes: lp:1777692
* https://bugs.launchpad.net/kicad/+bug/1777692
Fixes: lp:1780670
* https://bugs.launchpad.net/kicad/+bug/1780670
Fixes: lp:1519601
* https://bugs.launchpad.net/kicad/+bug/1519601
(cherry picked from commit 3944a5e)
2018-07-17 15:12:34 +01:00
Jeff Young
5ce0f8ba54
Kill off a few more g_UserUnit references.
...
(cherry picked from commit 452b1a7)
2018-07-17 15:12:07 +01:00
Maciej Suminski
a14b552d89
Eagle PCB import: handle DRC rules where min value > max value
...
Fixes: lp:1779126
* https://bugs.launchpad.net/kicad/+bug/1779126
2018-06-29 19:53:20 +02:00
Maciej Suminski
c5f56ef573
Eagle PCB import: made warning strings translatable
2018-05-29 15:02:26 +02:00
Jeff Young
a12b9db584
Map Eagle values to fab layers.
...
Fixes: lp:1773256
* https://bugs.launchpad.net/kicad/+bug/1773256
2018-05-28 20:37:52 +01:00
Maciej Suminski
190d4d6f55
Eagle PCB import: disable copper pour for imported *Restrict layer polygons
...
Fixes: lp:1772245
* https://bugs.launchpad.net/kicad/+bug/1772245
2018-05-23 17:51:49 +02:00
Maciej Suminski
dcf60f8e6f
Eagle PCB import: handle keepout zones
...
Fixes: lp:1755886
* https://bugs.launchpad.net/kicad/+bug/1755886
2018-05-19 18:43:04 +02:00
Maciej Suminski
ef698384a7
Eagle PCB importer: changed m_Track.Insert() to m_Track.PushBack()
...
The latter better reflects the intention.
2018-05-07 16:51:06 +02:00
Russell Oliver
89381e1103
Eagle Import: Correct layer set based on cream setting and rotate rectangles
...
Fixes: lp:1758747
* https://bugs.launchpad.net/kicad/+bug/1758747
2018-04-02 10:59:54 -07:00
Seth Hillbrand
ee05b1c92e
Add polygon arc support to Eagle import
2018-04-02 10:49:43 -07:00
Seth Hillbrand
9472444b41
Fix minor rounding error in curved wire import
2018-03-26 15:18:47 -07:00
Seth Hillbrand
ced0fcee1e
Updating Eagle Importer to take curved zones
...
Fixes: lp:1755879
* https://bugs.launchpad.net/kicad/+bug/1755879
2018-03-26 15:09:56 -07:00
Seth Hillbrand
347f6daddc
Eagle Converter: Adjust arcs to use error-based alg
...
Implements the revised, difference-error based algorithm in the Eagle
arc import rather than using the hard-coded 32-segments/360°
2018-03-26 10:39:23 -07:00
Maciej Suminski
e4d512a293
Eagle PCB import: mute uninitialized variable warning
...
In fact radius is not used initialized, as the scope where it is
used (while loop) is dependent on the preceding if( w.curve ) clause
that initializes 'radius' variable.
2018-03-14 15:40:58 +01:00
Maciej Suminski
f7ad77004d
Eagle PCB import: handle {smd,pad}.thermals property
2018-03-14 10:24:47 +01:00
Maciej Suminski
d432a985ab
Eagle PCB import: handle 'roundness' DRC rule (SMD rounded rectangles)
...
Fixes: lp:1754138
* https://bugs.launchpad.net/kicad/+bug/1754138
2018-03-14 10:24:47 +01:00
Maciej Suminski
5896723c60
Eagle PCB import: handle smd.{stop,cream} and pad.stop attributes
2018-03-14 10:24:47 +01:00
Maciej Suminski
d906acc0eb
Eagle PCB import plugin: sprintf() -> snprintf()
2018-03-13 14:50:08 +01:00
Maciej Suminski
aeb999b9ae
Eagle PCB import: handle solder mask & paste for pads
...
Fixes: lp:1754138
* https://bugs.launchpad.net/kicad/+bug/1754138
2018-03-13 14:50:05 +01:00
Maciej Suminski
4055c435a5
Eagle PCB import: unified code for handling pad properties
2018-03-13 14:44:35 +01:00
Maciej Suminski
4c9be316dd
Eagle import: minor ECOORD refactor
...
- changed EAGLE_UNIT enum names from EAGLE_* to EU_*
- renamed ToNanoMeters() to ConvertToNm() and added a comment
- added ToMils() and ToNanoMeters() method
2018-03-13 14:44:34 +01:00
Maciej Suminski
133b681006
Eagle PCB import: code formatting
2018-03-13 14:44:28 +01:00
Maciej Suminski
9d0cd1a188
Eagle PCB import: rounded rectangle pad support
2018-03-13 11:57:43 +01:00
Seth Hillbrand
f7cbf157a9
Adding segmentation to Eagle curved track import
...
Eagle tracks can have curves. We approximate this using the
segments_per_360 define. This results in 32 segments for a 360-degree
curve. We could increase this value for curved tracks to get closer
tracking with the Eagle layout if needed.
Fixes: lp:1753289
* https://bugs.launchpad.net/kicad/+bug/1753289
2018-03-09 13:25:38 -08:00
Jeff Young
8e1d397587
Update Eagle and gEDA importers.
...
Remove a throw in the Eagle importer which just threw a wedge
in the works, and return a default modTime when the file hasn't
been set yet.
Give the gEDA importer the multi-file cache management performance
improvements from the kicad_plugin.
Fixes: lp:1752719
* https://bugs.launchpad.net/kicad/+bug/1752719
2018-03-03 00:21:26 +00:00
Maciej Suminski
24fcdb00cc
Eagle importer: convert special characters in net names
...
Convert '!' to '~' to reflect overbar toggling and change '~' to '~~'.
Now it matches the net names in schematics import plugin.
2018-02-17 00:03:28 +01:00
Maciej Suminski
c95340fbaf
Eagle importer: replace invalid character with '_' to match PCB<->SCH
2018-02-16 16:52:14 +01:00
Russell Oliver
8f07da7953
Fix empty footprints when using Eagle libraries
...
This removes a line that deletes the templates created from the eagle
library every time EAGLE_PLUGIN::init( const PROPERTIES* aProperties )
is called, which seems quite often. The templates are deleted though if
the library path for the plugin is changed or the file has been
modified.
Fixes: lp:1731802
* https://bugs.launchpad.net/kicad/+bug/1731802
2018-02-06 14:50:08 +01:00
Bernhard Stegmaier
29e1d3d98a
Fix Eagle plugin build errors on macOS
...
Fixes: lp:1738865
* https://bugs.launchpad.net/kicad/+bug/1738865
2017-12-19 13:38:28 +01:00
Maciej Suminski
378846c2e3
Eagle Schematics Importer: support for UTF-8
...
Fixes: lp:1736083
* https://bugs.launchpad.net/kicad/+bug/1736083
2017-12-17 19:54:21 +01:00
Simon Richter
a9ccf1161b
Fix quotes in UI messages
...
This replaces all single and angle bracket quotes in UI messages with
double quotes, for consistency.
Sorry to all translators.
2017-12-15 07:33:07 -05:00
jean-pierre charras
a8e98ade49
Fix a very minor coding style issue
2017-11-15 08:10:48 +01:00
Tomasz Włostowski
a67d24a34e
revert link-time plugin registration causing plugins to be incorrectly enumerated
2017-11-04 21:00:42 +01:00
Tomasz Włostowski
9932ff32ae
refactoring: wrapped boost::optional in OPT<> class for the purpose of easier transition to C++17 in the future
2017-11-03 23:59:02 +01:00
Tomasz Włostowski
7a44ab914d
refactoring: replaced manual plugin registration with link-time plugin binding
2017-11-03 20:02:06 +01:00
Maciej Suminski
e5c4cfc3b0
Eagle board importer: enable rectangle on drawing layers
...
Now the graphical polygons in footprints are properly handled by the
footprint editor, so there is no reason not to import them.
Coverity CID: 168709
2017-11-01 10:41:57 +01:00
jean-pierre charras
2d6496c7f6
Replace UNIT by EAGLE_UNIT in Eagle plugin to avoid having a lot of useless hits when grep for "UNIT"
2017-10-23 15:37:24 +02:00
Maciej Suminski
0f532c3e8d
Eagle PCB import plugin: handle correctly non-consecutive layer numbers
2017-10-20 09:34:33 +02:00
Maciej Suminski
7d7303215b
Eagle PCB import plugin: more descriptive warning messages
2017-10-20 09:34:33 +02:00
Maciej Suminski
e466bf50ae
Eagle PCB import plugin: fix dimensions import
2017-10-20 09:34:33 +02:00
Maciej Suminski
ee8012a5cc
Eagle import plugin: Code clean-up and formatting
2017-10-20 09:34:33 +02:00
Maciej Suminski
25b8111341
Modified Eagle import plugins to use nanometers as the internal unit
2017-10-20 09:34:33 +02:00
Russell Oliver
b796b13a89
Eagle PCB import: Improve error messages for unsupported footprint elements. - Display lines and circles from copper layers on drawings layer - Generate error messages for rectangles and polygons.
2017-10-20 09:34:33 +02:00
Russell Oliver
2a0a999350
Eeschema Eagle Import: Code clean-up and formatting
2017-10-20 09:34:32 +02:00
Maciej Suminski
2adc3d48b4
Eeschema Eagle Import: Assign timestamps for modules
2017-10-20 08:38:39 +02:00
Maciej Suminski
cca63801bf
Renamed D_PAD::{Set,Get}PadName() to D_PAD::{Set,Get}Name()
2017-09-19 18:23:50 +02:00
Maciej Suminski
90668f9efb
Do not destroy the footprint cache in EAGLE_PLUGIN init
...
EAGLE_PLUGIN::init() is called every time the footprints are enumerated,
so it is incorrect to destroy the cache there.
2017-09-07 13:01:14 +02:00
Dick Hollenbeck
19e6bde09a
Rewrite class UTF8 to contain rather than extend std::string storage.
...
This forces the compiler class specific features rather than borrowing
from the base class's std::string. In some cases prior to this,
wxString( std::string ) was being called rather than UTF8::operator
wxString() leading to garbled wxStrings.
Added function UTF8::wx_str() which is of great convenience also.
Implicit conversions still work as before, and hopefully more reliably.
2017-07-26 08:30:12 -04:00
Maciej Suminski
a3fc0ef658
Fixed a memleak in Eagle board import plugin
2017-07-10 11:44:56 +02:00
jean-pierre charras
1c5ace4b7a
Eagle plugin: avoid hanging if an unexpected keyword is found.
...
Fixes: lp:1701672
https://bugs.launchpad.net/kicad/+bug/1701672
2017-07-01 16:59:07 +02:00