Commit Graph

5719 Commits

Author SHA1 Message Date
Wayne Stambaugh f3908bd87c Revert premature commit of 17ab319b, "Fixes for 3D model offset".
This reverts commit 17ab319b99.
2017-11-11 20:04:46 -05:00
Wayne Stambaugh 652b969193 GTK+ file dialog wildcard improvements.
The GTK+ file dialog is case sensitive however it does support regular
expressions.  Most of the file dialog wildcards are lower case so only
files with the lower case extensions will show up in the file dialog.
This code adds a method to convert file extensions of any case to the
appropriate (sch -> [sS][cC][hH]) regular expression on GTK+ builds so
all file extension case combinations will show up in the file dialog.

A note to developers: make sure to add a file extension when setting
when setting the default file argument.  If you do don't set an
extension, the GTK+ file dialog will happily append the regular
expression as the file extension which is surely not what you want.

There are still a few known places (mostly gerbview) where there are
some complex wildcard code that has not been converted.

Fixes lp:1720542

https://bugs.launchpad.net/kicad/+bug/1720542
2017-11-11 19:32:26 -05:00
Oliver 154ed5db68 Change default 3D model repository
- New location is kicad-packages3d
2017-11-11 15:23:57 -05:00
Oliver 17ab319b99 Fixes for 3D model offset
- Display offset units in 3D preview window (inches or mm)
- Fix offset in 3D renderer
- Fix offset in Raytracing renderer
- Fix offset in STEP export
- Fix offset in VRML export
2017-11-11 15:08:08 -05:00
Kevin Cozens d0a860ed8f Don't change angle when editing footprint value or reference text
Added 180 degrees to list of selection angles and entry of angles
from -180 to 180 in Footprint Text Properties dialog.

Fixes lp:613616

