Commit Graph

5739 Commits

Author SHA1 Message Date
Maciej Suminski 9bb660a6bc Fix P-Cad importer plugin warnings
A few methods differed by the number or type of arguments in derived
classes. They were changed to match the base class method signature and
marked as 'override'.
2017-12-14 18:52:05 +01:00
Maciej Suminski 4671b9b34e Fixed module removal when rotating/flipping a placed module
Module placer did not mark the newly placed modules as selected,
but all edit functions (rotate/place/etc.) rely on getting a selected
item. When a rotation/flip command was issued, the newly placed module
was dropped and the one underneath the cursor has been rotated.

To fix this the newly placed modules are marked as selected.
It also simplifies the placer code a bit.

Fixes: lp:1738148
* https://bugs.launchpad.net/kicad/+bug/1738148
2017-12-14 17:13:42 +01:00
Maciej Suminski 9c2d1cf890 Fixed BOARD_COMMIT::Revert()
Revert() method was still not aware of CHT_DONE flag, therefore
the switch statement was always invalid. To fix it, the commit
type is split to type and flags as is done in Push() method.
2017-12-14 17:13:42 +01:00
Maciej Suminski d599a83c4b Removed unused variables in PCB_VIEW 2017-12-14 17:13:42 +01:00
jean-pierre charras a287748921 Cosmetic enhancement: Add icons to track length tuner menu. 2017-12-14 14:33:20 +01:00
Tomasz Włostowski eed924fe45 Fixed zone filling crash & thermal stubs inconsistency
Fixes: lp:1737557
* https://bugs.launchpad.net/kicad/+bug/1737557
Fixes: lp:1737542
* https://bugs.launchpad.net/kicad/+bug/1737542
Fixes: lp:1737541
* https://bugs.launchpad.net/kicad/+bug/1737541
2017-12-14 01:29:08 +01:00
Tomasz Włostowski 941ebe376c poly2tri: throw exceptions instead of crashing on non-supported polygons 2017-12-14 01:25:28 +01:00
jean-pierre charras c18b638c17 Cosmetic enhancement in GAL: disambiguationMenu: add icons in menuitems, like in Legacy mode. 2017-12-13 19:42:33 +01:00
Maciej Suminski 8ab8a11cf8 Faster zone and custom shape pad drawing, minor PCB_PAINTER refactor
Zones: it turned out that for every zone point, the set of hatch lines
has been drawn, resulting in numerous redundant lines. Now the set is
drawn only once per zone.

Custom shape pads: as GAL supports SHAPE_POLY_SETs, there is no need to
create a temporary vector to copy there a list of points to be drawn.
Changed the drawing calls to use SHAPE_POLY_SETs directly.

Thanks to Andreas Buhr patch, code for drawing filled polygons and their
outlines has been unified. Previously it was done by changing the
drawing method (GAL::DrawPolygon() vs GAL::DrawPolyline()), now it is
done by modifying attributes (stroke/fill).
2017-12-13 17:01:32 +01:00
Jeff Young df76380a2d Don't leave a hidden item behind.
If the object changes between a TA_CONTEXT_MENU_UPDATE
event and a TA_CONTEXT_MENU_CHOICE event (usually as
a result of a cancel), the old code would leave the
last item hidden.

