Commit Graph

4738 Commits

Author SHA1 Message Date
Maciej Suminski 06637a17d6 Added 'Reset Grid Origin' hot key (GAL). 2016-05-04 14:59:14 +02:00
Maciej Suminski b735f57fa4 Refresh pads after enumeration in Footprint Editor. 2016-05-04 14:06:10 +02:00
Maciej Suminski f502c4cc77 Fixed stroke text initialization in PCB_PAINTER. 2016-05-04 12:18:25 +02:00
Maciej Suminski a62d2b5412 Bigger net labels (GAL). 2016-05-03 15:15:08 +02:00
Maciej Suminski 25fa2bbbbd Fixed net names drawing in Cairo. 2016-05-03 14:40:47 +02:00
Maciej Suminski 2f874097ae Fixed a crash in pcbnew (GAL). 2016-05-02 16:15:26 +02:00
Maciej Suminski ed0b95d710 Added an option change grid style. Refactored DIALOG_SET_GRID. GAL can draw grid using lines or dots now. DIALOG_SET_GRID was refactored to use Transfer{From,To}Window() methods. 2016-05-02 16:15:24 +02:00
Maciej Suminski bacb2dd52a Adjusted required level of details for track labels to show. 2016-05-02 16:08:51 +02:00
Maciej Suminski fa6360a2ba Another way to select between dark/light netname labels. 2016-05-02 16:08:50 +02:00
Maciej Suminski bda3011519 Initial support for bitmap fonts (OpenGL GAL). 2016-05-02 16:04:45 +02:00
Maciej Suminski 795fd28742 Set Stroke/Fill settings for stroke font in its Draw() function. 2016-05-02 15:56:17 +02:00
Maciej Suminski b143ce6b0f Moved text settings from STROKE_FONT to GAL. 2016-05-02 15:56:12 +02:00
Matthew Petroff db54f3e7a7 Correct multiple UI spelling errors 2016-05-02 10:01:43 -04:00
jean-pierre charras e46f706d4b Add Set/GetOrientationDegrees and GetOrientationRadians for texts, pads and footprints to avoid internal units to usual angle units conversion in code (and avoid mistakes).
It should help if (or when) the internal angle unit used in kicad will be changed from 0.1 degree (a relic of code written for PCs without fpu) to degree ( a more natural unit).
2016-05-02 12:49:14 +02:00
jean-pierre charras 8c76b92fa9 Fix a few shadowed local vars which make the code not so easy to analyze. 2016-04-29 13:10:31 +02:00
jean-pierre charras b92ad6f5a8 Add CSV file format in pcbnew position files (and cleanup code) 2016-04-26 14:16:16 +02:00
jean-pierre charras c1f0ab91a2 Code cleaning and coding style fix. 2016-04-23 17:44:17 +02:00
jean-pierre charras 53c031257d Fix a few shadowed local vars, and coding style issues. 2016-04-22 12:44:08 +02:00
unknown baa5f0ddfb Fix typos in dialogs. 2016-04-21 09:32:29 +02:00
jean-pierre charras d7f1400e44 Make strings only used in debug mode not translatable. 2016-04-21 09:19:08 +02:00
Wayne Stambaugh 2b6889bc7a Pcbnew: footprint text layer visibility improvements. (fixes lp:1527994)
* Always hide footprint text when the layer that the text resides is disabled
  in the layer manager.  There is no longer a difference between the value and
  reference text compared to other field text.
* The usual smattering of coding policy fixes and general code cleaning.
2016-04-20 11:28:44 -04:00
jean-pierre charras 67982a4851 stroke font: fine adjust of text horizontal position. edat_text: fix an issue in SetOrientation: the rotation angle is now constrained between -360 and +360 degrees.
It was previously not the case, and rotated texts outside this interval created issues in dialog_pcb_text_properties which have now validators.
2016-04-19 20:35:47 +02:00
jean-pierre charras fde2cfee27 Minor changes: remove a few local shadowed local variables detected using " -Wshadow" gcc compil option ( No bug, just a better code readability ) and fix minor coding style issues. 2016-04-18 20:15:44 +02:00
Patrick Pereira b846a98199 Pcbnew: improve footprint edge plot logic. 2016-04-18 11:48:39 -04:00
Wayne Stambaugh 46ff5a2580 Pcbnew: remove dead macro code. 2016-04-18 11:03:59 -04:00
Cirilo Bernardo 6120472d60 3D file name resolver improvements.
* Paths defined via pcbnew->Preferences->Configure Paths are now included in
  the 3D file browser's drop-down list except for KICAD_PTEMPLATES, KIGITHUB,
  KISYSMOD, any paths resembling a URL, and any non-existent paths. When an
  absolute path is shortened using one of these path aliases, let's say
  'KISYS3DMOD' then the name appears in the pcb file as "${KISYS3DMOD}/blah.wrl".
  If a user defines and actual environment variable with the same name, then
  that user defined variable will have precedence over the internally defined
  variable.

