Commit Graph

5633 Commits

Author SHA1 Message Date
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
Oliver d6c0d320db Consolidated line icon
- Line / polygon icon in pcbnew now matches that in modedit
2017-10-06 11:10:46 -04:00
jean-pierre charras 4905bbe500 hotkey management: enhancements in code to know if a hotkey was handled by an event or not.
No actual change in key management: in legacy it was partially existing, and not yet used in GAL mode.
2017-10-06 09:23:13 +02:00
jean-pierre charras 1164eaab72 Make the "No Net" mark color editable (mark for pads having no net name)
Note: this mark is currently drawn only in legacy canvas.
2017-10-05 20:11:55 +02:00
jean-pierre charras 3d15690817 remove a printf certainly used in debug tests during development. 2017-10-03 13:10:25 +02:00
jean-pierre charras 4a2647b771 very minor fixes in strings in dialog. 2017-10-02 15:40:36 +02:00
Maciej Suminski f3184ebadb Fixup for ed480bbb 2017-10-02 10:04:45 +02:00
jean-pierre charras 4b010ca129 Fix useless trailing and leading spaces in a few messages. Fix also capitalization in a few menus. 2017-10-02 09:25:48 +02:00
Cirilo Bernardo 949b4754e5 DXF: ensure "C" language environment. 2017-10-02 09:16:29 +02:00
Cirilo Bernardo a3dfd2c0dd DXF: fix import of Polyline with bulge 2017-10-02 09:16:29 +02:00
Maciej Suminski ed480bbbd4 Fixed a sizer assert in pad properties dialog 2017-10-02 09:03:26 +02:00
Baranovskiy Konstantin c34955aaed Pcbnew: small fix for pad properties dialog. 2017-10-02 08:56:55 +02:00
Maciej Suminski e2ba6da886 Fixed an empty msgid warning (gettext) 2017-10-02 08:49:33 +02:00
Kristoffer Ödmark 4a5d400ec2 pcbnew: copy/paste code cleanup & formatting 2017-09-30 14:28:54 +02:00
Tomasz Włostowski c6a0ad895b pcbnew: code formatting, removed previous module editor copy/paste functions 2017-09-30 14:28:54 +02:00
Tomasz Włostowski adcda4a3e8 pcbnew: prompt for reference point in the message panel, add cut/copy/paste entries in the Edit menu 2017-09-30 14:28:54 +02:00
Tomasz Włostowski 5731000135 pcbnew/copy&paste: multiple improvements:
- fixed netcode propagation bug
- factored out EDIT_TOOL::m_offset, now selection offset is stored in SELECTION class
- added VECTOR2I-based Move/Flip/Rotate methods in BOARD_ITEM
2017-09-30 14:28:54 +02:00
Tomasz Włostowski f573a2e685 wip 2017-09-30 14:28:54 +02:00
Tomasz Włostowski 3fb926a8f2 Fix snapping to anchors in PICKER_TOOL & highlighting of pasted items 2017-09-30 14:28:54 +02:00
Tomasz Włostowski 931a1ccaff Improved copy/paste functionality by Kristoffer:
- added selection of reference point
- added snapping when pasting
- some minor code refactoring
- disabled pasting between footprint and pcb editors due to model incompatibility
2017-09-30 14:28:54 +02:00
Kristoffer Ödmark 279ccd4fe2 Fix bug found by Tomasz, added constant modifier in loops where board items should not be modified 2017-09-30 14:28:54 +02:00
Kristoffer Ödmark 79d81ae9ff forward the event 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark 4ce38abce2 renamed copypasta functions, fixed a paste_module error 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark e19882577a fixed a comment, copies now retain their path if any 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark b4879d061c Fixed menu items, moved the copy and cut to the EDIT_TOOL, Fixed rendering when copying a module 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark 7ff096fbac updating patch to master 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark bd8980596f Some code cleanup to follow kicad style better 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark 6a02ee6c4b fixed crash on copying texte modules 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark 84b803042c Improvements to copy-paste
-Can paste items from board to module-editor (only module parts)
-Can paste entire modules just as copy
-Can copy items inside module-editor