Fixes: lp:1737562
* https://bugs.launchpad.net/kicad/+bug/1737562
2017-12-13 15:59:21 +01:00
jean-pierre charras b395b55a20 Fix a few (minor) issues in microwave tools. 2017-12-11 12:54:44 +01:00
Maciej Suminski f19aed9d5c Workaround for OSX freeze when filling zones in GAL
More details:
https://lists.launchpad.net/kicad-developers/msg32306.html
2017-12-11 10:39:58 +01:00
Jon Evans b6ac603f0a Fix AlignLeft / AlignRight when using Flip Board view
Fixes: lp:1734377
* https://bugs.launchpad.net/kicad/+bug/1734377
2017-12-11 09:40:08 +01:00
Jon Evans 6ee26fdd8c Remove LAYER_WORKSHEET from forced visibility since it now has a control
Fixes: lp:1737315
* https://bugs.launchpad.net/kicad/+bug/1737315
2017-12-10 17:41:00 -05:00
Maciej Suminski d205366da7 Add support for wchar_t to SWIG 2017-12-08 18:04:51 +01:00
Maciej Suminski f7072cc7c6 Moved DRC::doEdgeZoneDrc to drc_clearance_test_functions.cpp 2017-12-08 11:33:40 +01:00
Maciej Suminski 9b5dc5c215 GAL show markers for zone outlines gap test
Moved a DRC function (BOARD::Test_Drc_Areas_Outlines_To_Areas_Outlines)
from BOARD class to DRC (DRC::TestZoneToZoneOutline). Added BOARD_COMMITs
to handle marker visibility updates.

Fixes: lp:1619124
* https://bugs.launchpad.net/kicad/+bug/1619124
2017-12-08 11:33:32 +01:00
Seth Hillbrand 86b4a3c3e6 pcbnew: Correct spectra output default filename
Fixes: lp:1736724
* https://bugs.launchpad.net/kicad/+bug/1736724
2017-12-07 09:07:47 -05:00
Henner Zeller 3f57fa5d24 Change time_t in the functions that deal with timestamps to a new typedef timestamp_t (defined as a long).
that makes sure the c++ side and swigged Python side agree on the type, because time_t create problems in Python scripts.
2017-12-07 13:16:33 +01:00
Seth Hillbrand a63e9b863b pcbnew: Fix multiple delete bug
Delete events when using GAL are handled by only one tool handler
instead of ROUTER_TOOL and EDIT_TOOL both deleting items.

Fixes: lp:1715158
* https://bugs.launchpad.net/kicad/+bug/1715158
2017-12-07 09:31:20 +01:00
Maciej Suminski f44d4d01ea Fix segfault when removing the last corner of a cutout
Fixes: lp:1736147
* https://bugs.launchpad.net/kicad/+bug/1736147
2017-12-06 16:28:03 +01:00
jean-pierre charras cdad02336d fix minor compil warnings 2017-12-05 18:02:53 +01:00
Tomasz Włostowski 000f810161 pcbnew: fixed build error with python-enabled builds 2017-12-05 16:47:44 +01:00
Tomasz Włostowski 7ad436c7aa pcbnew: now PROGRESS_REPORTER should work in multi-threaded context under Windows... 2017-12-05 14:54:57 +01:00
Tomasz Włostowski f34b86d39e pcbnew: made zone filling algorithm thread-safe.
- moved zone filling algo outside ZONE_CONTAINER class
- const'ified methods that don't need to modify zone's properties
- cleanup: m_FillMode -> enum
2017-12-05 14:54:57 +01:00
Tomasz Włostowski 8df299a6bc pcbnew: Optimized zone filling algorithm: code cleanup 2017-12-05 14:54:57 +01:00
Tomasz Włostowski d1d9e57b86 pcbnew: removed unused files 2017-12-05 14:54:57 +01:00
Tomasz Włostowski fdd5023aee pcbnew: factored out ZONE_FILLER to a separate file 2017-12-05 14:54:57 +01:00
Tomasz Włostowski 56336fdafe POINT_EDITOR: migrate to ZONE_FILLER class 2017-12-05 14:54:57 +01:00
Tomasz Włostowski 83b020d4da PCB_TOOL: added convenience methods for accessing current SELECTION 2017-12-05 14:54:57 +01:00
Tomasz Włostowski 58ce865352 pcbnew: made TransformShapeWithClearanceToPolygon virtual 2017-12-05 14:54:57 +01:00
Tomasz Włostowski 316ddadec1 pcbnew: Optimized zone filling algorithm. 2017-12-05 14:54:57 +01:00
jean-pierre charras c0a539959e Fix a few Coverity warnings 2017-12-04 12:46:11 +01:00
Nick ?stergaard c74437a44e Remove unused custom cmake target
This target seems to only create empty makefiles, tested on linux. And I
can not find any references to it in any of the current CMakeLists. Lets
remove it.
2017-12-03 18:21:40 -05:00
Oliver b588c1902a Write "offset" only if non-zero
- Use "at" if all offset dimensions are zero
- Use "offset" otherwise
2017-12-01 16:21:50 +01:00
Oliver 76f5df8a43 Decode "offset" in STEP export tool
- Read "at" as inches
- Read "offset" as mm
2017-12-01 16:21:50 +01:00
Oliver cb97f68e35 CHANGE file format for 3D model offset
- Reverts behaviour of 3e71ed2421
- 3D model offset now explicitly written in mm, using "offset" tag
- Any read "at" tag is converted from inches to mm
- This will not break any 3D model offset when reading files
- It will however render files incompatible with old versions
2017-12-01 16:21:49 +01:00
Jon Evans 7860b0c4fe Restore "Flip Board" checkbox state when switching canvases
Fixes: lp:1733936
* https://bugs.launchpad.net/kicad/+bug/1733936
2017-11-30 08:44:53 +01:00
Jon Evans 8f79f0a66d Add DRC items when reloading board view (Fixes lp:1542420) 2017-11-29 11:40:02 +01:00
jean-pierre charras 68268973b7 To avoid mistakes between graphic layers for pads, holes and not plated holes, rename 3 GAL_LAYER_ID names:
LAYER_NON_PLATED to LAYER_NON_PLATEDHOLES
LAYER_PADS_HOLES to LAYER_PADS_PLATEDHOLES
LAYER_PADS to LAYER_PADS_TH
and add comments and fix a render issue in gal mode for non plated holes.
2017-11-29 09:48:41 +01:00
Maciej Suminski 769611b79e Do not ask for confirmation to open Properties dialog for a locked footprint
Opening Properties dialog normally does not ask the user to confirm the
action, even for locked items. The exception was a case when there was
nothing selected and Properties dialog was invoked via its hot key -
then SELECTION_TOOL::RequestSelection() tried to get the item under the
cursor, verifying the lock flag.

