Commit Graph

99 Commits

Author SHA1 Message Date
jean-pierre charras e8ef3c14d4 Add specific bitmaps in export IDF and export DSN menus.
Add missing calls to Show( false ) to some main frames (Kicad, eeschema, gerbview), to force config saving when closing these windows.
Code cleanup and minor coding style fixes  in footprint_wizard_frame
2014-01-29 18:01:42 +01:00
jean-pierre charras 1119c1e68f add patch from Cirilo Bernardo, and minor fixes. 2014-01-25 13:23:29 +01:00
jean-pierre charras ec37f295c7 Code cleanup: Pcbnew: move files relative to exort functions to the new folder exporters
all: remove include <protos.h>  from a lot of  files which do not need it.
2014-01-08 15:18:51 +01:00
Cirilo Bernardo 8c540c8b83 IDF3 wxDateTime patch to fix MinGW builds for missing localtime_r(). 2014-01-03 08:31:50 -05:00
Cirilo Bernardo 95bb3d6bb1 Adds basic IDF3 export (board and cutouts / holes only) 2014-01-02 10:26:03 +01:00
Dick Hollenbeck 39abd88a54 remove USE_FP_LIB_TABLE code, make it the norm. Add lazy loading support to FOOTPRINT_INFO. 2013-12-12 10:01:03 -06:00
Maciej Suminski 25919e8393 Merged upstream. 2013-10-28 21:34:06 +01:00
jean-pierre charras cdd2967087 Add a DXF file import to create board outlines 2013-10-24 18:44:38 +02:00
Maciej Suminski a0a479eb53 Merged upstream. 2013-09-20 17:54:35 +02:00
Maciej Suminski e839d1a129 Merged kicad-gal 2013-09-20 15:48:27 +02:00
Lorenzo Marcantonio l.marcantonio@logossrl.com a06134cd6c Add export netlist IPC-D-356 from Lorenzo Marcantonio, with very minor fixes. 2013-09-13 11:49:55 +02:00
tomasz.wlostowski@cern.ch b4ff4df808 pcbnew: start integrating P&S router 2013-09-10 19:26:44 +02:00
Maciej Suminski 36f7125513 Upstream merge. 2013-08-05 14:46:05 +02:00
jean-pierre charras 891c85a2c1 Pcbnew: add hotkey Z to reset grid origin.
Save grid origin in .kicad_pcb files only if not 0,0 (to keep compatibility with previous versions of pcbnew, mainly the stable version)
Very minor other fixes (set modify flag when grid origin is moved from the dialog grid)
2013-08-03 18:16:57 +02:00
tomasz.wlostowski@cern.ch 8bcb88d6fd pcbnew: fixed missing Select Tool icon warning 2013-08-02 19:18:58 +02:00
unknown 0c6e180937 Merged Orson's changes 2013-08-02 17:28:09 +02:00
unknown 1a19c761ae pcbnew: hooked Tool Framework into the edit panel. Added a sample selection tool (not fully functional). 2013-08-02 16:53:50 +02:00
Maciej Suminski 2331742384 Removed shaderless OpenGL backend. 2013-07-29 16:38:07 +02:00
Maciej Sumiński f885296fb2 Removed KICAD_GAL CMake option. 2013-07-07 02:30:28 +02:00
Maciej Suminski c909988aa5 Upstream merge. 2013-06-05 10:01:53 +02:00
Maciej Suminski 2d5f342ee8 Switching to OpenGL using shaders backend on the fly (changed keyboard shortcuts: different backends are available using Alt+F9..F12). 2013-06-04 16:18:33 +02:00
Felix Morgner 4664427784 * Set "Ctrl+Shift+S" as shortcut for "Save as..." in CvPcb and PCBnew.
This seems to me like the defacto standard for this menu command.
* Added a default filename for save as. Currently it's set to
  "Unnamed file" using _() so its translatable.
* Changed the save dialog in PCBnew to use the path of the "original"
  file as a base for the new file.