Known limitations:

-Will crash if trying to paste a module containing module_text inside
the module editor ( dont know why, problem existed before )
-If copying things with strange layer names, the layer names will be
changed.
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark 05d8f1071e Made the formatHeader into multiple small functions 2017-09-30 14:28:53 +02:00
Kristoffer Ödmark c0981b8444 Added a new plugin that can save and load to clipboard, using ctrl+shift+c/v for copy pasting
Added the needed kicad_clipboard files and made copy pasted modules have no path
2017-09-30 14:28:53 +02:00
Seth Hillbrand 6573a43f3a pcbnew: multiple keepout zone bug fixes
- Fixes segfault in ZONE_CONTAINER::SetLayerSet
- Copies layerset when using assignment and new()
2017-09-30 13:56:25 +02:00
Simon Schubert b6d54acf3b Corrected the default net class assignment 2017-09-29 08:47:40 +02:00
Wayne Stambaugh ded4ad9b17 Pcbnew: delete objects from removed layers.
This fixes potential DRC false positive bugs that occur when inner layers
are removed from the board but the actual objects on contained on those
layers remain in the board.

Since Pcbnew does not handle odd number layers, this is not a perfect fix.
When the user chooses the front or back layer only options from the layer
setup dialog, objects on the copper layers will not be removed.  This will
not cause the false positive issue described above.

Get rid of dialog OK and cancel button event handlers and use the proper
TranferData(To/From)Window for handling control data.

Add PCB_LAYER_COLLECTOR for collecting board objects by layer.  Factor out
redundant [] operators into base PCB_COLLECTOR object.

Fixes lp:893950

https://bugs.launchpad.net/kicad/+bug/893950
2017-09-28 13:01:09 -04:00
jean-pierre charras 517921e2e1 update doc and remove a outdated file
Update or fix a few strings in menus and tool tips
2017-09-28 18:56:36 +02:00
Maciej Suminski 6006b54dd9 Fixed a crash when editing a pad of a bottom layer module
Fixes: lp:1720007
* https://bugs.launchpad.net/kicad/+bug/1720007
2017-09-28 09:58:34 +02:00
jean-pierre charras 54d34c341b Cleanup code 2017-09-28 08:38:36 +02:00
Maciej Suminski 068a29952c Changed AUI toolbars background from gradient to solid
Based on patches from Windsor Schmidt <windsor.schmidt@gmail.com>
2017-09-27 23:23:06 +02:00
jean-pierre charras df830dab4c Add comments and a comment asking to fix a call to a GUI inside a io plugin, that is not allowed 2017-09-27 18:59:17 +02:00
jean-pierre charras b4a59eb96d Fix minor issues in DIALOG_KEEPOUT_AREA_PROPERTIES.
Fix keepout zone creation in legacy canvas.
Add a comment in lset.cpp
2017-09-27 16:54:28 +02:00
Oliver Walters 42be6bb966 Improved keepout zone properties dialog
- Checkboxes next to layers
- OK button is disabled if no layers are selected
2017-09-27 10:35:00 +02:00
Oliver Walters c977c88a10 Zone keepout exclusion now works on multiple layers!
Bug fixes for keepout layers