Fixes: lp:1734537
* https://bugs.launchpad.net/kicad/+bug/1734537
2017-11-28 17:35:46 +01:00
Maciej Suminski db3185723e Drop a locked item after a move operation with a single click
Locked items used to require two clicks to drop an item. This patch
enables dropping with a single click.

Fixes: lp:1716580
* https://bugs.launchpad.net/kicad/+bug/1716580
2017-11-28 15:09:18 +01:00
Maciej Suminski 6105b15b2e Renamed 'Display and Hide' menu to 'Display Options' 2017-11-28 14:46:37 +01:00
Jon Evans 84ab71f8ec Allow changing LAYER_PADS color and visibility (Fixes lp:1672646) 2017-11-28 11:02:39 +01:00
Jon Evans 0564d3456b Preserve color scheme when switching to legacy (Fixes lp:1670669)
Instead of modifying the colors when switching to legacy canvas,
they will now be preserved and only returned as the "legacy" colors.
2017-11-28 10:47:04 +01:00
Maciej Suminski f36350cb88 Do not relaunch the move tool when it is active
Fixes: lp:1678575
* https://bugs.launchpad.net/kicad/+bug/1678575
2017-11-28 10:46:53 +01:00
Jon Evans f107545a82 Show message panel info for highlighted net in GAL (Fixes lp:1518626) 2017-11-28 08:16:58 +01:00
Chris Pavlina f576596375 Add "unlock" property to footprint texts
This property decouples the text orientation from the board orientation,
removing the restriction that it face the bottom or right side of the
board.
2017-11-27 18:21:00 -07:00
Jon Evans e5847b7953 Gerbview: apply layer colors to GAL after sorting (Fixes lp:1720540) 2017-11-27 08:23:17 +01:00
jean-pierre charras 48a37c2998 Fix minor bug: pcbnew file save: dimensions timestamp updated on every save
Fixes: lp:1733872
https://bugs.launchpad.net/kicad/+bug/1733872
2017-11-26 14:31:15 +01:00