https://bugs.launchpad.net/kicad/+bug/613616
2017-11-11 14:38:05 -05:00
Kevin Cozens f71d3fe7b6 Allow value and reference text to be rotated by 90, 180, and 270 degrees. 2017-11-11 14:13:46 -05:00
jean-pierre charras 661bab7220 Fix crash when appending a board in pcbnew.
Fixes: lp:1731539
https://bugs.launchpad.net/kicad/+bug/1731539
2017-11-11 09:09:24 +01:00
jean-pierre charras 9723b0d844 Fix a few minor coverity warnings (not initialized members) 2017-11-11 07:25:00 +01:00
Maciej Suminski c9b791ca2a GenCAD exporter: added origin settings
Added an option to the exporter dialog allowing the user to choose
either the absolute or the auxiliary origin. Also, the ORIGIN field in
the exported file can be set to contain the information about the origin
point or set to (0, 0) for compatibility with other CAD tools.
2017-11-10 15:18:59 +01:00
Marvin Schmidt 69974b73db Remove some extra semicolons 2017-11-09 19:52:18 +01:00
jean-pierre charras 87d06e5269 Very minor fixes in some sentences (remove trailing space and add missing period). 2017-11-09 14:34:16 +01:00
jean-pierre charras 7d24a576e4 Avoid drawing into a non valid gl context when closing the DIALOG_PAD_PROPERTIES dialog
Fixes: lp:1729843
https://bugs.launchpad.net/kicad/+bug/
2017-11-07 18:33:53 +01:00
jean-pierre charras aefa0bf3b4 Avoid 0 sized grid in dialog_pad_properties.cpp 2017-11-07 10:18:13 +01:00
Eldar Khayrullin 9df4ae65ea pcad2kicadpcb: import solder mask for Mounting Holes
Fixes: lp:1730173
* https://bugs.launchpad.net/kicad/+bug/1730173
2017-11-06 10:23:23 +01:00
jean-pierre charras 78fa31315c Better Dxf import dialog:
Better look.
Better management of user offset settings (used only in Legacy mode).
The default width of lines and circle can be set.
2017-11-05 15:20:34 +01:00
Maciej Suminski ecaf1789c7 Fix builds without Github plugin enabled 2017-11-05 00:13:24 +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 b945d2a708 cleanup: replace CLASS_MIRE with CLASS_PCB_TARGET for naming clarity 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 3170eba801 refactoring: implemented SELECTION_TOOL's own GetCollectorsGuide() to avoid dependency on PCB_BASE_FRAME 2017-11-03 20:02:06 +01:00
Tomasz Włostowski c9817df9db refactoring: implemented BOARD-specific view Add()/Remove()/Update() methods in PCB_VIEW, moved to libpcbcommon 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 0245912c34 refactoring: split BOARD_ITEM::SwapData to use polymorphic per-item methods 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 26f862a9d0 refactoring: remove PNS router dependency on PCB_EDIT_FRAME 2017-11-03 20:02:06 +01:00
Tomasz Włostowski d0ef881a53 refactoring: make BOARD_COMMIT independent from pcbnew 2017-11-03 20:02:06 +01:00
Tomasz Włostowski ec61a00371 refactoring: remove link-time dependency between PCB_BASE_FRAME and EDA_3D_VIEWER 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 781008bfa5 refactoring: allow to run TOOL_MANAGER and SELECTION_TOOL without a host wxFrame 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 06f3b35255 refactoring: moved BOARD_COMMIT, PCB_GENERAL_SETTINGS and TransformShapeWithClearanceToPolygon() to libpcbcommon 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 7a44ab914d refactoring: replaced manual plugin registration with link-time plugin binding 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 8a09a1d329 refactoring: derive PCB-specific PCB_VIEW from VIEW with the intention of moving PCB_EDIT_FRAME entries used by the tools (e.g. GetActiveLayer) there 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 81d1e17f02 refactoring: renamed pcbstruct.h to pcb_display_options.h, DISPLAY_OPTIONS->PCB_DISPLAY_OPTIONS 2017-11-03 20:02:06 +01:00
Tomasz Włostowski 90ab5860dc refactoring: removed dependency of libpcbcommon on 3d-viewer. 2017-11-03 20:01:42 +01:00
jean-pierre charras c536364f05 Fix a few coverity warnings. very minor other changes. 2017-11-02 18:18:57 +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
Maciej Suminski 5eb56dd8b0 Coverity fixes
CIDs:
102571
168696
168701
168704
168706
168708
168710
168713
168716
168717
2017-11-01 10:24:26 +01:00
jean-pierre charras bd73a39a4b DSN export: export keepout zone polygons on each layer they are living 2017-10-31 19:53:52 +01:00
Maciej Suminski 05ab44f463 Fixed a memleak when no undo entry is requested in BOARD_COMMIT 2017-10-31 09:14:03 +01:00
Maciej Suminski e8e10c9245 Fixed a memleak in PCB_EDIT_FRAME::LoadFootprints() 2017-10-30 14:19:42 +01:00
Maciej Suminski 3a8b4a2fb7 Fixed a memleak in GerbView
Changed m_painter PAINTER* to unique_ptr<PAINTER> to avoid confusion
regarding the objection destruction.
2017-10-30 09:36:34 +01:00
jean-pierre charras 3ed106fb70 Make a translation more easy
Better title in dialog netlist option (Unconnected Tracks ->Tracks Connecting 2 Nets)
The previous title (Unconnected Tracks) is incorrect.
2017-10-28 15:27:45 +02:00
Kristoffer Ödmark 65b615bc4b Removed extra space in header part, fixed coding style 2017-10-27 12:13:23 +02:00
Kristoffer Ödmark 2e4dbdaf4b Fixed nest level when saving to not get giant diffs with version control software such as git 2017-10-27 11:30:11 +02:00
jean-pierre charras 1929727966 rename dialog_dxf_import.fbp to dialog_dxf_import_base.fbp, like other .fpb files 2017-10-25 10:10:03 +02:00
jean-pierre charras 78ec983632 DRAWSEGMENT fix crash when trying to copy a empty polygon.
SHAPE_POLY_SET: fix crash in VertexCount when it is a empty poly set, or when params are incorrect.