2013-04-29 12:50:10 -04:00
Maciej Suminski f2c4fa2b46 Introduced Cairo-based rendering backend using GAL.
Moved switching canvas routines to pcbnew, as they are used only there right now (otherwise libgal would have to be linked to every Kicad application).
2013-04-15 17:57:03 +02:00
Maciej Suminski c20de314cc Introduction of Graphics Abstraction Layer based rendering for pcbnew.
New classes:
    - VIEW - represents view that is seen by user, takes care of layer ordering & visibility and how it is displayed (which location, how much zoomed, etc.)
    - VIEW_ITEM - Base class for every item that can be displayed on VIEW (the biggest change is that now it may be necessary to override ViewBBox & ViewGetLayers method for derived classes).
    - EDA_DRAW_PANEL_GAL - Inherits after EDA_DRAW_PANEL, displays VIEW output, right now it is not editable (in opposite to usual EDA_DRAW_PANEL).
    - GAL/OPENGL_GAL/CAIRO_GAL - Base Graphics Abstraction Layer class + two different flavours (Cairo is not fully supported yet), that offers methods to draw primitives using different libraries.
    - WX_VIEW_CONTROLS - Controller for VIEW, handles user events, allows zooming, panning, etc.
    - PAINTER/PCB_PAINTER - Classes that uses GAL interface to draw items (as you may have already guessed - PCB_PAINTER is a class for drawing PCB specific object, PAINTER is an abstract class). Its methods are invoked by VIEW, when an item has to be drawn. To display a new type of item - you need to implement draw(ITEM_TYPE*) method that draws it using GAL methods.
    - STROKE_FONT - Implements stroke font drawing using GAL methods.
                          
Most important changes to Kicad original code:
    * EDA_ITEM now inherits from VIEW_ITEM, which is a base class for all drawable objects.
    * EDA_DRAW_FRAME contains both usual EDA_DRAW_PANEL and new EDA_DRAW_PANEL_GAL, that can be switched anytime.
    * There are some new layers for displaying multilayer pads, vias & pads holes (these are not shown yet on the right sidebar in pcbnew)
    * Display order of layers is different than in previous versions (if you are curious - you may check m_galLayerOrder@pcbnew/basepcbframe.cpp). Preserving usual order would result in not very natural display, such as showing silkscreen texts on the bottom.
    * Introduced new hotkey (Alt+F12) and new menu option (View->Switch canvas) for switching canvas during runtime.
    * Some of classes (mostly derived from BOARD_ITEM) now includes ViewBBox & ViewGetLayers methods.
    * Removed tools/class_painter.h, as now it is extended and included in source code.
                         
Build changes:
    * GAL-based rendering option is turned on by a new compilation CMake option KICAD_GAL.
    * When compiling with CMake option KICAD_GAL=ON, GLEW and Cairo libraries are required.
    * GAL-related code is compiled into a static library (common/libgal).
    * Build with KICAD_GAL=OFF should not need any new libraries and should come out as a standard version of Kicad
                            
