Commit Graph

4693 Commits

Author SHA1 Message Date
jean-pierre charras 99d18faca9 Change the way main editor frames are managed by Kicad: before this change, they had the Kicad manager frame as parent frame, and it creates a few issues:
- When the Kicad manager is iconized, all other child frames are iconized (normal wxWidgets behavior)
- For viewer frames in modal mode, there is a more annoying issue: they have the wxFLOAT_ON_PARENT frame style on unix, and wxSTAY_ON_TOP on Windows.
wxFLOAT_ON_PARENT frame style is incorrect (although on most WM it works) because the parent frame (Kicad manager Frame) is not the caller. It is usually a main editor frame.
It does not work on Windows (wx STAY_ON_TOP is used).
* Now each editor frame has a null parent.
Therefore iconizing the Kicad manager frame does not iconize other frames.
* Viewer frames have null parent in normal mode and the caller parent in modal mode (therefore wxFLOAT_ON_PARENT frame style is always and correctly used)
* References to opened/closed main frames are no more managed by the (complicated) kicad code. Instead of, a non critical and more easy to understand code just uses FindWindowByName to know if a main window exists or not.

These changes do not fix all issues about Kicad frames brought to the foreground or the background, but it fixes a few issues, and AFAIK do not add other issues.
2016-03-21 17:36:06 +01:00
Cirilo Bernardo 44a75e6f69 Sync to main branch r6634 2016-03-21 13:38:47 +11:00
Cirilo Bernardo a4ba01f42d Various fixes to DXF import
The attached patch makes the following changes to import DXF:

1. correctly implements scaling based on DXF $INSUNITS -
at least where INSUNITS is sensible. I ignore units like miles,
gigameters, AU, lightyear, parsec ...

2. correctly implements LWPolylines, adding an ARC segment
rather than a line segment when bulge != 0.  A number of users
have been complaining about getting the wrong board shape
(chamfered corners rather than rounded corners) on DXF Import,
now they shouldn't complain.
2016-03-20 21:33:53 -04:00
jean-pierre charras 6e93672760 Icons: remove not used icons. 2016-03-20 18:52:15 +01:00
Jon Neal 00f9dbd095 Change misspelled dxf conversion constant from member variable to static const like other conversion constants 2016-03-19 23:51:02 -04:00
Chris Pavlina 60d93d024c pcbnew: don't pick up selection after unsuccessful Duplicate
Following rev 6627 (git 2777182), if a non-duplicatable item was the object of
a Duplicate action, the original item would be picked up, potentially
misleading the user into thinking something was actually duplicated.
2016-03-18 07:15:50 -04:00
Chris Pavlina fd1d7ecb6e pcbnew: fix Duplicate assertion in legacy also (lp:1558913)
Do not assert that the item to be duplicated can be duplicated, just don't
duplicate it. The user can trigger a Duplicate on items that aren't
duplicatable, like field texts - he'll figure out that they can't be duplicated
when they aren't, no need to deliver a scary warning and risk an abort.
2016-03-18 06:49:49 -04:00
Chris Pavlina 2777182a2c pcbnew: fix Duplicate assertion
Do not assert that the item to be duplicated can be duplicated, just don't
duplicate it. The user can trigger a Duplicate on items that aren't
duplicatable, like field texts - he'll figure out that they can't be duplicated
when they aren't, no need to deliver a scary warning and risk an abort.

TODO: Don't pick up the duplicated selection if none of the items in it were
actually duplicated, it's misleading.
2016-03-18 06:28:11 -04:00
Jon Neal d66cc0fedc Fix one click dialog footprint spreading picking up extra footprints. 2016-03-17 23:09:24 -04:00
Tomasz Włostowski aa5a1d1898 PCB updater: spread footprints after updating netlist 2016-03-16 23:05:08 -04:00
jean-pierre charras 5de85450b8 Pcbnew: Dialog list and select net: better dialog and make net selection to highlight a net working on GAL. 2016-03-16 15:14:00 +01:00
Wayne Stambaugh b7c974b2c4 MinGW64 build warning fixes.
* On MinGW64 and possibly other 64-bit platforms, time_t is defined as a long
  long unsigned integer but all of the scanf and printf format specifiers used
  to save and load the schematic files are %lX which is a long unsigned integer
  which causes compile warnings.  Add casts and temporary variables to eliminate
  the compile type warnings.