minor other fixes:
warning in degug mode in dialog_dxf_import_base.cpp
pcb_painter.cpp: remove a useless debug line.
2017-10-25 09:39:26 +02:00
José Ignacio Romero 73c88bd0fe Add more layers in default layers selection plot parameter. 2017-10-25 08:07:42 +02:00
Maciej Suminski bbe947e0f8 GenCAD exporter: quote and escape strings 2017-10-24 23:10:40 +02:00
Maciej Suminski bb68dad77c GenCAD exporter: clear shape name maps when export is finished
Otherwise the maps could contain stale data leading to a crash
2017-10-24 23:10:40 +02:00
Maciej Suminski 125781c7e1 GenCAD exporter: two level map for shape names
Previously the component to shape map contained
a lot of duplicated strings. Now the map stores
the component shape hash used for getting the
name from another map.
2017-10-24 23:10:40 +02:00
Maciej Suminski 13fc4c3c99 GenCAD exporter: export options made static 2017-10-24 23:10:40 +02:00
Maciej Suminski b53b7e3bc4 GenCAD exporter: generate matching DEVICE names 2017-10-24 23:10:40 +02:00
Maciej Suminski 82759f9cd0 GenCAD exporter: simplify shape matching 2017-10-24 23:10:40 +02:00
Maciej Suminski 019dca38c4 GenCAD exporter: generate shapes per footprint and reuse them 2017-10-24 23:10:40 +02:00
Maciej Suminski 847bede635 GenCAD exporter: changed 'flip components' to 'flip pads'
Such option might be useful for older CAM350 versions, but it should be verified.
2017-10-24 23:10:40 +02:00
Maciej Suminski d5fa28efe4 GenCAD exporter: option to export bottom components using MIRRORX 2017-10-24 23:10:40 +02:00
Maciej Suminski 2fce0d1235 GenCAD exporter: custom shape pads 2017-10-24 23:10:40 +02:00
Maciej Suminski 9b5dd3e629 GenCAD exporter: support for trapezoidal pads 2017-10-24 23:10:40 +02:00
Maciej Suminski 6ba33c8489 GenCAD export: added a switch to generate unique pin names 2017-10-24 23:10:40 +02:00
Maciej Suminski c3c5205393 GenCAD exporter: settings dialog 2017-10-24 23:10:40 +02:00
Maciej Suminski a73fa0790c GenCAD exporter: emit bottom modules using 'MIRRORX' directive to flip 2017-10-24 23:07:12 +02:00
Maciej Suminski c5b2169104 GenCAD exporter: fixed arcs 2017-10-24 23:07:12 +02:00
Maciej Suminski a06aed5305 GenCAD exporter: support for rounded rectangular pads, fixed oval pads 2017-10-24 23:07:12 +02:00
Maciej Suminski 63ddb1dbbc GenCAD exporter: fixed pad stacks for vias 2017-10-24 23:07:12 +02: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
jean-pierre charras 7418deb454 Pcbnew: fix issues with 360 deg angle arcs.
Fixes: lp:1725943
https://bugs.launchpad.net/kicad/+bug/1725943
2017-10-23 15:35:03 +02:00
jean-pierre charras 9bd5522419 Add a gerber test file
remove a few minor coverity warnings
2017-10-23 09:20:10 +02:00
jean-pierre charras 0b1eb5695f Fix crash when converting selected EDGE_MODULE items to a custom pad. 2017-10-21 12:46:59 +02:00
jean-pierre charras 8ba11dbd68 Minor fixes and enhancements 2017-10-21 11:00:59 +02:00
Seth Hillbrand 93a0e9e3d2 pcbnew: suppress compile warning on boost::optional 2017-10-21 08:49:33 +02:00
jean-pierre charras 87821c1490 Explode pad to shapes command: Fix incorrect conversion of primitive to EDGE_MODULE (missing initialization) 2017-10-21 08:48:26 +02:00
jean-pierre charras 55bb35a582 Cosmetic enhancement: add icon to 2 context menus (explode pad to graphic shapes and create pad from graphic shapes) 2017-10-20 18:25:44 +02:00
jean-pierre charras 9b4eddb744 Update gerber job file to latest format 2017-10-20 13:55:42 +02:00
jean-pierre charras 772dc2f24a Fix compil warnings 2017-10-20 13:48:36 +02:00
Seth Hillbrand fdae9f0b75 pcbnew: Only remove one duplicate track -- not both
Fixes: lp:1724728
* https://bugs.launchpad.net/kicad/+bug/1724728
2017-10-20 10:25:18 +02:00
jean-pierre charras 107c895cfd Pad editor: add tests to avoid incorrect values:
clearance must be >= 0
solder mask clearance must be >= 0
solder paste clearance must be <= 0
2017-10-20 10:25:17 +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 985aed36c7 Moved FMT_UI & FMT_ANGLE macros to a separate header 2017-10-20 09:34:32 +02:00
Russell Oliver 3b0855d204 Eagle Project Import: Code cleanup and documentation.
- Also makes the project and file import functions filetype dependent.
- The change from IO_MGR::KICAD to IO_MGR::KICAD_SEXP removes a conflict from a compile definition for KICAD when compiling kicad/import_project.cpp
2017-10-20 08:58:40 +02:00
Russell Oliver b9973a1c67 PcbNew Eagle Import: Archives footprints in pretty library automatically on eagle project import. 2017-10-20 08:58:40 +02:00
Russell Oliver 869743d573 Kicad Eagle Project Import Improvements. -- schematic and board files are both visible in file selection dialog. -- Allows for the selection of either the board or schematic file. -- silently fails on not detecting the corrosponding board or schematic file. -- all new kicad files are generated in new project directory -- Silently read netlist without generating annotation warnings which synchronises timestamps and paths based on given eagle references, otherwise renumbering schematic references will break links accross schematic and pcbnew. 2017-10-20 08:58:40 +02:00
Russell Oliver 3145829b77 Fix compiler redefined warnings for FMT_IU 2017-10-20 08:58:40 +02:00
Russell Oliver 433aa653fe Kicad: Add Project import function. -- add menu entry -- add ImportFile kiway function -- expose functions for creating/reading netlist -- add example eagle boad file as well 2017-10-20 08:38:42 +02:00
Maciej Suminski 2adc3d48b4 Eeschema Eagle Import: Assign timestamps for modules 2017-10-20 08:38:39 +02:00
Tomasz Włostowski 22063dc5a5 pcbnew: clear selection reference point when moving footprint by name
Fixes: lp:1722870
* https://bugs.launchpad.net/kicad/+bug/1722870
2017-10-19 23:57:42 +02:00
Tomasz Włostowski ac095b6724 pcbnew: tools for converting between custom-shaped pads and graphical shapes 2017-10-19 23:35:18 +02:00
Tomasz Włostowski bcde2a77e2 common/single_top: allow to launch footprint editor from the command line (--frame switch) 2017-10-19 23:15:48 +02:00
Tomasz Włostowski d9bfbb4fec pcbnew: added graphical polygon drawing & editing tools 2017-10-19 23:14:01 +02:00
Jean-Samuel Reynaud 46edf6519c Fix crash with clearance is "too" negative. Same bug as #1663173
Fixes: lp:1663173
* https://bugs.launchpad.net/kicad/+bug/1663173
2017-10-19 08:41:15 -04:00
jean-pierre charras 56d42c776a Replace assert() by wxASSERT to make debug more easy. 2017-10-19 09:49:09 +02:00
jean-pierre charras 72d4889a6d Remove duplicate code (pcbnew saves twice 'general' and 'layers' keys in 'kicad_pcb' file)
Fixes: lp:1724522
https://bugs.launchpad.net/kicad/+bug/1724522
2017-10-18 18:01:34 +02:00
jean-pierre charras 537804b5e8 Fix incorrect format on Windows 32 bits (in a message only in Debug) 2017-10-17 09:55:32 +02:00
jean-pierre charras 1e35d45948 Replace a assert by a wxASSERT to make debug more easy. 2017-10-16 20:26:37 +02:00
jean-pierre charras 1ec7fef4a2 fix a wxASSERT in dialog_keepout_area_properties.cpp 2017-10-16 13:58:36 +02:00
jean-pierre charras b5f23befeb Fix incorrect initialization of default colors for some items.
Fix incorrect detection of key handled in footprint_wizard_frame.cpp
2017-10-09 10:35:53 +02:00
jean-pierre charras cb3d28f11b define SetPadName() and GetPadName() (old name of D_PAD::SetName() and GetName()) for compatibility with existing python scripts 2017-10-09 09:58:15 +02:00
jean-pierre charras 246f8cae24 Fix missing initialization of colors settings of a board, when created by a python script.
A pointer was not initialized, therefore plots from a python script sometimes crash.

Fixes: lp:1721166
https://bugs.launchpad.net/kicad/+bug/1721166
2017-10-08 16:21:27 +02:00