Currently most of items in pcbnew can be displayed using OpenGL (to be done are DIMENSIONS and MARKERS).
More details about GAL can be found in: http://www.ohwr.org/attachments/1884/view-spec.pdf
2013-04-02 08:54:03 +02:00
Wayne Stambaugh 36ba9a7309 Add build option to use footprint library table. 2013-02-23 14:30:43 -05:00
jean-pierre charras 7ea9f8ddcc Pcbnew: Rework on recovery files menu 2012-12-21 08:58:51 +01:00
jean-pierre charras 7eee33a6a0 Pcbnew: fix issue when loading a recovery backup board file.
Because now there are 2 formats, board backup files extensions are .brd-bak or .kicad_pcb-bak instead of the old .000 extension, depending on the initial file format.
2012-12-20 21:20:56 +01:00
jean-pierre charras df994764a5 Pcbnew: Add a minimal test for illegal chars in footprints libname (like space and dir separtor)
Also a minor cosmetic enhancement
2012-12-10 12:18:42 +01:00
Dick Hollenbeck bcb05fbc14 merge in evolving fp lib_table work 2012-11-28 09:24:53 -06:00
jean-pierre charras d8a6c7c1bf Add a min width parameter to plot solder mask layers. 2012-11-05 21:20:34 +01:00
Dick Hollenbeck 395338f46a add dialog for fp_lib_table 2012-10-15 17:30:01 -05:00
jean-pierre charras 3b3e19ee8a dcsvg (and therefore KicadSVGFileDC) is now unused. Use SVG plotter only to export a board SVG file.
SVG export does not use no more wxWidgets wxDC.
In pcbnew SVG files can be created by plot menu (in B&W) or export SVG menu (B&W or Color).
Export SVG menu is more suitable to create a view of a board, and plot menu is better to create a B&W document of silkscreen layers.
(In the future, the 2 menus could be merged, because they are not very different).
Note: pcbnew plot code is cleaned, mainly in dialog files, but still needs more cleanup.
2012-09-20 20:58:41 +02:00
jean-pierre charras c03355d67f Minor cosmetic enhancements.
Kicad manager: shows now svg files in tree files.
Pcbnew: fix incorrect printing (board out of page) when creating drill map in postscript format ( noticeable mainly for small boards)
2012-08-29 14:40:09 +02:00
jean-pierre charras 896dc0fcf6 3D-viewer: code cleaning. Added option in menu: show a 3D grid.
All: press ctrl+shift key when moving the mouse allows the graphic cursor to be moved outside the grid.
(useful to place graphic objects, texts in any position, regardless the current grid)
2012-08-11 14:52:13 +02:00
Miguel Angel Ajo 3b8f2a551b pcbnew: Show/Hide button for scripting console 2012-08-10 23:53:50 +02:00
jean-pierre charras e36a3dd460 Pcbnew: Add keepout areas (Copper zones without tracks or/and vias).
This is *a work in progress*, so some features are missing, and/or could be modified.
Mainly keepout zones are not yet exported to autorouters, and pads are not taken in account.
Some code cleanup in polygon.*
2012-07-13 20:55:29 +02:00
jean-pierre charras 39f84d7fe4 Pcbnew: Update incorrect or incomplete copyrights in many files.
Minor code cleaning in autoroute files.
2012-06-08 11:56:42 +02:00
jean-pierre charras d2926d2edf Pcbnew: menu Edit/Reset modules fields size: Add dialog to select what modules are modified. 2012-05-29 14:25:10 +02:00
jean-pierre charras c3d320aa8c Move AddMenuItem inline functions outside wxstruct.h in a new file (menu_helpers.h)
Enhancements in AddMenuItem (that accepts now a menu type)
Partial use of the Edwin van den Oetelaar's patch (patch not fully working or correct)
2012-04-09 11:16:47 +02:00
jean-pierre charras d02e5ecdc5 Update some icons with new icons from Fabrizio Tappero.
Remove 2 duplicate icons.
Minor cosmetic enhancements and fixes in popup menus.
2012-03-20 15:17:58 +01:00
jean-pierre charras 45b820abe2 Pcbnew: footprint placement file creation:
* Added a dialog to select options: one or 2 files, units (mm or inch), and force INSERT option.
 * code cleaning
 * Modify corresponding  icon in menu to show a footprint, not a schematic component.
2012-02-15 11:41:16 +01:00
Dick Hollenbeck 9e61e71cb1 switch to <> for includes from "" per conversation with Jean-Pierre and Wayne, adjust search paths 2012-01-22 22:33:36 -06:00
Wayne Stambaugh 702ac16d12 Encapsulate EDA_APP class. 2011-12-16 15:12:49 -05:00
jean-pierre charras 6222a3a8f7 Pcbnew: Fix a membar issue: Layer setup incorrect location (seems due to an error when using copy/paste editor command) 2011-11-07 21:34:35 +01:00
jean-pierre charras 105eec0693 Pcbnew: Fix bug I created in my previous commit.
More about code refactoring in connect.cpp: RecalculateAllTracksNetcode() is 50 times faster with a board using 27000 tracks
Use right icon in pcbnew for load board and new board.
2011-11-01 09:51:27 +01:00
Wayne Stambaugh 32a55c5c6e Minor menu bar fixes.
* Fixed bug on Windows that prevented the menu short cuts from working
  properly.
* Fix duplicate menu short cut keys in KiCad, Pcbnew, and Eeschema.
* Add menu short cuts for all possible menu entries.
2011-10-18 15:59:19 -04:00
jean-pierre charras d1f4eecc3a Eeschema: Fix icons in macro menu.
Fix confusing labels in libedit (for pins and graphic items sharing)
2011-10-18 12:16:27 +02:00
jean-pierre charras 7f5fef431a Icons update 2011-10-18 10:28:12 +02:00
jean-pierre charras 198e472ba3 Gerbview: minor enhancement.
All: fix some strings very hard to translate in messages.
2011-10-16 10:02:36 +02:00
Wayne Stambaugh 181f4ab54c Application name capitalization fixes.
* Correct all user strings and comments for the correct capitalization of
  application names according to JP.  They are KiCad, Pcbnew, CvPcb,
  Eeschema, and GerbView.
* Add a note the the user interface policy about the correct capitalization.
2011-09-30 14:15:37 -04:00