- Changed LSET::size() -> LSET::count()
- Save/load functions no longer depend on zone being a keepout
2017-09-27 10:35:00 +02:00
Oliver Walters 7e0fa329d0 DRC checks for keepout zones work on all layers 2017-09-27 10:35:00 +02:00
Oliver Walters 2895030cfa Add multi-layer zone rendering for GAL
Enable multi-layer selection for keepout zones in GAL
2017-09-27 10:34:59 +02:00
Oliver Walters 0f6ec7632b Enable multi-layer for keepout zones
- Load / save from PCB file correctly
- Doesn't display properly yet
- Keepout only actually applies to one layer (for now)
2017-09-27 10:34:59 +02:00
Baranovskiy Konstantin 28997e7f37 Footprint viewer: fix zooming from toolbar or menu in GAL. 2017-09-26 16:24:54 +02:00
Wayne Stambaugh 9ca3f632a2 Pcbnew: fix update schematic from PCB file name bug.
Use ctor wxFileName( path, name, extension) to create full schematic file
name in update PCB from schematic code path.  This prevents file names with
dots '.' from being interpreted as the extension when using the wxFileName
assignment operator.
2017-09-26 10:13:21 -04:00
Jon Evans 256f52f27e Use VIEW_GROUP for candidate highlighting; enable in PcbNew also 2017-09-25 13:39:37 +02:00
Maciej Suminski 05a120f09f Unified {Load,Save]CanvasTypeSetting in EDA_DRAW_FRAME 2017-09-25 13:39:32 +02:00
Seppe Stas d7b143f6f0 Right click option to change layer and render color 2017-09-22 17:41:42 +02:00
Maciej Suminski df472e6426 Added mouse position refresh event WX_VIEW_CONTROLS::WarpCursor() 2017-09-22 11:13:45 +02:00
Michael Geselbracht da037027fb Do not warp viewport when dragging FPs
Fixes: lp:1714611
* https://bugs.launchpad.net/kicad/+bug/1714611
2017-09-22 11:13:40 +02:00
Wayne Stambaugh cb764d73c5 Minor trace logging improvements.
Make all trace environment variable strings upper case and prefix with
KICAD_TRACE_ for consistency.

Add Doxygen group for the trace environment variable strings.
2017-09-21 08:58:41 -04:00
Jon Evans 8722fd9c6c Set modified flag when changing layer visibility (lp:793420) 2017-09-21 11:09:08 +02:00
Wayne Stambaugh 90c3d41f67 Fix duplicate accelerator key in board editor view main menu.
Both "&Fit on Screen" and "&Flip Board View" in the "View" main menu were
mapped to the 'F' accelerator key.  Changed "Flip &Board View" to use the
'B' accelerator key.

Fixes lp:1717924