* Paths relative to the current project directory are no longer represented
  as "some/path/to/file.wrl".  For compatibility with previous KiCad versions
  it shall always be stored as ${KIPRJMOD}/some/path/to/file.wrl.

* Various restrictions on alias path values have been removed since the
  imposed restrictions could result in corrupted user data as aliases are
  silently dropped.

* Overall the patch should improve back-compatibility by providing a ${ENV_VAR}
  mechanism for supporting different model root directories and ensuring that
  paths relative to KIPRJMOD are expressed in a way that is compatible with
  earlier KiCad versions. This allows users more flexibility and the ability
  to work in a way that ensures 3D model files can be correctly resolved in
  earlier versions of KiCad. Users who do not care about back-compatibility
  may prefer to use the newer alias system.
2016-04-17 18:35:32 -04:00
Chris Pavlina ff3d22dcd9 Remove DIALOG_ORIENT_FOOTPRINTS 2016-04-17 10:11:14 -04:00
jean-pierre charras bcd345c29f Fix issues in dialog drc: because it is not modal, DRC parameters and unit selection can be modified outside the dialog, still opened. Now, the new parameters are taken in account.
Fixa also a corner case which crashes Pcbnew: if the dialog is opened, and the board was  changed (reloaded, cleared),  pcbnew crashed because many pointers stored in dialog  become invalid. Now the dialog is just closed.
2016-04-15 20:15:22 +02:00
Chris Pavlina 36b53a50e9 Fix signedness in a couple comparisons (warning suppression) 2016-04-12 19:18:42 -04:00
Chris Pavlina 48573712e8 Exterminate another 0.1deg field 2016-04-12 19:18:33 -04:00
jean-pierre charras 95962cd2ba Very minor changes: minor coding style fixes, and remove a few local shadowed variables (mainly local variables having the same name in the same function) detected using " -Wshadow" gcc compil option ( No bug, just a better code readability ) 2016-04-12 17:50:42 +02:00
Chris Pavlina 9e3fd5b762 Nuke 0.1deg units in DIALOG_GRAPHIC_ITEM_PROPERTIES 2016-04-11 10:27:32 -04:00
Chris Pavlina 4d77388216 Clean up wxValidator window association
wxValidator::SetWindow was used too many times due to me being a dunderhead who
can't read the docs.
2016-04-10 18:28:06 -04:00
Chris Pavlina 8325d6fdf0 Eliminate 0.1deg units in DIALOG_PAD_PROPERTIES 2016-04-10 18:14:28 -04:00
Chris Pavlina 0a6583f902 Eliminate 0.1deg units in DIALOG_MODULE_BOARD_EDITOR 2016-04-10 08:59:23 -04:00
Chris Pavlina 4fe676753a dialog_edit_module_text: fix display bugs
Displayed angle should be clamped to -90..90, 0 should not be displayed as
blank text, and locale should be used for initial rendering.
2016-04-10 08:23:44 -04:00
jean-pierre charras f294834f4d dialog_pad_properties: Some fixes. Dialog_edit_module_text: fix an issue related to displayed texts, which were deleted and replaced by the unit symbol only, and the name of the parameter was therefore lost. 2016-04-10 12:40:31 +02:00
Chris Pavlina 3ac5fc41cc Refactor dialog_edit_module_text and nuke the 0.1 degrees 2016-04-09 16:17:19 -04:00
Chris Pavlina f12d87b800 Adjust spacing in dialog_edit_module_text 2016-04-09 10:32:46 -04:00
Patrick Pereira 342ba51e6d Allow arbitrary angles for footprint field texts 2016-04-08 19:18:44 -04:00
jean-pierre charras 5e41763d83 Fix a few Coverity warnings and typo is dialogs 2016-04-07 13:09:31 +02:00
jean-pierre charras 4a838fb8c3 Pcbnew: Add rounded rect pad shape. 2016-04-06 20:15:49 +02:00
jean-pierre charras d18cdf1c53 merge 3d_initial_merge branch 2016-04-05 19:56:01 +02:00
unknown b8a91c7a98 Enhancements in Create array tool (bad parameters detection and disable parms when not applicable) 2016-04-02 14:52:29 +02:00
Baranovskiy Konstantin f3ee0b8252 Pcbnew: prevent zone tool from switching to no tool when deleting zone corner. 2016-03-22 13:47:29 -04:00
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