2016-03-14 14:20:19 -04:00
Cirilo Bernardo 968a18a859 Sync with main branch r6620 2016-03-14 19:00:24 +11:00
jean-pierre charras 44fc6cb337 Fix issue: "Malformed footprint causes crash on load" (in fact, no crash: just an assert dialog is shown) 2016-03-13 16:39:18 +01:00
unknown 3ba4226cb2 pcbnew: fix exception when import pcad pcb with zero size pads: zero size pads are now just ignored. 2016-03-13 11:41:14 +01:00
Simon Wells 145cd47d5c Move copy version information code to about dialog. 2016-03-11 11:40:24 -05:00
jean-pierre charras 99e81aeb9c Fix incorrect (too small) bounding box EDA_TEXT, noticeable when chars like j or { are used in zone fill functions.
I tried to merge some constants used both in legacy mode and gal mode (which were, before this patch, separate constants).
There is still a serious work to avoid different calculation code for the same text in draw and plot functions.
Work in progress to merge these calculation functions.
2016-03-11 13:08:34 +01:00
Cirilo Bernardo ec580cff50 Sync to main branch r6614 2016-03-11 09:37:12 +11:00
Chris Pavlina 3fd179cd10 pcbnew: remove dead legacy save code 2016-03-08 15:49:25 -05:00
jean-pierre charras b237d81b75 Create Array dialog: some fixes:
*  No initial copied object changed (this was a serious bug to modify these objects. Previous version modified references and other texts using a very stupid algorithm).
  It also fixes bug 1549231
* only new pads are numbered (therefore renumbering is used only in footprint editor)
*  remove not working and useless feature in circular array: now  only use number for pads (others options using alphabetical letters are removed: did not work corectly, and were useless)
* a more clear option is used to choose if the pads are numbered from a choosen value, or from the first avaible value
* Adding a warning messsage if a parameter is incorrect.
2016-03-07 08:13:06 +01:00
Cirilo Bernardo 317ec48e1b Sync with main branch r6608 2016-03-05 10:00:32 +11:00
jean-pierre charras ba038ac507 Pcbnew, File menu: break Open (board) into 2 menu items: Open (only for Kicad board files) and Import (only for non Kicad board files) 2016-03-04 19:48:08 +01:00
Cirilo Bernardo dbe54067f9 Reverted/reworked BoardEdtor_base and Modedit_base *.fbp files to wx3.5-RC1 version due to bug in -RC2 2016-03-02 13:36:24 +11:00
Cirilo Bernardo d0a2080823 Merge with main branch r6601 2016-03-01 11:44:15 +11:00
Wayne Stambaugh bd800630be Pcbnew: prevent delete hot key from deleting locked footprints. (fixes lp:1538805) 2016-02-29 16:12:03 -05:00
Simon Wells 4d2a05856f Minor CMake configuration file fixes.
* Move add_directory()s in main CMakeList.txt after all find_package()
  macros are run so all flags in the main CMakeList.txt are propagated
  to the sub-folder CMakeList.txt files.
* Remove commented out include of config.h
* Make the link maps only build on linux as -${TO_LINKER},-cref
  -${TO_LINKER},-Map=blah just gives warnings on osx w/ clang
* Make the link maps only build with flag -DKICAD_MAKE_LINK_MAPS is
  defined during CMake configuration as they are highly specific.
* Moved the code for setting link maps into the main CMakeList.txt
  file to avoid duplication.
* Removed -D__ASSERTMACRO__ from osx as its no longer needed
* Removed a couple of other OSX only things that wouldn't work anyway
* Moved set (BU_CHMOD_BUNDLE_ITEMS) to the main CMakeList.txt as
  otherwise it would only work for the KiCad build not the other
  applications
* Made KICAD_SCRIPTING_MODULES enable KICAD_SCRIPTING as currently if
  you have modules enabled without the scripting base it will on build.
  This could be changed to a fatal error saying you need to also enable
  scripting but it seems unnecessary.
* Removed duplication of pcbnew.py install code under modules and
  scripting since you can't have modules without scripting now
2016-02-29 14:08:03 -05:00
Cirilo Bernardo 4d20f32fd0 Added 'Configure Paths' button to Footprint Properties editors 2016-02-28 10:17:58 +11:00
Eldar Khayrullin 89ea49ff14 Pcbnew: PCAD2KICAD text conversion improvements.
* Fix text justification.
* Fix caret return symbol.
* Fix size of proportional font.
2016-02-27 12:33:38 -05:00
Bernhard Stegmaier f8abe9c191 Add support for optional touchpad panning. 2016-02-24 14:53:02 -05:00
unknown 11da247aa1 Fix issues in PCAD import of P-CAD ASCII files. 2016-02-24 12:56:40 +01:00
unknown 3d635bca01 Add QFN Footprint generator python script 2016-02-24 09:48:55 +01:00
jean-pierre charras cf09129387 Python interface: add methods to add or remove layers to/from a layer set. Usefull to modify the layer set of pads
Very minor other fixes.
2016-02-24 09:45:34 +01:00
Cirilo Bernardo 4c809f0f13 Sync with main branch r6579 2016-02-23 18:31:54 +11:00
jean-pierre charras 60ac4f7ee3 Pcbnew: fix a crash when trying to export a footprint in a non writable directory, or if a non writable old file was existing. (Linux only. On Windows, the wxWidgets file dialog dectects this issue) 2016-02-22 15:38:35 +01:00
Cirilo Bernardo af0ac955b9 Merge with main branch r6576 2016-02-22 19:58:32 +11:00
Cirilo Bernardo 5776037a70 Flush model data upon exit of Footprint Properties dialogs 2016-02-21 11:54:34 +11:00
jean-pierre charras c379df06bb Remove CK1202_V1.pcb sample file, actually not used in Kicad, due to its unclear copyright. The http link to this sample file is in files.txt. 2016-02-20 08:50:54 +01:00
jean-pierre charras d1559b129d Pcbnew: fix 2 issues:
* File import: use case insensitive comparison to choose import plugin, from the file extension (It is not always in lower cases, especially on Windows.)
* onleftclick.cpp: fis a minor issue, which happens after switching form GAL to Legacy canvas: sometimes a board item is left selected from GAL, and creates false warning message in legacy.
2016-02-19 15:10:23 +01:00
unknown c2fd462dd6 Footprint generators in Python: add a rounding method to put a coordinate on a grid (PutOnGridMM and PutOnGridMils) . 2016-02-18 18:53:39 +01:00
unknown fb17b3fa17 Set SMD attribute in footprint python generators 2016-02-18 15:29:30 +01:00
Cirilo Bernardo 25a5db9092 Sync with main branch r6563 2016-02-18 13:15:44 +11:00
unknown 78d0cfc1a4 Fix Bug #1545668 (Pcbnew can't open P-CAD ASCII files) 2016-02-17 16:38:30 +01:00
jean-pierre charras 8931df339e Fix incorrect assertion failure in specctra export, when a footprint contains segments on edge.cut layer (Bug #1545546) 2016-02-15 09:55:10 +01:00
unknown aa6beaaba0 Python footprint generators: fix a typo and fix text size (accordance KLC 6.9) 2016-02-14 10:47:07 +01:00
Cirilo Bernardo a4861a0d64 Sync with main r6555 2016-02-14 09:16:40 +11:00
jean-pierre charras 7313b28e2a Cvpcb: minor change in menubar: change menu name "files" to "Save" (there is no more files to read or save). Pcbnew, pad properies editor: show Axis (pad origin) in GAL mode (it was already shown in legacy mode). 2016-02-13 16:34:52 +01:00
Rohan Agrawal 8785df0d80 Merge lp:~rohbotics/kicad/bug_1424003 into lp:kicad 2016-02-12 17:43:23 +01:00
unknown 15624ab1c3 Fix issue #1412628 (long text values truncated in pos file) and serious cleanup of gen_modules_placefile.cpp code. 2016-02-12 12:50:42 +01:00
Rohan Agrawal 8d659b3e02 removed unnessacary curly braces 2016-02-11 19:26:03 -08:00
Rohan Agrawal 31a6a4adf0 Run fix_route until routing ended in EndTrack
Should fix Bug 1424003, by making making sure the routing is completed when endtrack is triggered.
2016-02-11 18:26:40 -08:00
unknown 450c2e4371 fix Tickness typo 2016-02-11 16:02:37 +01:00
jean-pierre charras 2284228c35 HPGL plot dialog: remove no more in use Pen Overlap parameter. Fix incorrect polygon fill by setting the hpgl pen thickness in hpgl file. Add filled circle (previously, a circle was never filled) 2016-02-11 13:14:46 +01:00
jean-pierre charras 5658ed9c8e Prepare rounded rect and custom shaped pads: add plot functions. It fixes also a pcbnew crash in HPGL mode when plotting trapezoidal pads. 2016-02-10 17:02:40 +01:00
unknown 4726f51ba0 Set the courtyard width to 0.05mm to comply with KLC in the following python footprint generators: bga,qfp,sdip and zip 2016-02-09 10:10:17 +01:00
jean-pierre charras 050bdbc772 Pcbnew: minor changes:
* Dialog copper zones: Always enable thermal shape settings, because even with no thermal, some pads can use thermal option in local pad settings.
* GAL mode: shows page limits in gray color, like in legacy mode, and according to comments in sources.
2016-02-09 09:23:24 +01:00
Tomasz Wlostowski 5349eb4179 fixed segfault in selection tool 2016-02-08 15:12:59 +01:00
jean-pierre charras 711607f152 Fix minor Bug #1542935 (No solder mask unless there is something on the layer) 2016-02-08 14:04:42 +01:00
Tom Andrews 4c7a61dd25 pcbnew: correct minor grammatical errors 2016-02-05 14:34:23 -05:00
Cirilo Bernardo b7a8661a03 Sync with main branch r6538 2016-02-05 16:15:51 +11:00
Dick Hollenbeck 7c637ea7be github fix and comment improvements:
* Fix a StrPrintf() %s count mismatch bug
* Better comments
* Use std::string::data() instead of a ref to the first char to get the str::string buffer  (should not change anything with GNU lib)
2016-02-04 17:49:20 +01:00
Maciej Suminski c16b66ce0c Ratsnest does not take into account non-copper pads (GAL). 2016-02-03 11:01:00 +01:00
jean-pierre charras 50db57f4d5 Pcbnew: fix Bug #1540967 (zone keepout incorrectly created if previously a corner-smoothed copper zone was created). This option (non relevant for a zone keepout) is now cleared. 2016-02-02 21:32:11 +01:00
Cirilo Bernardo 06e766b8b2 Sync with main branch r6532 2016-02-02 17:25:14 +11:00
Jon Neal 896bd3945d pcbnew: netlist import interactive edit fix
When importing a netlist with no changes, do not select the part under the
cursor.
2016-02-01 19:43:28 -05:00
Andrew Zonenberg 41223a81d3 pcbnew: avoid unnecessary copy in RN_NET::processPads()
Saves >30% run time on ratsnest rebuild for high-fanout nets.
2016-02-01 18:13:30 -05:00
jean-pierre charras 351752f4e4 Fix Bug #1539889 (empty translated strings which create issues in translation tools)
Add a file deleted by accident in interf_u demo.
2016-01-30 14:14:58 +01:00
Tomasz Wlostowski ee3418e90b One-click PCB update improvements
- Fix repetitive undo/redo segfaults & assertions.
- Add Update menu entry on PCB side.
- Fix Python build error
- Add spread footprints after updating
2016-01-29 15:43:40 +01:00
Tomasz Wlostowski 689072c0e1 PCB updater: open PCBnew automagically, minor fixes to the dialog 2016-01-29 11:36:51 +01:00
Tomasz Wlostowski 570ba5e00a set up netlist footprint loader before attempting pcb update... 2016-01-29 11:31:26 +01:00
Tomasz Wlostowski 5ef6001e06 pcbnew: support for removing NETINFO_ITEMS from BOARD for proper netlist undo 2016-01-29 11:29:56 +01:00
Tomasz Wlostowski 867a0444bd eeschema: single click PCB update feature added 2016-01-29 11:24:39 +01:00
Tomasz Wlostowski 9e609acae3 made netlist entries and netlist update undoable 2016-01-29 11:21:13 +01:00
Maciej Suminski 1d39a2a44b Highlight net tool is not deactivated after a single use. 2016-01-29 10:56:29 +01:00
Simon Richter 7e697e8ef7 GitHub plugin build configuration fixes.
* The github plugin includes the CURL headers indirectly, so these headers
  need to be in the include search path.
2016-01-28 12:30:55 -05:00
Simon Richter 23e8c3ebf3 Executable icon resource build configuration fixes.
* The resource setting for bitmap2component is too late in the CMakeLists.txt,
  and is being ignored. Bitmap2component does not have an icon resource on
  Windows.  Moving the entire section resolves the issue.
* The other programs only have the mingw special case listed, not the generic
  declaration for the resource file so added them.
2016-01-28 11:53:24 -05:00
jean-pierre charras 75b1df464d Pcbnew and Gerbview: layer manager: use double click to edit color (as usual to edit someting) and simple click (as previously) to select the layer. Reason: avoid opening the color dialog each time a new layer is selected.
Update interf_u demo to use recent library components..
2016-01-28 09:02:25 +01:00
Cirilo Bernardo 8264d393e8 Sync with main branch r6516 2016-01-28 17:14:36 +11:00
Andrew Zonenberg e91dab816c Pcbnew DRC: allow technical->copper pad overlap
This permits things like mask "pads" over copper pads for custom mask openings.
2016-01-25 19:33:40 -05:00
Cirilo Bernardo fc5556c811 Sync with main branch r6513 2016-01-26 10:35:16 +11:00
Maciej Suminski e51adaeefd Highlight a net when crossprobing with eeschema and highlight net tool is enabled. 2016-01-25 16:16:05 +01:00
Cirilo Bernardo 8efd3642bc Fixed bug which allowed empty filenames to be added to the model list 2016-01-25 17:10:08 +11:00
Cirilo Bernardo 3eca3fe75d Implemented new 3D file selector with preview 2016-01-25 15:55:36 +11:00
Cirilo Bernardo 31af6d7dbc Fixed GUI issues related to setting scale/offset/rotation 2016-01-23 20:07:58 +11:00
Cirilo Bernardo 7c829c9e84 Added manual editing of 3D file name with alias tags 2016-01-23 14:52:54 +11:00
jean-pierre charras d24bd85bf5 Minor code cleanup. 2016-01-22 13:30:44 +01:00
Dick Hollenbeck 364776a5d4 Remove commented out GetStandardLayerName() 2016-01-20 18:04:56 +01:00
Maciej Suminski 75c8094b5a Make DRC markers not editable with the standard tools (GAL). 2016-01-20 15:22:09 +01:00
Maciej Suminski b42382e403 Draw arrows for DRC markers (GAL). 2016-01-20 15:19:26 +01:00
Chris Pavlina c490e7dd06 Fix typing problems with GR_KB_* constants 2016-01-20 07:11:17 -05:00
Cirilo Bernardo 5d82d9348d Fix bug: MSWin to UNIX file separator conversion was in the wrong place, leading to wrong separator shown in GUI 2016-01-18 08:33:39 +11:00
Simon Richter da9ca2def2 Avoid cast from const_iterator to iterator
The standard library requires iterators passed to functions that modify the
container to be mutable iterators, but GCC's implementation accepts
const_iterator in some places where these are only used to mark a place,
but the actual modification happens through a different parameter.

As this breaks implementations that use the passed iterator to modify the
container (e.g. because they use a different data organization), this is
not portable; because we already have a non-const reference to the
container anyway, this is trivially fixed as well.
2016-01-17 12:31:00 -05:00
Simon Richter ff4febc7a8 Clarify atan2 overloads
In the C++ standard, this function is only defined for floating point
types, and integers cannot be implicitly converted. Using explicit
conversions avoids a GCC specific extension to the standard library.
2016-01-17 10:59:24 -05:00
Simon Richter ef582c07f3 Drop some debug output
This was apparently left in from debugging earlier, and should no longer be
needed. Since it uses a GCC extension, it makes compilation on others fail.
2016-01-17 10:59:17 -05:00
Simon Wells b5a9e466ff Fix layer widget appearance on OSX 2016-01-16 17:07:24 -05:00
Simon Wells b125054afe Pcbnew: Allow changing layer color with left mouse button
Many users, particularly those on laptops, have no middle mouse button, and
thus have no way at all to set the layer colors.
2016-01-16 10:31:10 -05:00
Simon Wells e0beb36f1e GAL: Update grid color when changed by user 2016-01-16 10:23:28 -05:00
jean-pierre charras 6155cba077 kicad_curl.cpp: fix a compil warning on Windows (regression)
pcb_calculator: fix incorrect formulas shown in attenuators panel. Png files are no more used, and formulas are now html doc files.
2016-01-16 15:27:42 +01:00
Cirilo Bernardo e185b29baa Resync with main branch r6482 2016-01-16 19:10:53 +11:00
Cirilo Bernardo f3c56eff12 Work in progress: changed Footprint Properties editors to handle aliased 3D file names 2016-01-16 17:49:28 +11:00
Chris Pavlina bc614a5e0b Fix accidental string+int in a debug message 2016-01-15 22:47:47 -05:00
Simon Richter 128459470a Clean up truncation of constant
In the autorouter code, the value 0x80 is assigned to MATRIX_CELL, which is
an overflow for a signed 8-bit type. As this type is used as a bit mask,
there is no point in having a sign bit anyway.
2016-01-15 22:24:17 -05:00
Simon Richter f674942e27 Remove superfluous include in the middle of source file 2016-01-15 22:20:32 -05:00
Chris Pavlina 74ef947575 github_plugin: remove unused variable 2016-01-15 11:56:14 -05:00
Chris Pavlina 2ff439b894 Move some old legacy save code into the block for that 2016-01-15 10:34:51 -05:00
Simon Richter a568f35978 Fix preprocessor logic
The C++ preprocessor is actually not required to process "true" and "false"
correctly. This works in C if <stdbool.h> is included, because these are
then macros themselves, and resolved correctly, but C++ requires them to be
keywords, so no such macros exist, and the preprocessor can treat both as
undefined/zero.
2016-01-14 20:48:44 -05:00
Simon Richter 1190b7880a Fix double class name
Mostly cosmetic change, although there are compilers that choke on this.

The C++ standard specifies that classes contain themselves as members,
probably so they shadow any other definition of the same name for their own
member functions, but there is really no reason why the class name should
be duplicated here.
2016-01-14 20:43:38 -05:00
Chris Pavlina b30a461ee9 Pcbnew: fix Flip hotkey for blocks in legacy (fixes lp:1534120) 2016-01-14 12:52:27 -05:00
Tomasz Wlostowski 991b9d509a GAL: apply grid offset when board is loaded and respect grid color setting. (fixes lp:1533168) 2016-01-13 13:37:52 -05:00
Simon Wells 731a137af0 Remove unused items in gpcb_plugin.cpp 2016-01-11 22:07:33 -05:00
Cirilo Bernardo 217a5f39e1 Resync with main branch r6449 2016-01-12 10:36:31 +11:00
Simon Wells a88e61a6e0 Fix uninitialized variable in PCBNEW_CONTROL::CursorControl 2016-01-11 17:12:49 -05:00
Simon Wells 712ff51d3f Clarify assignment as conditional in EDIT_TOOL::Main 2016-01-11 17:12:11 -05:00
Simon Wells dbb7b38bae Delete unused variables in GRID_HELPER::AlignToSegment 2016-01-11 17:06:11 -05:00
Tomasz Wlostowski 95252267ec Router: check layers of all traversed joints in FindLinesBetweenJoints(). (fixes lp:1531762) 2016-01-11 13:37:00 -05:00
jean-pierre charras 74b629fa19 Fix issues I created in rev 6442 (no issue on msys2/gcc5.3, but issues on Kubuntu 14.04/ gcc 4.8). I'll find a better fix later. 2016-01-11 10:13:13 +01:00
jean-pierre charras 41db57c5f0 pcbnew.py: fix error "NameError: name 'UNDEFINED_LAYER' is not defined" when running pcbnew/wxPython, which prevents from openning the Python console.
CMakeLists.txt: remove no more used boost libs, and add missing coroutine lib in list.
Fix 2 minor compil warnings.
2016-01-11 09:26:55 +01:00
Wayne Stambaugh 5c6c2a0661 GitHub plugin: fix potential multiple initialization of libcurl bug.
* Prevent libcurl from inadvertently being initialized twice.
* Dynamically load libcurl only when required.
* Reduce the number of worker threads when loading footprint libraries to
  prevent issues with the GitHub plugin.
2016-01-10 16:44:37 -05:00
Jon Neal f309eaab00 Pcbnew: spread and pick up new footprints when loaded. 2016-01-10 16:24:13 -05:00
Chris Pavlina 13c5341040 pcbnew/scripting: delete orphaned header 2016-01-10 09:08:13 -05:00
Simon Schubert c1b8a01e03 pcbnew: simplify pad DRC
This simplifies the pad DRC significantly and fixes a bug when two pads
are close to each other in a right angle, when the edge distances are
below the clearance, but the corner distance is actually above the
clearance:

      +---..
      |
      +---..
+---+
|   |
:   :
---

----
<Chris> Pad DRC has handling for trapezoid pads and handling for square
pads. This patch looks relatively low-risk to me, as square is a subset
of trapezoid and the handling for trapezoid pads is not specific to that
pad type.
2016-01-09 16:07:52 -05:00
Chris Pavlina c44c076bdb Fix coding style error in 6429 2016-01-07 17:33:31 -05:00
Johannes Agricola 07b73b9677 Properly set keepout flag for new zones in GAL 2016-01-07 14:39:21 -05:00
Maciej Suminski 203e8156a1 pcbnew asks before rotating/flipping a locked item (GAL). 2016-01-05 17:01:59 +01:00
Cirilo Bernardo 43c2c7223b Sync with main branch r6421 2016-01-05 16:37:52 +11:00
Wayne Stambaugh ff924f6983 Remove download_avhttp.cmake and avhttp source archive. 2016-01-03 18:55:42 -05:00
Wayne Stambaugh c751bf60bc Remove Boost library building and other build improvements.
* Remove download and build Boost from source and all CMake boost source build
  dependencies.
* Make FindCairo.cmake use pkg-config when it's available not just all
  platforms except windows.
* Add version checking to FindCairo.cmake.
* Change find GML version to 0.9.5.1 which is the current version in Ubuntu
  14.04 LTS.
* Update required Cairo version to 1.12.1.
2016-01-03 15:33:09 -05:00
Cirilo Bernardo 548b54d75d + resync with main branch r6409
+ work in progress: new VRML2 3D plugin
2015-12-31 09:28:39 +11:00
jean-pierre charras 6ff0092e21 Github plugin: fix lack of message when trying to download a non existing footprint library (Curl does not return an error: the message "Not Fount" is stored in buffer, and the zip handler returns a not suitable error message)
Minor and very minor other fixes.
2015-12-30 08:46:32 +01:00
Element Green 0417538ab3 Fix Bug #1529214 (pcbnew VRML export dialog settings have no effect) 2015-12-27 18:33:15 +01:00
jean-pierre charras 9d994663f1 Fix Bug #1527446 (Flipping a block in pcbnew doesn't flip inner layers nor their connected microvias).
Also fix a few typos and remove dead code.
2015-12-27 16:51:13 +01:00
Simon Wells 415c72262a Pcbnew: use Legacy instead of Default when referring to wxDC canvas. 2015-12-22 16:25:59 -05:00
Simon Wells 6721545011 Pcbnew: remove the sunken border from the design rules dialog,
* On Linux it has no effect
* On OSX it removes the line border which looks ugly.
* On Windows it makes the dialog look cleaner.
2015-12-22 13:53:13 -05:00
unknown a49b313c77 Fix a cosmetic issue: the "Move exactly" dialog was not exactly right on init 2015-12-22 15:34:34 +01:00
unknown e506a4354b Replace avhttp with libcurl: Some fixes:
1. Fixed an assumption somebody originally made in the plugin that std::string had contiguous storage. This is not specced behavior pre C++11 so we gamble by calling .reserve() which should give a far better guarantee.
2. Added copy to clipboard information for curl
3. Removed some openssl references in compiling.md
4. Renamed struct vars to be uppercase to match "public var" code style policy
2015-12-22 15:19:00 +01:00
jean-pierre charras 59d02cf1a4 Minor fixes:
* fix minor coding style issues.
* remove unused member in modview_frame.
* use different frame names in ctor of modview_frame and viewlib_frame depending on the fact they are built modal or not modal (allowing identifications when calling wxFindWindowByName)
* change questionnable code in  class_libentry.cpp.
* remove unused code in class_treeproject_item.cpp
2015-12-22 12:58:26 +01:00
Cirilo Bernardo 07bd4cbc04 + Resync with main r6397
+ Work in progress: VRML parser
2015-12-22 11:08:39 +11:00
Mark Roszko e47bc6883d Replace the avhttp library used by the github plugin with libcurl. 2015-12-21 15:30:33 -05:00
jean-pierre charras 56d1cac0e8 Pcbnew: avoid crash if something is wrong when opening the Python Console (for instance missing python module) 2015-12-21 21:00:32 +01:00
unknown f041177c3a Fix Bug #1526158 (pcbnew Zone tool: Minimum width is compared against thermal relief spoke, when Pad connection set to "None") 2015-12-21 19:42:16 +01:00
Wayne Stambaugh 96832a5185 Fix build error cause by previous commit when KICAD_SCRIPTING_WXPYTHON is not enabled. 2015-12-21 10:39:36 -05:00
unknown 0ea1c67caf eeschema plot dialog: cosmetic enhancement:
Including the inline of the Output directory and its text field/browse button.
Moving the plot format to the left of the plot options as the plot options depend on the plot format.
2015-12-21 16:08:37 +01:00
Strontium c3d3a7a4c8 Scripting: replace PyCrust shell with enhanced PyAlaMode shell. 2015-12-21 09:55:31 -05:00
jean-pierre charras a11bbffe9b Code reorganization, and change the way 3D viewer frame is managed (now using wxWidgets wxWindow::FindWindowByName() to know if it is existing) , to prepare others fixes. 2015-12-21 12:52:00 +01:00
jean-pierre charras e175a96be4 Pcbnew: Enhancement: in Get footprint (hotkey 'T') : better footprint selector dialog. 2015-12-20 19:47:52 +01:00
jean-pierre charras b881ba2bd7 Fix minor Bug #1527398 (Some items (NPTH holes) printed in color with B&W radiobutton checked) 2015-12-20 15:09:06 +01:00
Cirilo Bernardo 2c4b220f3c Resync with main branch r6383 2015-12-19 15:02:52 +11:00
Simon Wells f11da559c7 Removed the sunken border from the Design Rules dialog 2015-12-18 11:56:23 +13:00
Simon Wells e7ac0d6764 Fix building layer widget in stand alone mode. 2015-12-16 10:19:27 -05:00
jean-pierre charras 178cf0dc25 Polygon calculation (zones filling): use fast mode when possible (in fact most of time) and strictly simple polygon option only in critical cases (in fact in plot Gerber functions mainly).
In polygon calculations (combining polygons, fracture) the mode of calculation (fast or strictly simple polygon option) as no more a default value, because choosing the best mode is better to optimize the calculation time.
2015-12-15 21:21:25 +01:00
Maciej Suminski 0caa47e73c Fixed crash on undo pad placement in the footprint editor (GAL). 2015-12-15 13:39:53 +01:00
Cirilo Bernardo 1940bd71e4 Resync with main branch + fix MSWin build (accidental inclusion of dlfcn.h) 2015-12-15 10:56:11 +11:00
Cirilo Bernardo 2128594a85 Coding policy fixes: remove trailing white space. 2015-12-14 16:20:54 -05:00
Simon Wells 7b2858acc8 Updated layer_widget.cpp to remove build errors when STAND_ALONE is set 2015-12-15 06:45:11 +13:00
jean-pierre charras 5d429ed977 Pcbnew: drill file generation: always creates a NPTH file in separate files mode (as it was made in initial code) to avoid mistakes (old broken NPTH file after board edition for instance).
Eeschema: prepare case sensitive label comparison in netlist generation.
2015-12-14 09:00:49 +01:00
Cirilo Bernardo c5e9bda936 Fix OpenGLM build errors for OSX homebrew developers. 2015-12-10 14:20:35 -05:00
Maciej Suminski 843c9b99d5 Fixed ratsnest for PCBs imported using plugins (GAL). 2015-12-10 16:29:12 +01:00
unknown eaef5c1043 * Replace questionable wxString::PrintfV() call (which doesn't work reliably on different platforms) with wxString::Format()
*  Extra win: due to use now of the THROW_IO_ERROR() macro, error messages contain line numbers.
2015-12-10 09:13:35 +01:00
jean-pierre charras 04271893ff Fix Bug #1521282 (footprint wizard for SOIC ICs generates a wrong position pin mark) 2015-12-09 17:11:32 +01:00
Cirilo Bernardo a0597c4614 GUI improvements including interactive update of model orientation/position 2015-12-09 16:43:30 +11:00
Cirilo Bernardo 47f40def0c GUI improvements including control of panel sizes and resizing of GL canvas in preview 2015-12-09 10:38:25 +11:00
Cirilo Bernardo 2ba7c05cbf Resync with main branch and fixed to work with new symbol visibility rules 2015-12-09 09:52:02 +11:00
unknown 0ae5fed41f When changing the number of copper layers, new layers added to the board in pcbnew are now selected by default for plotting 2015-12-08 16:15:24 +01:00
unknown 893e018bc9 Better warning messages in duplicate zone 2015-12-08 13:02:44 +01:00
Mario Luzeiro 69cc788e8e + Removed glm source from kicad tree (Maciej / Cirilo)
+ Added renderer for 3D model preview (Mario)
+ Added 3d_cache including name resolver and modifications to 3D model dialogs (Cirilo)
2015-12-08 18:31:57 +11:00
unknown 2e04d4d621 Fix the following bugs in the IDF export:
1. incorrect orientation of components on the bottom side of the board
when the #D model rotation is non-zero
2. failure to export when some components have no model set
2015-12-07 10:22:09 +01:00
jean-pierre charras 4c880400b1 Better sizing of wx_html_report_panel in dialog_netlist (fix bug #1522758) 2015-12-04 18:06:54 +01:00
Wayne Stambaugh b04f18b245 CMake: remove OpenSSL download and build dependency code.
* Removed some left over OSX_DEP_BUILDER code missed in my previous commit.
2015-12-03 10:59:02 -05:00
Maciej Suminski d373915340 Fixed crash when context menu is invoked during track dragging (GAL). 2015-12-03 14:26:12 +01:00
jean-pierre charras f4cf050669 Eagle plugin: fix typo errors. Use paired fab layers for layers 51 and 52. Not perfect, but better than the old choice (drawing layer) 2015-12-02 12:46:55 +01:00
unknown 42525dda98 Eagle importer support dimensions 2015-12-02 09:47:02 +01:00
unknown 6abffca175 Fix incorrect import of footprint fields NAME and VALUE in Eagle import board. 2015-12-02 09:18:32 +01:00
jean-pierre charras 7f49fc9a03 Fix a minor bug I created in rev 6332 in dialog_design_rules.cpp (a line of code removed by accident). 2015-11-29 16:17:47 +01:00
jean-pierre charras da9f68911c Autosize row label column in wxGrid in pcb_calculator and design rules dialog.
Pcbnew: auxiliary axis shape: use the same look as GAL, to be consistent with GAL.
Minor change in dialog_env_var_config (use the wxStdDialogButtonSize for usual OK, Cancel and help buttons)
2015-11-29 15:19:22 +01:00
jean-pierre charras 407aa9c586 Very minor fix: a pcbnew option (show page limits) was not stored in user config, and was lost after closing the session.
3d-viewer: very minor fix
2015-11-29 07:56:27 +01:00
jean-pierre charras 2afee8fb58 Make translation easier in dialog_create_array_base. 2015-11-22 11:21:14 +01:00
jean-pierre charras 4749921bbc Remove confirmation dialog when deleting footprints.
Very minor other fixes.
2015-11-18 19:59:24 +01:00
Tomasz Wlostowski 72b0593fdb Pcbnew: push and shove router fixes.
* Fix segfault caused by invalidation of the end item by
  PNS_LINE_PLACER::UpdateSizes().
* GAL zone drawing tool updates the ratsnest after zone drawing is complete.
* Fixed performance issue in zones processing using strict simplification
  only for the final filled area.
2015-11-18 09:35:17 -05:00
jean-pierre charras 21d700facc Replace "module" by "footprint" in a few messages. 2015-11-17 17:18:00 +01:00
Wayne Stambaugh ebdc1e4b17 Pcbnew: minor footprint properties dialog fixes.
* Replace the term module with footprint.
* Use default dialog size to allow sizers to determine the size of the dialog.
* Fix a few alignment and spacing issues.
* Fix some minor grammatical issues.
* Use front and back for board side instead of top and bottom to be consistent
  with layer naming scheme.
2015-11-17 09:03:57 -05:00
jean-pierre charras 49d75d5850 Drill file generation: add the option to merge NPTH and PTH, which was disabled recently, due to code changes.
Add missing translator name in AUTHORS.txt and About dialog (patch from Eldar Khayrullin)
2015-11-16 19:42:58 +01:00
jean-pierre charras d5aef07816 Kicad manager: fix a very serious bug which crashes Kicad when running and closing gerbview, pcb_calculator, bitmap2component or pl_editor, when the Kicad manager frame is not the top level frame (It happens very easily if eeschema or pcbnew is running, after opening and closing a dialog).
Fix a few wxWidgets asserts.
menubar in pcbnew: move the recreate .cmp file menu to export menu, and fixes its help comment which was fully outdated.
2015-11-15 19:04:19 +01:00
unknown 4141a250fe Eagle plugin: remve a non-static initializer. 2015-11-15 18:53:26 +01:00
Jon Neal 19075e3434 Pcbnew: fix segfault in eagle plugin when importing zone keepout areas. 2015-11-15 08:29:48 -05:00
jean-pierre charras a356293fee Cvpcb: Fix incorrect unique pad count for footprints using mixed letters/digits in pad name (like AA12, AB12 or Anod for instance.) and skip pads with no pad name. 2015-11-13 12:32:42 +01:00
Wayne Stambaugh 8f79b4fb11 Pcbnew: fix minor Doxygen comment error. 2015-11-11 15:16:39 -05:00
jean-pierre charras 34f1c0ea2d Fix a few Coverity warnings. 2015-11-11 19:47:51 +01:00
Damien Espitallier 16c2c398e9 CvPcb: count unique pin numbers when filtering by pin count. (fixes:1300719) 2015-11-11 13:35:26 -05:00
jean-pierre charras 6cc91a074b Remove a few conditional compilation for wxWidgets version < 3.0
Update a old .fbp file.
2015-11-09 13:14:28 +01:00
unknown d830b24c56 Fix memory leak in meander placer. 2015-11-09 13:11:27 +01:00
unknown 2f92087bac Small fix in eagle_plugin.cpp (see bug Bug #1513112). This is not actually a bug, just a fix in comments, and a minor enhancement 2015-11-05 19:38:19 +01:00
Tomasz Wlostowski 08178104bb router: take track width changes into account when calculating trace length for tuning 2015-11-05 19:20:08 +10:00
unknown 1ee7458140 1. Fixed copy paste error in append_board_to_current.cpp ruining a if else condition, should fix a possible bounding box computation bug
2. Whole bunch of pointless casts removed
3. Unused variables removed
4. Fix bug caused by JP on April 25, 2015 where strings were adjusted for translation and the hotkeys section table accidentally swapped the footprint editor title with tag, resulting in "footprint editor" being exported instead of "[footprinteditor]"
No functional changes besides #4, technically it'll "break" imports hotkeys files but April 25 broke imports as well.
2015-11-04 09:48:34 +01:00
jean-pierre charras 602e38dab5 Clipper.cpp: fix a few minor Coverity warnings (about not initialized private members) 2015-11-03 17:55:31 +01:00
Thomasz Wlostowski 6e470ece1d Pcbnew: fix push and shove router segfault bug. 2015-11-03 11:19:42 -05:00
Simon Wells 0a9a07af2e OSX package maker fixes.
* Removed outdated package maker information, the pmdoc is generated and does
  not belong in the KiCad tree, it is also highly specific as seen due to the
  references to /Users/marco.  This is not used in normal builds nor in the
  packaging for KiCad OSX nightly builds.
* Updated identifiers in package marker docs to remove references to sourceforge
  and to follow other identifiers.
2015-11-02 13:29:55 -05:00
jean-pierre charras ae506e8223 polygons in footprint body: fix incorrect calculation of polygons with clearance or outline thickness (fix bug #1511366)
Clean demos
2015-11-02 10:24:32 +01:00
jean-pierre charras c94a5dd46f Footprint wizard: fixes and enhancements in python scripts. 2015-10-31 12:54:48 +01:00
Simon Wells 96918d4a8a Changed the bundle identifier to org.kicad-pcb.<app> to follow the kicad domain name 2015-10-30 08:43:04 +13:00
jean-pierre charras ad2c4b807b footprint generators python plugins: fix a few issues, and make them more compliant with the KiCad Library Convention 0.11 2015-10-29 18:35:52 +01:00
jean-pierre charras 77f1d8a848 Pcbnew: Fix a bug in exchange footprints: if a set of pads having the same name (complex pads) is found in a footprint, not all pads of this set have the netname updated (however reading the netlist fixes this isssue). 2015-10-28 19:45:20 +01:00