https://bugs.launchpad.net/kicad/+bug/1717924
2017-09-20 12:58:39 -04:00
jean-pierre charras 4e8ad8516a Update gerber job file format and job file extension.
Gerber job file extension is now .gbrjob, according to latest changes in Gerber job file spec.
2017-09-20 18:14:20 +02:00
jean-pierre charras 8d1d37beb0 Refinements in pad properties dialog 2017-09-20 16:14:23 +02:00
jean-pierre charras 7c1ac6fbcc Refinements in pad properties dialog 2017-09-20 15:37:37 +02:00
jean-pierre charras a43f3ab1fe replace "BasicShape" by "Primitive" in code, a better name 2017-09-20 12:51:10 +02:00
jean-pierre charras 4122aa1c01 Fix translation (I18n) problems 2017-09-20 09:32:37 +02:00
jean-pierre charras b00174c5a4 add comment 2017-09-19 19:00:22 +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 d6f3961804 pcbnew & eeschema file format version bump 2017-09-19 18:22:56 +02:00
Maciej Suminski 85be485c34 Enable long names for pin numbers and pads
- pad names are stored as wxString instead of a char[4] & integer union
- removed pad name to string conversion functions
- fixed pad & pin properties dialog restrictions regarding the name
length
2017-09-19 18:19:49 +02:00
jean-pierre charras dddaa7e69c use custom pad shape in a microwave footprint 2017-09-19 15:51:47 +02:00
jean-pierre charras e504746fa3 Rename muonde.cpp to microwave.cpp 2017-09-19 15:51:45 +02:00
Fabrizio Tappero d2d665e540 library option reviewed and renamed, minor menu text changes 2017-09-19 08:11:24 -04:00
jean-pierre charras e2d3fcec02 Add support for custom pad shape. Full support in DRC and PnS.
add option to use shape or convex hull as clearance area in zones.
simplify code to handle clearance area
2017-09-19 09:02:53 +02:00
Maciej Suminski 25abe30c72 Code formatting 2017-09-18 11:25:32 +02:00
Kristoffer Ödmark aaa1e35b6a Heirarchical sheet selection includes more.
Now the heirarchical sheet selection feature includes tracks that belong
to a net spanning multiple sheets, but only by doing a logical connection
from the pads of the modules. This is to be able to select connections
between components on the same sheet. For example if the sheet contains a
star power connection or something similar, then most of the sheet local
connections will now also be included.
2017-09-18 11:16:13 +02:00
Mathias Grimmberger 2c23c4c3a9 Dropdown list in via properties dialog to select predefined via size 2017-09-18 10:28:08 +02:00
Jon Evans b6298a0a41 Don't force grid color to LAYER_GRID in EDA_DRAW_PANEL_GAL 2017-09-12 12:49:17 +02:00
jean-pierre charras e15acbb00d Fp editor and board editor have now a separate color setup.
fp viewer uses the default colors, because it has no color setup dialog.
class_colors_design_settings: remove not used members.
Fix issue in modedit: the color config was never read.
2017-09-11 18:51:48 +02:00
jean-pierre charras 19ad350c1c Fix a bug in DRAWSEGMENT::GetParentModule() that expected a non null parent to return a null parent! 2017-09-08 20:19:14 +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
jean-pierre charras b0b3fde598 fix in Gerber job file creation. 2017-09-01 13:37:28 +02:00
jean-pierre charras b33b79d654 fix a minor compil warning 2017-09-01 13:36:55 +02:00
Maciej Suminski 450f006d7d Keep the default net class object per board, not static
Fixes: lp:1711491
* https://bugs.launchpad.net/kicad/+bug/1711491
2017-08-31 17:46:17 +02:00
Jon Evans eec1366ead Move ZOOM_TOOL to common; add RMB-drag to zoom out 2017-08-31 10:04:00 +02:00
jean-pierre charras 3ac87f6969 Fix an issue on MacOS. 2017-08-30 18:32:41 +02:00
jean-pierre charras 50164e9968 Add Gerber job file writer in Pcbnew, and a basic reader in Gerbview. Currently disabled
Fix also very minor issues in Gerbview
2017-08-30 11:04:33 +02:00
Tomasz Włostowski 2e4c22f718 router: fix corruption of board data when the inline drag is activated while the router tool is running
Fixes: lp:1712838
* https://bugs.launchpad.net/kicad/+bug/1712838
2017-08-30 01:16:06 +02:00
Tomasz Włostowski 20b9ed4897 router: fixed possible use-after-free condition during segment dragging
ratsnest: fixed occasionally disappearing airwires
2017-08-29 18:49:05 +02:00
Wayne Stambaugh 55ce984f05 Minor design rule editor dialog layout improvements.
Fix the alignment of the unit static text control for uVia diameter and
drill size to match the rest of the units static text controls on the
global design rules tab.
2017-08-29 11:15:16 -04:00
Bastian Neumann 9b900ea834 Micro via input fields are enabled when design is loaded
Loading a design with micro vias enabled did check the box for enabling
micro vias in pcbnew. The value input fields for diameter and drill
size were not enabled.

This patch moves the functionality into an new function and calls that
from the onclick event of the checkbox and the init function of the
dialog.
2017-08-29 09:28:25 -04:00
jean-pierre charras a557838c61 Fix incorrect refresh of User Interface after running an action plugin, and add comments 2017-08-27 08:13:35 +02:00
jean-pierre charras db3491f382 Ensure filled zones have the minimal clearance given by the netclasses, between 2 copper items.
It also fixes a corner case, when 2 zone with zone clearance = 0 are overlapping with different priorities
(previously, they were shortened)

Fixes: lp:1713028
https://bugs.launchpad.net/kicad/+bug/1713028
2017-08-26 08:55:32 +02:00