Commit Graph

9257 Commits

Author SHA1 Message Date
Dick Hollenbeck afd6f292e7 *) Switch over to FP_LIB_TABLE::Footprint*() functions.
*) Set environment variable KISYSMOD before loading FP_LIB_TABLE so that
   FP_LIB_TABLE::ROW::SetFullURI() can do substitution up front.
*) De-emphasize the lib path in some of the footprint frames but keep it
   so the footprint editor can export a current library to another.
   You can even export a GITHUB library to a pretty library for local 
   installation.
*) Start the PLUGIN options editor.
*) Enhance cursor positioning in DIALOG_FP_LIB_TABLE.
2013-10-13 16:33:58 -05:00
Wayne Stambaugh 8580d87ef7 Footprint library table improvements.
* Add save table and set project path environment variable code to
  FP_LIB_TABLE object.
* Add code to Pcbnew and CvPcb to set project path environment variable.
* Create empty footprint table in Pcbnew when new board created.
* Save current project specific footprint library table to path on file save
  as or empty project path.
* Fix a bug in Pcbnew in file save function that would silently overwrite
  an existing board file.
* Disable selecting the current library in the module editor when there are
  no libraries defined.
* Catch exceptions and report errors when writing footprint library tables.
* Fix Boost build CMakeFile to fix bug when bootstrapping a Boost build in
  MSys.
2013-10-13 12:29:20 -04:00
jean-pierre charras a8e57e10e8 Remove wxUSE_UNICODE definition from CMakeLists.txt, because this define comes from wxWidgets and should not be made inside kicad
Remove KICAD_GOST option because it is  now useless: the 2 GOST options are now selectable at run time and are:
* specific page layouts (now user definable, and the GOST page layouts are available in template folder)
* notation for multiple parts per package (made in eeschema, preference menu)
2013-10-11 18:24:43 +02:00
Dick Hollenbeck ec7f26f54b FP_LIB_TABLE::ROW::SetFullURI() does environment variable substitution up front.
We can now remove a few calls to FP_LIB_TABLE::ExpandSubstitutions( const wxString& aString )
since its being done in above function.

DIALOG_FP_LIB_TABLE now handles table to copy cut copy paste from global to
project and reverse.  Fixed a problem with cursor position management when
switching between tables.
2013-10-05 05:34:55 -05:00
Dick Hollenbeck 248788f381 Put FP_LIB_TABLE::Footprint*() functions on stage, but comment out lazy plugin lookup trick in FindRow() until these new API functions are used. 2013-10-04 23:53:15 -05:00
Dick Hollenbeck a90975d11c FP_LIB_TABLE::ROW::SetType() ensures sensible value of "KiCad" if nothing good comes in. 2013-10-04 17:40:25 -05:00
jean-pierre charras 7a2593832d Fix Cmakelists issues 2013-10-04 14:48:50 +02:00
jean-pierre charras 79443fdbe5 Move specctra.cpp, specctra_import.cpp and specctra_keywords.cpp compilation to pcbcommon lib because they containt functions used by the 3D viewer in Cvpcb and Pcbnew. 2013-10-04 14:22:33 +02:00
jean-pierre charras dd64b2f284 3D board display: better rendering of the board: the board polygon outlines (generated by the specctra function) is now used to create the 3D body of the board. 2013-10-04 10:42:09 +02:00
Dick Hollenbeck e45ed220f9 DIALOG_FP_LIB_TABLE does not use wxSplitterWindow, it would not obey.
Paste popup menu in this dialog now allows pasting a (fp_lib_table)
s-expression element holding (lib) elements.  This provides an 
opportunity for GITHUB library publishers to put the table description
into their README.md file as a (fp_lib_table) element where it can
be quickly copied to clipboard and pasted into the fp lib table dialog.
This is a paste operation, and overwrites from the initial cursor position.
2013-10-03 17:12:56 -05:00
Maciej Suminski 3c738faed6 Renamed WORKSHEET_ITEM to WORKSHEET_VIEWITEM. 2013-10-02 14:26:14 +02:00
Maciej Suminski 54946f46f7 Fixed memory leak caused by ViewUpdate() with VIEW_ITEM::GEOMETRY/LAYER parameters. 2013-10-02 13:57:21 +02:00
Maciej Suminski 86000832fe Added typedefs for VIEW_GROUP iterators. Fixed improper order of layer drawing for VIEW_GROUP items. 2013-10-02 10:19:48 +02:00
Maciej Suminski 87a9964c78 VIEW_GROUP now does not change depth during drawing. Introduced functions for manipulating stored items.
FIxed problem of overlay being covered by other layers while panning.
Few minor fixes.
2013-10-01 16:55:33 +02:00
Maciej Suminski d2618caabc Added missing file 2013-09-30 16:28:21 +02:00
Maciej Suminski 43b5aa4c8d Fixed Mac OS build & removed one warning. 2013-09-30 09:45:42 +02:00
Maciej Sumiński a6a1af9d75 Restored previous version of math_utils.h. WARNING: Mac OS build is probably broken now. 2013-09-29 21:29:28 +02:00
Maciej Sumiński 6409f7f96b wxWidgets 2.8 compatibility fix (removed wx/kbdstate.h) 2013-09-29 14:25:04 +02:00
Maciej Sumiński e1290101aa Fixed strings for wxWidgets 2.8 2013-09-29 12:57:20 +02:00
Maciej Suminski 35721397bd Moved common actions to a separate file. 2013-09-27 20:52:34 +02:00
Maciej Suminski 6b74b5771a Even more code comments and reformatting. 2013-09-27 18:51:21 +02:00
Maciej Suminski 3f320e4d68 Some more comments and code formatting. 2013-09-27 16:23:43 +02:00
jean-pierre charras f2e5da63e3 Eeschema: netlist generation: fix bad choice for the "best net name" when selecting a net name between labels connected to the same net.
Code cleanup and remove unused file.
2013-09-27 14:30:35 +02:00
Maciej Suminski 5e3030ee89 Merge kicad-pns-mac 2013-09-27 12:06:59 +02:00
Maciej Suminski 936e0be090 Uncrustified the push&shove source, fixed some warnings. 2013-09-27 10:00:26 +02:00
Maciej Suminski 87b3f2e499 Added Init() to TOOL_INTERACTIVE, allowing to set up things that are needed to be initialized only once.
TOOL_ACTIONs can be run from CONTEXT_MENU after adding them.
Move tool actions are available to be run from CONTEXT_MENU displayed after right mouse button click on selected items.
Added some asserts to check the code.
2013-09-26 18:38:58 +02:00
Dick Hollenbeck 5f0679bf6e comment/doc cleanups 2013-09-26 10:02:46 -05:00
Maciej Suminski e6c20adc5a Fixed premature highlighting of options in CONTEXT_MENU. 2013-09-26 14:29:47 +02:00
Maciej Suminski 61066fa608 Added functions for handling hotkeys, interface for adding TOOL_ACTIONs to CONTEXT_MENU.
Less objects are allocated dynamically.
CONTEXT_MENU is being run using its copy (it saves a hassle of following the lifetime of object).
2013-09-26 14:09:18 +02:00
Maciej Suminski 7b7a331645 Added some const modifiers. 2013-09-26 11:22:59 +02:00
Dick Hollenbeck 4f7c7eb174 Make pretty prettier by striving for single line module pads. Add slick std::string based strprintf(), twice. 2013-09-26 00:29:54 -05:00
Dick Hollenbeck f72394cc6b Make PLUGIN::Footprint*() API functions take 'const' PROPERTIES*.
Add const PROPERTIES* to FootprintDelete().
Add {Get,Set}Properties() to FP_LIB_TABLE::ROW.
Touch up fp table dialog.
2013-09-25 14:17:06 -05:00
Dick Hollenbeck 74ce031e62 Set PROPERTIES* into FP_LIB_TABLE::ROW, which is a parsed (binary) form of the 'options'.
Write parser and formatter for options.  Write dialog verification used before saving
FP_LIB_TABLEs, triggered from OK button in table editor.
Switch PROPERTY's value column to std::string from wxString.
Add event handler to fp lib table dialog for upcoming options dialog.
2013-09-24 16:23:13 -05:00
Wayne Stambaugh 85777d6569 Pcbnew footprint library plug in fixes and minor code cleaning.
* When loading footprint do not retest every footprint in cache.  Only test
  the footprint being loaded.  Fixes long load times on libraries with a lot
  of parts.
* Fix footprint name bug where file extension was added to the end of the
  footprint name.
* Fix bug in path equivalence test due to Posix path separators in footprint
  library table.  Convert paths to native separator before comparison.
* Fix a bug in FOOTPRINT_VIEWER_FRAME::OnActivate() which cause the footprint
  list to always get reloaded when using footprint library tables.
* Remove some unnecessary debugging messages.
* Add a few Doxygen comments to FP_CACHE in kicad_plugin.cpp.
2013-09-24 14:45:57 -04:00
Maciej Suminski d1578e4e1a Fixed cvpcb build. 2013-09-24 16:12:02 +02:00
Maciej Suminski 1624320749 Added protection from redrawing while GAL backend is being switched. 2013-09-24 16:00:21 +02:00
Maciej Suminski 1de8eba49e Added functions for refreshing the layer set occupied by a VIEW_ITEM. 2013-09-24 15:48:04 +02:00
Maciej Suminski 96d162c907 Added possibility to cancel a tool that is not on the top of the tool stack. 2013-09-24 15:47:07 +02:00
Maciej Suminski 7837dfa3ac Fixed build for Mac OS 2013-09-23 17:02:25 +02:00
Wayne Stambaugh 0f4ba09545 Pcbnew footprint library table fixes.
* Make footprint viewer work properly with library table.
* Fix bug in Eagle plugin when enumerating footprints.
* Add missing P-CAD plugin from footprint library table editing dialog.
* Fix bug in FOOTPRINT_INFO::LoadLibraries when error occur loading footprints
  from libraries.
2013-09-21 20:28:02 -04:00
jean-pierre charras e9713bb291 Pcbnew: Block selection enhancement, from Bug #593997 (whishlist)
1. block created from-left-to-right selects only 100%inside selection objects (as it now does)
2.block created from-right-to-left selects all overlapping objects inside selection
From the patch sent by mathieulj (mathieulj), and some fixes and code cleaning.
2013-09-21 20:09:41 +02:00
jean-pierre charras d5ecafd5af Fix some minor issues in hotkey dialogs 2013-09-21 19:09:08 +02:00
Dick Hollenbeck 4a2f86932a Early GITHUB_PLUGIN hopefull-ness 2013-09-21 02:30:23 -05:00
Maciej Suminski 7db595da31 Added missing files 2013-09-20 18:21:01 +02:00
Maciej Suminski 8e472c736a Merged upstream. 2013-09-20 17:54:35 +02:00
Maciej Suminski a991cb4470 Changed the way of refreshing canvases (both standard & GAL). 2013-09-20 17:29:32 +02:00
Maciej Suminski c00533a150 Merged kicad-gal 2013-09-20 15:48:27 +02:00
Maciej Suminski 2c03bf4109 Removed TA_ActivateTool (now tools are invoked by sending TA_Action event, with the tool name as string parameter).
Developed TOOL_Action class & added ActionManager. Hot keys registered by tools are processed.
Selection & move tool can be invoked by a hot key.
2013-09-19 17:02:57 +02:00
Maciej Suminski 9b16651607 Added limits for VIEW scale values & panning area. 2013-09-18 17:36:54 +02:00
Maciej Suminski dcb5d8f25c Merged Tom's branch 2013-09-18 16:59:08 +02:00
tomasz.wlostowski@cern.ch 88ee288465 VIEW_CONTROLS: added ForceCursorPosition() and ShowCursor() methods 2013-09-18 13:15:42 +02:00
tomasz.wlostowski@cern.ch dea793209d VIEW: added GetTopLayer() method 2013-09-18 13:14:57 +02:00
tomasz.wlostowski@cern.ch 23298886a1 geometry: killed compiler warnings 2013-09-18 13:14:13 +02:00
tomasz.wlostowski@cern.ch d8480e4674 gal: make the cursor a bit bigger and hidden by default 2013-09-18 13:13:03 +02:00
Maciej Suminski 3f6fa86190 Fixed random color of worksheet border. 2013-09-17 14:46:48 +02:00
Wayne Stambaugh 0224bc2f58 Fix but reading empty footprints in netlist. (fixes lp:1226283)
* Remove fp_lib token from board and s-expr netlist file format.
* Fix a bunch of Doxygen warnings.
* Remove some extra debug log messages.
2013-09-16 20:52:08 -04:00
Maciej Suminski ab21124b71 Reenabled snapping for tools. 2013-09-16 16:46:02 +02:00
Maciej Suminski 373c8d6441 Changed to worksheet border color to match the rest of the worksheet layout. 2013-09-16 15:19:48 +02:00
Maciej Suminski 573f9841df Better way of marking 'brightened' mode for items. 2013-09-16 11:00:59 +02:00
Maciej Suminski 9fbf45ebfc Fixed drawing outlined track segments. 2013-09-16 09:51:53 +02:00
Maciej Suminski e0f3e2900b Changed alignment. 2013-09-16 09:51:24 +02:00
Wayne Stambaugh ce409e3699 CvPcb footprint library table implementation.
* Add code to CvPcb to handle assigning component footprints from the
  footprint library table instead of the search path method.
* Add code to CvPcb to allow editing of the footprint library table.
* CvPcb footprint and component panes display fully qualified FPID names.
* Make CvPcb library pane display footprint library table nicknames instead
  of library file names.
* Add code to FP_LIB_TABLE object to test the paths in the table against the
  list of libraries loaded from the project file.
* Add code to FP_LIB_TABLE to convert assigned footprints in a NETLIST from
  legacy format to footprint library table format.
* Split out COMPONENT_NET, COMPONENT, and NETLIST objects from netlist_reader
  files and create new pcb_netlist files.
* Fix minor wxListView scroll bar sizing issues.
* Add new token and code to save and load FPID nickname in board file.
* Add new token and code to save and load FPID nickname in s-expression net
  list file.
* Add WX_STRING_REPORT object to dump strings to a wxString object.
2013-09-14 16:33:22 -04:00
tomasz.wlostowski@cern.ch 886a3e937a Merged Orson's branch 2013-09-13 15:45:03 +02:00
Maciej Suminski 782867f7b3 Caps for lines are drawn only when segments are wider than 1.0 2013-09-13 15:30:45 +02:00
tomasz.wlostowski@cern.ch 00ecafe94f common/profile.h: fix incorrect #endif 2013-09-13 15:28:51 +02:00
Maciej Suminski e00c8e92cb Removed VIEW_LAYER.isDirty flag. 2013-09-13 11:38:16 +02:00
Maciej Suminski 42860b5d02 Changed VIEW::PrepareTargets() to more appropriate name VIEW::ClearTargets(). Added SELECTION layer to always-on-top list. 2013-09-13 11:28:47 +02:00
Maciej Suminski f9cc914960 Mouse movement events are sent during autopanning, as the cursor position changes in the world coordinates (even if it stays still in the screen coordinates). It allows tools to update their state, as if the mouse was moved. 2013-09-13 10:26:08 +02:00
Maciej Suminski d9ff4b851a Currently selected layer is displayed on the top. 2013-09-12 18:24:53 +02:00
Maciej Suminski 82fe1a4972 Merged Tom's branch 2013-09-12 17:42:28 +02:00
tomasz.wlostowski@cern.ch f85bf48a4b EDA_DRAW_PANEL_GAL: redraw stuff in a single place, with "coalescing"
Redraws can be requested way too often than it is required. This commit adds redraw timeout:
- if the view became dirty and there has been no redraw for longer than certain time, it is redrawed immediately
- otherwise, we wait for the next frame

This in general improves smoothness of rendering.
2013-09-12 11:40:16 +02:00
tomasz.wlostowski@cern.ch 660d4cc6c9 CONTEXT_MENU: null pointer check bugfix. 2013-09-12 11:36:19 +02:00
tomasz.wlostowski@cern.ch c3759d870c COLOR4D: added Saturate(), FromHSV(), ToHSV() methods.
Used in highlighting/routing code.
2013-09-12 11:35:42 +02:00
Maciej Suminski b04de0cada Fixed memory leaks in containers. 2013-09-12 09:44:57 +02:00
Maciej Suminski d13355f7fe Removed some potential memory leaks. 2013-09-11 19:37:52 +02:00
Maciej Suminski f179183dea Removed some dead code. 2013-09-11 16:38:40 +02:00
Maciej Suminski 90a3b97c2f Added drawing of worksheet layout. 2013-09-11 14:42:12 +02:00
Maciej Suminski e2f5b2779f Changed lifetime of RENDER_SETTINGS (now they are accessible right after PAINTER object is created). 2013-09-11 12:09:22 +02:00
Maciej Suminski afe2e27b0a Moved GetColor() from PAINTER to RENDER_SETTINGS. Fixed recaching of custom items. 2013-09-11 11:39:46 +02:00
Maciej Suminski c5d3376c26 Changed some 'magic numbers' into constants. Added const modifier in appropriate spots. 2013-09-11 11:34:10 +02:00
Maciej Suminski cd56848326 Added one more function to convert colors. 2013-09-11 11:11:27 +02:00
Maciej Suminski 7d4aed1099 Fixed COLOR4D( EDA_COLOR_T aColor ) and added asserts. 2013-09-11 10:30:39 +02:00
tomasz.wlostowski@cern.ch 9eb3916852 Merged kicad-gal-orson 2013-09-10 19:32:19 +02:00
tomasz.wlostowski@cern.ch fa817b7475 pcbnew: start integrating P&S router 2013-09-10 19:26:44 +02:00
tomasz.wlostowski@cern.ch b73474bda6 VIEW_GROUP: added FreeItems() method 2013-09-10 19:25:02 +02:00
tomasz.wlostowski@cern.ch f14db7c78c TOOL_MANAGER: open menu on right mouse button when requested 2013-09-10 19:23:15 +02:00
tomasz.wlostowski@cern.ch 9daa1ab52a TOOL_DISPATCHER: improve mouse handling 2013-09-10 19:22:38 +02:00
Maciej Suminski 08e797551b Modified default grid/origin settings. 2013-09-10 14:35:10 +02:00
Maciej Suminski 5659dd479e PCB items are refreshed on GAL switching (changes made using default renderer are displayed by GAL). 2013-09-10 13:57:28 +02:00
tomasz.wlostowski@cern.ch 6ac8188f7f common: minimum version of the shape library 2013-09-10 13:43:09 +02:00
Maciej Suminski 87da6a8ad3 Fixed hanging up of menu loop when user never moves mouse cursor into popup menu area. 2013-09-09 17:12:03 +02:00
tomasz.wlostowski@cern.ch b0694e0333 EDA_DRAWPANEL_GAL: set focus on mouse enter to catch all key events 2013-09-09 17:07:03 +02:00
Maciej Suminski d0749a3a52 Small refactoring. 2013-09-09 14:31:27 +02:00
Maciej Suminski 8a4417ec46 Fixed color for drawing polygons on overlay. 2013-09-09 14:31:13 +02:00
Maciej Suminski cba1e0bf91 Stops autopanning on left mouse button release. 2013-09-09 13:57:56 +02:00
Maciej Suminski 0dc587e2ef Tools are enabled to switch snapping cursor to grid. 2013-09-09 10:54:11 +02:00
Maciej Suminski dbbe628b8c Modified interfaces for [WX_]VIEW_CONTROLS. 2013-09-09 10:53:46 +02:00
Maciej Suminski 31f7ecc16a First version of the move tool. 2013-09-09 09:34:52 +02:00
Wayne Stambaugh 230c5f8f5a Convert footprint definitions from wxString to FPID.
* Use FPID instead of wxString in MODULE object.
* Use FPID instead of wxString when loading and saving files.
* Use FPID in COMPONENT object.
* Add wxString helper functions and comparison operators to FPID.
* Add fp_lib token to pcb and netlist file formats.
* Add code to load and save FPIDs to pcb file format.
* Fix segfault when deleting invalid footprint library tables in Pcbnew
  in non footprint library table build.
* Fix bug when counting the number of mod files in
  EDA_APP::SetFootprintLibTablePath();
2013-09-08 14:31:21 -04:00
Maciej Suminski f1b0ffd3d7 Changed focus owner of LayerWidget to EDA_DRAW_PANEL_GAL to make keyboard events work (apparently everything works fine, to be tested more extensively).
Removed unnecessary event hook from EDA_DRAW_PANEL_GAL.
2013-09-06 17:53:01 +02:00
Maciej Suminski 8658d90663 Some more spots where the GAL refresh was required. 2013-09-06 17:06:02 +02:00
Maciej Suminski f2b4c7a18b Added a few comments. 2013-09-06 16:01:46 +02:00
Wayne Stambaugh 9ab7c18f46 Footprint library table ground work.
* Remove defined CMAKE_INSTALL_PREFIX for Windows from main CMakeList.txt.
* Move footprint library path detection code from pcbnew.cpp to EDA_APP
  object.
* Add CMAKE_INSTALL_PREFIX to config.h.cmake.
* Simplify and fix search path list code.
* Add CMAKE_INSTALL_PREFIX to the list of search paths in case KiCad was
  installed using `make install`.
* Add default global footprint library table to CMake install.
* Add method to set footprint library table to PCB_BASE_FRAME object.
* Remove unused function EDA_APP::GetLibraryFile().
* Minor FP_LIB_TABLE object improvements.
2013-09-06 08:17:33 -04:00
Maciej Suminski ab4cb862b0 Solved refreshing issues. 2013-09-06 11:31:16 +02:00
Maciej Suminski f93d297cb5 Some comments. 2013-09-04 16:25:57 +02:00
Maciej Suminski bf3690d841 More effective way of updating bounding boxes. IsCached() method made public. Removed some of unused fields from the layer description structure. 2013-09-04 16:23:26 +02:00
Maciej Suminski 55744d1e9a Fixed Cairo's render target setting. 2013-09-03 17:46:05 +02:00
jean-pierre charras ede208f3cb Pcbnew: use pcb layer box selector in dialog graphic item properties and pcb text properties. 2013-09-03 14:48:38 +02:00
Maciej Suminski f4ec1e729e Allow invoking GAL tools, only if GAL is active. 2013-09-02 16:44:13 +02:00
Maciej Suminski 8e88a621ba Corrected behaviour of drag panning while autopanning is enabled. 2013-09-02 16:26:42 +02:00
Maciej Suminski e8083ae808 Added some comments and changed names of classes to match the coding rules. 2013-09-02 14:21:12 +02:00
Maciej Suminski fef50dd81e Changed way of naming VIEW_ITEM update flags to be more explicit.
VIEW_ITEMs save the layer numbers they use, it allowed to speed up removal of items.
2013-09-02 11:49:46 +02:00
jean-pierre charras 047749a8dc minor changes and refinement in class pcb layer box 2013-09-02 11:06:17 +02:00
jean-pierre charras 684bfad0af Cleaning code for PCB_LAYER_BOX_SELECTOR class, and use it in edit dimension dialog. 2013-09-01 20:38:11 +02:00
jean-pierre charras 6c14eee672 Pcbnew: Redesign layer selection and layer pair selection (give them a look near the Layer selector in toolbarr) 2013-08-30 21:28:31 +02:00
Maciej Suminski d0fc362ec6 Fixed warning. 2013-08-30 14:43:18 +02:00
Maciej Suminski fb9a4c2bfc Added stacking for tools. 2013-08-30 10:37:26 +02:00
Maciej Suminski edea2f9112 Reduced displayed events information. 2013-08-29 12:03:57 +02:00
jean-pierre charras 90b820a52c Pcbnew: enhancements for blind/buried vias palcement, and save blind/buried vias allowed option in .kicad_pcb file 2013-08-28 18:14:39 +02:00
Maciej Suminski bd8998d1da Fixed cursor drawing for OpenGL. 2013-08-28 17:06:07 +02:00
Maciej Suminski 6fe086ab6d Added cursor snapping. 2013-08-28 16:25:42 +02:00
Maciej Suminski 215f35e237 Added mouse cursor drawing.
Added flipping mode.
2013-08-27 18:08:32 +02:00
Maciej Suminski 32e962e8ee Merged upstream and Mac OS X build fixes. 2013-08-27 11:03:06 +02:00
Maciej Suminski 9b52e9dd89 Fix for wxWidgets 2.9.5 2013-08-26 14:23:17 +02:00
Maciej Suminski 3962464190 Fixed linking errors for apps other than pcbnew. 2013-08-26 10:43:22 +02:00
Maciej Suminski b03f97b991 Removed some unnecessary stuff and added some comments to WX_VIEW_CONTROLS. 2013-08-23 10:56:52 +02:00
jean-pierre charras 4428d69a63 Pcbnew: Fix a bug when reading a netlist which forces pcbnew to read lib files to find a footprint even if the right footprint is already loaded (which explains the long time to load netlists)
Netlist dialog: add option to report only most important messages. Useful for large boards.
class REPORTER: add features to allow a basic message filtering (flags to report all/warning/error messages)
Fix Bug #1214599 ( tools are deselected on Move command )
2013-08-23 08:38:57 +02:00
Maciej Suminski 961a8c2eca Added autopanning functionality to WX_VIEW_CONTROLS. 2013-08-22 18:42:53 +02:00
Maciej Suminski 875c0f7062 Modified InvokeTool(), so besides resetting the tool, it also send an ActivateTool event.
Added generation of CancelTool event upon ESC key press.
Minor bugfix.
2013-08-22 15:07:34 +02:00
Maciej Suminski 6b3742b76b Mark layers as dirty on VIEW_ITEM removal. 2013-08-22 15:04:14 +02:00
Maciej Suminski 89a138c09e Added handling keyboard events for the Tool framework. 2013-08-21 17:37:27 +02:00
Dick Hollenbeck 0be3992913 Lay basis for a more full featured usage of boost, including compiled libraries such as unit_test_framework, system, etc. Move headers now into boost_root/include/boost/. 2013-08-20 13:03:21 -05:00
Maciej Suminski 5adba827a6 Added VIEW_GROUP for grouping items to be displayed on a single layer. 2013-08-20 15:07:38 +02:00
Maciej Suminski 61ba40aa7e Added InvokeTool() and FindTool() functions. 2013-08-20 14:49:08 +02:00
Maciej Suminski 43ae1cb98d Smarter way of the overlay rendering (overlay is always refreshed, while cached&noncached targets only if the viewport or items have changed). 2013-08-19 11:02:38 +02:00
Maciej Suminski e87eea7abc Reformatting. 2013-08-19 09:47:36 +02:00
Maciej Suminski e697a2c41c Functions for direct item drawing. 2013-08-19 09:44:50 +02:00
jean-pierre charras d04ab1fe75 Pl_Editor: fix minor issues in multi-lines texts
Others: fix very minor issues.
2013-08-18 17:49:04 +02:00
Maciej Suminski 9bd7ba36ac Added resetting of tools after loading a new board. 2013-08-15 10:20:49 +02:00
Maciej Suminski 1b7593f403 Fixed win32 builds. 2013-08-10 11:14:16 +02:00
jean-pierre charras 5817c99a4a Replace the wxFilePickedCtrl in Option Page dialog by an usual wxButton + wxTextCtrl, because under wxWdgets 2.8.12 the look and the behavior is very different between Windows and Linux. 2013-08-09 18:19:52 +02:00
Maciej Suminski 723424df07 Added some comments. 2013-08-09 15:21:31 +02:00
Maciej Suminski 80901c69cf Reformatting. 2013-08-08 19:41:20 +02:00
Maciej Suminski 12e10fd43a Reformatting. 2013-08-08 14:59:59 +02:00
Maciej Suminski 282995eaee Fixed disambiguation menu issue. 2013-08-08 14:50:32 +02:00
Maciej Suminski 402f3c6f2c Added brightened mode for selecting items using disambiguation menu. 2013-08-08 12:30:00 +02:00
Maciej Suminski 8c37e70889 Different approach to item recaching. 2013-08-07 17:20:01 +02:00
jean-pierre charras 69c880e088 Eeschema: fix a crash when plotting a schematic.
Pcbnew: footprint wizard dialogs: minor fixes, and fixes a not working parameters dialog under Windows, due to an incorrect Printf format.
remove scripts/packagesrc.sh, fully outdated (still refers svn repo)  and not commented.
2013-08-07 15:22:59 +02:00
Maciej Suminski ee80c7f674 Some more reformatting and adding copyright notices. 2013-08-07 11:20:12 +02:00
Maciej Suminski 62ea71fcae Fixed layers caching settings. Added some comments. 2013-08-07 10:52:50 +02:00
Maciej Suminski e050133c07 Simplified color computation. 2013-08-07 09:51:39 +02:00
Maciej Suminski 8ab98ae60b Removed frame limiter. 2013-08-07 09:37:28 +02:00
Carl Poirier 3f8343b341 REMOVE: USE_PCBNEW_NANOMETERS by making it the only way to go in pcbnew, effectively removing the deci-mils build. 2013-08-06 18:21:40 -05:00
Maciej Suminski bc69429a56 Added GetTarget() for GALs. 2013-08-06 14:57:48 +02:00
Maciej Suminski 7d5a456344 Code reformatting. 2013-08-06 10:30:09 +02:00
Maciej Suminski f193e389ec Moved highlighted flag from VIEW_ITEM to EDA_ITEM. Added brightened and selected flag to EDA_ITEM. 2013-08-06 09:31:08 +02:00
Dick Hollenbeck c0832a0342 BUG FIX: eeschema as segfaulting on the 'Insert' key because the m_itemToRepeat
was simply a pointer to an object on the display list.  At times this object
would disappear from the display list, in the test case because of a concatonation
of two wires, and if you then tried to clone the non-existent object you'd get a 
crash.  This was not merely a bug, but a naive design choice. IMO.
Now the item to repeat is cloned, so will never also be on the display list.
2013-08-05 16:02:41 -05:00
Dick Hollenbeck c58bd957a5 add Brian to about dialog, scoot Wayne up, alphabetize the rest 2013-08-05 15:45:22 -05:00
Camille Delbegue 2134e7de04 Remove a Clang warning and add a missing dependency to boost in cmake file. 2013-08-05 17:53:13 +02:00
Dick Hollenbeck e8dc730526 1) Remove requirement to define KICAD_TESTING_BRANCH. Instead the KICAD_STABLE_BRANCH
must be defined if that is the build type wanted. This only affects a text string
anyways, is not particularly important other than telling user from which code
branch  the source came.  

2) Change name of "testing" to "product" in that same description within
common/build_version.cpp.  "testing" made it sound frightenly unusable.
2013-08-05 10:38:50 -05:00
Maciej Suminski 8753bef2fa Moved VIEW_ITEM::ViewGetRequiredLayers() functionality to the VIEW class. Now required layers are set per layer basis instead of per item. 2013-08-05 16:28:58 +02:00
Maciej Suminski d15f0e91e2 Upstream merge. 2013-08-05 14:46:05 +02:00
Dick Hollenbeck 790e0ef36c ReturnStringFromValue() refinements 2013-08-03 15:20:55 -05:00
Dick Hollenbeck 1b5a1b74fa fix interface mapping slip-up in wxPoint EDA_DRAW_FRAME::GetCrossHairPosition( bool aInvertY ) const 2013-08-03 13:57:15 -05:00
Dick Hollenbeck 76a604bc35 split expression into two lines for verification while using debugger that GetScreen() is a virtualized call. 2013-08-03 01:36:51 -05:00
Dick Hollenbeck efb34166ea *) retain grid origin in the BOARD and save it in legacy and kicad board files.
*) add hotkey for setting the grid origin as 'S', in board editor, module editor.
*) re-position the function interface for cursor movement from BASE_SCREEN into
   class EDA_DRAW_FRAME.  This is a prelude to getting rid of BASE_SCREEN or
   splitting it up.
2013-08-03 00:15:23 -05:00
Maciej Suminski df6cacf64b Windows build fix. 2013-08-02 19:21:22 +02:00
tomasz. 8ea0f7ae5b Merged Orson's changes 2013-08-02 17:28:09 +02:00
tomasz. 69a44d5f13 pcbnew: hooked Tool Framework into the edit panel. Added a sample selection tool (not fully functional). 2013-08-02 16:53:50 +02:00
tomasz. 09182d814d View: various fixes, added VIEW::IsDirty() 2013-08-02 16:51:38 +02:00
tomasz. 241061025b Added core tool framework files + boost::context assembly stuff (initial, very buggy and unfinished work). 2013-08-02 16:46:53 +02:00
Maciej Suminski 2fd2c1dc03 Upstream merge. 2013-08-02 15:57:24 +02:00
Maciej Suminski 19b344806d Fixed the tesselator, so now it works with Windows. 2013-08-02 10:55:40 +02:00
Maciej Suminski 5e474cf87f Modified usage of wxStandardPaths to make it compatible with newer versions of wxWidgets. 2013-08-02 10:35:58 +02:00
Maciej Suminski ebc2a4269e Modified way of handling OpenGL framebuffer errors.
Now it is more verbose and the status is checked at the right moment (previously it was fine with Linux, but on Windows it showed errors).
2013-08-02 10:34:23 +02:00
jean-pierre charras 744dd80eaf Minor fixes. Minor code cleaning. Pcbnew: better iniatilization of members in DRAWSEGMENT, TRACK, EDGE_MOD (not bugs: just useful when using python scripting). 2013-07-31 18:41:32 +02:00
Maciej Suminski 544726e4f3 New display style for grid (dotted). 2013-07-31 10:28:23 +02:00
Maciej Suminski d34df18f2c Fixed grid line drawing in OpenGL backend for some drivers. 2013-07-31 09:01:25 +02:00
Maciej Suminski 190ed58568 Code refactoring. 2013-07-30 18:29:54 +02:00
Maciej Suminski 790a1f8563 Made GAL backends settings more consistent. Fixed grid line width in the OpenGL backend. 2013-07-30 17:09:06 +02:00
Maciej Suminski 1ce21605a5 Merge removal of the shaderless OpenGL backend. 2013-07-30 14:05:32 +02:00
Maciej Sumiński 6dda8d4a7e Fixed smudging in the Cairo backend. 2013-07-30 13:58:03 +02:00
Maciej Suminski f9d74ccb70 Removed shaderless OpenGL backend. 2013-07-29 16:38:07 +02:00
Maciej Suminski be012cac94 Added initialization of variable, preventing unconditional jumps. Fixed typos in comments. 2013-07-29 14:12:27 +02:00
jean-pierre charras 4a7f92fb4f Minor code cleaning. Pcbnew: better iniatilization of members in DRAWSEGMENT, TRACK, EDGE_MOD (useful when using python scripting). 2013-07-29 09:33:56 +02:00
jean-pierre charras 3b246ca483 Pl_Editor: add undo/redo commands. 2013-07-26 14:50:29 +02:00
Maciej Suminski 2ee99f74c4 Fixed profiling timers for compilation under Win32 (and hopefully Mac OS too). 2013-07-26 14:35:31 +02:00
jean-pierre charras 1ef311cd01 Pl_Editor: title block texts can be multiline (use" \n" : a '\' followed by a 'n' to create a new line inside a text)
Very minor code cleaning.
2013-07-25 20:58:46 +02:00
Maciej Suminski c9199ea80a Fixed high contrast mode in OpenGL. Split display settings loading into more appropriate places. 2013-07-25 18:04:15 +02:00
Maciej Suminski 4076f99332 Added a layer compositor for the Cairo backend. 2013-07-25 14:40:04 +02:00
jean-pierre charras 71a40b0d09 Very minor code cleaning 2013-07-24 20:34:28 +02:00
jean-pierre charras 28cd996394 Pl_Editor: add some hot keys. Fix some rounding issues. 2013-07-24 17:11:35 +02:00
Maciej Suminski 27113348b9 Fixed blending function for OpenGL compositing. Corrected documentation, removed unnecessary functions. 2013-07-24 15:06:59 +02:00
Maciej Suminski 618a5f0e75 OpenGL multitarget rendering (compositing). 2013-07-23 18:39:07 +02:00
jean-pierre charras fff2f017d8 Fix an issue in Debug mode 2013-07-23 12:35:58 +02:00
jean-pierre charras ec7ee344b5 Bug #1202761 (Off centre zoom ) 2013-07-22 20:38:04 +02:00
jean-pierre charras d7f569ae78 Fix GOST compatibility. 2013-07-22 18:45:22 +02:00
Maciej Suminski a8f4791395 Changed rendering order of cached & noncached layers. 2013-07-22 13:14:53 +02:00
Maciej Suminski 5242fff9d7 Code refactorization. VBO_CONTAINER is split to [NON]CACHED_MANAGER, GPU_MANAGER and VERTEX_MANAGER. 2013-07-22 10:41:12 +02:00
jean-pierre charras 1f3f11ca0d Add margin values control in pl_editor, and remove margin definition from class PAGE_INFO. 2013-07-20 21:36:19 +02:00
jean-pierre charras 50743cf3ba Initial release of pl_editor, the page layout and title block editor. 2013-07-19 20:27:22 +02:00
Maciej Sumiński 92ccc2018e Headers containing shader program sources are generated using CMake. 2013-07-17 23:55:59 +02:00
Maciej Suminski bbc0e8eb74 Refactorization of VBO_CONTAINER. 2013-07-17 18:49:38 +02:00
Maciej Suminski 99e8814028 Fixed wrong memory freeing. 2013-07-17 14:16:37 +02:00
Maciej Suminski c5ca075e24 Added an interface for highlighting. 2013-07-17 10:21:46 +02:00
Maciej Suminski b0c1b97ff3 Fixed stroked circles width issue with OpenGL shaders. 2013-07-17 10:21:29 +02:00
Maciej Suminski fef47b0b67 Fixed OpenGL tracks transparency & netnames issue. 2013-07-16 15:44:08 +02:00
Maciej Suminski 7739cfef2f Added support for multiple active layers (colored ones in the high contrast mode).
Added separate layers for pad netnames (now these are divided into multilayer/top/bottom pads).
More appropriate layers are selecting a copper layer in the high contrast mode (now it shows the copper layer itself, vias & multilayer pads and netnames).
2013-07-16 13:40:53 +02:00
Maciej Suminski 07e4fc31b4 1 pixel wide outlines for the Cairo and the OpenGL with shaders backends, but it breaks displaying outline in the shaderless OpenGL backend. 2013-07-16 09:27:28 +02:00
Maciej Suminski cbec733deb Refactored code responsible for high contrast mode. Now it allows to have more than one layer on the top.
Selecting layer using the dropdown list on the toolbar influences the layer displayed in high contrast mode.
2013-07-16 09:26:29 +02:00
Maciej Suminski 20c86db71f 1 pixel wide lines using OpenGL shaders. 2013-07-16 08:49:12 +02:00
Maciej Suminski 64122ae057 Stroked lines in Cairo GAL are always drawn at least 1 pixel wide. 2013-07-16 08:48:21 +02:00
Maciej Suminski 58280f749a Fixed multiline vertical strings drawing bug. 2013-07-09 10:00:23 +02:00
Dick Hollenbeck 34e6314a3e dialog information hiding, initial Fit() 2013-07-09 00:48:26 -05:00
Dick Hollenbeck 8c2d3d12fc comment improvements 2013-07-09 00:22:08 -05:00
Dick Hollenbeck e44fa93776 wxStandardPaths().GetExecutablePath(); is not wx 2.9.5 compatible, formatting improvements 2013-07-09 00:20:07 -05:00
Maciej Suminski b7747bc224 wxWidgets 2.8 compatibility fix.
Scripting engine build fix.
2013-07-08 17:14:16 +02:00
Maciej Suminski b7447ff05e Remove updating of non-cached layers. 2013-07-08 15:24:44 +02:00
Maciej Suminski 36f1147da1 Upstream merge. 2013-07-08 15:05:12 +02:00
Maciej Suminski 5a0869f2e2 Added 'required layers' option for drawn items. 2013-07-08 09:28:58 +02:00
Maciej Sumiński 180c72ef83 Added possibility to change zoom using toolbar in GAL. 2013-07-07 19:30:44 +02:00
Maciej Sumiński 07781d34be Removed KICAD_GAL CMake option. 2013-07-07 02:30:28 +02:00
Maciej Suminski b5aadfc3f9 Fixed segmentation fault when there was no board loaded. 2013-07-05 15:48:45 +02:00
Maciej Suminski eb041ee2d3 Removed most of deprecated OpenGL calls. Items used to be drawn in immediate mode now are drawn using vertex arrays. 2013-07-05 14:01:33 +02:00
Maciej Suminski 408fb4f159 Removed pointers where they were not necessary. 2013-07-05 09:31:04 +02:00
Maciej Suminski e29a829a70 Added implementation of level of details per layer and item type pairs basis (items on every layer have a possibility to define the minimum VIEW scale to be shown). 2013-07-04 18:45:00 +02:00
Maciej Suminski 9c4e02379a Added the 'cached' parameter for VIEW_LAYER. The parameter decides if items drawn on the layer should be cached or drawn in immediate mode.
Removed m_useGroups from VIEW, as now groups are enabled per layer.
2013-07-04 17:02:20 +02:00
Maciej Suminski aff3787b34 Fixed drawing circles and semicircles using display lists. 2013-07-04 16:27:27 +02:00
Maciej Suminski 073eb024fe Reduced frame limit. 2013-07-04 14:21:40 +02:00
Maciej Suminski 84392f1723 Moved STROKE_FONT from PAINTER to GAL. 2013-07-04 11:37:43 +02:00
Maciej Suminski fe6c901a9f Shaders can handle integer parameters (uniforms). 2013-07-03 13:08:43 +02:00
Maciej Suminski 97f914ccb3 Fixed stroked semicircles Z coordinate in shaderless OpenGL backend. 2013-07-02 18:11:57 +02:00
Maciej Suminski 0f5aa0630a Fixed stroke semicircles drawing using shaderless OpenGL backend. 2013-07-02 09:27:12 +02:00
Dick Hollenbeck 9d6ec5a265 dsnlexer.cpp's isNumber() was recently stupid-ized, un-stupid-ize it. 2013-07-01 09:37:03 -05:00
Maciej Suminski 6dc79cf193 Headers are regenerated only if shaders' source code was modified. 2013-07-01 15:47:44 +02:00
Maciej Suminski 9e4fe8b410 Faster polylines drawing using OpenGL backend.
Fixed drawing of lines' caps.
2013-07-01 15:23:43 +02:00
unknown 4360860bee Removed different styles of line caps and line joins, leaving only round caps & joins.
Fixed drawing stroked semicircles using OpenGL backend.
2013-07-01 14:39:27 +02:00
Maciej Suminski 8a44751b61 Mirrored text display bugfix. 2013-07-01 14:06:38 +02:00
Maciej Suminski a73216fc95 Changed std::map to boost::unordered_map for storing memory chunks and groups information. 2013-07-01 13:20:48 +02:00
Dick Hollenbeck caf5fc8d8d DSNLEXER::NextTok() organizes the specctraMode code better, into one if block mostly.
This keeps it out of the KiCad mode path, making that leaner and less confusing about
what is supported in KiCad mode.  Within KiCad mode, treat quoted vs. non-quoted tokens
as the two general categories, with non-quoted having sub-categories.  Eliminate  
an unimplemented, unused function declaration in DSNLEXER.
 
Improve the output formatting of THROW_PARSE_ERROR().
2013-07-01 01:47:36 -05:00
Dick Hollenbeck 44d31a1897 Speed up DSNLEXER::findToken() to such an extent that it resulted in an approximate 13% reduction
in *.kicad_pcb file loading times.
2013-06-30 20:05:40 -05:00
Maciej Sumiński 00847a8aed Colors are stored as unsigned bytes instead of floats. 2013-06-30 22:45:31 +02:00
Karl Thorén ee8901d9dd All: Fix bug #1196277 (pcbnew does not save all parts of the title block to the kicad_pcb file) 2013-06-30 19:40:33 +02:00
Maciej Sumiński 27a6f8afd6 Shaders are built-in instead of being loaded from external files. 2013-06-30 19:31:16 +02:00
Maciej Sumiński 335bf72060 More debug information in case of failure compilation of shaders. 2013-06-30 15:37:46 +02:00
Maciej Sumiński 5eb38ec232 Made shaders compatible with Intel GPUs. 2013-06-30 15:37:35 +02:00
jean-pierre charras 5c247857d3 Replace in EDA_TEXT::Draw the parameter EDA_DRAW_PANEL* aPanel by EDA_RECT* aClipBox, which is the actual parameter used by Draw.
This change make more easy to  use this function when a EDA_DRAW_PANEL canvas is not used to draw texts.
Remove dead code in worksheet.cpp.
2013-06-29 11:52:22 +02:00
Wayne Stambaugh a56d3235e3 Prevent GTK printing build error on Linux
* Do not fail to build when wxWidgets is built with either --with-gnomeprint
  or --with-gtkprint are not configured.  Only display warning.
* Move warning code from include/common.h to common/common.cpp so it only
  shows the warning once instead of every source file that includes common.h
2013-06-28 12:29:39 -04:00
Maciej Suminski bc8ea55092 VBO_CONTAINER: Changed new[]/delete[] pairs to realloc(), possibly reducing memory fragmentation and the container shrinking time. 2013-06-28 10:47:41 +02:00
jean-pierre charras 10352b1df5 Minor fixes. Gerbview: fix a collision name for GetLayout method. 2013-06-27 21:12:01 +02:00
Maciej Suminski 3f1da8b2c0 Minor code cleaning. 2013-06-27 17:31:10 +02:00
Maciej Suminski 628c069a39 Faster circles & semicircles drawing for the shaderless OpenGL backend. Removed unnecessary variables and computations. 2013-06-27 16:05:15 +02:00
Maciej Suminski 332a7b4bd9 Groups are stored in map instead of deque, so it allows easier adding & removing. 2013-06-27 11:54:49 +02:00
Maciej Suminski 58de62aacc High contrast mode with showing the selected layer on the top. 2013-06-26 16:31:52 +02:00
Maciej Suminski 1367d33cd8 Small speed up for the color change function (OpenGL_GAL). 2013-06-26 10:43:58 +02:00
Maciej Suminski db74de74f5 Added possibility to change cached layer color (for the purpose of high contrast display). 2013-06-25 17:12:54 +02:00
Maciej Suminski 0bac4a1e07 Fixed warning about a not initialized variable. 2013-06-25 16:54:30 +02:00
Maciej Suminski 0baa580b8d Added zoom in, zoom out & fit on screen view commands handling in GAL. 2013-06-25 09:15:57 +02:00
Maciej Suminski fbc3d63c24 Draw the origin marker in OpenGL with shaders GAL. 2013-06-24 16:02:18 +02:00
Maciej Suminski 978b548c64 Small improvements to SHADER class. 2013-06-24 15:40:31 +02:00
Maciej Suminski ef865aab68 Grid settings apply to GAL based rendering. 2013-06-24 14:33:02 +02:00
Maciej Suminski 81c674387e Added convertsion from wxColour to COLOR4D. 2013-06-24 10:32:08 +02:00
Maciej Suminski 08c54e8acf Passing COLOR4D parameter using constant reference. 2013-06-24 10:21:34 +02:00
Maciej Suminski f7d85691c2 Added conversion from EDA_COLOR_T to COLOR4D. 2013-06-24 10:12:36 +02:00
Dick Hollenbeck 1f9ee2e45e Support for 'initial single line comments' in the pretty footprint format.
This is limited to round tripping the lines of commented text in the
loading and saving to disk through PCBIO::Format() and PCBIO::Parse().
No editing of the comments is given.
2013-06-23 14:18:33 -05:00
Maciej Suminski 145a3f20de Changed atan2() to VECTOR2D::Angle() 2013-06-21 09:01:40 +02:00
Maciej Suminski 8552a6e29d Fixed some minor rendering issues, mostyl for shaderless OpenGL GAL. 2013-06-20 16:37:21 +02:00
Maciej Suminski fd6ab6003d Bug fixes:
- VBO_CONTAINER::allocate() was returning wrong value in case of error
- framelimiter had wrong formula for computing destined period between frames
- removed _padding field from VBO_VERTEX, as it was not speeding up, but wasting memory
2013-06-20 13:16:12 +02:00
Maciej Suminski 929a849b99 Added a framerate limiter.
Now it does not use all the CPU power while panning even on simple boards.
2013-06-20 09:58:18 +02:00
jean-pierre charras 781cc00aca Pcbnew: netlist dialog: add silent mode option, and tool tip to the 2 options (dry run and silent mode)
dialog_display_info_HTML_base: derived now from dialog_shim.
2013-06-19 18:11:12 +02:00
Maciej Suminski 83f5bd60c1 Moved fields containing information about currently used color, shader and transformation for vertices from VBO_ITEM to VBO_CONTAINER (OPENGL_GAL). 2013-06-19 10:50:46 +02:00
Maciej Suminski 4de43d7c5f Removed unnecessary functions from VBO_VERTEX. 2013-06-18 17:53:12 +02:00
Maciej Suminski 1fc0113b06 Removed unnecessary casting from VIEW_ITEM to EDA_ITEM. Added Type() function to VIEW_ITEM. 2013-06-18 17:01:23 +02:00
Maciej Suminski cd517f67db Added VBO_CONTAINER as a faster storage for vertices (OPENGL_GAL), tuned for exchanging data with GPU.
Removed a few unnecessary variables and fields from OPENGL_GAL.
Added function GAL::ClearCache() for freeing memory used by cached items.
Fixed a few memory leaks (tesselator, PAINTER's settings & VIEW_ITEM's groups).
Changed a few functions into inlines.
2013-06-18 16:20:29 +02:00
Maciej Suminski 876bf75d89 Added GAL_TYPE_NONE as an indicator of GAL uninitialized state. 2013-06-18 16:19:30 +02:00
Dick Hollenbeck 64f8e0b8e1 various 2013-06-13 06:43:29 -05:00
Alexander Lunev a3f2980d80 Fix pcad2kicad issue, from A. Lunev, and a minor code cleaning in component_references_lister.cpp. 2013-06-12 21:43:22 +02:00
jean-pierre charras 39993e27e4 Fix issue in auto panning while moving in EDA_DRAW_PANEL::OnMouseLeaving() 2013-06-10 15:23:58 +02:00
Dick Hollenbeck 36aca68e40 fix autopan non-response problem when dragging block to right or bottom 2013-06-09 13:14:01 -05:00
jean-pierre charras b1489cbe40 Remove a useless message shown only in debug mode, about page layout file not found 2013-06-09 18:50:57 +02:00
jean-pierre charras a287f89304 Custom page layout: add support for poly-polygons (useful for logos) 2013-06-08 20:19:09 +02:00
jean-pierre charras 0c5d9fa20c Fix compil issue on wxWidgets 2.8.12, created by my last commit. 2013-06-07 19:35:09 +02:00
jean-pierre charras ee6cd0883d Plot files : fix Bug #1188664 (full filename instead of short file name, and swapping between sheet path and file name) 2013-06-07 18:37:44 +02:00
Wayne Stambaugh ecbe947bc6 CvPcb pin count filtering improvement. (fixes lp:1188325)
* Add option to MODULE::GetPadCount() to exclude non-plated through holes.
2013-06-07 09:17:52 -04:00
Wayne Stambaugh 9929919b59 Fix CvPcb library filtering bug. (fixes lp:1188321) 2013-06-07 08:15:32 -04:00
jean-pierre charras c8c05cb4ee page layout: if the environment variable KICAD_WKSFILE points a S expr page layout descr, this descr is used instead of internal descr. Mainly for testing purposes.
Eeschema, dialog edit component: minor enhancement (the last selected notebook page is remembered during a session)
2013-06-07 11:49:36 +02:00
jean-pierre charras 7432d4de29 Page layout: add comments, and fix a very minor issue.
Eeschema, dialog netlist: fix a bug when removing a plugin panel, when is is not the last.
dialog netlist:Add a predefined command string for python scripts, when creating a new netlist plugin entry.
2013-06-06 20:03:29 +02:00
Maciej Suminski e7b7e0e687 Removed some debug messages. 2013-06-06 11:54:37 +02:00
Maciej Suminski 8742dae4a4 Removed indices storing from VBO_ITEM as they are always consecutive numbers. Removed storing pointers to VBO_ITEMs that have to be drawn - instead they are memcpied to mapped GPU memory.
Some functions of VBO_ITEM became inline.
2013-06-06 11:52:39 +02:00
jean-pierre charras 66f5b3d3cc Fix a minor issue in page layout default descr. 2013-06-05 17:32:24 +02:00
Dick Hollenbeck 0f1f0f92f1 downloads-by-cmake now configurable, fix wx2.8 compiler errors 2013-06-05 09:24:03 -05:00
jean-pierre charras 1ec4986422 Add info and comments about page layout description using S expressions 2013-06-05 15:21:14 +02:00
jean-pierre charras 91c3f3bc83 All: use a S expression to describe the page layout (title block and grid references). Work in progress.
This should  allow users to define their own page layout.
2013-06-05 14:03:16 +02:00
Maciej Suminski 8e1fe5d766 Changed data structure in VBO_ITEM. 2013-06-05 10:48:30 +02:00
Maciej Suminski e9ebdf2583 Upstream merge. 2013-06-05 10:01:53 +02:00
Dick Hollenbeck 3bddb98de9 Fix wierd ConfigBaseWriteDouble's Printf( wxT("%12f"), aValue ); format string
which was creating silly strings like 

  PcbTextThickness="    0.300000"

in kicad.pro files.
2013-06-04 09:44:21 -05:00
Dick Hollenbeck 94338e072f comment 2013-06-04 09:44:08 -05:00
Maciej Suminski 04b4f236be 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
Maciej Suminski 28511cf4fe Introducing shaders.
Shader's parameters are stored in VBO_ITEM. Changed VBO_ITEM data structure. Added UseShader() function for selecting shader for a given VBO_ITEM.
Added one main vertex & fragment shader program to be used for with all kinds of items (type of shader is selected using attributes that are stored in VBO). Currently available shaders are: at-least-1px-width line, filled circle and stroked circle.
Removed unnecessary param (aDepthOffset) from a few functions (OPENGL_GAL::drawSemiCircle(), OPENGL_GAL::drawLineCap()). Removed function OPENGL_GAL::DrawRoundedSegment(). Changed some asserts to debug info or error log.
2013-06-04 15:58:53 +02:00
Dick Hollenbeck 0390fbf978 speedups 2013-06-03 08:09:37 -05:00
Maciej Suminski ad5d10a8ba Display linking errors in debug mode for shaders. Added SHADER::GetAttribute() function for getting shaders attribute location. 2013-06-03 10:54:24 +02:00
Dick Hollenbeck 387d0c4e01 *) Refinements to ExternalProject_Add( boost )
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:36:40 -05:00
Dick Hollenbeck 2fc698846b *) Refinements to ExternalProject_Add( boost )
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:22:34 -05:00
Dick Hollenbeck 5c98951954 add support for exponents in dsnlexer.cpp's DSN_NUMBER token 2013-05-31 09:24:56 -05:00
Dick Hollenbeck d8f87cca3c factor out isNumber() in dsnlexer.cpp, add support for numbers with exponents, leave commented out for further testing 2013-05-30 20:20:37 -05:00
Dick Hollenbeck 0eae829b11 factor out isNumber() in dsnlexer.cpp, add support for numbers with exponents, leave commented out for further testing 2013-05-30 19:49:22 -05:00
jean-pierre charras 57b30ad254 Pcbnew: Fix Bug #1185556. fix issue about Solder Paste Ratio value which was accepting only one digit in mantissa in 3 dialogs (now 6 digits in all dialogs).
fix potential issue in .kicad_pcb file creation, in some places where a %g or %.16g format was used:
al least under Mingw/gcc4.7.2, the floating number was written using scientific notation, not accepted by the S-expr reader.
2013-05-30 21:32:00 +02:00
Wayne Stambaugh 5560cb54e2 More Pcbnew footprint library table work in progress.
* Add footprint library table loading to footprint editor.
* Overload FOOTPRINT_INFO::ReadFootprintFiles() to read footprints from the
  footprint library tables.
* Fix a bug in FP_LIB_TABLE::IsEmpty() when the table has a fallback table.
* Add code to FOOTPRINT_EDIT_FRAME to use footprint library tables.
* Add an optional build time version of PCB_EDIT_FRAME::loadFootprints() to
  populate netlist footprints from footprint library table.
* Remove adding footprints to board whenever GetModuleLibrary() is called and
  move loading locally as required.
* Add missing source file license comments and coding policy fixes.
2013-05-28 12:54:59 -04:00
jean-pierre charras 4e94d8e793 Dialog page setting: replace wxStaticBoxSizer by wxBoxSizer + static text,
because under Linux and wxWidgets 2.9, wxStaticBoxSizer are very ugly (text not readable in this dialog)
(Does not happen with wxWidgets 2.8)
Eeschema hotkeys: remove duplicate keys in key editor.
2013-05-28 11:49:53 +02:00
jean-pierre charras 2043001b0a eeschema: fix Bug #1184318 (Eeschema-Libedit: Reference moving+zooming issue)
and fix a minor issue in netlist dialog.
2013-05-28 10:05:10 +02:00
jean-pierre charras b750414561 Pcbnew: fix bug Bug #1184362 (Pcbnew losing user (custom) sheet size )
Fix minor issues in print/plot: filename not printed, sheetname incorrect in eeschema
2013-05-27 11:17:37 +02:00
Maciej Suminski e8acd2919b Added tesselation of polygons for VBO based rendering (OpenGL GAL). 2013-05-27 09:37:49 +02:00
Dick Hollenbeck 8ccf0320b4 1) Add "rules" to base of tree for copying into BZR_HOME/rules.
File "rules" has instructional text as comments near top.

2) Convert all text files in repo to LF line ending form.
   Any checkout done with "rules" in play will convert the working
   tree to native line ending, while keeping repo as LF line ending.
2013-05-25 23:36:44 -05:00
jean-pierre charras da51dbe1e0 Cvpcb fix bug #1183796 and fix bug when a fp lib is not found : the name of the missing file was not displayed in message window. 2013-05-25 17:02:16 +02:00
jean-pierre charras 38a5e9af4b 3D viewer: fix Bug #1183581 (pcbnew 3D viewer: recent UI inconsistency )
Pcbnew: fix bug in drag module: connected tracks were not dragged.
worksheet: code cleaning.
2013-05-25 11:01:44 +02:00
jean-pierre charras 8bafc54cdc Fix bug #1183802 : incorrect sheet Id (company name displayed instead of Id) 2013-05-24 16:06:58 +02:00
jean-pierre charras 7080828fe2 More about worksheet code. 2013-05-24 10:59:40 +02:00
Lorenzo Marcantonio 26f2c04f13 Make title block date field modifiable by hand. 2013-05-23 14:45:23 -04:00
jean-pierre charras 82cc923356 Worksheet code: more cleanup, and fix compil issue with wxWidgets 2.8 2013-05-23 18:38:17 +02:00
jean-pierre charras 3f38a6d89a worksheetcode cleaning and fix plot sheet filename bug under Linux. 2013-05-22 17:08:57 +02:00
jean-pierre charras 001723e077 Worksheet code: cleanup and remove useless parameters. 2013-05-22 10:45:25 +02:00
jean-pierre charras 26a3029a88 Remove duplicate code to draw and to plot title blocks. 2013-05-21 09:18:25 +02:00
Wayne Stambaugh c9be8bfdd4 Pcbnew footprint library table work in progress.
* Add code for loading, modifying, and saving the global and project
  footprint library tables.
* Add code to load MODULE objects using the footprint library table to
  the footprint viewer.
* Add static methods to FP_LIB_TABLE to support loading footprint library
  tables.
2013-05-20 10:49:20 -04:00
jean-pierre charras a8a640811b Code cleaning and move worksheet code specific to title block and frame references shape in title_block_shapes.h and title_block_shapes_gost.h 2013-05-19 21:35:49 +02:00
Maciej Suminski d45008a847 Different way of rendering groups (with a single DrawElements call) in OpenGL GAL. 2013-05-16 18:43:25 +02:00
Maciej Suminski 7a8e1fc6b4 Different way of measuring render time. 2013-05-16 17:17:35 +02:00
Dick Hollenbeck 7a5f5cb009 compiler warning from mailing list 2013-05-16 09:40:46 -05:00
Maciej Suminski 7a1718d0f5 Changed functions for adding vertices in VBO mode to make code easier to read and understand. 2013-05-16 14:47:34 +02:00
Maciej Suminski 2579fd524d Fixed time measuring functions (only for profiling in debug) 2013-05-16 13:46:00 +02:00
Maciej Suminski 733e5a55e3 Faster way of caching items for OPENGL GAL. 2013-05-16 10:35:16 +02:00
Maciej Suminski c9f9c4ddbc Added functionality for transformation of VBO vertices, extended functions like translate, rotate, scale using glm library. Removed D() macro, as it was not used, but in conflict with glm library. Added VBO_ITEMs for circles, semicircles. Now almost everything is drawn using VBO (besides polygons and grid). 2013-05-15 16:48:10 +02:00
Maciej Suminski c91b4ffbc4 Layer depth is set during items caching (so now they are rendered on proper layers). 2013-05-15 16:47:17 +02:00
Maciej Suminski a43dd351df Assured that there are no excessive initializations 2013-05-15 16:47:01 +02:00
Maciej Suminski 806dd7d8ec Items are not recached until GAL is changed (earlier it was done on every rendering backend switch). 2013-05-15 09:17:42 +02:00
Maciej Suminski e1ecd301a7 Added some debug informations. 2013-05-15 09:17:36 +02:00
Maciej Suminski 135149e2d3 Fixed build for eeschema. 2013-05-14 10:46:43 +02:00
Maciej Suminski c55e063745 Removed double freeing of some of Cairo paths. 2013-05-14 10:42:56 +02:00
Maciej Suminski 1b1216e53d Modified SetOffset (VBO_ITEM/OpenGL GAL) function. 2013-05-14 10:41:05 +02:00
Maciej Suminski a6c8beb73b Drawing tracks using PushVertices, added some comments, fixed formatting. 2013-05-14 10:38:25 +02:00
Maciej Suminski 32784ea191 Added possibility of adding multiple vertices to VBO_ITEM at once 2013-05-13 11:14:35 +02:00
Maciej Suminski bce9f685ea Fixed Cairo issues and some possible memory leaks 2013-05-13 10:55:35 +02:00
Wayne Stambaugh f78497bf4f Decouple PLOT_CONTROLLER from UI dependencies. 2013-05-10 15:22:29 -04:00
Maciej Suminski e8f33ac903 Fixed memleak, removed excessive recaching, still there is a problem with Cairo caching 2013-05-10 16:05:40 +02:00
Wayne Stambaugh b5bb56426a Fix footprint library search path bug. (fixes lp:1178427 2013-05-09 21:51:55 -04:00
jean-pierre charras 2554575656 More work on CPOLYGONS_LIST class.
Pcbnew: fix minor bug about  plot line width.
2013-05-09 21:08:12 +02:00
Wayne Stambaugh cf86e18f5c Footprint library table work, minor fixes, and code cleaning.
* Fix a bug when full file name and path are passed to FOOTPRINT_INFO::
  ReadFootprintFiles() which I created in bug fix lp:593989.
* Fix a wxString debug assertion in EDA_APP::InitEDA_Appl() when the KICAD
  environment variable is defined as an empty string.
* Add error dialog when libraries cannot be found in system search path
  when loading footprint using the select footprint dialog.
* Add footprint library name column to the EDA_LIST_DIALOG when selecting
  footprints from the list.
* Allow reading all columns from the selected row in EDA_LIST_DIALOG.
* Remove redundant sort from EDA_LIST_DIALOG constructor
* Add library name member variable and accessors to FOOTPRINT_INFO.
* Make headers translatable for Eeschema select component from list dialog.
* Add some helper methods to FPID for identifying the FPID type and validity.
* Remove a bunch of trailing whitespace and add missing license comments.
2013-05-08 16:47:23 -04:00
jean-pierre charras 2e6969fe96 More work on CPOLYGONS_LIST class. 2013-05-08 20:20:58 +02:00
jean-pierre charras 6fcd9eb8a6 Eechema: fix bug : when saving the schematic project, the lib cache was saved under the current sheet opened, not the root sheet.
Pcbnew: clamp default plot line width between 0.02 and 2 mm. the other bug (saving this parameter in internal units instead of mm is not fixed)
2013-05-07 20:32:06 +02:00
Lorenzo Marcantonio 69b7c2a1b6 Removed some spurious float casts
(explanation: float is implicitly promoted to double anyway, it's only useful
for storage; also a fp variable forces conversion of other int in the expression
without needing a cast)
Typo fixes in some comments 'floatting' -> 'floating' :D
2013-05-07 19:31:52 +02:00
Wayne Stambaugh 2be09ba9e2 Fix bug when footprint library file names contain dots. (fixes lp:593989) 2013-05-06 13:57:18 -04:00
Lorenzo Marcantonio 8430508272 Closes bug 1176915
Mass parameters in gerbers can't use scientific notation (altough some software 
allow it), so the %g format was not correct.
2013-05-06 19:47:01 +02:00
jean-pierre charras 7e2779784b Eeschema: fix incorrect move command for bitmap items. 2013-05-06 15:38:14 +02:00
Lorenzo Marcantonio d00c83cde9 Migrated the interfaces accepting angles to the double type
The plan goes like this:
- eeschema still uses int in decidegrees
- all the other things internally use double in decidegrees (or radians
  in temporaries)
- in pcbnew UI the unit is *still* int in decidegrees

The idea is to have better precision everywhere while keeping the user with int i
angles. Hopefully, if a fractional angle doesn't come in from the outside, everything
should *look* like an integer angle (unless I forgot something and it broke)

When the time comes, simply updating the UI for allowing doubles from the user should
be enough to get arbitrary angles in pcbnew.
2013-05-05 09:17:48 +02:00
Lorenzo Marcantonio cb49ca5ae2 More int casts to rounding conversions 2013-05-04 13:57:09 +02:00
jean-pierre charras b2a76062c7 All: use CPOLYGONS_LIST, a typedef of std::vector<CPolyPt> to handle a Corners Polygons List.
This is a starting point of some code enhancements relative to polygons in Pcbew and 3D viewer.
2013-05-03 19:51:10 +02:00
Lorenzo Marcantonio 78e41187b3 Moved utilities for angles in trigo.h
New conversion routines and sin/cos implementation for angles in decidegrees
2013-05-02 20:06:58 +02:00
jean-pierre charras 4ac7dd5845 3D viewer: Modify yhe way board items shapes are built:
* All items shapes  are converted to polygons.
* Polygons are merged layer by layer (for calculation time reasons,zones are not merged)
* for copper layers, vias and pads holes are substracted from polygons (but, for calculation time reasons,  not inside zones areas).
* the look is better, mainly when displaying the copper thickness
* solder and paste layers are now shown in 3D viewer.
* the code was seriously cleaned (but still needs to be enhanced).
* Note this is a work in progress which needs refinements.
2013-05-01 21:01:14 +02:00
Lorenzo Marcantonio 0e903dba5b Angle and distances cleanup (preparing for angles in doubles)
- Removed spurious int casts (these are truncated anyway and will break
  doubles)

- Applied the Distance, GetLineLength, EuclideanNorm, DEG2RAD, RAD2DEG
  ArcTangente and NORMALIZE* functions where possible

- ArcTangente now returns double and handles the 0,0 case like atan2, so
  it's no longer necessary to check for it before calling

- Small functions in trigo moved as inline
2013-05-01 19:32:36 +02:00
Dick Hollenbeck 000ec33af2 remove temporary debug printf()s I no longer need. 2013-05-01 10:49:34 -05:00
Dick Hollenbeck 9634fa5c07 fix 2 corner case bugs in specctra import 2013-05-01 10:48:00 -05:00
Maciej Suminski e9e4ed4230 Improved recaching (all items when a board is loaded), still needs some fixing (mem leak). 2013-04-30 17:55:24 +02:00
Maciej Suminski 191cb40e79 Introduction of VBO. Now only tracks are rendered in a very simple way. 2013-04-30 15:59:32 +02:00
Lorenzo Marcantonio 3b1ddd952f Removed the SAFE_DELETE macro.
In most case the assignment to null was not necessary since it was easily provable that the (local) variable wouldn't have referenced after that anyway.
2013-04-28 16:28:13 +02:00
Dick Hollenbeck ec497d5d9a Fix SVG plot with filename containing & character. 2013-04-26 21:12:57 -05:00
Wayne Stambaugh 81271ad41a Post Pcbnew NETLIST_READER change clean up.
* Tweak the NETLIST_READER code to allow for component footprint names that
  are not found in any library to generate a warning instead of an error and
  update the board accordingly.
* Don't display undo warning in netlist dialog when dry run option selected.
* Rename netlist_reader_common.cpp to netlist_reader.cpp
* Rename netlist_reader_firstformat.cpp to legacy_netlist_reader.cpp
* Rename netlist_reader_kicad.cpp to kicad_netlist_reader.cpp
* Remove cvpcb/read_write_cmpfile.cpp and move the single function it
  contained into cvframe.cpp
* Remove cvpcb/loadcmp.cpp and move the single function it contained into
  class_DisplayFootprintsFrame.cpp.
* Remove cvpcb/readschematicnetlist.cpp and move the single function it
  contained into cvframe.cpp.
* Remove cvpcb/setvisu.cpp and move the few functions it contained into
  the appropriate source file.
2013-04-26 11:11:52 -04:00
Maciej Suminski 0cd108b55d Upstream merge. 2013-04-25 18:42:27 +02:00
Maciej Suminski 3ff70deab0 Changed non-shader primitives to GL_TRIANGLES. 2013-04-25 18:30:53 +02:00
Wayne Stambaugh 61b4f8a9eb Pcbnew NETLIST_READER improvements.
* Create separate NETLIST object to hold contents of netlist files.
* Read entire netlist and footprint link files before making applying
  changes to board.
* Add BOARD::ReplaceNetlist() function to eliminate the calls between the
  NETLIST_READER, PCB_EDIT_FRAME, and BOARD objects.
* Change placement of new components below the center of the current board
  or in the center of the page if the BOARD is empty.
* Add dry run option to netlist dialog to print changes to message control
  without making changes.
* Add button to netlist dialog to allow saving contents of message control
  to a file.
* Eliminate the need to compile netlist_reader_*.cpp in both CvPcb and Pcbnew.
* Add netlist_reader_*.cpp to the pcbcommon library.
* Remove redundant load component link file code from CvPcb.
* Modify CvPcb new to work with the new NETLIST_READER object.
* Add compare() function and < and == operators to FPID object.
* Add REPORTER class to hide an underlying string writing implementation for
  use in low level objects.  Thank you Dick for the idea.
* Lots of minor coding policy, Doxygen comment, and missing license fixes.
2013-04-25 12:29:35 -04:00
Maciej Suminski 790e4c6af7 Fixed tracks drawing using Cairo backend with caching turned on. 2013-04-25 10:26:32 +02:00
Maciej Suminski b70adc5f99 Fixed color issue for stroked fonts with OpenGL backend and caching turned on. 2013-04-25 10:00:25 +02:00
Maciej Suminski dd8601cbf8 Added caching of multilayer items (storing multiple group ids for items). 2013-04-24 11:28:11 +02:00
Maciej Suminski 10dd5023e2 Removed BeginLayer and EndLayer functions. Resolved Cairo layers drawing problem in a different way. 2013-04-24 09:48:34 +02:00
Maciej Suminski bb3f3d063f wxWidgets 2.8 compatibility fix. 2013-04-23 18:20:45 +02:00
Maciej Suminski 4868af8b62 Changed view control settings to KiCad default (panning, zooming, etc.) 2013-04-23 12:07:14 +02:00
Maciej Suminski ced0d8add9 Modified shaders' source path. 2013-04-23 09:52:51 +02:00
Maciej Suminski 0a55a2b672 Fixed wheel scroll event on Windows 2013-04-22 11:08:02 +02:00
Maciej Suminski 1944fea398 Modified way of switching canvas 2013-04-22 11:07:38 +02:00
Maciej Suminski ad4a72ff11 Cairo now renders layers properly (colors are not saturated after layer composition), but slower. 2013-04-19 18:19:50 +02:00
Maciej Suminski 062fc2d200 Some cleanup. 2013-04-19 18:19:20 +02:00
Dick Hollenbeck a20c89288f hide pageFmts[] since it is no longer NULL terminated and not global 2013-04-18 13:54:03 -05:00
Dick Hollenbeck fb57b54be8 fix Lorenzo's bug introduced in rev. 4082 2013-04-18 12:03:25 -05:00
Maciej Suminski 5d704c9692 Turned on group recaching on GAL change. 2013-04-18 17:10:02 +02:00
Maciej Suminski a96c5379b3 Fixed non-GAL build. 2013-04-18 11:46:23 +02:00
Maciej Suminski e4bac0d91a Fixed resize issue (moved GAL panel into pane).
Tidied up event handlers.
2013-04-18 11:20:19 +02:00
Maciej Suminski fde71bdf33 Removed unnecessary calls to cairo drawing functions. 2013-04-17 12:50:38 +02:00
Maciej Suminski 16a28348b4 Added const(..)& in GAL methods' parameters and change iterators to constant iterators. 2013-04-17 12:48:37 +02:00
Maciej Suminski 520be6f67b Added GAL::DrawSegment for drawing rounded segments (used for drawing tracks). 2013-04-17 12:38:00 +02:00
Maciej Suminski 6cf04e6820 Fixed drawing arcs in Cairo GAL. 2013-04-17 12:33:11 +02:00
Maciej Suminski 71a1ad6ff5 Fixed drawing polygons using Cairo-based GAL. 2013-04-16 14:55:21 +02:00
Maciej Suminski 4eadf2ef47 Removed flickering in Cairo-based rendering backend. 2013-04-16 11:43:13 +02:00
Maciej Suminski bee0d69289 Cleanup 2013-04-16 11:16:27 +02:00
Maciej Suminski 01ebf03110 Inverted Y display axis while using Cairo-based rendering backend. 2013-04-15 17:59:38 +02:00
Maciej Suminski 820e6e5e16 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 5b9057823a Introduced SetGAL() functions that will allow changing GAL backend for rendering on the fly. 2013-04-15 16:03:05 +02:00
Matthew Beckler 088832b8f6 Match 'new char[]' with proper delete[] char* rather than delete char*. 2013-04-13 23:07:04 -05:00
Maciej Suminski e1fcd31381 Fixed text display using Cairo. 2013-04-12 16:41:31 +02:00
Maciej Suminski e3cb0aa36f Tesselation error fix.
Added missing callback function (combine callback).
2013-04-12 10:37:06 +02:00
Wayne Stambaugh b1144a864f wxWidgets 2.8.12 build fix 2013-04-12 09:30:18 +02:00
Lorenzo Marcantonio 65b7f23d46 Set grid color for module editor and viewer (closes #1167884)
Also removed EDA_DRAW_FRAME::OnGrid which was totally dead (empty and unused)
2013-04-11 20:29:56 +02:00
jean-pierre charras e07590f930 All: fix a minor issue in drawtext.cpp
Pcbnew: load footprint from modview: Because modview allows user to choose the footprint library, the selected library is forced when the footprint is loaded.
I am not sure this is 100% better, but this new behavior has some advantages, mainly in the footprint editor (you can load a footprint outside the selected library)
2013-04-11 19:40:20 +02:00
Maciej Suminski 877dd3f79a Added multiline strings and text overbars rendering using GAL. 2013-04-11 14:21:59 +02:00
Lorenzo Marcantonio b1c710a214 Made overbar position independant of pen size for text, to fix graphics glitches with halo text.
Slightly retuned for compensating the new position.
2013-04-10 21:09:59 +02:00
Maciej Suminski 07cd3bcb56 Upstream merged 2013-04-10 15:03:35 +02:00
Maciej Suminski 0d85444062 Fix for compatibility with wxWidgets 2.8 & 2.9 at the same time. 2013-04-10 10:09:23 +02:00
jean-pierre charras 0d41a7a523 All: fix some issues in messages to translate. Remove fully outdated files 2013-04-10 09:23:20 +02:00
Lorenzo Marcantonio 42709330e0 Better strings for the translators (converted concatenations to formats) 2013-04-09 19:49:01 +02:00
Lorenzo Marcantonio 20eaf66d5b Hunted down hardcoded pixel size thresholds for drawing
Dynamic contrast for netname and pin numbers ('halo' text)
Handle netname drawing even on diagonal tracks
2013-04-09 19:16:53 +02:00
Lorenzo Marcantonio b525e3be55 Factored out text anchor drawing
More layer classification cleanup
2013-04-09 18:00:46 +02:00
Maciej Suminski d400a25075 Modified CMakeLists.txt in order to compile Kicad with KICAD_GAL=ON for Windows
Added settings that allow to use M cross environment (http://mxe.cc) to crosscompile Kicad for Windows.
2013-04-09 16:12:18 +02:00
Maciej Suminski ef5693080f Fixed line style used for displaying texts. 2013-04-09 16:12:17 +02:00
Maciej Suminski 70769d5d46 Fixed drawing of circles in certain circumstances using OpenGL. 2013-04-09 16:12:16 +02:00
Wayne Stambaugh 477069c063 Fix compile bug in ptree.cpp with wxWidgets 2.9.x and MinGW. 2013-04-08 20:16:53 -04:00
Dick Hollenbeck 6bf3d7cdc3 Implement "KiCad s-epression" support for boost::property_tree's ptree, the 8
bit string version of property_tree. The ram resident structure of the ptree is
mostly compatible with one created using the xml_parser from
boost::property_tree, with slight differences in the way atoms are stored. The
result is you can use Format() to convert from xml to s-expression, but not the
other way around. You can write a simple s-expression beautifier in just a few
lines of code.

The main value however is the s-expression parser, i.e. Scan(), which is an
alternative to crafting a custom recursive descent parser for a particular
grammar. The tipping point depends on whether you want to read only a small
portion of a much larger document. If so, then using the ptree will likely be a
"faster to code" route. Documentation on how to navigate a ptree can be found on
the boost website and there are a number of examples in the
pcbnew/eagle_plugin.cpp file in this project. Powerful path navigation support
makes it easy to extract a subset of a ptree.
2013-04-08 16:04:45 -05:00
Maciej Suminski 664692b2e6 Added outline display mode for pads, vias & tracks 2013-04-08 10:54:31 +02:00
Maciej Suminski 850c0a8473 Added high contrast display mode using GAL rendering.
New methods in VIEW class: SetTopLayer(), EnableTopLayer() for managing the top layer display.
New method in PCB_RENDER_SETTINGS class: LoadDisplayOptions() for applying display settings like high-contrast, outline display of items, etc.
2013-04-08 10:50:47 +02:00
Lorenzo Marcantonio b739b2b075 Support for a visibility flag and color selection to NPTH holes
(when disabled they are shown as standard holes, a lot less distracting
than the previous fixed yellow color)
2013-04-07 18:20:46 +02:00
Lorenzo Marcantonio 204d085b64 More cleanup on layer code usage
Better description for entities on right click menu and panel
Typo fixes and some comment reformats
2013-04-07 13:55:18 +02:00
Lorenzo Marcantonio 150cfebb59 Fixed some tab-induced disalignments
Charras beat me on fixing the include/sch_item_struct.h include issue from 4069
2013-04-06 14:28:02 +02:00
jean-pierre charras ca4a3651c0 Gerbview, layer manager: add option (popup menu) to always keep layers not visible but the active layer, even when the active layer is changed.
Pcbnew: fix swig warning for operator EDA_COLOR_T::++  (changed to function EDA_COLOR_T:: NextColor)
2013-04-06 14:01:53 +02:00
Lorenzo Marcantonio 74a57d4ea8 Cleanup of the eeschema 'layers' i.e. entitity colours. This also fixes
the spurious warning about stuff that couldn't be seen when changing
colours.
NOTE that the 'net name' layer is present and configurable but non used 
anywhere!
2013-04-06 07:01:48 +02:00
Lorenzo Marcantonio 00f0e27851 Factored layer utility functions: classification, layer flip and mask flip 2013-04-05 21:04:58 +02:00
Lorenzo Marcantonio db09deedf7 New color palette 2013-04-05 19:23:56 +02:00
Lorenzo Marcantonio 90f2e67ed8 Typo fix 2013-04-05 17:09:04 +02:00
Maciej Suminski 52ec277592 Fixed bug of displaying stroked rectangles on wrong layer depth. 2013-04-05 15:10:58 +02:00
jean-pierre charras 752e4a4a58 All: change some texts and messages hard to translate, or not translatable (and some incorrect messages).
Pcbnew, layer manager: add option (popup menu) to always keep copper layers not visible but the active layer, even when the active layer is changed.
Usefull for multilayer ( more than 4 layers) PCBs.
2013-04-05 09:38:00 +02:00
Lorenzo Marcantonio d12a45923b More work on EDA_COLOR_T and layers.
In particular the new mechanism for handling extended color palettes is in place,
included renaming the ini keys and saving the color name instead of its index; this means better forward compatibility with palette changes.

Since ini keys are changed, colors will be reset
2013-04-04 23:35:01 +02:00
Maciej Suminski 18374e53a0 common/painter.cpp: Removed unnecessary header inclusion, added variable initialization
common/view/view.cpp: Added line to comply with coding style
2013-04-04 11:18:47 +02:00
jean-pierre charras a47d36e399 Pcbnew: fix Bug #1163201. Fix Bug #1162779. Fix incorrect comment in CMakeLists.txt. 2013-04-03 18:16:26 +02:00
Maciej Suminski a97c9a1b96 Added possibility to show/hide layers using right sidebar (PCB layer widget) in the GAL rendered view. 2013-04-02 11:02:35 +02:00
Maciej Suminski e262b32198 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
Lorenzo Marcantonio 9fd79dfa91 Implemented the LAYER_NUM typedef (LAYER was already taken as a class name...) to represent a layer number. 2013-03-31 15:27:46 +02:00
Lorenzo Marcantonio 27ee815742 Minor flags and layer mask cleanup 2013-03-30 20:55:26 +01:00
Lorenzo Marcantonio e0303a4558 - New typedef LAYER_MSK to encapsulate a layer bitmap
- Renamed ReturnMaskLayer to GetLayerMask (since it's a plain getter)
2013-03-30 18:24:04 +01:00
jean-pierre charras 51291b0965 Fix many issues in config functions, mainly a rounding issue when a double is stored in wxConfig file (was stored only using 4 digits in mantissa)
Remove dead or obsolete code.
2013-03-30 10:28:59 +01:00
jean-pierre charras d0724de1de Fix rounding issue when a double is stored in a wxConfig file (wxWidgets 2.9.4 store only 4 digits in mantissa).
A new inline function ConfigBaseWriteDouble( config, key,  double_value )  is used instead of config->Write(  key, double_value ) which store 12 digits
2013-03-29 11:14:32 +01:00
Wayne Stambaugh bf56b2b35d Fix a GOST compile error. 2013-03-28 16:49:17 -04:00
Lorenzo Marcantonio 675f8d4a0b Typedef STATUS_FLAGS to encapsulate EDA_ITEM bitmapped flags 2013-03-28 20:12:46 +01:00
Wayne Stambaugh cd18ff1762 Fix X3D patch commit coding policy issues. 2013-03-28 12:51:22 -04:00
Maciej Suminski ad4bf38e7a Added class COLOR4D that contains color representation with 4 components (RGBA) (for future usage in GAL) 2013-03-28 17:42:15 +01:00
Maciej Suminski 30e1aaec26 Replacement of classes BOX2 and VECTOR2 with their extended versions
include/vector2d.h: Removed old version
include/math/math_util.h: rescale() for VECTOR2
include/math/vector2d.h: New version of VECTOR2
include/math/box2.h: New version of BOX2
common/drawframe.cpp: Refactorization of code, so it is compatible with new classes
include/plot_common.h, pcbnew/basepcbframe.cpp: Changed header inclusion path
CMakeLists.txt: Added definition to turn on WX_COMPATIBILITY for replacement classes
2013-03-28 17:30:09 +01:00
Andrey Fedorushkov 5a5b90984a all: new Russian GOST patch - author Konstantin Baranovskiy
pcbnew: fix print format in THROW_IO_ERROR
        fix properties file export_vrml.cpp
2013-03-28 00:38:20 +04:00
jean-pierre charras e90fc3a9b2 Better fix for bug #1155888 2013-03-27 20:36:10 +01:00
jean-pierre charras 5874ac0f6f Commit patch for x3d file reader (with minor changes). Commit other minor patches and fixes 2013-03-27 19:34:23 +01:00
Wayne Stambaugh 25e7abec0d Encapsulation, bug, context menu string, and, coding policy fixes.
* Complete encapsulation of the ZONE_CONTAINER class.
* Fixed a bug in the EDA_TEXT::Format() default effects behavior due to
  improper conversion to internal units and missing test for default
  thickness.
* Improved grammar of some Pcbnew context menu strings.
* Moved some more cleverly hidden BOARD object methods into class_board.cpp.
* Lots of coding policy and documentation fixes.
2013-03-20 10:50:12 -04:00
Carl Poirier 8421cacef4 Add library column to component and module select dialog. 2013-03-18 21:25:19 -04:00
Wayne Stambaugh 7d0ec1a138 More encapsulation work.
* Complete encapsulation of the MODULE class.
* Complete encapsulation of the EDA_TEXT class.
* Encapsulate most of the ZONE_CONTAINER class.
* Add pcbcommon library as a dependency for reSWIGging the scripting
  support.  This should cover most dependency cases.
2013-03-18 15:36:07 -04:00
jean-pierre charras 53e98dede8 Last (minor) fixes for the stable version 2013-03-13 20:06:46 +01:00
jean-pierre charras 9d40727b4c Pcbnew: fix issues: Ensure pads type connector have a drill size= 0, like SMD pads. Ensure keepout zones have no net. 2013-03-10 14:59:47 +01:00
jean-pierre charras 5fc382df85 Pcbnew: Partial merge from pcad2kicad (from Alexander Lunev). Fix an old bug related to pads with offset: sometimes the connection to a zone was not detected. 2013-03-09 20:36:31 +01:00
jean-pierre charras 8306f4c65c Pcbnew: fix bug in export vrml (bad Z position of 3D shapes). Very minor code cleaning. 2013-03-08 08:29:30 +01:00
Baranovskiy Konstantin 9a131706d7 Width factor for DXF plotting text used an inverted aspect ratio. 2013-03-07 08:15:35 -06:00
jean-pierre charras fa73d54456 Pcbnew: fix strange things in module edit dialogs. 2013-03-04 13:08:35 +01:00
jean-pierre charras 7a5386a1a1 Minor fixes and cleanup 2013-02-26 12:25:30 +01:00
jean-pierre charras 4343eb5b8d Fix Bug #1132416. Minor update in templates. 2013-02-24 18:31:18 +01:00
Wayne Stambaugh 0e4bb20e3c Minor dialog and footprint ID class fixes.
* Make Pcbnew net list dialog honor escape key on Linux.
* Make Pcbnew swap layers dialog honor escape key on Linux.
* Layout and UI policy fixes for Pcbnew swap layer and net list dialogs.
* Layout and UI policy fixes for Eeschema plot dialog.
* Rename fpip.h to fpid.h.
* Fix FPID class compiler errors.
* Restore fpid.cpp to Pcbnew static library source list.
2013-02-22 15:03:00 -05:00
Baranovskiy Konstantin e37372f45f Eeschema border and title block DXF plot color bug fix. 2013-02-21 18:45:46 -05:00
jean-pierre charras 72e845b2f1 Pcbnew: plot Dialog: add a popup menu (try mouse right click in plot dialog) to selected/unselect groups of layers to plot.
All: For new zoom centering option: use Shift+Ctrl key instead of Alt key to select the new zoom centering, because Alt key has a special function under Windows.
2 very minor other changes.
2013-02-21 21:53:50 +01:00
Baranovskiy Konstantin 55526a100a DXF plot layer color bug fix. (fixes lp:1126403) 2013-02-20 15:26:34 -05:00
Wayne Stambaugh 8cd77e78f9 Minor dialog spacing, grammar, and UI policy fixes. 2013-02-18 15:14:53 -05:00
Emmeran 13972e0678 Adds zooming method for zooming relative to the crosshair instead of centering
the crosshair after zooming.

This method is only used when the ALT key is held while using the mousewheel or
if it's permanently enabled in the options dialog next to the middle mouse
button panning option.
2013-02-18 09:57:39 -06:00
Dick Hollenbeck e6df9921b1 fp lib table work 2013-02-15 19:09:53 -06:00
Jacobo Aragunde Perez af9ee9f4e7 Plot dxf format: fix issue for some non latin1 chars. 2013-02-15 12:53:16 +01:00
marco. 3217bb59a7 MacOSX: Now Arcs are shown in edit mode 2013-02-14 20:56:45 +01:00
Emmeran 226b877ab9 tabs converted to spaces except wxstruct.h 2013-02-12 04:56:46 +01:00
Wayne Stambaugh 4d465ec8a0 Configuration and compile documentation improvements.
* Improve the stable and testing build version option logic.
* Use CMake FindPythonInterp to configure the Python interpreter.
* Use Python interpreter to determine the system Python module install
  path if not already defined on the command line.
* Add header symbol checks for asinh(), acosh(), and atanh().
* Add test source to check for isinf() which can be defined as a C++template.
* Replace conditional compile on windows systems for aXXXh() with CMake
  configuration tests.
* A few minor MSVC compile fixes.
* Fix incorrect python environment string in fixswigimports.py
* Create a separate document for KiCad CMake build options.
* Create a separate how to compile KiCad on Windows document.
2013-02-10 19:41:49 -05:00
jean-pierre charras 42c2399af7 Pcbnew: Try to find a better workaround for zone fiill bug (crash or bad fil areasl in very rare cases).
pcbnew+Eeschema: Fix a very minor bug: filename not displayed in frame reference.
2013-02-09 21:03:20 +01:00
jean-pierre charras 410644343d Eeschema, Libedit: fixes color artifacts when moving/placing a pin.
Very minor other fixes.
2013-02-06 12:54:51 +01:00
Andreas Beutling 7ceb3d11f2 fix some errors in common_plotHPGL_functions.cpp 2013-02-03 18:53:48 -06:00
Emmeran 0bdf5bac72 added option to allow zooming around the crosshair instead of the center; can be enabled via options or by holding alt while using the mousewheel 2013-02-02 20:10:48 +01:00
jean-pierre charras 619125f9ab Changes for CvPcb to eeschema stuff file: the stuff file generation from CvPcb is removed. Eeschema now imports footprints names from the .cmp usual file created by CvPcb or by Pcbnew (Why to use 2 file formats for the same thing?) .
Pcbnew: in netlist dialog: The user now can choose between the netlist and the .cmp file to import footprints names.
Therfore no need to delete the .cmp file when exists to use only the netlist.
This is useful for users who use CvPcb only once to fill footprints fields in schematic, and after edit/modify the footprints fields in schematic outside CvPcb.
2013-02-02 18:39:59 +01:00
Jacobo Aragunde Perez 85562b45e8 Commit patch to fix bug 1108838 (+ fix a very minor fix in eeschema, when loading a new component) 2013-01-30 17:15:45 +01:00
jean-pierre charras 8fb8b4335a Fix bug in TestSegmentHit( wxPoint aRefPoint, wxPoint aStart, wxPoint aEnd, int aDist ), when aDist = 0. (fix Bug #1106744 ) 2013-01-27 11:06:09 +01:00
jean-pierre charras 78a8be0e8e Pcbnew: fix a very old bug in DRC, pad to pad drc tests: sometimes a test between a rectangular pad and an oval pad was skipped.
Segment Hit Test: enhanced detection near segment ends (noticeable for instance when clicking on short tracks in Pcbnew.
Remove duplicate code about segment hit test.
remove unused file.
2013-01-26 18:49:48 +01:00
Dick Hollenbeck 017fe9c4d4 fix compiler warnings with gcc 4.6.3 on x86_64 linux 2013-01-23 10:13:42 -06:00
Dick Hollenbeck 273244a196 merge in branch fp-lib-table 2013-01-20 21:27:01 -06:00
jean-pierre charras 81f9f743d3 Pcbnew: fix bug Bug #1101399 (Custom page size gets reset after restarting pcbnew) (bug also in eeschema)
Try to find a better fix for Bug #1100876
2013-01-19 10:58:25 +01:00
Jacobo Aragunde Perez 295b5b5dea Add patch from Jacobo Aragunde Perez <Log of opened and closed applications in KiCad launcher> 2013-01-18 11:42:23 +01:00
Dick Hollenbeck 00d865c173 Enhance DIALOG_SHIM to optionally call SetFocus() after the derived class's constructor has been called, for wx 2.8 and wxGTK 2013-01-18 00:04:25 -06:00
jean-pierre charras cfa75bb828 Scripting: fix erroneous extension for Sexp board files
Make scripting version compilable on platforms where the python executable is not python2 (define it by -DPYTHON_EXECUTABLE=<python executable filename>)
2013-01-16 13:38:30 +01:00
Wayne Stambaugh f8a56d446f Base object decoupling improvements.
* Improve MSG_PANEL_ITEM to handle message panel information.
* Create containers for passing message panel items between objects and
  the message panel.
* Rename EDA_ITEM::DisplayInfo to EDA_ITEM::GetMsgPanelInfo.
* Remove all direct manipulation of EDA_DRAW_FRAME from all objects derived
  from EDA_ITEM.
2013-01-12 12:32:24 -05:00
jean-pierre charras 4cb0cf6402 Commit missing files. 2013-01-10 13:20:16 +01:00
jean-pierre charras ccfd2369b9 EDA_LIST_DIALOG: add a filter option to select names to display is list, from a kamil zorychta's patch <kamil.zorychta@gmail.com>
Use wxFormBuilder to create EDA_LIST_DIALOG_BASE, like other dialogs.
Minor code cleanup (remove unused functions and coding style fixes) and minor bug fixes.
2013-01-10 13:18:43 +01:00
Jacobo Aragunde Perez f914cd0dec Eeschema:commit patch <Prevent Eeschema from opening the same file twice> with a small fix for windows. 2013-01-04 13:06:50 +01:00
Dick Hollenbeck 7ae228d70e add eagle *.lbr lib path extension for future use 2013-01-03 10:33:22 -06:00
jean-pierre charras 5436798e51 Kicad: Fix compil issue under Linux, and minor code cleaning, about wxFileWatcher 2013-01-02 22:49:56 +01:00
Wayne Stambaugh 6789e62210 Fix Pcbnew s-expr file parser bug. 2012-12-30 10:40:05 -05:00
Alexander Lunef 40f4304b2f Pcbnew: Add pcad2kicad pcb plugin, to import PCAD boards ( .pcb ASCII data file PCad 2000 format ) from Alexander Lunef 2012-12-29 10:54:25 +01:00
Wayne Stambaugh 7c86749ca6 Add Pcbnew GEDA PCB module plugin support.
* Create new GEDA PCB plug in.
* Add support for opening GEDA PCB footprints with module editor.
* Make import footprint file dialog remember last selected footprint
  type during current session.
* Update module editor file import to use new GEDA PCB plug in.
* Let IO_MGR know about GEDA PCB plug in.
* Create a WHITESPACE_FILTER_READER to simplify parsing GEDA PCB footprint
  files.
2012-12-28 15:52:12 -05:00
jean-pierre charras 8653e362b2 Pcbnew: board editor: allows pad edition by hotkey 'E' (was accessible only by mouse button right click)
All: minor code cleaning and very minor bug fixes.
2012-12-27 17:42:41 +01:00
Dick Hollenbeck 79b4846200 Switch over to *.kicad_pcb format as the default BOARD format.
Add KiCadPcbFileExt global.
2012-12-14 10:54:54 -06:00
Wayne Stambaugh 312254bc8a Fix minor version information text formmatting error. 2012-12-12 11:52:24 -05:00
Dick Hollenbeck f477464f77 embellish fp_lib_table editor with beginnings of cut, copy, paste 2012-12-09 14:51:42 -06:00
Dick Hollenbeck 9a806749ea change spelling to jive with my email on developers list 2012-12-08 23:34:12 -06:00
Dick Hollenbeck 063907211e more fp_lib_table work, enhance parser 2012-12-08 17:58:03 -06:00
jean-pierre charras 1671432ac1 All: Fix an usually unwanted behavior in kicad: When closing a dialog (mainly ERC, DRC and recently a component selection by the library viewer on a double click) the mouse release left button event (which is seen by the parent after closing the dialog, becuse it is actually made in the parent) generate an unwanted command (item selection, component place ...)
This event can be now skipped if needed by calling  EDA_DRAW_FRAME::SkipNextLeftButtonReleaseEvent() from the dialog.
Very minor other fixes
2012-12-07 11:05:19 +01:00
jean-pierre charras 14fcf7f933 Try to fix an unwanted left mouse release button event, when closing a dialog on a click or double click,
and therefore when the mouse butoon is released in the parent window
Minor other fixes.
2012-12-06 22:53:00 +01:00
marco. 52541cc10c MacOSX: cleanups 3817 & completes 3820 2012-12-06 19:08:34 +01:00
jean-pierre charras affbb8a8e0 Pcbnew: minor coding style fixes. Very minor fixes. Minor enhancements. Fix bug #1085523 2012-12-02 12:38:00 +01:00
Dick Hollenbeck 6ad94a4912 merge in evolving fp lib_table work 2012-11-28 09:24:53 -06:00
Dick Hollenbeck 98086a8891 Change READ_LINE classes to use less virtual functions, and READ_LINE::ReadLine() to return char*
which can eliminate a subsequent call to READ_LINE::Line() for a small performance gain.
2012-11-27 07:50:01 -06:00
Dick Hollenbeck 7f84f6aeb1 Another constructor for FILE_LINE_READER which enables more consistent file open strategies, and only call setvbuf() when the file is at position 0 2012-11-27 06:33:12 -06:00
Dick Hollenbeck 2aa27122b0 Eliminate many assumptions in Pcbnew's library manager, pertaining to locality of libraries and
their type, by using the more abstract PLUGIN::Footprint*() functions.

This is an intermediate phase only, other changes will be necessary as library table support comes in.
Encapsulate usage of library path searching, since that will go away as library table support comes in.
Add FOOTPRINT_EDIT_FRAME::{get,set}LibPath() and FOOTPRINT_EDIT_FRAME::{get,set}LibNickName() functions
to provide this encapsulation.
2012-11-19 10:19:38 -06:00
Dick Hollenbeck a93637b14f remove -std=c++0x compiler option since nobody is ready for it, and accordingly back into auto_ptr from unique_ptr 2012-11-15 10:04:10 -06:00
Dick Hollenbeck 9bbff22d96 1) Switch to boost hashtable support from wx macros which did not handle std::string.
This required the additional compiler command line option "-std=c++0x".

2) Switch to unique_ptr from auto_ptr which is C++ deprecated.

3) Change to new English layer names per mailing list discussion, see class_board.cpp.

4) When saving to *.kicad_pcb or *.kicad_mod, identify opportunities to use wildcard
   layer sets, for pads so far.

5) Switch to two std::string hashtables in pcb_parser.cpp, away from one wxString based one
   for layer names and layer sets mapping. One hashtable holds the mask, the other the index.
   Layer sets are only in the mask table.

6) Move "LOCALE_IO toggle" into PCB_IO::Format() since it is a public API function and
   caller should find it as convenient as possible to use.  LOCALE_IO should handle
   nesting OK in the case where public Format() is called from one of the Footprint*()
   functions.

7) Drop support for "export module to new library".  Creating new libraries will have to
   be handled in concert with library table entries, and we've talked recently about
   creating a better footprint library manager, one that resides in a DLL/DSO.  So
   this kind of functionality needs to be handled in there in the near future.

8) Change name of exported PCB_IO module/footprint to *.kicad_mod and not *.emp.
2012-11-14 01:15:59 -06:00
Dick Hollenbeck 4612ef9d50 switch to new s-expression format for footprint exports, use english layernames for naked footprints, dodge conflict with pythons HAVE_GETC_UNLOCKED 2012-11-10 00:39:18 -06:00
Dick Hollenbeck 272936ef21 populate PCB_PARSER::m_layerMap with English layernames so footprints
can be parsed, since they do not have an overriding layer name map
like a BOARD does.

Avoid doubly looking up hashtable entries in m_layerMap.

Minor code reformatting.
2012-11-09 00:58:00 -06:00
jean-pierre charras 96a77d7618 Pcbnew: Add a min width parameter to plot solder mask layers.
* If this param is set to 0, the previous behavior is used.
* Else the solder mask is plotted as polygon, with shapes near than  this min width value are  merged.
Pcbnew in nanometer version: fix a serious rounding issue due to the fact dialogs were using 4 digits for mantissa.
* This is not enough for nanometer coordinates ( 8 are needed to display a value in inches),
*  so sometimes after closing a dialog, some coordinates were modified, although no new value was entered.
Minor other bug fixed.
2012-11-06 18:58:53 +01:00
jean-pierre charras 703293fa30 Add a min width parameter to plot solder mask layers. 2012-11-05 21:20:34 +01:00
Dick Hollenbeck 7c5e42b4d0 switch from STREAM_OUTPUTFORMATTER to FILE_OUTPUTFORMATTER mostly throughout,and minor richio factoring 2012-10-25 10:41:20 -05:00
Wayne Stambaugh 58ae2e1920 Add missing scripting build flags to EDA_BASE_FRAME::CopyVersionInfoToClipboard. 2012-10-25 10:27:35 -04:00
Dick Hollenbeck d32333a012 streamline the FILE_OUTPUTFORMATTER API for ease of use 2012-10-25 02:10:59 -05:00
jean-pierre charras 292c1f0912 Kicad: bug fix in menubar when changing the selected locale.
fctsys.h: remove useless define.
Fix minor issues and add minor enhancements.
2012-10-18 21:31:40 +02:00
Dick Hollenbeck 58299fc921 more fp_lib_table work 2012-10-17 10:12:17 -05:00
jean-pierre charras f03b9048fe Fix a minor compatibility issue in .pro file for new boards, between decimils and nanometers versions of Pcbnew. 2012-10-17 12:57:21 +02:00
Dick Hollenbeck 69dbeab90f decouple wxGridTableBase from FP_LIB_TABLE, this was poor information hiding 2012-10-16 20:00:25 -05:00
Dick Hollenbeck fb43f4ad6f fp_lib_table dialog work 2012-10-16 01:56:57 -05:00
Dick Hollenbeck 80693fa7c1 add dialog for fp_lib_table 2012-10-15 17:37:08 -05:00
Dick Hollenbeck ae19bbfa33 add dialog for fp_lib_table 2012-10-15 17:30:01 -05:00
Wayne Stambaugh b1ea9d0eb5 Minor FP_LIB_ID object changes. 2012-10-15 16:48:01 -04:00
Dick Hollenbeck 0dc4d9c19e Commit Dick's changes to the FP_LIB_TABLE object. 2012-10-15 12:19:42 -04:00
Wayne Stambaugh 77e1a4c03c Initial commit of footprint library table code. 2012-10-14 21:38:32 -04:00
jean-pierre charras 621a43c4ad Eeschema: always stores sheet filename in unix-like notation, and fix a bug when editing sheet file name.
Pcbnew: add PDF format  for drill map generation.
Plotter classes: tweaking code.
2012-10-13 20:54:33 +02:00
marco. eee9738755 OSX: Corrected issue with Menus, workaround/fix for an issue with Mountain Lion 2012-10-13 20:23:03 +02:00
Wayne Stambaugh 87e773b6f6 Add Boost version to EDA_BASE_FRAME::CopyVersionInfoToClipboard(). 2012-10-09 11:31:55 -04:00
Wayne Stambaugh c11f3407b8 Check for getc_unlocked() and fall back to getc() in richio if it's not available. 2012-10-09 10:31:36 -04:00
Dick Hollenbeck bb383e22b3 optimize isSpace for negative 8 bit bytes 2012-10-08 15:01:17 -05:00
Dick Hollenbeck 56796a950c *) Use fgetc() technique to avoid strlen() in FILE_LINE_READER::ReadLine(),
which was having difficulty with embedded nuls in files coming from PCAD.

*) Make dsnlexer.cpp's isSpace() treat nuls as whitespace.
2012-10-08 14:34:46 -05:00
Dick Hollenbeck fdc7e9a818 Commit Dick's INPUTSTREAM_LINE_READER patch. 2012-10-07 17:26:41 -04:00
Wayne Stambaugh 1468a4ae31 Pcbnew s-experssion footprint library implementation.
* Add footprint methods to PCB_IO.
* Add FP_CACHE and FP_CACHE_ITEM for handling new footprint library design.
* Add code to save legacy libraries in new format.
* Change behavior of BOARD_ITEM::GetLayerName() to return the default layer
  name when the item does not have a BOARD as a parent.
* Minor changes to the module output formatter when writing to module library
  files (no BOARD as parent).
* Add new (and some that I forgot along the way) CMake flags to
  EDA_BASE_FRAME::CopyVersionInfoToClipboard().
* Add -Wno-narrowing to GCC flags to stop GCC 4.7 from complaining about
  a conversion from int to unsigned in the Boost polygon library.
* Add INPUT_STREAM_READER to richio.cpp to allow using any object derived
  from wxInputStream as a LINE_READER (needs to be validated).
2012-10-07 11:37:25 -04:00
jean-pierre charras c41bb774e4 Pcbnew: drill files creation: better dialog to create driil files, map files and report file. Code cleaning 2012-10-05 14:25:12 +02:00
jean-pierre charras 5951a7f9bc Pcbnew: fix an issue when collecting vias (for instance when left clicking on a via, it was not always detected)
This bug was mainly noticeable when using buried vias (some were never detected)
Minor other fixes (typos, strings hard to translate ...)
2012-10-04 19:47:28 +02:00
jean-pierre charras 7c0af1bf9d More dialogs derived from DIALO_SHIM 2012-10-04 08:57:15 +02:00
jean-pierre charras 143af26952 Eeschema: code cleanup, remove dead code and some global and useless variables 2012-09-28 19:47:41 +02:00
marco. 92f8f006fa MacOSX - Fixed some issues launching bundles/binaries 2012-09-26 00:33:42 +02:00
jean-pierre charras cc47e88b9e Pcbnew, plot functions: fix bug in SVG plotter, fix a minor other bug when using PS plotter (trcak width fine adjust not working)
and plot code cleaning continued
2012-09-24 08:39:59 +02:00
jean-pierre charras b660b033ad All: remove macros MAX, MIN, ABS from macros.h and replace these macros by std::max, std::min and std::abs (mainly found in old code). 2012-09-22 13:19:37 +02:00
jean-pierre charras 9e0960615a 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
Craig Southeren 436c17f60b This fixes a MSVC compile error caused by a static scalar initialiser. 2012-09-20 08:54:35 -05:00
jean-pierre charras 5179ed926b eeschema: plot functions: code cleaning.
SVG plotter: fix issues in draw arc and draw rectangle.
2012-09-18 16:50:30 +02:00
jean-pierre charras c3ecce2ec6 Eescheam: plot HPGL: add comments and minor fix. 2012-09-18 10:39:56 +02:00
jean-pierre charras 16064881be Eeschema: Plot dialogs: unify 5 dialogs (which means 5 duplicate code) to only one plot dialog (like in Pcbnew)
clean duplicate code.
Simplify HPGL dialog: plot offet removed and replace by only one option (plot origin to center of sheet or not)
This is surely enought.
2012-09-17 19:42:27 +02:00
jean-pierre charras a9744e3f84 Pcbnew: added: SVG plotter. Need refinements, but works.
Mainly to plot drill maps, but can be used to plot boards, for documentation.
The print svg still exists, but the plot SVG has more options (mirroring, holes in pads),
however  print svg allows color print, and full board printing, and plot does not.
2012-09-15 14:13:03 +02:00
jean-pierre charras 93ebdb2cd0 All: better code to handle opened frames libview, libedit, modview, modedit.
Other minor fixes.
2012-09-12 11:53:11 +02:00
jean-pierre charras b810135e4e Code cleaning, minor fixes and minor coding style fixes. wxWidgets 2.9.4 compatibility fix( deprecated function MakeModal ) 2012-09-11 21:03:21 +02:00
jean-pierre charras bb6795ddf1 Pcbnew: drag functions: serious cleanup and better code. Use now the connectivity functions to find tracks connected to pads,
and therefore  tracks are now dragged when a end point is inside a pad, not necessary on the pad position.
However, drag functions still need more cleanup.
2012-09-11 09:33:17 +02:00
jean-pierre charras 3668f4ccc3 Pcbnew: cleanup functions: now, cleanup uses same algorithm as connectivity calculations to detect pads connections, and is faster.
therefore tracks which have a end point inside a pad, but not necessaryexactly  to the pad position are seen as connected, and are no more removed.
Side effect: reconnect to pads option is removed, because it is useless.
TODO: use this algorithm in drag functions.
Minor other fixes
2012-09-07 21:29:44 +02:00
jean-pierre charras 05dc1bbf3d fix compil errors 2012-09-02 18:38:52 +02:00
Lorenzo Marcantonio 34c74d17b4 Probable fix for compilation under wx 2.9 (doesnt hurt anyway) 2012-09-02 16:13:50 +02:00
Lorenzo Marcantonio e771112259 Enforced EDA_COLOR_T type and minor const-ification 2012-09-02 14:06:47 +02:00
Lorenzo Marcantonio 3157b4d188 Enforced EDA_COLOR_T type and minor const-ification 2012-09-02 13:01:12 +02:00
Lorenzo Marcantonio 082d901d60 Encapsulated drawmode as an enum for type checking 2012-09-01 15:38:27 +02:00
jean-pierre charras 92b43c7407 Fix 0 length segment in outline zone creation, that breaks zone chamfer option. 2012-08-31 15:58:23 +02:00
jean-pierre charras 37ee239449 Pcbnew: in SVG export, add option to export only the board area, not the full page.
dialog plot functions: fix compil warnings with wxWidgets 2.8
2012-08-31 09:43:37 +02:00
Lorenzo Marcantonio fef8347176 Script plotting patch 2012-08-29 18:59:50 +02:00
jean-pierre charras 79d55c0460 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
Dick Hollenbeck 0c4c65d7a2 wxServer was a confusing define, since it is also a wxWidgets class, do not use it 2012-08-24 06:31:09 -05:00
Gregor Riepl 96771ccc03 The listener is opened on INADDR_ANY, so it will accept any network
connection, no matter if it is originating locally or from the outside
of the host. There is no check in place to discard non-local
connections. The only security against a malicious attack would be
provided by a local firewall, which is not guaranteed to be installed on
every workstation kicad is used on.

I tested this, and a host running eeschema accepts connections on TCP
port 4243 from other hosts on the internet.

A patch to remedy this potentially serious security hole is attached. It
creates the listener on localhost instead. A flag is provided to allow
the creation of sockets on 0.0.0.0 instead, if required. localhost is
the default.
2012-08-24 06:19:52 -05:00
jean-pierre charras b19cc14ef2 3d-viewer and polygon functions: remove duplicate code about conversion from basic shapes to polygons. 2012-08-23 21:15:58 +02:00
Dick Hollenbeck 367bfb4e14 fix problem with eeschema print dialog showing up on missing monitor 2012-08-15 12:55:48 -05:00
jean-pierre charras 1f277fd66d Remove Kbool from Kicad. Use Clipper instead. 2012-08-04 11:43:27 +02:00
Miguel Angel Ajo 9259b21ffa Footprint wizard converts from user units to internal units back and forth, so user can type in mm or mils now 2012-07-23 00:23:17 +02:00
Miguel Angel Ajo 5d0dee1364 Adam Vašíček patches for WIN32 compilation of kicad scripting 2012-07-22 14:15:38 +02:00
Marco Mattila 9e20800f8c Fix axis offset issue in pcbnew gerber circular interpolation. 2012-07-18 22:32:47 +03:00
Miguel Angel Ajo 863c1b4823 Merged with testing 2012-07-15 22:38:25 +02:00
Marco Mattila 5a6c088bd9 Use circular interpolation for circles and arcs in pcbnew gerber plots. 2012-07-15 20:28:52 +03:00
jean-pierre charras f20bf0d217 Pcbnew: more about keepout areas: remove keepout for pads option and add keepout for copper zones option.
Export keepout to Specctra DSN file.
2012-07-14 18:27:25 +02:00
jean-pierre charras 018b080001 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
l. 8234b9e184 All: Fix Assertion on sheet properties, in debug mode 2012-07-11 10:02:47 +02:00
jean-pierre charras af0d21474d Pcbnew: commit Lorenzo Marcantonio's patch for THT thermals (added loading/saving using S. expr).
Fix incorrect import of smd pads from Gpcb.
Very minor change in dialog print.
2012-07-09 09:10:07 +02:00
Jean-Pierre Charras 1b08d1874f Commit JP's custom page size fix for Pcbnew s-expressions file format with minor changes. Thanks JP. 2012-06-25 19:52:57 -04:00
jean-pierre charras 0c946870c5 All: fix a truncation issue in ReturnValueFromString that creates sometimes a small error for values entered in dialogs.
Pcbnew: fix a compatibility issue with nano version for zones parameters.
2012-06-25 22:59:19 +02:00
Miguel Angel Ajo db427cb2cd merge with lp:kicad 2012-06-25 22:51:19 +02:00
Wayne Stambaugh 4019284e66 Minor Pcbnew s-expression improvements.
* Put text effects on a single line.
* Remove size token when defining drill sizes.
* Don't save net in pad definition when pad has no connection.
2012-06-23 21:19:41 -04:00
jean-pierre charras 3a8bf14c9f Fix an issue (only found using gcc under mingw) in dsnlexer.cpp, using ::isspace( ) function that accepts only a 7 bit ASCII value under gcc/ mingw. 2012-06-20 22:33:05 +02:00
jean-pierre charras 025d550955 Pcbnew: small cosmetic enhancement: add a bitmap for zone duplicate command. 2012-06-20 11:57:36 +02:00
Wayne Stambaugh 8c72db6631 Pcbnew s-expression file parser bug fixes and file size improvements.
* Use index when saving layers to handle translated layer names.
* Add LOCALE_IO switcher when loading s-expression format.
* Make SEGVIA default to through hole to improve file size.
* Don't save default orientation of 0 degrees in TEXTE_MODULE and TEXTE_PCB.
* Don't save default zone configuration parameters.
* Save multiple zone corners on a single line.
* Fixed missing ( check in graphic and module arc parsers.
* Consistency improvements for DRAWSEGMENT and EDGE_MODULE objects.
* Minor tweaks to D_PAD formatting.
2012-06-16 18:49:24 -04:00
Wayne Stambaugh 3b2be428f4 Pcbnew s-expression file parser bug fixes.
* Change save order of drawings to match legacy file format object order.
* Set end point of SEGVIA to start point so the round trip back to legacy
  format is the same.
* Fixed bug saving and loading oval pad drill parameters.
* Fixed bug saving and loading rectangular pad deltas.
* Fixed missing layer for PCB_TARGET.
* Fixed EDA_TEXT italic bug.  Thanks Dick!
* Remove some left over debug logging statements.
2012-06-13 19:04:42 -04:00
Dick Hollenbeck a71857baaa Commit Dick's Pcbnew s-expression file parser bug fixes.
* Apply Dick's patch along with a few minor changes to fix some clashes with
  changes in my branch.  Thanks Dick!
* Added missing DRAWSEGMENT line angle.
* Fix thru hole pad layer mask issue.
2012-06-10 20:47:15 -04:00
Wayne Stambaugh 2d0d805014 Add Pcbnew s-expression file parser.
* Add s-expression file parser object and keyword files.
* Fix minor issues with s-expression file formatting.
* Fix a minor bug the zone container fill state parsing in the legacy plugin.
* Move EDA_TEXT visibility definition to eda_text.h.
* Add minor BOARD_ITEM object improvements to support s-expression file
  parser.
2012-06-09 13:00:13 -04:00
jean-pierre charras de471744cd Fix some minor bugs in plot functions 2012-06-09 11:38:58 +02:00
jean-pierre charras 7f07b48e88 Pcbnew: Update incorrect or incomplete copyrights in many files.
Minor code cleaning in autoroute files.
2012-06-08 11:56:42 +02:00
Miguel Angel Ajo b5c0cada0d merges tip, conflict resolved 2012-06-03 22:21:53 +02:00
Miguel Angel Ajo 30e251bfba merge 1 with tip 2012-06-03 22:06:51 +02:00
Dick Hollenbeck b3fd915f59 add translation to static file filters, comments 2012-05-30 09:14:42 -05:00
Dick Hollenbeck b68fa7cdfd generalize the BOARD loading process PCB_EDIT_FRAME::LoadOnePcbFile() to use any supported PLUGIN 2012-05-29 16:01:17 -05:00
Lorenzo Marcantonio 28bcad847e Rename BASE_SCREEN member m_NumberOfScreen to m_NumberOfScreens. 2012-05-26 20:19:12 -04:00
Lorenzo Marcantonio 925774760c Rationalize numeric time stamps to type time_t. 2012-05-24 21:52:04 -04:00
jean-pierre charras 4812968129 Eeschema: Fix a minor issue in block command
Very minor code cleaning
2012-05-20 21:18:06 +02:00
Dick Hollenbeck 5cda6bc1a6 eagle plugin first work 2012-05-20 08:14:46 -05:00
jean-pierre charras 30c7e31839 Very minor fixes. 2012-05-19 21:04:03 +02:00
Dick Hollenbeck ffd57d88d7 move all hashtable declarations into include/hashtables.h, prepare for boost usage 2012-05-15 21:00:25 -05:00
henner zeller 42f1b9e415 commit patch from henner zeller (make EDA_LIST_DIALOG resizable) 2012-05-14 17:23:20 +02:00
jean-pierre charras 40c5a46f38 Libedit: fix Bug #994014.
Pcbnew: fix Pcbnew name capitalization in messages.
About dialog: add a link to kicad-pcb.org
2012-05-13 17:31:58 +02:00
jean-pierre charras f6551172d2 Fix capitalization issues in title bar and config files (broken by bzr rev 3543) 2012-05-10 08:25:27 +02:00
Dick Hollenbeck 2e0941a1de Fix some comments. Enhance LEGACY_PLUGIN such that it can tolerate, then fix bad legacy footprint libraries containing duplicate footprint names.
This may have been an undocumented bug from more than a year ago, which manifested itself in *.mod files containing duplicate names.
LEGACY_PLUGIN loads those now quietly, but appends "_v2", "_v3", etc. to each succeeding duplicate sharing the same name.
2012-05-08 19:26:15 -05:00
Dick Hollenbeck 6824dc7199 this helps zooming on some window types 2012-05-08 16:09:18 -05:00
Dick Hollenbeck 40ccdd5763 Fix Pcbnew markers in nanometer build with proper scaling factor. Use double in Zoom() 2012-05-07 16:47:25 -05:00
Dick Hollenbeck fb9e1ea010 Make drawframe.cpp's StatusBar use field widths which are dynamically determined
base on expected text and current window font.

Expand the virtual world to 2.14 meters in the nanometer build of PCBNEW.
This seems to be holding up for now.
2012-05-06 18:32:01 -05:00
Dick Hollenbeck 86e04b4fb3 more nanometer work, see comment at line 66 of pcbnew/classpcb.cpp 2012-05-06 15:10:43 -05:00
Jerry Jacobs 5f5c504288 Cosmetic UI changes mostly for Mac OS X, see CHANGELOG.txt 2012-05-05 18:02:09 +02:00
Dick Hollenbeck 173c93969d Remove zip library by switching to wxZlibOutputStream for PDF plotter.
Delete LEGACY_PLUGIN cache after deleting library of same name.
Remove automatically generted freerouter help header.
Add Normalize() to BOX2.
Clamp some values in the virtual space of drawframe.cpp
2012-05-04 23:55:36 -05:00
jean-pierre charras 4125ea7789 Gerbview: remove dependencies from Pcbnew.
Should allow Pcbnew code easier to change and Gerbview code more understandable and easier to maintain.
Code cleaning (remove dead code, add comments).
Minor other enhancements.
2012-05-04 19:44:42 +02:00
jean-pierre charras 684d98ecca Add missing files 2012-05-03 21:08:14 +02:00
jean-pierre charras 61acac28e1 Add patch from Lorenzo Marcantonio. Fix some warning issues, and zlib issue under Windows (zlib sources added) 2012-05-03 20:37:56 +02:00
Miguel Angel Ajo f35037238c merged to testing, fixed some scripting imports 2012-04-30 18:05:22 +02:00
Dick Hollenbeck 3fa7c200b7 Add tools/parser_gen.cpp which is the beginnings of an s-expression parser
generation tool.  For now, it is just an s-expression beautifier using
our "non-specctra mode" version of s-expressions.
2012-04-29 21:57:48 -05:00
jean-pierre charras e96f1aeb3d Remove valeur_param(), that does not work in Kicad Nanometer 2012-04-27 16:15:11 +02:00
jean-pierre charras 758f22161a All: change MILS_TO_IU_SCALING_FACTOR constant to IU_PER_MILS ( and MM_TO_IU_SCALING_FACTOR to IU_PER_MM)
Also fix bug 985654.
2012-04-26 23:34:20 +02:00
jean-pierre charras 3b671e09d1 All: change MILS_TO_IU_SCALING_FACTOR constant to MILS_PER_IU ( and MM_TO_IU_SCALING_FACTOR to MM_PER_IU)
Also fix bug 985654.
2012-04-26 22:21:31 +02:00
jean-pierre charras fa3ebc4043 Define MM_TO_IU_SCALING_FACTOR (scaling factor from mm to internal units) only in convert_to_biu.h
Other scaling factors (MILS_TO_IU_SCALING_FACTOR and DECIMILS_TO_IU_SCALING_FACTOR)
also defined only in convert_to_biu.h.
Allows different scaling value for Gerbview.
Needs more tests.
2012-04-25 21:33:24 +02:00
Dick Hollenbeck 2140efdce3 Somebody else spelled rectangle as badly as me, fix the mingw build 2012-04-23 21:39:56 -05:00
Dick Hollenbeck 33616f3051 * Add DRECT, DPOINT, and DSIZE (double rect, point, and size) using Torsten's vector2d.h
as a starting point
* Make double Distance() take double arguments and remove internal range checking.
* Start on EDA_DRAW_FRAME::AdjustScrollBars() and use "double" for most all calculations
  in anticipation of setting INT_MAX INT_MIN limits eventually.
2012-04-23 16:56:26 -05:00
Miguel Angel Ajo d719282aaf wxArrayString typemaps, class missing yet 2012-04-23 08:59:37 +02:00
Wayne Stambaugh d8b60a14e1 Pcbnew s-expression file format improvements.
* Move board item object Format() functions into PCB_IO object.
* Change file format to use layer names instead of numbers.
* Change file extension to kicad_pcb.
2012-04-22 11:16:39 -04:00
Miguel Angel Ajo aef92a345c Merged to testing, needs some fixes 2012-04-21 22:04:02 +02:00
Dick Hollenbeck e594732646 missing include 2012-04-19 15:07:36 -05:00
Dick Hollenbeck c24863c078 // Dick Hollenbeck's KiROUND R&D
// This provides better project control over rounding to int from double
// than wxRound() did.  This scheme provides better logging in Debug builds
// and it provides for compile time calculation of constants.


#include <stdio.h>
#include <assert.h>
#include <limits.h>

//-----<KiROUND KIT>------------------------------------------------------------

/**
 * KiROUND
 * rounds a floating point number to an int using
 * "round halfway cases away from zero".
 * In Debug build an assert fires if will not fit into an int.
 */

#if defined( DEBUG )

// DEBUG: a macro to capture line and file, then calls this inline

static inline int KiRound( double v, int line, const char* filename )
{
    v = v < 0 ? v - 0.5 : v + 0.5;
    if( v > INT_MAX + 0.5 )
    {
        printf( "%s: in file %s on line %d, val: %.16g too ' > 0 ' for int\n", __FUNCTION__, filename, line, v );
    }
    else if( v < INT_MIN - 0.5 )
    {
        printf( "%s: in file %s on line %d, val: %.16g too ' < 0 ' for int\n", __FUNCTION__, filename, line, v );
    }
    return int( v );
}

#define KiROUND( v )    KiRound( v, __LINE__, __FILE__ )

#else

// RELEASE: a macro so compile can pre-compute constants.

#define KiROUND( v )  int( (v) < 0 ? (v) - 0.5 : (v) + 0.5 )

#endif


//-----</KiROUND KIT>-----------------------------------------------------------

// Only a macro is compile time calculated, an inline function causes a static constructor
// in a situation like this.
// Therefore the Release build is best done with a MACRO not an inline function.
int Computed = KiROUND( 14.3 * 8 );


int main( int argc, char** argv )
{
    for( double d = double(INT_MAX)-1;  d < double(INT_MAX)+8;  d += 2.0 )
    {
        int i = KiROUND( d );

        printf( "t: %d  %.16g\n", i, d );
    }

    return 0;
}
2012-04-19 01:55:45 -05:00
Dick Hollenbeck 72d4b2353b uncrustify math_for_graphics, add copyright legacy_plugin.h 2012-04-17 09:18:14 -05:00
Dick Hollenbeck 597833b55e touch ups 2012-04-17 01:13:22 -05:00
Dick Hollenbeck e88bc8e58b LEGACY_PLUGIN is now in full use:
*) for footprint access into *.mod files and 
*) BOARD save/load

The item_io.cpp and ioascii.cpp have been set off to the side for reference
as *.notused, for awhile.

The CMake options USE_NEW_PCBNEW_LOAD and USE_NEW_PCBNEW_SAVE are gone,
this is now the mandatory usage of the LEGACY_PLUGIN.  This should reduce
code maintenance for awhile until the s-expression plugin comes into 
play.  But at least for legacy format, there is not two code bodies
to maintain any more.

A new LEGACY_PLUGIN footprint library caching scheme is in place which 
needs some testing.  It should not be any faster, but might give better 
results in a networked environment if there is *.mod files on the server.
2012-04-16 22:12:53 -05:00
Dick Hollenbeck 3341669fc6 more footprint support for LEGACY_PLUGIN 2012-04-16 20:35:43 -05:00
Wayne Stambaugh bf5802f1f7 Removal of internal units.
* Remove internal units from BASE_SCREEN and it's derivatives.
* Remove internal units from EDA_DRAW_FRAME and it's derivatives.
* Use build time code to replace internal units conversions.
* Fix scaling bug in page layout sample window that I created in my
  last commit.
2012-04-16 19:31:29 -04:00
Wayne Stambaugh 6468805c27 More internal unit improvements.
* Move all convert from user to internal units into base_units.cpp.
* Remove internal units parameters from all moved conversion functions.
* Revise all source code that calls the moved conversion functions.
* Remove internal units from all dialog text control helper classes.
2012-04-16 13:39:32 -04:00
jean-pierre charras 5d5eb7d38c Fix a serious bug in EDA_RECT::Intersects
Kicad manager: code cleaning. Dead code removed and minor fixes. support of new .kicad_brd extension.
2012-04-16 14:56:01 +02:00
Dick Hollenbeck a42490e0f3 work on footprint plugin API 2012-04-15 22:18:41 -05:00
Wayne Stambaugh 8c0dc01fdd Pcbnew nanometer internal unit fixes.
* Scale page reference border and title block, grid sizes, and zoom factors
  correctly for nanometers.
2012-04-15 21:25:26 -04:00
lajos kamocsay add5321328 Commit patch fixing an issue in pan with middle mouse button (from lajos kamocsay)
Other minor fixes.
2012-04-15 12:33:35 +02:00
Miguel Angel Ajo 55c0eafd6f merged testing branch 2012-04-14 23:18:27 +02:00
Wayne Stambaugh 57d75a75a8 More internal unit improvements.
* Move all convert from internal to user units functions into separate file.
* Remove internal units parameter from all moved conversion functions.
* Revise all source code that calls the moved conversion functions.
* Compile these conversion routines separately for the appropriate pcb or
  schematic internal units.
* Move internal units specific status bar update code into the appropriate
  application for updating the status bar.
* Move millimeter user units rounding function to common.cpp.
2012-04-13 14:51:24 -04:00
jean-pierre charras b28e976e35 Eeschema: BOM list generation: some fixes and enhancements.
drawframe.cpp: commit a fix about scrollbars  from lajos kamocsay
2012-04-13 20:44:02 +02:00
Wayne Stambaugh bed96be750 Internal unit improvements and Pcbnew s-expression file format changes.
* Move EDA_TEXT object into separate header and source file.
* Compile EDA_TEXT class separately for BOARD_ITEM and SCH_ITEM units.
* Compile PAGE_INFO  class separately for BOARD_ITEM and SCH_ITEM units.
* Minor formatting tweaks to Pcbnew s-expression file.
* Move internal unit formatting functions into BOARD_ITEM and SCH_ITEM.
2012-04-12 17:31:31 -04:00
lajos kamocsay 38ea600803 Fix small issue when panning with middle button. 2012-04-12 09:58:12 +02:00
jean-pierre charras f0dc54340d All: new middle mouse pan feature, from lajos kamocsay (and jp charras for some enhancements).
If enable in preference menu, allow the pan with drag mouse with middle button down.
both unlimited and limited pan is allowed.
2012-04-11 20:54:20 +02:00
jean-pierre charras 8f62c6aa05 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
Miguel Angel Ajo a201522f6b lajos kamocsay compilation patches 2012-04-09 08:53:24 +02:00
Alexander Zakamaldin f2f0f66a50 This bug is not evident for the first glance because most PS viewers fix this issue and print well.
But when using raw printing (for linux - 'lpr some_file.ps') the bug gets out.

Alexander.
2012-04-08 18:37:26 -05:00
Wayne Stambaugh 9c16a218c0 Pcbnew s-expression file format changes.
* Save dialog now supports saving boards to new file format.
* Add CMake option to build s-expression file save.
* Add check to main CMakeList.txt file to make sure nanometers are
  enables when the new file format is built.
* Minor tweaks to object format functions for improved output.
* Rename kicad_plugin.h/cpp to legacy_plugin.h/cpp.
2012-04-07 14:05:56 -04:00
jean-pierre charras d739f03c5f Remove old xpm icons files 2012-04-07 13:09:57 +02:00
Dick Hollenbeck f8490ff4af Remove g_PcbPlotOptions, use wxformbuilder to subclass DIALOG_SHIM on several dialogs 2012-04-05 13:27:56 -05:00
jean-pierre charras 7ce97878e8 pcb_calculator: enhancement in Regulators page dialog:
* support for 3 terminal regulators
* add a data file management to store parameters for regulators ( name, vref value, Iadj value, type)
Needs some refinements, but it is already very useable.

 Commit dialog page setting patch from Alexander Zakamaldin
2012-04-02 20:11:00 +02:00
Wayne Stambaugh d7feb9ab45 Initial Pcbnew s-expression file format commit.
* Add s-expression Format() function to all objects derived from
  BOARD_ITEM.
* Add s-expression Format() function to base objects as required.
* Add functions to convert coordinates from base internal units
  (nanometers) to millimeter string for writing to s-expression
  file.
* Add temporary dummy conversion functions to prevent link errors
  until schematic and board object and action code can be separated
  into DSO/DLL.
* Add CMake build option to build Pcbnew with nanometer internal
  units.
2012-04-01 16:51:56 -04:00
jean-pierre charras e356e6dc6b Fix issues about translations:
Eeschema: one string with a bad char (\a, not useable in internationalized strings).
Dialog_page_settings: use not translated strings in code, so strings can be freely translated for the UI.
(Initial code was not working with existing translations)
Update 2 icons.
2012-03-27 18:41:13 +02:00
Wayne Stambaugh 45445dd88f Minor code improvements and coding policy fixes.
* BLOCK_SELECTOR class is not longer derived from EDA_ITEM.
* Encapsulate BLOCK_SELECTOR class member variables and add access methods.
* Move HandleBlockBegin() function from block_commande.cpp to drawframe.cpp.
* Remove virtual methods from top level derived objects per future
  coding policy change.
* Remove Doxygen copydoc statement from objects derived from EDA_ITEM
  since the comments are automatically copied to the derived object.
* Removed copy and pasted Doxygen comments from objects derived from
  EDA_ITEM.
2012-03-26 19:47:08 -04:00
Alexander Zakamaldin 625e964c8d Alexander's patches, with refinements 2012-03-26 16:45:05 -05:00
jean-pierre charras cf9864766b class EDA_RECT: is no more derived from EDA_ITEM, just from EDA_RECT (reason: does not use anything in EDA_ITEM)
issue in cast to wxRect fixed (EDA_RECT accepts negative size, but not wxRect, so the wxRectcast  is normalized now).
This fixes some bugs.
A minor other bug fix in Pcbnew.
2012-03-24 15:25:30 +01:00
Dick Hollenbeck 31a84b84ec Add include/dialog_shim.h and common/dialog_shim.cpp for use by wxformbuilder's "subclass a wxDialog" support.
This works, but in my version of wxformbuilder there is a bug which does not properly show the 
subclass property, even though it is still in play.  This happens after saving then loading the *.fbp file.
So it is a nuisance bug, but does not affect functionality.
2012-03-22 02:02:49 -05:00
jean-pierre charras b5cac30abd Eeschema: fix a bug in bool SCH_LINE::MergeOverlap( SCH_LINE* aLine ): ends point of resulting segment incorrects.
remove unused icon files.
2012-03-19 08:48:29 +01:00
Wayne Stambaugh 058e17edf7 Minor code and Doxygen comment improvements.
* Remove double Clone() function calls from all classes derived from
  EDA_ITEM.
* Lots of Doxygen comment warning fixes.
2012-03-17 10:39:27 -04:00
Joe Ferner ffbbd64c73 Joe Ferner's merge 2012-03-16 22:01:53 -05:00
Joe Ferner aad54ec406 Added a toolbar button to cvpcb to filter by pin/pad count. 2012-03-15 14:20:22 -04:00
Wayne Stambaugh 6375497825 Hit test method rationalization and other minor improvements.
* All objects derived from EDA_ITEM now have consistent hit test method
  definitions.
* Remove double function calls from all classes derived from SCH_ITEM.
* Lots of Doxygen comment fixes.
2012-03-15 10:31:16 -04:00
Andrey Fedorushkov 389656e58c all: add display distance to local coordinates in status bar 2012-03-13 13:33:39 +04:00
Dick Hollenbeck 2e29b4f152 * Add PCB_EDIT_FRAME::syncLayerVisibilities(), PCB_LAYER_MANAGER::SyncLayerVisibilities().
* Save all visibilities, layer and render, in BOARD and restore on load.
2012-03-11 19:40:48 -05:00
jean-pierre charras 909c2a6051 Dialog exit: better icon.
Pcbnew:
 * graphic_item_properties_base.fbp * dialog pad edit: make some strings more easier to translate.
 * global pad edition: fix a bug that change pad position instead of pad size (round pas only).
Eeschema:
 * fix a bug: new created wires were not alwaes shows until the screen was redrawn.
2012-03-09 19:58:58 +01:00
jean-pierre charras e90cc8adf5 All: added a standard exit dialog called by int DisplayExitDialog( wxWindow* aParent, const wxString& aMessage )
Called when closing pcbnew, cvpcb and eeschema.
Minor code cleaning: remove duplicate or not used strings (mainly file extensions and wildcards)
2012-03-08 18:47:23 +01:00
jean-pierre charras 5e5ec6f1a9 All: try to fix incorrect acs in plot SVG under wxWidgets 2.9:
wxWidgets 2.9 knows wxSVGFILEDC device context.
Unfortunately, arcs are drawn as pies (this is a feature, not a bug).
This is not correct for Kicad.
So Kicad has its own wxSVGFILEDC (named KicadSVGFileDC) that is basically the same as wxSVGFILEDC,
but with arcs drawn as arcs, not pies.
Note also under wxWidgets 2.8 does not know wxSVGFILEDC , so kicad had already its own SVG device context.
2012-03-07 21:18:00 +01:00
Dick Hollenbeck db7c8cfd92 remove clamping from PAGE_INFO setters 2012-03-06 14:10:12 -06:00
jean-pierre charras ed5585eb6c Libedit: fix bug (svg export does not work)
other minor fixes.
2012-03-06 15:08:59 +01:00
Alexander Zakamaldin f13e020314 Problem with the Help link "getting started in kicad" 2012-03-01 09:53:34 -06:00
jean-pierre charras 75d2dc7311 Pcbnew: Hight contrast mode: commit last patch from Miguel Angel Ajo Pelayo, which also fixes an old bug.
All: prepare better compatibility with wxWidgets 2.9.4. Works fine with 2.8.x (I hope...)
2012-02-28 21:14:17 +01:00
jean-pierre charras 6219291ddc ModEdit (and ModView): make "invisible" texts visible. They are not visible in the board editor, but must be visible in the footprint editor.
Minor doc update.
2012-02-26 19:49:00 +01:00
Wayne Stambaugh aaa1cc3e02 Eeschema object list and other minor improvements.
* Convert Eeschema from manually linked list to DLIST for storing
  SCH_ITEM objects.
* Add helper functions to SCH_SCREEN for appending list of SCH_ITEM
  objects.
* Fix bug in wire editing code for accurate undo/redo behavior.
* Add member to DLIST to append another DLIST.
* Other minor code cleaning.
2012-02-26 13:39:39 -05:00
Simon Schubert bcd66579d9 Pcbnew: fix bad arcs in plot postscript (from Simon Schubert) 2012-02-24 18:17:03 +01:00
jean-pierre charras 477e98dc6c Fix 2 minor bugs:
* Pcbnew: in hight contrast mode the 'V' hotkey did not always refresh the screen.
* Eeschema: incorrect print scale when the option 'Show page limits' is disable.
2012-02-20 19:46:56 +01:00
jean-pierre charras f1e5be9a67 Fix @JP messages (no bugs, just comment lines)
Eeschema: Viewlib is now accessible from Libedit (to browse libs or load a component to edit)
Libedit: uses now the same dialog as the schematic editor to load a component
Some code cleaning.
2012-02-19 20:53:11 +01:00
Marco Mattila 9ef6ae5b49 Use wxStandardPaths to find out the path to binaries in linux. 2012-02-19 21:13:53 +02:00
Dick Hollenbeck 5208bf9976 * remove global g_Pad_Master global and put it into BOARD_DESIGN_SETTINGS
which is in turn already within BOARD.
  * encapsulate class D_PAD with accessors, making data private.
  * make D_PAD::GetBoundingRadius() do its longer calculation lazily, based on
    m_boundingRadius == -1.
2012-02-18 22:10:49 -06:00
Dick Hollenbeck 9e2eb0c856 see CHANGELOG.txt 2012-02-18 22:02:19 -06:00
jean-pierre charras 827352511a Layers manager: add in popup menu option to hide all coppers layers but active layer.
Design rules: increase number of vias and tracks sizes
Pcbnew: netlist reader: change from my recent commits to keep netnames in pads for footprints not in netlist
(allow an user to place some footprints by hand, set pads netnames and do not lost these netnames when loading a netlsit)
Fix other very minor issues.
2012-02-17 20:43:43 +01:00
jean-pierre charras ba689c10e3 Kicad project manager: add .cmp, .drl .pos and .rpt files management.
Code cleaning and other minor fixes.
2012-02-16 21:03:33 +01:00
Dick Hollenbeck b90d657cb8 fix bug 921553 2012-02-08 09:06:06 -06:00
Dick Hollenbeck e7b3ed2e88 merge 2012-02-06 01:14:51 -06:00
Dick Hollenbeck 6c04e60587 see CHANGELOG.txt 2012-02-05 23:44:19 -06:00
jean-pierre charras 08ef741770 Undo redo change and code cleanup. 2012-02-05 14:02:46 +01:00
Dick Hollenbeck 716d21d88a get rid of some globals, share BOARD_DESIGN_SETTINGS from PCB_EDIT_FRAME with FOOTPRINT_EDIT_FRAME 2012-02-02 11:45:37 -06:00
jean-pierre charras f9e2f9dc77 Pcbnew and Cvpcb: more about new netlist support: see CHANGELOG (important changes).
Also commit updated icnos from Fabrizio.
2012-02-01 20:49:37 +01:00
Andrey Fedorushkov 9eb7cba156 revert my bug commit 3389 2012-02-01 15:53:32 +04:00
Andrey Fedorushkov 0c00c88f11 fix DXF plot arc 2012-02-01 13:36:43 +04:00
marco. 96f435202c MacOSX: Handling exec 2012-01-26 20:48:45 +01:00
Dick Hollenbeck 23172cce23 compile base_screen.cpp separately for {pcbnew,cvpcb} and eeschema, so we can diverge internal units at compile time, not runtime 2012-01-22 22:53:21 -06:00
Dick Hollenbeck 2b394c7ccb dialog_page_settings needed right border space, retain last dialog size and position 2012-01-22 22:45:57 -06:00
Dick Hollenbeck b8a0ab4c52 switch to <> for includes from "" per conversation with Jean-Pierre and Wayne, adjust search paths 2012-01-22 22:33:36 -06:00
Dick Hollenbeck e6c8515873 switch to C++'s false and true from C's FALSE and TRUE 2012-01-22 11:20:22 -06:00
Dick Hollenbeck 708aef8522 towards making KICAD_GOST a runtime option, hoping for unified paper size 2012-01-18 09:02:50 -06:00
Dick Hollenbeck a7b251450f portrait setting was being overwritten in dialog_page_settings.cpp, add updatePortrait(), improve comments 2012-01-17 08:58:58 -06:00
Dick Hollenbeck 2c84a28f6b switch to combobox on page size dialogs, fix PLUGIN header 2012-01-16 14:48:32 -06:00
Dick Hollenbeck 286c62d898 fix order of cvpcb link libraries, make some PAGE_INFO functions inline 2012-01-15 23:38:11 -06:00
Dick Hollenbeck b76d05f591 fix syntax error in kicad_plugin.cpp, carve out class_page_info.cpp, and add PAGE_INFO::Custom 2012-01-15 23:17:23 -06:00
Dick Hollenbeck 0025ac7d38 Add "portrait" support to the page size settings for all standard paper
sizes.  Tested with postscript output only.  Required minor file format changes
    to reflect the "portrait" setting.  common/dialogs/dialog_page_settings.cpp
    uses a checkbox but its name is "Landscape", which is inverted from portrait,
    but since it is the more common choice, I used that rather than portrait.
    The tooltip for that checkbox makes it clear.  No portrait mode is supported
    for "User" paper size.
2012-01-15 22:11:43 -06:00
Dick Hollenbeck 9147e66dce fix bug with user page size not taking effect immediately 2012-01-15 15:07:01 -06:00
Dick Hollenbeck 9431c2a60a changes 2012-01-14 19:31:39 -06:00
Wayne Stambaugh 5289c22087 Pcbnew object improvements.
* Remove unnecessary copy constructors from board and module library
  objects.
* Add doClone() method to board and library objects.
* Add comment to class definitions where the default copy constructor
  generated by the compiler was adequate.
* Replace copy method with clone method where applicable.
* Remove DuplicateStruct() function.
* Remove track object copy function.
2012-01-14 14:50:32 -05:00
Dick Hollenbeck 5a9fcf6f11 fix windows version of GetRunningMicroSecs() 2012-01-13 11:11:34 -06:00
Dick Hollenbeck 3421863c01 add GetRunningMicroSecs() to libcommon for debug timing 2012-01-13 03:46:02 -06:00
marco. f40a92561c MacOSX: Grid now is displayed correctly 2012-01-10 23:27:31 +01:00
marco. 54c20b57f2 MacOSX: Main issue catch! wxPen with size 0 draws NOTHING (8 months to spot it) 2012-01-10 20:52:48 +01:00
Wayne Stambaugh 409d6e8ea2 Eeschema schematic object improvements.
* Remove unnecessary copy constructors from schematic and component
  library objects.
* Add comment to class definitions where the default copy constructor
  generated by the compiler was adequate.
* Add assignment operator to EDA_ITEM, SCH_ITEM, and all schematic
  objects where the default assignment operator generated by the
  compiler would not be adequate.
2012-01-09 15:26:55 -05:00
Andrey Fedorushkov d000d48653 fix build when defined KICAD_GOST 2012-01-09 23:13:20 +04:00
Dick Hollenbeck 0cad6e7913 carve out TITLE_BLOCK class from BASE_SCREEN, add hashtables.h for PROPERTIES 2012-01-09 02:35:06 -06:00
Александр Закамалдин 2caa72f063 This patch implements width tuning (width correction) for PS plotting of tracks, pads and vias.
This feature is very useful for electronics hobbyists who use DIY PCB technology 
(both toner transfer and photoresist methods).
Also width correction may be useful for PCB designers who take care of track width etching.
This patch also fixes some minor PS plotting issues.
2012-01-07 00:02:38 -06:00
Dick Hollenbeck 148aecf963 improved comments 2012-01-05 12:16:21 -06:00
Dick Hollenbeck dd091fc6b9 merge in mainline into KICAD_PLUGIN work, which is for the PCBNEW nanometer support 2012-01-05 10:30:58 -06:00
Dick Hollenbeck 1393eb0f11 finish up SCH_SHEET::{Set,Get}PageSettings() switch over 2012-01-05 02:07:11 -06:00
Wayne Stambaugh 152b8d91e3 Eeschema schematic object improvements.
* Move SCH_ITEM::Place() code into SCH_EDIT_FRAME so schematic item
  objects no longer have any knowledge of the schematic frame window
  or undo/redo containers.
2012-01-04 17:08:46 -05:00
Dick Hollenbeck d3afe95ca8 remove page size globals from eeschema 2012-01-04 00:18:38 -06:00
Wayne Stambaugh b774d96fb0 Minor coding policy and code readability improvements. 2012-01-03 12:14:17 -05:00
Wayne Stambaugh 0ba26e1d8f Remove unused EDA_ITEM list from BASE_SCREEN. 2012-01-02 15:45:46 -05:00
Dick Hollenbeck 697f912307 moving objects into BOARD which are saved in a *.brd file, for PLUGIN access 2011-12-30 23:44:00 -06:00
jean-pierre charras 5916688f35 Pcbnew: Fix error message in Module Editor after a global pad change.
Minor other enhancements and code cleaning.
2011-12-30 13:29:54 +01:00
Wayne Stambaugh 8985a1807b Encapsulation and other minor improvements.
* EDA_DRAW_PANEL completely encapsulated.
* Moved OSX m_overlay member from EDA_DRAW_PANEL to EDA_DRAW_FRAME where
  it is used.
* Doxygen comment warning fixes.
2011-12-29 15:11:42 -05:00
Dick Hollenbeck 929d5c7a3f merge in testing 2011-12-22 16:12:21 -06:00
Dick Hollenbeck 0d4598656b rename Ki_PageDescr to PAGE_INFO, encapsulate it in accessors, and move it into the BOARD 2011-12-22 15:57:50 -06:00
Wayne Stambaugh c2e5fcaec8 More encapsulation improvements.
* EDA_DRAW_FRAME completely encapsulated.
* Encapsulate the the low hanging fruit in EDA_DRAW_PANEL.
2011-12-22 08:28:11 -05:00
Wayne Stambaugh 6c28cdc62c More encapsulation work and other minor improvements.
* EDA_RECT and EDA_ITEM completely encapsulated.
* Removed unnecessary EDA_ITEM member m_Selected and replaced functionality
  with SELECTED flag bit.
2011-12-21 08:42:02 -05:00
jean-pierre charras 018ffe7eac fix bug: EDA_ITEM::m_forceVisible not initialized in constructor. 2011-12-18 16:26:09 +01:00
jean-pierre charras 2c150e4817 All: fix compatibility issues with wxWidgets 2.9.3
Minor cosmetic enhancements.
Pcbnew: more workd abput connection algorithms (work in progress)
2011-12-17 22:21:03 +01:00
Wayne Stambaugh 0e27f45ffd Encapsulate EDA_APP class. 2011-12-16 15:12:49 -05:00
Wayne Stambaugh fac288cffa More encapsulation work and other minor improvements.
* EDA_DRAW_FRAME completely encapsulated except for DrawFrame member.
* Moved members specific to Pcbnew from EDA_DRAW_FRAME to PCB_BASE_FRAME
  or PCB_EDIT_FRAME as appropriate.
* Replace EDA_TOOLBAR with wxAuiToolBar as EDA_TOOL bar provided no
  additional functionality and made code less readable.
* Remove EDA_TOOLBAR class definition from wxstruct.h and delete file
  wineda_toolbar.cpp.
* Rename tool bar members to something more descriptive since the
  horizontal and vertical references wont mean anything once the
  tool bars are movable.
* Lots of dead code removal.
2011-12-16 08:32:23 -05:00
Wayne Stambaugh 95891006cd More EDA_DRAW_FRAME encapsulation work. 2011-12-14 15:03:15 -05:00
Dick Hollenbeck 463c17b807 fix EDA_ITEM::Show() prototype bug, fix KICAD_PLUGIN::Save() problem with netclasses. 2011-12-14 11:25:42 -06:00
Dick Hollenbeck 74ccc4b558 ++common
* changed all the RotatePoint() functions in trigo.{h,cpp} to take a double as the
    angle, which is still in tenths of degrees for now.
  * EDA_TEXT::m_Orient is now double, still in tenths of degrees (for a short while),
    but the double means parsing files and saving them use a different format string.
++pcbnew
  * DRAWSEGMENT::GetStart() and GetEnd() do not operate for S_ARC like they used to.
    They are now simply accessors for m_Start and m_End.  Use DRAWSEGMENT::GetArcStart()
    and GetArcEnd() and GetCenter() for arcs.  specctra_export.cpp was the only
    source file dependent on the old behavior.
  * DIMENSION::m_Text is now contained, not dynamically allocated.
  * more kicad_plugin work.
2011-12-13 22:43:51 -06:00
Dick Hollenbeck 96bb90dee1 kicad_plugin 2011-12-13 22:29:25 -06:00
Wayne Stambaugh a63a2006f0 Add Eeschema replace code.
* Enable replace toolbar button and menu entry.
* Improve find replace logging granularity.
* Fix find and replace dialog control hiding and disabling.
* Minor improvements to the SCH_FIND_REPLACE_DATA object.
* Move find collector list iterator into the collector object.
* Add visibility override flag to EDA_ITEM to temporarily show items that
  are hidden during find and replace.
2011-12-13 10:37:33 -05:00
Wayne Stambaugh 768ec258f7 Encapsulate LABEL_OBJECT class and message panel window member of EDA_DRAW_FRAME. 2011-12-12 09:02:37 -05:00
Dick Hollenbeck b979d1e0b9 plugin work, accessors 2011-12-12 02:37:05 -06:00
jean-pierre charras ac74985685 All: fix hotkey issue with wxWidgets-2.9.3 (Window only): hotkey events called twice.
* Fix compil issue about automatically created pcb_plot_params.h :
     pcb_plot_params.* moved from pcbnew to common because item_io.cpp (using this file) is compiled in common.
2011-12-08 19:23:44 +01:00
jean-pierre charras bcbde5d813 All: fix a collision name between accessor function GetTimeStamp and GetTimeStamp in common.cpp.
In common.cpp GetTimeStamp is renamed GetNewTimeStamp (a better name).
Pcbnew: prepare work to calculate connections between pads that inteserct and therefore can be connected without any track (composite pads).
2011-12-07 16:49:32 +01:00
Dick Hollenbeck b6dcf9b7f4 Collect all the PCBNew Save() and ReadDesc...() functions into new file item_io.cpp,
which should eventually go away in favor of kicad_plugin.cpp.
Add CMake options USE_NEW_PCBNEW_LOAD and USE_NEW_PCBNEW_SAVE, which should not be
used yet, and both default to OFF accordingly.
2011-12-06 23:39:18 -06:00
Dick Hollenbeck c4979318d2 more plugin work 2011-12-06 23:28:49 -06:00
jean-pierre charras e8c3ca2929 Pcbnew: remove global variables (g_TabOneLayerMask and g_ViaType_Name) 2011-12-06 09:35:13 +01:00
Dick Hollenbeck b26580d5df ++PCBNew
* Removed Pcb_Frame argument from BOARD() constructor, since it precludes
    having a BOARD being edited by more than one editor, it was a bad design.
    And this meant removing m_PcbFrame from BOARD.
  * removed BOARD::SetWindowFrame(), and BOARD::m_PcbFrame
  * Removed the global BOARD_DESIGN_SETTINGS which was in class_board.cpp
  * added BOARD_DESIGN_SETTINGS to the BOARD class, a full instance
  * a couple dialogs now only change BOARD_DESIGN_SETTINGS when OK is pressed,
    such as dialog_mask_clearance, dialog_drc, etc.
  * Removed common/pcbcommon.cpp's int g_CurrentVersionPCB = 1 and replaced it
    with build_version.h's #define BOARD_FILE_VERSION, although there may be a
    better place for this constant.
  * Made the public functions in PARAM_CFG_ARRAY be type const.
    void SaveParam(..) const and void ReadParam(..) const
  * PARAM_CFG_BASE now has virtual destructor since we have various way of
    destroying the derived class and boost::ptr_vector must be told about this.
  * Pass const PARAM_CFG_ARRAY& instead of PARAM_CFG_ARRAY so that we can use
    an automatic PARAM_CFG_ARRAY which is on the stack.\
  * PCB_EDIT_FRAME::GetProjectFileParameters() may no longer cache the array,
    since it has to access the current BOARD and the BOARD can change.
    Remember BOARD_DESIGN_SETTINGS are now in the BOARD.
  * Made the m_BoundingBox member private, this was a brutally hard task,
    and indicative of the lack of commitment to accessors and object oriented
    design on the part of KiCad developers.  We must do better.
    Added BOARD::GetBoundingBox, SetBoundingBox(), ComputeBoundingBox().
  * Added PCB_BASE_FRAME::GetBoardBoundingBox() which calls BOARD::ComputeBoundingBox()
2011-12-05 00:15:33 -06:00
Wayne Stambaugh d9e0ab0241 Improve Eeschema find code and add initial replace plumbing.
* Replace Eeschema find code with a collector based implementation.
* Fixed a search bug when all subsequent searches of an item would ignore
  the remaining valid child items when an item had more than one child
  item that matched the search criteria.
* Add SCH_FIND_COLLECTOR class to find all items that meet the specified
  search criteria.
* Add SCH_FIND_COLLECT0R_DATA to keep track of information for all matching
  items.
* Use collector to iterate over the list of items that match the search
  criteria rather than trying to start at the last matched item.
* Remove unused searching methods from sheet path and sheet path list
  objects.
* Add replace and replace all functionality to Eeschema find dialog.
* Push matching methods down to EDA_ITEM class so they can be used by
  other derived objects.
* Add method to EDA_ITEM to test if item supports replacing.
* Add flag to find/replace data to support replace feature.
* Disable wild card matching check box when dialog is in replace mode as
  wild card replacement is not supported at this time.
* The usual Doxygen comment and coding policy fixes.
2011-12-01 11:49:28 -05:00
Dick Hollenbeck b6508af0f4 KICAD_PLUGIN and nanometer intermediate checkin, work in progress... 2011-11-30 15:15:56 -06:00
jean-pierre charras 31bcc6eed9 Add Bulgarian language. Update translators list.
Pcbnew: prepare work on new algos for connections calculations.
2011-11-30 12:45:49 +01:00
jean-pierre charras b707493f35 Update version number 2011-11-26 21:02:59 +01:00
jean-pierre charras 778832a665 Fix a minor issue in my last commit 2011-11-24 22:07:03 +01:00
jean-pierre charras 683921f98d Eeschema: fix crash in intermediate netlist generation when a component has no pins (like logos or images).
Pcbnew: texts in dimensions can be now moved.
Gerbview: fix incorrect number of layers  in export to pcbnew function.
2011-11-24 20:57:41 +01:00
Dick Hollenbeck cc097762c7 Temporarily reverse out the evolving support for finer Board Internal Units (BIU)s. 2011-11-24 11:32:51 -06:00
Vladimir Ur 2a69ffb406 Nanometric work
- D_PAD members converted;
- style improved;
- GetPosition made returning value, added SetPosition;
- highly experimental, test it please!
2011-11-17 21:47:27 +04:00
Wayne Stambaugh 35749e57c4 Fix Eeschema find item bugs and other minor changes.
* Fix bug in hierarchical searches using sheet path pointers which are
  destroyed on every search.  Use human readable path as last sheet found
  in test to prevent comparison of deleted pointers.
* Fix a bug in SCH_COMPONENT::Matches() that would prevent searching for
  pins if the search all fields flags was not set.
* Fix a bug in SCH_COMPONENT::Matches() to use the sheet path to perform
  the comparison to the correct reference designator and unit number.
* Fix wrapping in sheet path and sheet path list MatchNextItem methods.
* Push search methods down to EDA_ITEM object so advanced searching can
  be performed on all items derived from EDA_ITEM.
* Add virtual method to EDA_ITEM object to test if item supports replacing
  text.
* Replace switch statement magic numbers in Eeschema socket connection code
  with Pcbnew for improved readability.
2011-11-16 20:06:08 -05:00
Vladimir Ur 959e338698 D_PAD conversion: m_Pos converted
PCB_ITEM: GetPosition -- removed reference
load/save length in config
2011-11-16 21:04:12 +04:00
Vladimir Ur 09a61396ba Some code restyling: VECTOR_PCB is an array. Cleanup uncontrolled definitions of abs, max, etc. max is now overloaded function and MAX is a macro. 2011-11-15 22:26:06 +04:00
Vladimir Ur 4b9b2f4e66 Nanometric work. Design rules, D_PAD (except m_Pos) is now in new units. Metric files can be loaded w/o KICAD_NANOMETRE flag set but saved only with this flag, this could help to gain some compatibility during transition process. ifdef'd code is somewhat minimized by using transition macros. Some potential code bugs are commented. 2011-11-14 20:56:05 +04:00
jean-pierre charras 1259683846 Pcbnew: fix bad icon in ModEdit toolbar. 2011-11-12 11:51:20 +01:00
Wayne Stambaugh 77521c4b60 Fix write file bug when file is in the project path and no path is defined. 2011-11-11 11:08:58 -05:00
Wayne Stambaugh cc7e7fc5ca Memory allocation improvements and other minor fixes.
* Replace C malloc() and free() functions with C++ new and delete
  operators or the appropriate STL container.
* Add option to end mouse capture function to skip executing the end
  mouse capture callback.
* Lots of coding policy and Doxygen comment goodness.
2011-11-10 10:55:05 -05:00
jean-pierre charras 7bd8284661 Pcbnew: remove dead or obsolete code. Add or fix some comments.
Add minor enhancements.
2011-11-10 09:21:11 +01:00
Vladimir Ur 0fdf71a80e General design rules tab converted to nanoscale. A bit of refactorisation in via sizes. And build key is KICAD_NANOMETRE not KICAD_NANOMETRIC (as I stated in previous commit). 2011-11-09 21:35:16 +04:00
Vladimir Ur a273b7bdb5 Work on internal (nano)metric length units started.
Added configuartion option KICAD_NANOMETRIC for this.
* With option set to false: *
- it should work and compile as usual
- some values are saved with decimal point (which should be backward/forward compatible as old versions should just drop fractional part)
* With option set to true: *
- lengths in Global Design Rules should be settable 1nm steps.
FROM/TO_LEGACY_LU(_DBL) macros introduced for easy interconnection between old and new units.
2011-11-09 17:25:49 +04:00
Wayne Stambaugh cd0b231656 Minor fixes, dead code removal, and coding policy fixes.
* Use version of DateAndTime that returns a wxString and delete the
  version that takes a char* as it is no longer required.
* Merge StrNumICmp() and StrLenNumICmp() into StrLenNumCmp() to create a
  single function for comparing strings with integers and remove a lot
  of duplicate code.
* Remove unused strupper from string.cpp.
* Use wxArrayString for sorting the EDA_LIST_DIALOG contents.
2011-11-08 11:37:25 -05:00
Wayne Stambaugh 393e020442 Fix cursor warping out of client when zooming bug.
* Modify algorithm to correctly calculate the virtual drawing size and
  offset required to place the drawing correctly under all conditions.
* Ignore default wxWidgets scroll keys on Windows in EDA_DRAW_PANEL key
  event handler.
2011-11-07 14:04:24 -05:00
jean-pierre charras 7c17187052 Pcbnew: Fix typo in 2 filenames. Add comments in ratsnest.cpp.
Fix bug 887202.
2011-11-07 19:04:19 +01:00
Wayne Stambaugh bbda48f9e8 Unify Eeschema orient commands and other minor fixes.
* Create command event handler for orienting schematic items and block.
* Remove redundant orient item and block command handler code and IDs.
* Remove redundant cancel current command event table entry.
* Remove unnecessary schematic bitmap object virtual functions.
* Set path when saving schematic sheet files to prevent assertion in
  updated path and file write permission test function.
* Restore directory and file name write permission test function to it's
  previous behavior to prevent unexpected save results.
* Add an assertion to verify the path is not empty to directory and file
  write permission test function.
* Improve documentation for path and file write permission test function.
* Fix Doxygen link warnings.
2011-10-28 16:30:50 -04:00
jean-pierre charras 858636fd27 Fix erroneous test for non writable folder, when trying to save a schematic file with no path in name.
(seems wxFileName.IsDirWritable() fails under Windows when the path is empty (does not use the CWD).)
2011-10-27 20:38:31 +02:00
jean-pierre charras 32526511de Fix message in KiCad Dialog About (forgotten USE_BOOST_POLYGON_LIBRARY option removed). 2011-10-27 07:43:44 +02:00
Wayne Stambaugh b98b23a1a6 Factor Eeschema rotate item hot keys into a rotate event handler.
* Add a rotate event handler to schematic frame object.
* Remove unique rotate item command IDs.
* Use process event instead of post event to eliminate the need to clean
  up the command event client object from the heap.
* Unify find next item and next DRC error hot key commands.
* Unify move and rotate hot keys commands.
2011-10-26 16:46:04 -04:00
jean-pierre charras 4cbcf56cee remove useless USE_BOOST_POLYGON_LIBRARY cmake option, and remove unused files.
BOOST POLYGON is always used in zone filling functions.
Kbool is still in use in other calculations.
2011-10-25 18:24:56 +02:00
Wayne Stambaugh 7bbe2f784e Initial ground work to make schematic fields use unified move code.
* Remove external dependency for adding suffix to reference designator
  fields.
* Make schematic field get and set position methods transform coordinates
  relative to the parent component object that owns them.
* Make base text class get text method virtual so derived classes can
  change the base string according to their individual requirements.
* Fix a problem with default place schematic item add in last commit.
2011-10-21 14:17:51 -04:00
Wayne Stambaugh 78377058c9 More Eeschema schematic item move code unification.
* Tweak move item to support moving schematic sheet pin objects.
* Change schematic sheet pin set position to constrain position within
  the parent sheet.
* Schematic sheet pin moving now handled by unified move code.
* Remove old schematic sheet pin move code.
* Add custom client data object for passing hot key information to
  command event handlers.
* Fix a bug that prevented changes to schematic sheet pin objects from
  being undone.
2011-10-21 09:59:15 -04:00
Wayne Stambaugh 6a4e8aa909 Eeschema schematic item move code unification.
* Add get and set position methods to all schematic items.
* Encapsulate schematic item position members.
* Add swap data method to schematic items that lacked one.
* Remove global swap data function used by undo and redo functions.
* Unify as many schematic move methods as possible.
* Remove unnecessary place schematic item methods.
* All schematic items are now moved in the same event handler.
* Fixed bug in hierarchical sheet get menu item string method.
* Make no connect and junction items movable, fixes lp:804048
2011-10-19 16:32:21 -04:00
Wayne Stambaugh 1bd7fc8a4e 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 021a075fbe Gerbview: minor enhancement.
All: fix some strings very hard to translate in messages.
2011-10-16 10:02:36 +02:00
Wayne Stambaugh 121b65bfb8 More auto save improvements.
* Factor test for auto save file into base frame class.
* Added auto save feature to Eeschema for saving schematics, addresses
  launchpad question 173631.
* Add auto save interval control to Eeschema options dialog.
* Fix problem with subsequent auto saves in last commit.
2011-10-15 09:25:57 -04:00
Wayne Stambaugh 70569edb05 Pcbnew auto save improvements.
* Factor auto save common code into base frame class so all frame windows
  can take advantage of the shiny new auto save goodness.
* Use a timer instead of depending on mouse and keyboard events to trigger
  an auto save.
* Check for auto save file when opening a board and ask user if they
  wish to use the auto save file or the last saved board file.
* Protect all base frame public members.
2011-10-13 15:56:32 -04:00
Wayne Stambaugh 5602177d45 Minor copy version information to clipboard improvements.
* Add KiCad build option states to copy version information to clipboard
  function.
* Add a note to the main CMakeList.txt file to let developers know that
  new option states should be added to the copy version information to
  clipboard function.
2011-10-05 14:26:22 -04:00
Wayne Stambaugh 4b853dedb4 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
Wayne Stambaugh c09bc26dc2 Minor PCBNew code fixes.
* Translate French code names and comments.
* Dead code removal.
* Hot key object and structure coding style policy fixes.
* Doxygen comment warning fixes.
2011-09-29 12:49:40 -04:00
Wayne Stambaugh b9b341dce2 PCB common library global variable removal and other minor fixes.
* Move auto save time global variables into PCB_EDIT_FRAME object.
* Move footprint library name list global variable int PCB_EDIT_FRAME
  object.
* Improve library back up and temporary file error message strings and make
  them translatable.
* PCBNew string unification.
* Translate French code names and comments.
* Coding style policy and Doxygen comment fixes.
2011-09-26 16:32:56 -04:00
Wayne Stambaugh de96452c41 Minor common PCB library code fixes.
* More common header file compiler fixes.
* Translate French code naming and comments.
* Remove global variable ScreenPcb.
* Dead code removal.
2011-09-24 14:33:28 -04:00
jean-pierre charras 063c56be30 Use accelerators from hot keys in place menu, from the Fabrizio's idea 2011-09-24 19:15:29 +02:00
jean-pierre charras 8db19bbd6a Preparing hotkeys/shortcuts changes in place menu. 2011-09-23 22:00:30 +02:00
Wayne Stambaugh edd35b4e90 PCB common library header rationalization.
* All header files used to create the PCB common library now compile as
  stand alone code.  This prevents the need to define them in a specific
  order to make source code compile properly.  It should also now be
  possible to relocate the source code to build the common PCB library
  to a separate folder.
2011-09-23 09:57:12 -04:00
Wayne Stambaugh b5368e36cc Fix 3D pad drawing bug. Fixes 855288. 2011-09-21 08:51:46 -04:00
Wayne Stambaugh 4230ac4ca7 Remove sine and cosine look up tables and other minor fixes.
* Remove sine and cosine look up tables from trigo.cpp and replace them with
  sin() and cos() math functions.
* Large include file clean up to prevent header ordering dependency build
  failures.
* Translate French code names and comments.
* Lots of coding style policy and doxygen comment fixes.
2011-09-20 09:57:40 -04:00
jean-pierre charras 9c0eeadfd4 Pcbnew: fix some minor issues.
Remove obsolete foldr resources/icons.
Updates svg icons in folder resources.
2011-09-18 17:11:09 +02:00
jean-pierre charras e9b71f1e83 Commit changes asked by Fabrizio Tappero.
Fix compatibility issues with old xpm icons.
Add or update .xpm and .ico files for shortcuts and taskbars
Remove artwork folder.
2011-09-13 21:37:25 +02:00
jean-pierre charras 1c412879d5 New icons: fix problems about .ico files (under Window)
Remove or move old .ico and .pgn files and add new icons (.ico files and .png files) in bitmaps_png/icons and bitmaps_xpm/icons
.png files and .ico are used to build desktop shortcuts
Handle variable size bitmaps in kicad.
2011-09-10 19:48:35 +02:00
jean-pierre charras 3b381cf8cf Remove *.ico files and used only xpm or new pgn bitmaps for icons under Window.
Fix minor other issues.
Remove unused files.
2011-09-09 21:30:59 +02:00
Roman Bashkov c5e1c249bb pcbnew:
* Add hotkey fast switch to two grids: for place and trace
	Alt+"1" - switch grid for place module
	Alt+"2" - switch grid for trace
  This two grid set in dialog - menu Preferences->Dimensions->Grid.
* Add hotkey switch grid:
	"`" - switch to next grid
	Ctrl+"`" - switch to previous grid
* Add hotkey switch track width:
	"W" - switch to next track width
	Ctrl+"W" - switch to previous track width
cmakemodules:
* Add GOST to KICAD_BUILD_VERSION if define KICAD_GOST.
2011-09-09 15:02:03 +04:00
Dick Hollenbeck 50dbd5b762 merge from testing 2011-09-08 01:20:13 -05:00
Dick Hollenbeck 07ab5534e5 PNG bitmap support, initial implementation 2011-09-08 00:58:45 -05:00
Andrey Fedorushkov 0648addabf add forgotten file to bzr3107, add GOST to KICAD_BULD_VERSION if defined KICAD_GOST 2011-09-07 14:38:11 +04:00
Andrey Fedorushkov 9f98995a46 pcbnew:
* Add hotkey "P" - place item
* Add record and play macros for sequence hotkey.
Macros set to numeric key 0..9.
<Ctrl>+<numkey> - start record macros
<hotkey> <mouse move> ... <hotkey>|<mouse place>
<Ctrl>+<numkey> - end record macros
<numkey> - play macros
* Add menu save/read macros to/from xml-file
* Add configure rotate angle for rotate module: 45 or 90 deg.
* fix segfault when move/drag segment if disconnected to pad
2011-09-07 13:27:02 +04:00
Wayne Stambaugh 750f84c19a Coding style policy fixes and dead code removal. 2011-09-06 15:42:46 -04:00
Wayne Stambaugh ebc7259a91 Rename WinEDA_App class to EDA_APP and remove redundant includes. 2011-09-06 10:09:40 -04:00
Fabrizio 4467b911b0 Commit patch make by Fabrizio, with a minor change to avoid duplicate HTML dialog. 2011-09-06 09:02:18 +02:00
jean-pierre charras 9b97938a8a Code cleaning: rename DIALOG_LOAD_ERROR (a stupid name) class to the more understandable HTML_MESSAGE_BOX.
rename corresponding files are move them in a better place.
2011-09-04 20:35:14 +02:00
jean-pierre charras 4da0bfc20b Eeschema: bitmap editor dialog: some enhancements 2011-09-02 21:43:56 +02:00
jean-pierre charras 2b216bcc39 * Add Fabrizio Tappero <fabrizio-dot-tappero[at]gmail-dot-com> in contribuotors list.
Eeschema:
 *   Graphic texts ans labels: fix fully broken undo/redo code relative to the way undo/redo command
 *   handles changes (maintly move) for labels
 *   Fix minor bug for undo command relative to block rotate
 *   Remove dead code.
 *   Add new class BITMAP_BASE, and (for Eeschema) SCH_BITMAP to handle bitmap images in schematic.
      Remember plot Bitmaps in not possble with all plotters.
2011-09-01 18:31:16 +02:00
Wayne Stambaugh 4a7dc4ad03 Add menu item function fixes and other minor improvements.
* Rename all ADD_MENUITEM_* functions to AddMenuItem and move them to
  wxstruct.h since they are used by the Kicad main frame classes.
* Move SET_BITMAP and SETBITMAPS definitions to wxstruct.h.
* Fix a bug in SET_BITMAPS that prevented enabling menu item images on
  OSX.
* Rename MsgItem to EDA_MSG_ITEM.
* Remove redundant includes from modified files.
* Doxygen and coding style policy fixes.
2011-09-01 08:54:34 -04:00
jean-pierre charras 4402c97c7a Eeschema: Fix a subtle bug in undo command when editing texts and labels.
Add a new schematic item: SCH_BITMAP. One can insert now images in a schematic.
Add Fabrizio Tappero as contributor  in Kicad About dialog
2011-08-31 16:59:20 +02:00
Jerry Jacobs 9c61e5d1b9 Fixed typo which affected OS X compilation 2011-08-30 11:21:13 +02:00
Dick Hollenbeck 56f5295527 more KiBitmap() stuff 2011-08-29 16:42:11 -05:00
Wayne Stambaugh c5c98f9518 Add CMake code to enable or disable using images in menu items.
* Add USE_IMAGES_IN_MENUS definition to override the default platform
  behavior for adding images to menu items.
* Update COMPILING.txt to document how to use USE_IMAGES_IN_MENUS.
* Fix Windows segfault when creating language selection submenu introduced
  by new bitmap code in r3087.
* Changed per email from JP from CVPcb to CvPcb because I'm getting old and
  blind and misread the email.
* Lot's of Doxygen comment and coding style policy fixes.
2011-08-29 15:50:05 -04:00
Dick Hollenbeck 45c5e594b6 zwischen punkt for migration to PNG bitmaps 2011-08-28 22:04:59 -05:00
Dick Hollenbeck da2442fe7d go to bitmap filenames which match the embedded bitmap variable name, i.e. lowercase 2011-08-28 15:51:45 -05:00
Dick Hollenbeck 82d5ed1e12 start migration to PNG, use shim function KiBitmap() and KiBitmapNew() 2011-08-28 15:02:27 -05:00
Dick Hollenbeck 8f1b569736 library function to create a bitmap from a PNG 2011-08-24 10:30:41 -05:00
Dick Hollenbeck 8c4b340115 PNG migration support, add function: Bitmap() 2011-08-24 02:33:55 -05:00
Andrey Fedorushkov 5432a52192 fix compile warning if defined KICAD_GOST 2011-08-23 08:25:41 +04:00
Wayne Stambaugh c64a6937f4 Add user write permission tests to EESchama and other minor fixes.
* Add general purpose user write permission test function to base
  window class.
* Check user write permissions before saving project, schematic and
  library files.
* Remove displaying file dialog every time the project file is saved.
* Display absolute paths for non-root sheet file in title bar.
* Remove redundant command table entry from schematic editor.
* Remove unused variables to fix GCC 4.6 warnings.
* The usual Doxygen comment and coding style policy fixes.
2011-08-18 15:25:12 -04:00
Dick Hollenbeck 159d05e384 pcbnew's bottom-most status windowlets were too small on systems with large fonts 2011-08-08 22:35:54 -05:00
jean-pierre charras 0289b6d550 Fix 2.8 compatibility 2011-08-04 21:56:30 +02:00
jean-pierre charras 0eb4050004 * Fix 3D frame issue (3D frame not show) when it is iconized and reactivated by Pcbnew or CvPcb menus (Windows only)
* Add in help menu a direct link to the new doc Getting_Started_in_KiCad.pdf, written by contributors (useful for beginners)
* Fix other very minor issues in CvPcb.
* Update howto doc about translation
2011-08-04 20:03:26 +02:00
jean-pierre charras 81ddf0bb56 Eeschema: fix bug 812924. Very minor other changes to make translations more easy. 2011-07-20 07:57:06 +02:00
jean-pierre charras cbb398e835 Fix compil issue in non debug mode. Minor code enhancement. 2011-07-14 21:41:20 +02:00
Marco Mattila 90dbf5a94a Warp mouse pointer before redrawing. Helps with mouse wheel zooming. 2011-07-09 09:41:32 +03:00
jean-pierre charras 84572d371d Pcbnew: fix bug I recently created: footprint lib incorrectly saved (first module can be lost) 2011-07-08 09:12:28 +02:00
jean-pierre charras 87e220e1fc Eeschema: fix bug that crashes libedit (after creating a new pin, repeat it (insert key), delete the new repeated pin and try to repeat) 2011-07-07 14:54:02 +02:00
jean-pierre charras c50efb48d1 pcbnew: better code to read/modify/delete footprints in module libraries. 2011-07-06 18:40:54 +02:00
jean-pierre charras ec7475f3fa Pcbnew: fix bug 805953 (Module file corruption after deleting a module). 2011-07-05 17:59:21 +02:00
jean-pierre charras f00696e835 Pcbnew: fix bug 804780.
All: use double instead of int to store zoom values.
2011-07-05 14:46:14 +02:00
Marco Mattila 66f1de70c7 Add horizontal text justification to text items in pcbnew. 2011-07-05 00:32:49 +03:00
jean-pierre charras d76cd0cf2c Very minor fixes. 2011-07-03 20:51:07 +02:00
Andrey Fedorushkov 0dd4c05c4f pcbnew: add trace length from pad to die on chip (module) 2011-06-30 10:02:07 +04:00
jean-pierre charras 3d8c48e0bf Speed up DIALOG_LOAD_ERROR::ListSet(), used to display lists of errors ( up to 100 x faster) in DRC or loading lib errors 2011-06-26 18:03:26 +02:00
Wayne Stambaugh c18020374b Schematic object plot code refactoring and CMake required version changes.
* Change the minimum required CMake version to 2.6.4 for all build platforms
  except Windows and OSX.
* Move all schematic plot code from plot.cpp into the appropriate schematic
  objects.
* Create SCH_SCREEN plot method to plot all objects in the schematic
  screen.
* Delete plot.cpp and remove it from the CMakeList file.
2011-06-17 09:24:22 -04:00
jean-pierre charras 95388c6ec4 eeschema: fix memory leakage.
Pcbnew: fix a minor issue.
Version update.
2011-06-09 15:30:46 +02:00
Wayne Stambaugh baa0d7920a EESchema bug fixes and other minor changes (fixes lp:793373).
* Fix debug build warning (lp:793373).
* Changed sheet edit restore and undo to use object copy and replace method.
* Add minimum width and height constraints when resizing sheets that have
  hierarchical pins.
* Fix drag sheet hot key bug.
* Change Doxygen configuration to extract private methods and members
  when creating documentation.
* Fix a bunch of Doxygen comment warnings.
2011-06-07 11:29:01 -04:00
jean-pierre charras 864426fb71 Pcbnew: fix bug 792399.
dialog_about: add translator name.
2011-06-06 08:51:42 +02:00
jean-pierre charras bb6f5625bd Gerbview: more about bug 788778 fix. 2011-05-31 08:24:56 +02:00
jean-pierre charras fb8a6bf164 Libedit: actual line thickness taken in account by collector. Thick lines are now more easy to locate. Fix incorrect boundary box calculations for LIB_PIN items. Very minor other fixes. 2011-05-25 12:42:56 +02:00
Marco Serantoni 9214f5849e MacOSX: Complete support for wxOverlay (http://trac.wxwidgets.org/ticket/12894) 2011-05-20 20:25:11 +02:00
jean-pierre charras 94372b81e5 Eeschema: fix bug 783535. Minor code cleaning.
Pcbnew: fix very minor issue.
2011-05-16 21:32:57 +02:00
Wayne Stambaugh a367dea4db Fix most GCC 4.6 compiler warnings and minor bug fix.
* Remove most (not all) variables that were initialized but never used that
  cause GCC 4.6 to generate a warning.
* Fix bug in schematic library editor best zoom calculation.
2011-05-13 09:15:28 -04:00
jean-pierre charras 3565adca39 Version id update 2011-05-12 20:55:28 +02:00
Jerry Jacobs 312c16b3bf Minor UI changes that affect OS X, see CHANGELOG.txt 2011-05-12 20:47:56 +02:00
jean-pierre charras 883929f969 Pcbnew: bug fix: in rare cases, solid copper areas are to large (minimum width not taken in account to calculate filled areas) 2011-05-06 09:17:28 +02:00
jean-pierre charras f2e6170fbc Eeschema: bug fix: after a "De Morgan" convert command, the component was left selected (.m_Flags not cleared) 2011-04-29 10:17:14 +02:00
Wayne Stambaugh 86bf955db7 Add hit testing clarification to schematic library editor.
* Create library collector class.
* Add clarification menu to library editor when multiple items are found
  at the current position.
* Add get clarification menu text to all objects derived from LIB_ITEM.
* Add get menu bitmap for all objects derived from LIB_ITEM.
* Improve LIB_PIN bounding box calculation.
* Rename LIB_ITEM::DoGenCopy to doClone to match behavior defined in base
  class EDA_ITEM.
* Minor class renaming for improved code consistency.
* Added less than operator to EDA_ITEM.
2011-04-27 15:44:32 -04:00
jean-pierre charras 57604b0a03 Gerbview: export_to_pcbnew enhancement and fixes. 2011-04-26 10:30:16 +02:00
jean-pierre charras c89070da83 Plot poly code cleaning. Suppress erreurs for malformed polygons (< 2 corners) 2011-04-20 10:13:21 +02:00
Wayne Stambaugh dcccaee2aa Replace WinEDAChoiceBox with wxComboBox. 2011-04-19 15:19:41 -04:00
Wayne Stambaugh 86b6feb95d Replace WinEDA_TextFrame with wxSingleChoiceDialog. 2011-04-19 10:28:34 -04:00
jean-pierre charras 6c89776bfd Version id update 2011-04-17 19:39:09 +02:00
jean-pierre charras 401ea10e8f Code cleaning. Coding policy fixes. 2011-04-17 15:54:17 +02:00
jean-pierre charras 560abfa30a gr_basic.cpp: fix a bug I created in my last commit. Pcbnew: fix a very minor bug in hight light behavior 2011-04-15 16:10:20 +02:00
jean-pierre charras 14e3507e16 gr_basic: fix incorrect clipping of thick lines (due to changes in code, the thickness was not taken in account to calculate the clip box size)
Pcbnew: fix a very minor bug.
2011-04-14 20:44:46 +02:00
Wayne Stambaugh 0cedcb8749 Coding policy fixes. 2011-04-13 15:30:27 -04:00
jean-pierre charras e9c618b65a gr_basic: fix incorrect clipping of thick lines (due to changes in code, the thickness was not taken in account to calculate the clip box size) 2011-04-13 12:22:58 +02:00
Vladimir Ur bf44999a6c Recangle program rewritten so it became more accurate on a screen 2011-04-12 21:21:22 +04:00
Wayne Stambaugh 5c8894f928 Coding policy fixes and other minor improvements.
* Change class WinEDA_MsgPanel name to EDA_MSG_PANEL per coding policy.
* Change some old set message panel code in PCBNew with updated message
  panel methods in EDA_DRAW_FRAME.
* Remove unused global function Affiche_1_Parametre.
* Minor Doxygen warning fixes.
2011-04-12 10:19:59 -04:00
jean-pierre charras c2ff1d9416 Viewlib: fix a zoom error (due to a call to BestZoom() made before the full window is built)
CMake: add definition KICAD_TESTING_VERSION and KICAD_STABLE_VERSION.
One of these 2 options *must* be now defined (i.e. run cmake with option -DKICAD_STABLE_VERSION or -DKICAD_TESTING_VERSION
Stable and testing branches should be more easier to maintain.
2011-04-09 20:53:39 +02:00
jean-pierre charras a4f2d3ea57 All: fix a very minor issue: when a window is closed mazimized, and later reopened, it was not maximized. But this is very annoying when using 2 monitors with a different size
Very minor other enhancements and fixes
2011-04-07 19:48:26 +02:00
Jerry Jacobs 6b39096b03 Cleanup of all menubar code, see CHANGELOG.txt 2011-04-06 15:52:47 +02:00
jean-pierre charras 709fe07e6d All: fix a very minor issue: when a window is closed mazimized, and later reopened, it was not maximized. 2011-04-05 21:24:12 +02:00
jean-pierre charras 3b55948db2 fix an issue created by commit 2954. Gerbview: display now an indicator of layers in use. minor code cleanup. 2011-04-05 19:49:14 +02:00
Wayne Stambaugh df8f7d1ee0 EESchema remove global variable and fix text object change type undo/redo.
* Move undo item copy global variable into schematic editor frame object
  member variable.
* Add helper methods for accessing the undo item copy member variable.
* Fix undetected bug when changing a text type.
* Added an exchange command to the undo/redo base class for handling undoing
  a changed item type which cannot be undone by swapping out the variables.
* Revert change to common/hotkeys_basic.cpp that broke hot key behavior.
* Lots of coding policy changes while making the changes above.
2011-04-05 10:46:51 -04:00
Jerry Jacobs fb47536123 More native changes for OSX, see CHANGELOG.txt 2011-04-04 20:05:55 +02:00
jean-pierre charras f2b0e18510 Minor fixes to prepare wxWidget 2.9.1 use:
* store selected language by name instead of wx language id (that changes between wxWidgets version)
* accept always comma and point as flotating point separator.
2011-04-01 19:10:16 +02:00
jean-pierre charras a041ef9dd4 Workaround for zoom levels < 1 in eeschema, with wxMSW version < 2.9 2011-03-30 22:14:44 +02:00
Wayne Stambaugh 67f70fe079 Coding style and Doxygen comment fixes.
* Rename EDA_Rect class to EDA_RECT.
* Rename EDA_TextStruct class to EDA_TEXT.
* Remove duplicate Doxygen comments from sch_sheet_path.cpp.
2011-03-29 15:33:07 -04:00
jean-pierre charras 02d4b59c59 Bitmaps cosmetic enhancements 2011-03-29 12:43:08 +02:00
jean-pierre charras 3f5478eead fix 2 minor bugs: GERBVIEW: Button "Erase all layers" not working, EESCHEMA: Plot to Clipboard: EDA_DRAW_FRAME::PrintPage() error 2011-03-28 21:26:31 +02:00
jean-pierre charras 89ff6c646b Fix bug 741352. Needs more tests 2011-03-25 22:27:06 +01:00
jean-pierre charras 38269efa47 Fix bug 741352 2011-03-25 21:07:27 +01:00
Wayne Stambaugh 175fab48f8 EESchema multiple item hit testing and other minor improvements.
* Add item clarification context menu to EESchema when multiple unresolved
  items are found at the current cross hair position.
* Add collector class SCH_COLLECTOR for supporting multiple item hit testing.
* Removed bit wise masked filtering from schematic item hit testing.
* Removed all old hit testing functions and methods scattered about the
  EESchema source code.
* Move terminal point test function into SCH_SCREEN object.
* Fixed bug in terminal point test when terminating a bus to a label.
* Define the < operator for sorting schematic items.
* Add area calculation method to EDA_Rect item.
* Add method for returning an item's bitmap for menu display purposes.
* Add method for returning an item's menu text for menu display purposes.
* Changed EDA_ITEMS container from boost::ptr_vector to std::vector.
* Factor coordinate string conversion code from EDA_DRAW_FRAME to function
  CoordinateToString().
2011-03-25 15:16:05 -04:00
jean-pierre charras 5f6cd45445 Add Italian translator. very minor 2 other fixes 2011-03-24 20:22:15 +01:00
Dick Hollenbeck 6d713f064b gear up for major use of ReadDelimitedText() by providing a better version 2011-03-23 19:15:33 -05:00
jean-pierre charras 67e24be1d1 Kicad: files cleaning (remove unused files) and code cleaning. Try to fix bug 738840. 2011-03-23 09:00:53 +01:00
jean-pierre charras c01e3a8e97 Version id update 2011-03-22 19:50:47 +01:00
Dick Hollenbeck 6407751741 revised bug fix 2011-03-22 13:29:26 -05:00
jean-pierre charras edfc110913 zoom bitmaps enhancements. 2011-03-20 18:10:38 +01:00
jean-pierre charras 0f4a3b148f Gerbview: cosmetic enhancements 2011-03-20 13:33:28 +01:00
jean-pierre charras 4254ddc814 minor change in cvpcb (better error message when a .cmp file is not found) 2011-03-18 15:33:55 +01:00
jean-pierre charras 21b75f396b Version update. Add some bitmaps sources in svg format. 2011-03-18 13:54:49 +01:00
jean-pierre charras 59534f519c Gerbview: Add drill file history and minor enhancements. 2011-03-17 20:14:45 +01:00
Wayne Stambaugh fe6890a955 Dialog escape key termination and default button fixes.
* Fix about dialog escape key termination bug.
* Fix edit hot keys dialog escape key termination bug.
* Set schematic editor component properties dialog default button.
* Fix schematic editor plot DXF dialog escape key termination bug.
* Set PCB editor layers setup dialog default button.
* Set PCB editor swap layers dialog default button.
* Set PCB editor net list dialog default button.
* Add comment to UIPolicy.txt about escape key termination requiring proper
  dialog button IDs.
2011-03-14 15:17:42 -04:00
Wayne Stambaugh 283cfa67ff Set default button on all dialogs. Fixes lp:665703
* Set default button on all dialogs that do not already have a defined
  default button.  The only exception is the EESchema net list dialog
  which needs converted over to wxFormBuilder and due to it's design makes
  setting the default button in any tab other than the default tab
  problematic.
* Fix escape key dialog handling bug in EESchema print post script
  dialog.
2011-03-14 11:17:18 -04:00
jean-pierre charras 81509a1160 Gerbview: code cleanup and a minoe enhancement. Kicad: minor code cleanup 2011-03-13 19:03:43 +01:00
jean-pierre charras cb8a0315e6 version update 2011-03-12 18:37:44 +01:00
jean-pierre charras f6669b7845 Gerbview: code cleanup: remove dead code and obsolete options. Coding policy class naming fixes.
others: fix minor issues.
2011-03-12 10:50:21 +01:00
Wayne Stambaugh 018292a8c6 PCBNew auxiliary tool bar changes and other minor improvements.
* Remove clearance and net class name read only text boxes from PCBNew
  auxiliary tool bar.
* Display full net class information in message panel when an object that
  supports net classes is selected.
* Move coordinate string conversion function to EDA_DRAW_FRAME object and
  made it more versatile.
* Refresh message panel text when units change.
2011-03-11 10:53:28 -05:00
jean-pierre charras 2f47b3f464 EEschema: fix minor issue (cursoe shape lost when aborting a block command by popup menu)
Pcbnew: dialog plot: make message window resizable, add tool tip and remove unused sizers.
2011-03-11 15:44:08 +01:00
Wayne Stambaugh c07b677a20 Schematic editor locate item changes and other minor fixes.
* Move locate function code into schematic screen object.
* Move test for junction needed into schematic screen object.
* Move test for marking connected items into schematic screen object.
* Move delete item function code into schematic screen object.
* Move delete all markers code into schematic screen object.
* Add method for locating multiple items in schematic screen object.
* Fix minor bug in schematic field object hit test declaration.
* Initial encapsulation work on item picker object.
* Remove duplicate doxygen comments from item picker object source file.
2011-03-10 14:36:30 -05:00
jean-pierre charras 155a9dbe19 All: fix a minor bur annoying issue: incorrect cursor shape after a block command (mainly when a tool is selected) 2011-03-09 21:09:11 +01:00
jean-pierre charras 0760c126ed Code cleaning. Pcbnew: very minor fix 2011-03-04 20:16:00 +01:00
jean-pierre charras 098a20a0d8 fix very minor bugs. 2011-03-03 20:08:13 +01:00
Wayne Stambaugh 1010601a78 PCBNew control update bug fixes, fixes lp:725963.
* Fix grid select box update bug on context menu.
* Fix via size and track width select box update bugs.
* Fix layer pair indicator button update bug.
* Fix auto track width tool bar control enable bug.
* Fix via size and track width select status bug in context menu.
* Fix layer select box and layer control widget select bug when current
  layer is removed.
* Add virtual function to notify objects derived from EDA_DRAW_FRAME that
  the units setting has changed.
* Coding policy class naming fixes.
2011-03-01 14:26:17 -05:00
jean-pierre charras ec400bf7c7 Eeschema, Pcbnew: fix minor issues about mouse cursor position, when loading files or entering sheets. 2011-03-01 19:45:21 +01:00
jean-pierre charras 92952b70aa Use UTF-8 encoding only in kicad files. Under Linux, this was already the case. Under Windows, texts with non ascii characters must be corrected.
This ensure compatibility between platforms.
2011-02-28 19:36:19 +01:00
jean-pierre charras 4ca6c4fb67 Eeschema:
* fix incorrect bounding box size calculation of schematic components.
* fix incorrect bounding box position and size used when schematic components are not found in lib (dummy lib componen used).
Pcbnew:
* Fix issues in block selection for arcs in modedit. Minor code cleaning.
CopyToClipboard: fix incorrect call to PrintPage (bad parameters)
2011-02-27 20:54:01 +01:00
Dick Hollenbeck 38b69092f4 ReadDelimitedText to return number of bytes consumed, not copied 2011-02-27 09:46:46 -06:00
Andrey Fedorushkov d3c8084ab6 pcbnew: fix translate smoothing set in zone settings dialog
kicad: fix Russian GOST page reference sheet - add field 24-25
2011-02-27 13:16:54 +03:00
Dick Hollenbeck 03495698cf much more of sweet parser 2011-02-27 02:16:05 -06:00
Dick Hollenbeck 558af6d764 add EscapedUTF8() and revise ReadDelimitedText() to complement it 2011-02-26 23:43:19 -06:00
jean-pierre charras 90dc2908bd Use Unix notation for paths and filenames in .pro files 2011-02-26 09:35:22 +01:00
Wayne Stambaugh cb647737ee Improve handling of tool bar command IDs.
* Make EDA_DRAW_FRAME current tool ID member variable private.
* Added global no tool selected ID to replace application specific no
  tool selected IDs.
* Change SetToolID to prevent setting the tool ID to anything less than
  the new global no tool selected ID and assert on debug builds.
* Change command and update user interface command event handlers to use
  new global no tool selected ID.
* Fixed schematic library editor add pin hot key handler.
2011-02-24 15:22:12 -05:00
jean-pierre charras 8bde66afbe Eeschema, Pcbnew, fix issues when creating new pins, tracks or segments. 2011-02-24 13:35:14 +01:00
jean-pierre charras d39df05275 Eeschema: fix crash when starting ERC.
Fix other issues.
2011-02-23 14:48:19 +01:00
jean-pierre charras 0132ceb3a1 Pcbnew: remove support of .mdc files (now useless) (already done in cvpcb). 2011-02-22 21:59:16 +01:00
Wayne Stambaugh ee003180bc Global variable removal and minor Doxygen comment fixes.
* Remove global key press variable.  The key press is know passed to
  GeneralControl().
* Removed unused old mouse buttons global variable.
2011-02-22 11:43:03 -05:00
Wayne Stambaugh c02d90e9a7 Use wxUpdateUIEvent in CVPcb and other minor changes.
* CVPcb now uses wxUpdateUIEvent instead of set toolbars.
* Removed duplicate event handlers in CVPcb that were factored into
  EDA_DRAW_FRAME.
* Fix definition of GeneralControle() in CVPcb that prevented it from being
  called.
* Remove rarely used and scary refresh code GeneralControle() method in all
  main frame windows.
* Factor zoom menu and tool bar command IDs down to EDA_DRAW_FRAME.
2011-02-21 16:07:00 -05:00
Wayne Stambaugh bdca3c5efb All control state handling is now performed in wxUpdateUIEvent handlers.
* Old control state handling code completely removed in all applications.
* Factor common control state handlers into EDA_DRAW_FRAME.
* Replaced EDA_ITEM test for newness with IsNew() method.
* Factor vertical right toolbar command handlers out of giant edit command
  switch statement in EESchema and PCBNew.
2011-02-21 08:54:29 -05:00
jean-pierre charras c476ae44b5 Fix non ascii characters in zone dialog. 2011-02-21 08:19:15 +01:00
jean-pierre charras 640a06850f Fix some issues. 2011-02-17 19:34:27 +01:00
Wayne Stambaugh e557b388a7 Fixes MSVC compile errors. 2011-02-16 14:16:38 -05:00
Wayne Stambaugh 821b8b65ec Fixes escape key doesn't dismiss select component dialog in EESchema bug. 2011-02-15 09:50:25 -05:00
Dick Hollenbeck f8263c0e62 sweet parser work 2011-02-14 00:39:51 -06:00
Wayne Stambaugh 7b8b51b240 Draw panel object refactoring and other minor code cleaning.
* Rename all member variables and methods that reference the cross hair
  code in draw panel object from cursor to cross hair to eliminate confusion
  between the two concepts.
* Rename cursor capture call backs in draw panel object to improve code
  readability.
* Create helper class for turning off the cross hair while drawing.
* Remove redundant block clear code.
* Remove redundant mouse capture call back reset code when end capture
  call back is called.
* Remove unused function definitions in base draw frame object.
* Lots of minor coding policy and doxygen comment fixes.
2011-02-11 15:48:13 -05:00
Wayne Stambaugh 34094e77fc Fix and enable optimized grid drawing and other minor changes.
* Fix optimized bitmap grid drawing method.
* Enable optimized grid drawing method on Windows and Linux.
* Create a helper class for resetting and restoring device context scale
  and origin settings for blitting purposes.
* Use wxLogTrace instead of wxLogDebug for coordinate dumping in
  drawpanel.cpp.  See comments for more information on enabling coordinate
  tracing.
* Add flag to allow hiding the drawing cross hair.  Hide cross hair by
  default on OSX.
* Move get cross hair device position code from draw panel object to base
  screen object.
* Remove redundant parent member variable from draw panel object by
  overriding wxWindow::GetParent() method.
2011-02-09 14:47:33 -05:00
jean-pierre charras e3637dd369 Code cleaning and minor enhancements 2011-02-08 19:39:41 +01:00
Wayne Stambaugh e01f89670b GerbView rendering bug fix and other minor improvements.
* Fix rendering bug in GerbView caused by wxDC scaling change caused by
  setting the wxDC clipping region.
* Eliminate the need to have optional background erasing as the change
  above fixed that problem as well.
* Default cursor handling improvements.
2011-02-08 09:48:38 -05:00
Marco Mattila f92da901fb Change postscript circle plotting to use default linewidth. 2011-02-07 22:12:19 +02:00
Wayne Stambaugh 66566f9b47 EESchema command handling and other minor improvements.
* Schematic editor cancel current tool command now use a single command
  ID that is used everywhere the event is generated.
* Moved cancel current tool code from Process_Special_Functions to a
  separate event handler.
* Add idle check method to block select object.
* Add block active check to base screen object.
2011-02-05 14:22:58 -05:00
jean-pierre charras da106200c8 CvPcb: Code cleanup. Rename WinEDA_CvpcbFrame to CVPCB_MAINFRAME, according to coding style policy.
Change in CvPcb: CvPcb now does not use .dcm files, only .mod files to read modules keywords and doc
2011-02-05 19:00:05 +01:00
jean-pierre charras 9370dd83de CvPcb: Code cleanup. Rename WinEDA_CvpcbFrame to CVPCB_MAINFRAME, according to coding style policy.
Change in CvPcb: CvPcb does not use now .dcm files, only .mod files  to read modules keywords and doc
2011-02-05 17:15:48 +01:00
Wayne Stambaugh 0d8cb9b53c EESchema improvements and other minor fixes.
* Remove base screen methods from draw frame object and correct current
  screen methods in derived objects.
* Move restore old wires function code into schematic screen object.
* Make add junction method use current screen position instead of store
  position.
* Move poly line ghosting function into the delete current segment method
  as that was the only place is was being used.
* Add method to base schematic object of testing if object has a label
  that can be incremented.
* Simplified the schematic hierarchy traversing code.
* PCBNew Doxygen warning fixes.
2011-02-04 21:21:11 -05:00
Wayne Stambaugh 50f063da07 Changes to use cursor position as parameter and snap to grid settings.
* Changed managed cursor callback definition to include the current
  cursor drawing position.
* Modified all managed cursor callbacks to match new definition.
* Added snap to grid option to base drawing frame object.
* Changed add no connect managed cursor callback to use new position
  parameter instead of the stored one.
* Lots of coding policy fixes.
2011-02-03 14:27:28 -05:00
Dick Hollenbeck 1ae44d090a work around 8 bit wxString B.S. 2011-02-02 13:41:35 -06:00
Wayne Stambaugh 6a26a7f9bf Use logical cursor position and other minor changes.
* Remove unused member variable m_SizeVisu from base screen object.
* Move nearest grid position code into base screen object.
* Add get cursor position method to base screen object.
* Add position parameter to OnHotKey method in base draw frame and all
  derived objects.
* Pass logical position on left mouse button click and double click
  events instead of device position.
* Pass logical position to on right mouse button click instead of device
  position.
* Use logical event position parameter for locating items in EESchema
  instead of the stored position.
* Remove unused position parameter when displaying component edit dialog
  in EESchema.
* Comment out debugging macro in eeschema/template_field_names.cpp that was
  preventing debug builds using wxWidgets 2.8.x.
2011-02-02 14:01:21 -05:00
Dick Hollenbeck 0093f4f612 ++common:
* macros.h now has TO_UTF8() and FROM_UTF8() which are working converters
    to and from UTF-8 encoding for any wxWidgets build mode.  We can switch to
    them at any time.  I am using them now for specctra conversions and
    elsewhere where I wanted gauranteed UTF8 encoding.
  * added OUTPUTFORMATTER::Quoted( const wxString& ) to simplify converting
    to UTF8 encoded s-expression atoms.  The recommended technique is now simply:
        out->Quoted( wxString ).c_str()
2011-02-02 09:31:48 -06:00
Wayne Stambaugh 85ae0373e3 Global variable removal and coordinate fixes.
* ActiveScreen global variable is gone, yeah!
* Use drawing coordinates instead of screen coordinates when calling
  GeneralControle().
2011-02-01 10:46:25 -05:00
Marco Mattila 6f9fc8d210 Fix drawing of mirrored texts in pcbnew. 2011-02-01 13:56:09 +02:00
Wayne Stambaugh 44e474c25c Drawing, pcbnew, and other minor fixes.
* Use wxDC to calculate screen center position.
* Minor grid drawing optimization.
* Remove an unnecessary use of global variable ActiveScreen.
* Doxygen warning fixes.
2011-01-31 13:26:12 -05:00
Wayne Stambaugh d657b43052 Use wxDC for all coordinate manipulations.
* Remove all occurrences if #ifdef USE_WX_ZOOM and all associated code within
  the #else/#endif block ( old zoom code ).
* Removed the build option for USE_WX_ZOOM from CMakeList.txt and config.h.in.
* Removed all scaling code in base screen object.
* Fixed buffered paint and buffered client DC on Windows.  Buffering works
  properly on Linux and Windows.
* Modified kicad_device_context.h to automatically uses buffering on platforms
  where double buffering is supported natively.
* Remove all of the scaled versions of the drawing functions in gr_basic.cpp
  and any support code.
* Removed all traces of ActiveScreen global variable from eeschema and
  gerbview.
* Renamed Recadre_Trace to RedrawScreen in draw frame object.
* Renamed PostDirtyRect to RefreshDrawingRect in draw panel object.
* Lots of code cleaning an Doxygen comment improvements.
2011-01-30 17:22:38 -05:00
Dick Hollenbeck 9d870fe157 fix carriage return escape 2011-01-30 14:06:05 -06:00
Dick Hollenbeck 604edcac3a ++all:
* DSNLEXER::NextTok() now uses two separate modes to parse quoted strings.
    This gives us the freedom to control our own destiny separate from the
    constraints put on us by the Specctra DSN spec.
  * Added Documentation/s-expressions.txt to explain all this.
  * Enhanced our quoting protocol by moving away from doubling up double quotes
    to a C line escape mechanism.
  * Now support multi-line strings, which when properly escaped, can still be
    read in as a token originating on a single line.
2011-01-30 13:26:03 -06:00
Dick Hollenbeck e0f4963b6a OUTPUTFORMATTER::Quoted() was not wrapping strings containing internal quotes with quotes 2011-01-28 14:18:30 -06:00
jean-pierre charras c63908b5bd Pcbnew, Module Editor: fix bug 707692 and other potential crashes (when having a block command in progress and try to make an edit command) 2011-01-26 08:43:59 +01:00
jean-pierre charras 4f3708c13f Eeschema: bug 706677 fixed (delete connection, junction persist).
This was due to a duplicate constants ( with sligtly different values)  used to select items in some seach functions that broke filtering. Old definitions removed.
2011-01-25 15:06:17 +01:00
jean-pierre charras 3c49fb1e9d Eeschema: fix bug 706429 2011-01-23 13:32:33 +01:00
jean-pierre charras 495f2a04ee Version id update 2011-01-22 12:38:10 +01:00
Wayne Stambaugh 73e38ce98c EESchema code refactoring and coding policy naming fixes.
* Move schematic wire and bus break code into schematic screen object.
* Move schematic test for dangling ends into schematic screen object.
* Remove left over debugging output in schematic screen object.
* Remove unused file eeschema/cleanup.cpp.
* Fix bug in schematic line object hit test algorithm.
* Fix a string concatenation compile error added in r2752.
* Rename class WinEDA_BasicFrame to EDA_BASE_FRAME.
* Rename class WinEDA_DrawFrame to EDA_DRAW_FRAME.
* Rename class WinEDA_DrawPanel to EDA_DRAW_PANEL.
2011-01-21 14:30:59 -05:00
Wayne Stambaugh e560573c5e Schematic object encapsulation and other minor improvements.
* Encapsulate file name member of base screen object.
* Encapsulate associated screen member of schematic sheet object.
* Create add screen method to schematic sheet object to simplify setting
  the associated screen.
* Move the change file name code in the schematic sheet object to the edit
  sheet method in the schematic editor frame object to eliminate message
  dialogs.
* Improve reference counting in schematic screen object.
* Add helper type definitions for changing schematic object storage to C++
  containers.
2011-01-20 11:34:57 -05:00
Dick Hollenbeck ed8c021f63 ++all:
* TokenList2DsnLexer.cmake now supports comments, which start with a leading
    # character, and may be either on their own line or on a line after a token.
  * DSNLEXER::PopReader() now pops even the last LINE_READER* and returns it.
++pcbnew:
  * SPECCTRA_DB now inherits from new class SPECCTRA_LEXER, which led to a great
    deal of simplification and code factoring.
  * Moved specctra keywords into specctra.keywords.
2011-01-19 14:46:07 -06:00
jean-pierre charras f43f7af5fe Modedit: fix issues when printing a footprint. But needs refinement. Work in progress (mainly "Fit in page" is not working).
Minor code cleaning
2011-01-17 19:37:58 +01:00
Kenta Yonekura 4a11862e0b commit patch from Kenta Yonekura (adding Japanese language) and add Kenta Yonekura to translator list in about dialog 2011-01-16 18:11:26 +01:00
Dick Hollenbeck f7a2283eae eliminate a copying operation 2011-01-16 07:14:08 -06:00
jean-pierre charras 2fd7f4ca14 StrPurge( char* text ): Fix incorrect behavior when string text is void.
Very minor enhancement in module edition dialogs.
Fix a minor bug in design rules editor: in Global Rules Edition: drill values > via diameter not checked
and the first item (track or via) in list was not checked (explains Bug 702177, that is not really a bug)
2011-01-16 13:49:58 +01:00
Dick Hollenbeck c4722e0f39 StrPurge(), see mailing list 2011-01-15 23:11:17 -06:00
Dick Hollenbeck 6e119c2bb8 fix broken ReadLine() 2011-01-15 16:52:41 -06:00
jean-pierre charras 73585a8514 Fix minor bug (layer color not updated in toolbar when changed in layer manager)
Pcbnew: fix that prevents loading modules from libraries (footprint name not identified in lib)
Module Editor: Try to fix incorrect printing. Fixed now only for scale 1. Nor working for other scales. (Work in progress).
Gerbview: Known bug: printing not working.
VRML export: Fix incorrect export of 3D shapes rotations when the 3D shape was rotated.
2011-01-15 19:06:10 +01:00
Marco Serantoni 1f0f784d8f MacOSX: Workaround for wx problems with USE_WX_ZOOM 2011-01-15 12:12:25 +01:00
Marco Mattila e79b596308 Add FILTER_READER class. Introduce FILE_LINE_READER into pcbnew. 2011-01-14 19:43:30 +02:00
Wayne Stambaugh f9af593ee3 Minor EESchema improvements.
* Rename sch_item files to sch_junction.
* Make global variable g_ItemToRepeat a private member of SCH_EDIT_FRAME
  object.
* Encapsulate SCH_SCREEN reference count member.
2011-01-12 16:47:54 -05:00
Dick Hollenbeck 2dd1287141 filter_reader.cpp 2011-01-11 22:51:29 -06:00
Wayne Stambaugh a3a73ef5dd EESchema block code cleaning and other minor fixes.
* Move update block pick list code to SCH_SCREEN object.
* Remove redundant drawing function RedrawOneStruct().
* Change context menu text "Noconn" to "No Connect".
* Change context menu text "GLabel" to "Global Label".
2011-01-10 11:50:40 -05:00
Dick Hollenbeck 9f9e7fd5c1 Enhance DIR_LIB_SOURCE:ReadPart() and GetRevisions() to work in the un versioned mode. 2011-01-09 07:35:13 -06:00
jean-pierre charras 2ba076f7bc version id update 2011-01-08 19:59:18 +01:00
jean-pierre charras 2624b7b5e5 Update version id 2011-01-07 13:47:12 +01:00
Dick Hollenbeck c42af9387d oops 2011-01-05 15:21:32 -06:00
Dick Hollenbeck 62a4072c92 minor bugs 2011-01-05 15:13:47 -06:00
jean-pierre charras 784c04203e Finish work to enhance annotation algorithm.
Fix a minor warning when starting Kicad in debug mode (wxWidgets 2.9.1 specific)
2011-01-02 19:56:44 +01:00
Dick Hollenbeck 84ed5f501d ++new:
* Added the basic structure to the Sweet parser in sch_part.cpp.
  * Got inheritence working off of the 'extends' keyword and PART::inherit()
  * Tossed the units support out of sweet.keywords, since we agreed to go dimensionless.
++richio:
  * Added the problemInputLine support to PARSE_ERROR, so UI can show the
    offending line of bytes.  Yes bytes, not even guaranteed to be characters.
2011-01-01 16:56:07 -06:00
jean-pierre charras e7d5770f42 Fix some Doxygen warnings.
Eeschema: cleaning code. Start work to enhance annotation algorithm.
Already added an option to annotate using sheet number (sheet 1 uses numbers 100 to 199, sheet 2 uses 200 to 299..).
Works fine if deleting existing annotation, but needs work to be used when the existing annotation is kept .
2011-01-01 18:28:21 +01:00
Dick Hollenbeck d2cc77ac71 see CHANGELOG.txt 2010-12-30 16:15:53 -06:00
jean-pierre charras a9010796e0 Doxygen comment warning fixes. 2010-12-29 18:47:32 +01:00
Dick Hollenbeck 85477537ce more richio enhancements, /new work, SCH::LIB_TABLE nearly finished 2010-12-28 10:55:28 -06:00
jean-pierre charras 258cebf1a8 Fix some Doxygen warnings. No new code. 2010-12-28 12:24:42 +01:00
Dick Hollenbeck a7c11a0b11 implement most of SCH::LIB_TABLE, start SCH::LPID, enhance richio 2010-12-27 20:44:30 -06:00
Dick Hollenbeck bdbd28a9f4 complete initial version of LIB_TABLE::Parse() 2010-12-27 15:22:12 -06:00
Dick Hollenbeck 4f956712e2 fill out more /new files 2010-12-27 10:49:39 -06:00
jean-pierre charras de6beac92a version id update 2010-12-22 19:54:47 +01:00
Wayne Stambaugh b98538ec35 Add copy constructors and cloning to schematic objects and other minor fixes. 2010-12-21 10:13:09 -05:00
jean-pierre charras 5bab73d638 Eeschema: fix issues in drag command (mainly hotkey command and forgotten wire ends connected to components to drag).
Rename EDA_Rect::Inside to EDA_Rect::Contains ( EDA_Rect::Inside( const EDA_Rect& aRect ) was very ambiguous )
 Fix some Doxygen warnings and erroneous comments; Add comments.
2010-12-20 18:44:25 +01:00
jean-pierre charras 78ef3152c6 Gerbview: faster to start. 2010-12-19 09:02:02 +01:00
jean-pierre charras 2e2ecdd448 Gerbview: fix most of Doxygen warnings. 2010-12-18 19:47:58 +01:00
jean-pierre charras 1901a379b0 Gerbview: remove flicker when refresh screen. Pcbnew fix (partially) issue when printing in mirror mode ( version compiled with USE_WX_ZOOM = ON specific). Minor enhancements. 2010-12-18 17:09:06 +01:00
jean-pierre charras 7d85aa92a8 Fix minor issues. 2010-12-18 09:59:04 +01:00
Marco Serantoni 81b3fdf157 Mac: OVERLAY FIXES for WX2.8 and Enhancements 2010-12-17 23:57:09 +01:00
jean-pierre charras b8eba35cba Gerbview: remove flicker when refresh screen, and loadind files. Fix very minor bugs.
Minor cosmetic enhancements.
commint forgoten files in boost lib.
2010-12-17 21:34:29 +01:00
Wayne Stambaugh 7cb34aece7 Schematic component object encapsulation and Doxygen comment warning fixes. 2010-12-14 10:56:30 -05:00
Wayne Stambaugh a8a99abefe Schematic object hit testing improvements. 2010-12-13 10:59:00 -05:00
jean-pierre charras e9f557e65a Pcbnew plot functions: code cleanup, coding policy fixes and minor enhancements 2010-12-11 19:40:39 +01:00
Wayne Stambaugh adb4ad1a7b Schematic object improvements and other minor fixes. 2010-12-10 14:47:44 -05:00
Wayne Stambaugh c79077c9a2 Minor fixes and lots of coding policy changes. 2010-12-08 15:12:46 -05:00
Wayne Stambaugh 3fed7b9dd9 Component library object encapsulation work. 2010-12-07 11:10:42 -05:00
Marco Mattila 9dc9cc1f78 Board manufacturers typically do not print silkscreen on areas without
soldermask. Nevertheless, it would be nice to have proper gerbers to
begin with, i.e., gerbers with no silkscreen in soldermaskless areas.
Of course, most of the problem can be taken care of by drawing the
footprints properly. However, sometimes the silkscreen of one
footprint ends up on the pads of another one (think components under a
so-dimm card, for example). The attached patch adds an option to
subtract the soldermask from the silkscreen when doing gerber output.

marco
2010-12-06 16:05:12 -06:00
jean-pierre charras 6886e50d15 Pcbnew: For zone filling algo, change the default polygon library from Kbool to Boost::polygon (USE_BOOST_POLYGON_LIBRARY default is ON). (need to rebuild makefile)
Gerbview: added decimal format for coordinates, sometimes found in Gerber files.
2010-12-02 18:26:32 +01:00
jean-pierre charras 67d98658bc minor cleanup. minor enhancements. Finish file housekeeping. add Bug 682586 fix from Mark van Doesburg. 2010-11-29 16:05:01 +01:00
jean-pierre charras 8e0937e6a2 Pcbnew: code cleaning, dialogs converted from Dialogblocks to wxFormBuilder, file housekeeping. Add patch from Manveru. 2010-11-27 14:09:18 +01:00
jean-pierre charras cdd9e8cabe Pcbnew: code cleanup 2010-11-26 18:47:35 +01:00
jean-pierre charras f01653fc56 Fix gcc 4.5 warnings compil. 2010-11-20 20:53:00 +01:00
jean-pierre charras f930894d9f Common dialog file housekeeping. Code cleanup, and minor fixes. 2010-11-20 11:59:59 +01:00
jean-pierre charras 8257ebeb32 Code cleanup 2010-11-19 19:50:23 +01:00
jean-pierre charras e095b07cc3 code cleaning 2010-11-18 22:16:28 +01:00
jean-pierre charras fdb18547a6 Eeschema: fix bug 676532. Minor enhancements. 2010-11-17 19:41:20 +01:00
jean-pierre charras 9b77f2a415 Formatting, code cleaning and fix erroneous or inconsistent comments in block functions 2010-11-13 12:02:24 +01:00
Dick Hollenbeck 6c9244e8c3 fix function comments, this time ones in *.cpp files until they
can be deleted later if they exist in the headers, or moved to 
headers if they should exist in the headers.
2010-11-12 10:59:16 -06:00
Dick Hollenbeck 636b2d301e function comments, fix ones in *.cpp files until they can be deleted if they exist in the headers 2010-11-12 10:36:43 -06:00
Wayne Stambaugh 76aa3f6e1c EESchema schematic object refactoring and header rationalization. 2010-11-10 10:30:12 -05:00
Dick Hollenbeck 067bf8518c change IOError class name spelling to IO_ERROR to conform to coding standards 2010-11-09 09:45:11 -06:00
Marco Serantoni a8d5e06818 Gerbview: Added new LayerBox 2010-11-04 22:43:42 +01:00
jean-pierre charras 7873b46e45 Gerbview: fix an issue with gerber files having a line comment starting by G04 and a command after this comment, on the same line. 2010-11-04 19:51:18 +01:00
Wayne Stambaugh aeb6dd8cc7 Minor schematic object improvements and code cleaning. 2010-11-03 10:13:15 -04:00
Marco Serantoni 25700d31d1 Fixed kicad.app linking, layer behaviour on OSX and toolbar behaviour 2010-11-01 20:03:08 +01:00
jean-pierre charras 8724386be2 fix minor issues in internationalized strings 2010-11-01 19:33:44 +01:00
jean-pierre charras 527de3e5aa Minor enhancements, and minor code cleanup. Eeschema: added hotkey J to place junctions 2010-10-30 12:03:41 +02:00
Vovanium a6a7560562 Draft version for per user search paths config (LibraryPath1, 2... in .kicad_common) 2010-10-30 06:30:21 +04:00
Wayne Stambaugh 1e7d95d58e Begin schematic object rationalization and other minor improvements 2010-10-26 16:25:48 -04:00
jean-pierre charras 387bbe2b22 Pcbnew: fixed bug 666210 2010-10-25 18:48:05 +02:00
jean-pierre charras 1206177ce0 Gerbview: minor enhancement. Boost::Polygon: commit forgotten file 2010-10-23 20:12:11 +02:00
Marco Serantoni b6eb58c547 About box without wxAUI_NB_WINDOWLIST_BUTTON 2010-10-22 21:22:20 +02:00
Dick Hollenbeck dbd4fe12be STRING_LINE_READER::ReadLine() has been broken for a few weeks, since changing the purpose of member 'source' 2010-10-21 10:49:36 -05:00
Dick Hollenbeck 27a02d3226 fully implement nul termination for LINE_READER::ReadLine() 2010-10-21 08:21:32 -05:00
Dick Hollenbeck 8b4bc768a9 use delete[], add assert 2010-10-20 18:11:00 -05:00
Dick Hollenbeck 8b4cad8a3e make LINE_READERs have dynamic buffer sizes 2010-10-20 17:47:34 -05:00
jean-pierre charras 9ec8d53604 Gerbview: Added support for gerber command SR (Step and Repeat) and multiple MOIN and MOMM in file 2010-10-15 20:59:26 +02:00
Martijn Kuipers b5019b823f wxLOCALE_LOAD_DEFAULT patch from Martijn Kuipers. 2010-10-14 14:17:14 +02:00
jean-pierre charras 6b05cf315f Fixed bug in GRLineArray(). Cleanup Gerbview code 2010-10-13 21:50:23 +02:00
jean-pierre charras 2b7626a243 Fixed bug 658716 (Pads too large in gerber for rotated SMT module) 2010-10-12 18:01:07 +02:00
jean-pierre charras cc6cae9b12 Gerbview: added support of mirroring, scaling an offseting RS274X commands 2010-10-09 22:05:03 +02:00
Marco Serantoni ea812ef5c9 Zones drawing optimization with WXGrapchisContext + Fix bug #612132 2010-10-09 10:08:29 +02:00
jean-pierre charras 69b3bfd471 added forgotten lines from patch "EEschema selection.patch" 2010-10-06 22:16:31 +02:00
jean-pierre charras f431869300 added forgotten lines from patch "EEschema selection.patch" 2010-10-06 21:35:20 +02:00
jean-pierre charras 3c6c7134af added forgotten lines from patch "EEschema selection.patch" 2010-10-06 20:43:51 +02:00
jean-pierre charras 0687921fa9 Gerbview: display now an error report after loading a gerber file. 2010-10-05 21:54:27 +02:00
Dick Hollenbeck 0f64b35234 PopReader return value 2010-10-05 09:57:12 -05:00
Wayne Stambaugh 40c7d81bbd Fix build errors when compiling against wxWidgets 2.8.x.
* Changed wxPenStyle which is not define in wxWidgets 2.8 to int and
  renamed GRRect to prevent duplicate function definition in gr_basic.
* Add missing wxT() macros to strings in rs274x.cpp.
2010-10-05 09:46:53 -04:00
Dick Hollenbeck 3213832411 enhance and better document PopReader() 2010-10-05 08:38:15 -05:00
jean-pierre charras 9f4e57d428 Some cleanup and fixes in gerbview. Cleanup gr_basic.* and added in gr_basic.* a minor modification coming from "EEschema selection.patch". 2010-10-05 13:44:34 +02:00
Dick Hollenbeck 0267b05938 add PushReader and PopReader to DSNLEXER, make FILE_LINE_READER own its FILE* 2010-10-05 02:15:29 -05:00
Wayne Stambaugh 3335ccd98d Initial work on new component library stucture.
* Use C++ map in component library instead of boost::ptr_vector.
* Drop Boost pointer containers for standard C++ containers.
* Moved duplicate name user interface elements from library object to
  library editor.
* Added code to support direct addition and replacement of component
  alias objects into libraries.
* Removed temporary strings used to add and remove alias objects.
* Libraries only store alias objects, components now accessed thru alias.
* Simplify library API for adding, removing, and replacing components.
* Updated edit component in library dialog and library editor to reflect
  component library object changes.
* Fixed bug in library viewer when displaying alias name.
* Made a few header files compile stand alone per the new coding policy.
* Remove some dead code and the usual code formatting fixes.
2010-10-04 14:54:14 -04:00
jean-pierre charras a188f9d06e added orto2 patch 2010-10-04 14:58:07 +02:00
jean-pierre charras 659299ee8f Gerbview: more about apertures macros and draw funtions. 2010-10-01 21:11:30 +02:00
Dick Hollenbeck 2dc5327634 pieces of Amir's 2010-09-28 patch 2010-09-29 13:19:26 -05:00
jean-pierre charras b992af3eb3 Gerbview code redesign 2010-09-28 16:42:05 +02:00
Wayne Stambaugh 6d5ee76668 Fix build error when compiling against 2.8 branch of wxWidgets. 2010-09-24 08:18:33 -04:00
jean-pierre charras f59e30bc8a Fixed a minor artefact when redraw the grid after a scrool. 2010-09-23 16:04:08 +02:00
Marco Serantoni 27e9eedd9d speedup enhancement and little cleanup 2010-09-21 21:21:46 +02:00
jean-pierre charras bcd4d4ecde fixed a minor artefact when 45 deg segments are drawn in sketch mode 2010-09-21 08:35:11 +02:00
Dick Hollenbeck df5ce91765 use the more inviting term 'testing', not 'unstable' 2010-09-20 11:26:48 -05:00
Marco Serantoni bf67eed7eb OSX adjustments - grid fix - speedup of refresh 2010-09-19 12:23:53 +02:00
jean-pierre charras 5738d2960d removed in drawpanel an erroneous change (was made only for a test). drc code cleaning. cmakelist.txt changes in minizip. 2010-09-18 10:29:40 +02:00
jean-pierre charras e162ffee3c Use D_PAD::BuildPadPolygon() in plot functions 2010-09-13 13:51:09 +02:00
jean-pierre charras 658ca2a21e Fixed some issues about trapezoidal pads. Better pad editor dialog. fixed other (very) minor bugs. Code cleaning 2010-09-11 18:33:43 +02:00
jean-pierre charras b45a35b719 Switch to new Kicad about dialog: removing old code. 2010-09-03 19:39:57 +02:00
jean-pierre charras 44269729ab New patch for kicad about dialog 2010-09-03 16:33:09 +02:00
jean-pierre charras cc4b36236d Design rule dialog: use wxLC_VIRTUAL options in wxListBoxes tu speed up nets lists display (which was very long for board with a lot of nets) 2010-09-02 15:10:48 +02:00
jean-pierre charras f578abcc97 Remove pad move/drag/edit hotkeys id board editor (Marco Mattila'patches) 2010-09-02 10:23:38 +02:00
jean-pierre charras 72c48d46da Added new KiCad about dialog, from Rafael Sokolowski <Rafael.Sokolowski@web.de> 2010-09-01 15:31:20 +02:00
jean-pierre charras 657f62ab0c fixing bug 626875. Cleaning code
Try to fix block selection issue with some windows managers.
2010-08-31 17:54:05 +02:00
Heiko Rosemann 297293d487 https://lists.launchpad.net/kicad-developers/msg05171.html 2010-08-29 13:23:31 -05:00
jean-pierre charras bfe4f85b99 Fixed some issues in hotkeys editor 2010-08-29 18:36:52 +02:00
jean-pierre charras a153b25411 Hotkey editor code tweaking 2010-08-28 21:08:58 +02:00
jean-pierre charras f77121a57a Fixed compatibility with wxWidegets 2.9.1.
Added hotkeys editor from David Turner, with a lot of enhancements and fixes
Added pins connections info in intermediate netlist for each compoment. This is redundant, but some netlist formats (ORCADPCB, PSPICE) are very easy to create with this redundant info.
2010-08-28 20:02:24 +02:00
Wayne Stambaugh 91530e7a60 Added help menu item to copy bug report information to clipboard. 2010-08-24 13:26:51 -04:00
Dick Hollenbeck 92d58ffea4 XML tweaks 2010-08-19 09:02:49 -05:00
Dick Hollenbeck f839ba9502 Use wxXmlNode::GetProperties() and not GetAttributes() since the former is more widely available in older wxXml libs 2010-08-11 20:56:25 -05:00
Dick Hollenbeck 0ceb19879b implement OUTPUTFORMATTER::Quoted() 2010-08-11 14:52:44 -05:00
Dick Hollenbeck 6c5927c536 ++CMakeModules:
Revise TokenList2DsnLexer.cmake to take outCppFile and outHeaderFile optinally
    and enum mandatorily.  Standardize the script's invocation technique within
    all the CMakeLists.txt files.
2010-08-09 11:56:00 -05:00
Dick Hollenbeck fb0bb79a8d TokenList2DsnLexer.cmake, netform.cpp enhancements 2010-08-08 21:03:16 -05:00
Dick Hollenbeck f285c8295b S-expression in xnode.cpp 2010-08-07 19:31:07 -05:00
Dick Hollenbeck 2c44d8175f add XNODE and XATTR classes 2010-08-07 10:25:18 -05:00
Dick Hollenbeck 5d7410c9ea Put netform.cpp functions into a class so scratch memory objects can be freed.
Improve code performance and appearance
2010-08-02 21:13:33 -05:00
jean-pierre charras 60c1cbe843 fixed issues with wxWidgets 2.9.1 2010-07-27 18:49:38 +02:00
jean-pierre charras 141d5b5f3c fixed somes issues with wxWidgets 2.9.1 2010-07-27 14:47:08 +02:00
jean-pierre charras 1d9c3cce7f fixed minor issues. 2010-07-27 11:01:26 +02:00
jean-pierre charras f0213de0ef code cleaning. 2010-07-20 20:11:34 +02:00
jean-pierre charras 6292dcba76 minor fix 2010-07-17 14:04:42 +02:00
Andrey Fedorushkov 8071562225 fix conflict variable name for russian GOST 2010-07-13 17:18:13 +04:00
jean-pierre charras 3097b919ed Pcbnew: Added grid origin patch from Lorenzo Marcantonio. Converted set grid dialog from DialogBlocks to wxFormBuilder, and added in this dialog the grid origin parameters settings. 2010-07-13 12:42:32 +02:00
jean-pierre charras 9e3a042449 fixed issue for negative numbers starting by "-" in dialogs 2010-07-13 08:06:18 +02:00
jean-pierre charras 642d1f2ea6 fixed very minor compil warnings. (no bugs) 2010-07-12 21:28:38 +02:00
Dick Hollenbeck bc14e66d78 A little useful feature: even if the default unit can be changed between
inches and mm, the industry is crazy enough to force us with mixed
design. For example I routinely use imperial units for track size and
clearance, but drilling is strictly a metric issue...

So I added a little parser to recognize a suffix specification in the
unit text boxes... so you can put in things like:
1in (1 inch)
1" (idem)
25th (25 thou)
25mi (25 mils, the same)
6mm (6 mm, obviously)

The rules are: spaces between the number and the unit are accepted, only
the first two letters are significant.

As a bonus, it also recognize the period (.) as a decimal point
substituting it with the correct locale character (there was a wishlist
for it, IIRC). Most useful for number pad fans :D
2010-07-12 09:07:09 -05:00
jean-pierre charras 052876079a fixed bug 603481. Better bitmap2component look. fixed some locate problems for footprints using polygons (mainly created by bitmap2component) 2010-07-11 18:24:44 +02:00
Dick Hollenbeck 0361ad6a55 factor some pioneering code into a the stable building block class DSNLEXER, generalize expected valued for name and value within the template field parser. 2010-06-18 11:00:16 -05:00
Dick Hollenbeck f3d5c4948b meet Ralph, a big harry template fieldnames patch 2010-06-17 11:30:10 -05:00
jp 902bb851cb fixed bug 587970. 2010-06-02 12:44:50 +02:00
Wayne Stambaugh 5ce9c9a9d7 Open file dialog fixes and minor code cleaning.
* Fix a minor problem with wxFileDialog to open a file that no longer
  exists in PCBNew.
* Make GerbView open file behavior the same as PCBNew.
* Remove redundant PCB file wild card definition.
* Add open file refactor task to the todo list.
* Fix some minor code formatting issues.
2010-05-17 16:35:46 -04:00
Jerry Jacobs 9740183127 Move toolbars.cpp to wineda_toolbar.cpp 2010-05-16 21:47:22 +02:00
jean-pierre charras 0dddb72002 Set minimum cmake version to 2.6.4. Added footprint name edition in the module editor dialog properties. 2010-05-16 16:05:04 +02:00
Andrey Fedorushkov 67a959a513 fix minor bug russian GOST 2010-05-16 10:32:38 +04:00
Andrey Fedorushkov 5cec27481e fix minor bug russian GOST 2010-05-14 23:31:46 +04:00
Dick Hollenbeck 74cc5a75a8 fix Bug #578532, document and embellish QuoteFullPath() 2010-05-11 09:35:13 -05:00
jean-pierre charras 9026fe6e56 fixed bug 573833 2010-05-02 21:35:46 +02:00
jp ec5e682ef8 fixed some issues in SVG export. 2010-04-20 13:23:59 +02:00
jean-pierre charras b448040808 Pcbnew: Added VRML export, from the patch sent by Lorenzo Marcantonio ( october 2009, 11) 2010-04-19 13:38:57 +02:00
jean-pierre charras bffefd7e33 Pcbnew: Added VRML export, from the patch sent by Lorenzo Marcantonio ( october 2009, 11) 2010-04-19 08:09:40 +02:00
jean-pierre charras ff11ed0f38 Bug fixes, code cleaning and Cvpcb enhancements (see changelog) 2010-04-16 18:28:35 +02:00
charras 32ff242157 Pcbnew: fixed an inconsistency in DRC. (see changelog)
fixed others very minor bugs.
2010-04-08 11:33:43 +00:00
stambaughw 143526462c First pass at DSN token file generator and other minor changes.
* Add CMake script to generate DSN token header and source file from
  token list file.
* Add preliminary component library DSN token list and lexer file to
  test script and prepare for new component library file lexer.
* EESchema: right click on ERC check mark displays error in message panel.
* Remove PCBNew header file dependency from common DSN lexer source.
* Minor code clean ups.
2010-04-06 14:09:52 +00:00
vovanium 6e61193075 Font bug removed 2010-04-01 12:14:39 +00:00
charras 5f5620a1b9 ++Pcbnew
Pcbnew: Fixed an issue in GERBER file creation, under Vista and W7 only for non administrator users
Plot files were 0 byte length.
This was due to use of function tmpfile() in a GERBER function to create a temporary file that seems not working using mingw.
Replaced by more usual files functions.
2010-03-31 16:59:32 +00:00
charras 14f74f7ab4 preparing a bug fix release 2010-03-30 17:52:34 +00:00
vovanium bbae5ae5e2 Corrected weird inch to mm ratio 2010-03-26 19:34:47 +00:00
dickelbeck 1698acd774 from alain.portal@free.fr, see mailing list 2010-03-25 21:48:24 +00:00
charras 4b85c01101 Libedit: fixed incorrect undo/redo after moving a field 2010-03-25 07:39:53 +00:00
charras 9109dc331f Grid list display in popup menu: go back to the previous version, due to problems when using tabs in this menu. 2010-03-22 16:44:22 +00:00
charras 4413221488 work on libedit continued.
fixed very minor bugs.
2010-03-20 19:57:59 +00:00
charras 41dd975313 LibEdit: finished SVG plot.
Build BOM: in one part per line, fields are now selectable (like others formats)
2010-03-19 20:15:30 +00:00
charras 7f23d262f2 Eeschema
* Some bugs fixed
* Starting enhancements in Libedit: menubar and commands to "plot" current component in PNG or SVF file (SVG file not fully working, must be refined)
2010-03-18 20:35:29 +00:00
stambaughw 1bbc009da8 New EESchema find dialog and other minor fixes.
* Replaced find dialog with wxFormBuilder version.
* New find dialog is modeless, supports more advanced search features,
  remembers it's last position, size, search history, and search settings,
  and implements initial support for replacing.
* Added Shift+F5 hot key to search for next DRC marker.  F5 now just
  repeats previous search.
* Minor cosmetic enhancements to label edit dialog.
* Remove tab from grid size text printf to fix toolbar grid combobox
  display in wxGTK.
* Updated my TODO list items.
2010-03-16 18:22:59 +00:00
charras 6aba45eb78 German translation update. Replaced dialog page settings dialogblock version by the same built with wxFormBuilder 2010-03-14 10:34:40 +00:00
charras ae263430e0 Preparing stable version 2010-03-12 19:02:57 +00:00
faa c775406794 minor fixes russian GOST 2010-03-11 13:48:39 +00:00
dickelbeck aba543cb54 clipboard and DSNLEXER testing via target dsntest 2010-03-08 16:17:58 +00:00
dickelbeck f1f11cf66d revive target 'dsntest' from common, start exploring pasting text from clipboard, primitively. 2010-03-08 06:18:40 +00:00
dickelbeck d438cf6829 sorry 2010-03-03 06:26:48 +00:00
dickelbeck 2decdbdd14 ++common
* DSNLEXER now owns an abstract LINE_READER by pointer so that polymorphism
    can be used in alternative LINE_READERS.
  * Write FILE_LINE_READER and STRING_LINE_READER.  The latter can be used
    to parse text coming from the clipboard or other string source.
2010-03-03 06:13:46 +00:00
dickelbeck a800351eab Switch the LINE_READER being used by DSN_LEXER as owned, and accessible via pointer.
This paves the way for other kinds of LINE_READERs, such as one which reads from a
multiline string which comes from the clipboard. 

Will still need to:
1) add new additional DSN_LEXER constructor,
2) virtualize the LINE_READER's ReadLine() function
3) create derived class from LINE_READER.
2010-03-02 19:15:30 +00:00
charras bf841d6f2f Fixed plot postscript problem in user size page format 2010-03-02 10:07:37 +00:00
charras 8497178fa5 removed unused files. Switch to RC5 2010-02-28 18:26:48 +00:00
dickelbeck 52dbb13c2f from Florian Delizy
This patch applies on the very last svn  (r2402) and removes all
disfunctionnal python code (including deletion of unused strings)
2010-02-28 13:44:29 +00:00
charras 47bfe663fd Setting a new language now update the layer manager. 2010-02-26 15:39:10 +00:00
jerryjacobs 706ba777f2 Hotkey patch appro Vladimir Uryvaev on kicad-devel 2010-02-25 on 11:57am 2010-02-25 17:08:28 +00:00
charras ec6a84d0bb All: fixing a recent problem when using scroll bars: the full screen was redrawn, that can be very slow in Pcbnew. 2010-02-23 20:22:31 +00:00
charras 09cccdff3e All: fixing a recent problem when using scroll bars: the full screen was redrawn, that can be very slow in Pcbnew. 2010-02-23 20:18:27 +00:00
charras 1aaabf2c0f Removing min size pen, now useless. Replaced when needed in some print dialogs by Default pen size. 2010-02-22 19:56:32 +00:00
stambaughw aab2f8a775 USE_WX_ZOOM clean up and other minor improvements.
* Make USE_WX_ZOOM clipping routine actually clip rather than just test
  if line needs drawn.
* Clean up as many USE_WX_ZOOM #ifdefs as possible.
* Minor coordinate rounding improvements.
* Minor scrolling and panning improvements.
* Remove unused KicadGraphicContext object code.
2010-02-22 16:45:35 +00:00
charras 636c708ee7 switch to RC4 2010-02-21 18:38:16 +00:00
dickelbeck 6700c604aa DSNLEXER now supports:
1)  nested quotes.  This is in anticipation of broader usage of the
        file type/syntax.  A string like this in the file:
            "my ""favorate"" string"
        can be returned as
            my "favorite" string
    2)  CommentsAsTokens is implemented, so you can ask the lexer to return
        comments as tokens, so they can be preserved.  The default is to ignore
        them.  A comment is defined as any line that has # as its first
        non-blank character.  (This means comments cannot follow anything else
        on a line.)
2010-02-20 19:13:30 +00:00
dickelbeck 5b701c42ff use size of first element in case the size of an element changes from that of a pointer in the future 2010-02-19 16:14:44 +00:00
charras f4be491502 fixed author name in copyright 2010-02-19 15:54:38 +00:00
charras bd8ebeff99 commit forgotten file 2010-02-19 15:08:54 +00:00
charras a70a580596 committed newfont patch. Pcbnew: board date automatically updated at each change. 2010-02-19 13:23:58 +00:00
charras 126c384dad Eeschema date in frame reference updated at each modification. 2010-02-18 20:07:29 +00:00
charras 98ea05d057 minor changes 2010-02-17 16:01:21 +00:00
charras 8dd82dfbd4 code cleanup and enhancements about hotkeys 2010-02-16 11:02:20 +00:00
charras 1ee86d4a52 code cleanup and enhancements about hotkeys 2010-02-16 10:42:57 +00:00
charras 035b510201 In popup menu: display grid both in mm and inches 2010-02-15 08:23:05 +00:00
charras 25720516c9 Eeschema, libedit: fixed add/remove alias functions, broken
All: added in popup menus hotkeys info for zoom commands
2010-02-14 18:14:33 +00:00
dickelbeck d176e98d94 patch from wafeliron@yahoo.com via pastbin.com 2010-02-12 23:12:00 +00:00
charras 4e48640f87 Fixing vertical size of the design rules dialog to meet our minimal screen size requirement (768 pixels height) 2010-02-12 08:53:13 +00:00
stambaughw ac82654563 More USE_WX_ZOOM bug fixes.
* Changed line clipping function in gr_basic.cpp when USE_WX_ZOOM is
  enabled.
* Set wxDC clipping region to client size when drawing outside of paint
  event handler.
* Updated kicad and eeschema CMake files as the common library now
  requires linking to the polygon library.
2010-02-11 19:57:47 +00:00
stambaughw 5591ccd443 USE_WX_ZOOM fixes.
* Corrected over zealous clipping fix in last commit.
* Tweaked clip box rectangle size.
* Fixed cross hair cursor drawing bug.
2010-02-10 21:39:32 +00:00
viknn 8be7f467e8 Added filling of junctions circles to EEschema DXF export 2010-02-10 17:27:45 +00:00
stambaughw f69a4914fe Minor drawing and build bug fixes.
* Fixed clipping bug when USE_WX_ZOOM is enabled that causes rats nest
  to be drawn incorrectly.
* Fix ambiguous function error in trigo.cpp when building with MSVS.
* Add instructions for building wxWidgets with graphics context
  enabled (GDI+) using MinGW/MSYS to COMPILING.txt.
* Initial EESchema find dialog work.
* Set modified flag when using PCBNew global deletion dialog to prevent
  closing without warning user of changes.
2010-02-10 16:25:13 +00:00
charras d64ab5d62f version set to Release Candidate 1. 2010-02-09 19:54:57 +00:00
stambaughw 3066c70559 Implement wxDC coordinate handling and wxGCDC.
* Implement code to allow wxDC to handle coordinate conversions between
  device and drawing units.
* Add build settings to enable wxGCDC for wxGraphicsContext testing.
* Remove wxAUI conditional build cruft as it is now required to build
  Kicad.
* Fix scroll increment size regression to prevent jumping around the
  zoom center position.
* Add find GDI+ cmake module for building on WXMSW when wxGraphicsContext
  is enabled.
2010-02-08 18:15:42 +00:00
vesa_solonen 3f0a7f8deb Finnish translation fixes 2010-02-07 20:55:21 +00:00
charras 92e96a1031 added Finnish selection in language list menu 2010-02-07 16:32:51 +00:00
charras c4ed10299a Fixed a refresh problem when using scrollbars. 2010-02-06 20:55:59 +00:00
charras edf64afc3b Eeschema: Added patch from Torsten Huter addeing hotkeys and enhancements in libeditor
Some fixes.
2010-02-04 17:46:12 +00:00
faa 3e838053aa new font does not demand -DKICAD_CYRILLIC 2010-02-02 07:18:40 +00:00
charras a61b48eced Code cleaning. Use new font. 2010-02-01 21:23:27 +00:00
charras a46cd46d9d pcbnew: More about work on color selection and items visibility:
removed global variables and a lot of redundancies
2010-01-31 20:01:46 +00:00
charras cf7ad0f503 pcbnew: More about work on color selection and items visibility 2010-01-30 14:46:26 +00:00
charras 32b7aa90a5 forgotten file 2010-01-29 20:47:03 +00:00
charras 5732d815c6 Work on colors handling, and others changes. see changelog.
hide/show rastnest in pcbnew is currently not working, will be fixed soon
2010-01-29 20:36:12 +00:00
dickelbeck 4768fc784c http://tech.groups.yahoo.com/group/kicad-users/message/6833 2010-01-29 17:19:13 +00:00
charras f6656e0384 fixed eeschema crash when using the hotkey m (move) command.
Pcbnew :added option to show/hide footprints values and/or references
2010-01-28 13:10:46 +00:00
charras 323a62fee5 Fixed a problem with aui lib (now mandatory) in CMakeList.txt (could be not included at link time) 2010-01-26 11:05:30 +00:00
charras 0f366f84d3 OSX fixes.
Better code in fast draw grid algo (drawpanel.cpp):must be faster, and minor refresh problems removed under wxGTK
2010-01-24 16:27:36 +00:00
charras 84d82cf2f5 pcbnew: Update Layer manager display when changing active layer (from hotkey or menus)
fixed minor problems and fixed Layer Alignment Target bug.
2010-01-23 10:50:05 +00:00
stambaughw 7ab4a9bf2c Minor fixes and code cleaning.
* Remove redundant background redrawing RedrawActiveWindow.
* Remove redundant managed cursor callback in RedrawActiveWindow.
* Use refresh to redraw instead of directly calling RedrawActiveWindow.
* Remove unused SetDrawBgColor for drawframe.cpp.
* Fix compiler warning in cvpcb/cvframe.cpp.
* Fix menu spelling and syntax errors in pcbnew.
* Rename Trace_Curseur to DrawCursor in common/drawpanel.cpp.
2010-01-22 18:13:43 +00:00
charras c4bc7bb46b enhancements about hot keys 2010-01-20 18:59:46 +00:00
charras 9d400e4c19 fixed some (minors) problems about hotkeys.
Code cleaning.
Patch for 3D problem with macOSX
2010-01-19 20:43:44 +00:00
jerryjacobs 5a0aca0e4d More Mac OS X work, see CHANGELOG.txt 2010-01-18 19:33:45 +00:00
charras 04f41a4a7b menu cleaning and changing obscure menu info. and menu labels
files cleaning
2010-01-18 12:37:53 +00:00
charras bf02bc4d64 fixing mouse problems during zoom (go back to the old version). 2010-01-17 16:22:31 +00:00
charras cfd868562e pcbnew:fixed muwave toolbar not working in AUI option.
fixed a grid refresh problem when using fast algo in drawpanel.cpp
2010-01-17 14:20:29 +00:00
charras 445843e37e Eeschema added resizable lib and cmp lists in viewlib when using AUI option.
Added patch for macOSX
turn on fast algo for draw grid (should work now)
2010-01-16 19:42:58 +00:00
jerryjacobs a470a34e5b Split 2009 changelog, added Marco's WXMAC search path patch 2010-01-16 11:16:09 +00:00
charras 8789ca5f1d drawpanel.cpp: fixed a serious bug in draw grid fast algo.
Fast algo currently disabled (tests needed)
2010-01-15 19:18:29 +00:00
charras b41e4e6947 macOSX: fixed GetMBarHeight( ) problem. 2010-01-15 13:02:04 +00:00
charras 5eddb1f467 fixed flicker when zooming. (wxGTK specific) 2010-01-15 10:02:47 +00:00
charras 37309e1aac Ugly but necessary fix to display toolbars in latest Linux version (tested with Ubuntu 9.10 updated) 2010-01-14 20:20:59 +00:00
charras 2c9dd50851 attempt to find a suitable way to draw grid depending on platforms 2010-01-14 08:55:45 +00:00
charras 4936ca3a7f Testing a new fast draw algo to draw grid. 2010-01-13 20:03:33 +00:00
faa 3432474c96 not build in linux 2010-01-13 10:19:52 +00:00
charras 54b561236f Uses a buffered DC in OnPaint event. Seems solve slow grid redraw on some PC. 2010-01-12 13:15:13 +00:00
charras d5e1172042 minot patch for OSX 2010-01-10 15:06:14 +00:00
charras d4bd033a8e Pcbnew: print dialog: added pads drill option (like in plot dialog) 2010-01-09 20:25:39 +00:00
jerryjacobs cee9ab7610 Applied Torsten PCBNew DRC patch and testcase, update email, update scripts 2010-01-09 17:54:39 +00:00
charras c4b37d77bd Gerbview: Added support of arcs in polygons outlines. Need more tests, but works. 2010-01-08 12:28:13 +00:00
dickelbeck 08e5fec309 set eol style 2010-01-05 17:47:49 +00:00
charras 24a07f17c8 commit missing file 2010-01-05 11:44:28 +00:00
charras 84a0e32865 fixed build problem for specctra.cpp stand alone. 2010-01-05 08:48:49 +00:00
charras 1b6ad8c7f7 code cleaning and a minor problem fixed in Gerbview printing option 2010-01-04 19:09:33 +00:00
charras 27346c7e79 Pcbnew and Gerbview: Refactor dialogs for plot and print. 2010-01-01 13:30:39 +00:00
charras a1998410fc Some enhancements and fixes. (see changelog) 2009-12-30 18:06:12 +00:00
charras b8cc86bd86 Fixed: eeschema crashes when creating a new text (comment) in schematic 2009-12-29 11:36:17 +00:00
charras ccfa4e0aad Eeschema: Libedit: fixed hang when using the repeat function (insert key) after creating a pin.
Fixed others minor problems
2009-12-29 10:35:11 +00:00
charras 6769e4c94a code cleaning and fixed a TODO remark in EDA_BoardDesignSettings::SetEnabledLayers( int aMask ) 2009-12-21 12:05:36 +00:00
charras 0b41d484ff code cleaning 2009-12-20 19:48:58 +00:00
charras c2ea4a0aff code cleaning 2009-12-19 19:24:49 +00:00
charras 96849d5a11 code cleaning 2009-12-19 16:10:25 +00:00
dickelbeck ba78287bc9 comments, minor fixes 2009-12-11 15:51:26 +00:00
dickelbeck ceb6ad1a72 * Factored out the DSNLEXER class so it can be re-used more generally. The
constructor takes a keyword table, so it can be used for arbitrary DSN
    syntax files of your own chosing.  Simply create an enum {} with all your
    unique tokens in it.  Then create a KEYWORD table.  See SPECCTRA_DB::keywords[].
    The reason you want an enum is to give the C++ debugger better type information
    so it can show symbolic integer symbols.
  * Factored out common richio.cpp and richio.h
    which is what DSNLEXER uses.
  * Fixed some minor issues with reading circuit descriptor from a *.dsn file.
2009-12-11 04:55:24 +00:00
dickelbeck 860fbb16d7 ++pcbnew & gerbview
* Moved ReturnLayerName() to static BOARD::GetDefaultLayerName() and migrated
    to a Specctra DSN compatible default layer naming scheme:
        Component becomes Front, Copper becomes Back.
  * set_color.h: Cmp becomes Front, Cu becomes Back.
  * D_PAD::DisplayInfo() changed to use actual copper layer names.
  * more layer setup dialog work, moved all programmatic wxControl instantiation
    into the wxFormbuilder environment, but this is fraught with danger:
    wxFlexGridSizer used the tallest control to establish the row heights, so
    be careful about changing control borders in the scroll panel. The vertical
    size can explode since just a couple of pixels times the number of rows
    is substantial.  Currently I am setting a 5 pixel border only left, top, and right
    but not bottom.
  * Set copper layer count is back in place as a hack until I can get the enabled
    layer bit map fully operational.
2009-12-07 03:46:13 +00:00
charras 5f9aefe898 minor enhancements related to doc update. 2009-12-06 18:04:41 +00:00
charras a72ddb3804 minor changes 2009-12-03 09:33:48 +00:00
stambaughw 1aaa7a9bf2 Compiler warning, object name, bug, and string fixes.
* Fixed EESchema options dialog focus bug so escape key now works in GTK.
* Rename schematic objects for improved readability.
* Fixed GCC compiler warnings in plot code.
* Added paragraph in UIpolicies.txt about setting dialog box sizes.
* Lots of message box string clean up.
2009-12-02 21:44:03 +00:00
faa 862d3cdbb5 small improvements for russian GOST 2009-12-02 13:06:55 +00:00
charras 3ddc57e6d0 fixed some minor bugs and code cleanup 2009-11-28 09:24:37 +00:00
charras 826daace30 fix last French to English translations problems 2009-11-23 21:08:23 +00:00
charras 1a6b90d057 fix last French to English translations problems 2009-11-23 21:03:26 +00:00
stambaughw bc5d9a75f5 Complete comment translation of common source. 2009-11-23 15:16:50 +00:00
charras 7243f5a035 enhancement in Gerbview: page limits can be now displayed on screen. Useful when printing a Gerber layer 2009-11-22 20:55:05 +00:00
charras 537d4861ba fixed tagged translation 2009-11-15 14:12:53 +00:00
charras 4b61440eb1 fix some problems (not all) when using wxAUI.
others minor bugs fix.
2009-11-07 14:36:54 +00:00
dickelbeck 56995b3359 AUI support into topmost CMakeLists.txt 2009-11-05 08:52:41 +00:00
dickelbeck d3468dd557 Marco's AUI patch, basically 2009-11-02 22:24:55 +00:00
stambaughw 2884d1259e Replace library editor pin properties dialog box and minor update.
* Replaced library pin properties dialog with wxFormBuilder version.
* Remove DialogBlocks version of pin properties dialog.
* Add pin properties dialog support code to pin object.
* Create single event handler for displaying pin properties dialog.
* Remove left over DialogBlocks project file for annotate dialog.
* Fixed escape key bug in library editor new component dialog.
* Add GetUnitsLabel() to get human readable units for dialog labels.
* Translate French comments in all modified files.
* Some minor clean up of Doxygen comments.
2009-10-30 19:26:25 +00:00
charras e027e65971 code and files cleanup 2009-10-28 11:48:47 +00:00
charras 4a5151969d eeschema: annotate dialog converted from DialogBlocks to wxFormBuilder 2009-10-27 19:30:32 +00:00
jerryjacobs 1c983b013d Hotkey submenu added, fixed typos. See CHANGELOG.txt 2009-10-27 13:48:24 +00:00
dickelbeck 29f5fbb7ad quiet the newer g++ compilers, which complain about certain stdio function's return values not being used 2009-10-26 19:16:18 +00:00
charras fd521f378e More work about Netclasses in Design Rules dialog 2009-10-26 19:00:46 +00:00
charras b8a6c53b79 Some minor changes and enhancements 2009-10-25 15:54:00 +00:00
charras c03abc0b65 eeschema, libedit: fixed a bug than crashes libedit when using the delete tool, on a left click. 2009-10-23 14:35:24 +00:00
charras 6adf9163e6 Removed global default clearance, track size and vias drill. Use netclasses values only. 2009-10-21 19:42:57 +00:00
charras fe10a9938f Removed global default clearance, track size and vias drill. Use netclasses values only. 2009-10-21 19:16:25 +00:00
charras 7af67a8943 fixed compil error, and a display problem in eeschema 2009-10-17 06:23:18 +00:00
stambaughw 7e24e43890 wxWidgets 2.9 string fixes and other minor updates.
* Replace all known instances of (const wxChar*) casts to GetChars() for
  wxWidgets 2.9 compatibility.
* Cleaned up get component dialog so last part gets saved on wild card
  selections.
* Remove redundant schematic component drawing code.
* Added SCH_COMPONENT constructor to create new component from library
  component object.
* Add message panel helpers to WinEDA_DrawFrame and update old message
  panel access code.
* Using library viewer to add component to schematic now respects unit
  and body style selection.
2009-10-16 17:18:23 +00:00
charras 5c7c2fafa1 minor problems fixed 2009-10-15 11:35:53 +00:00
stambaughw 92064f1dbf Fix save last grid size and other minor updates.
* Create single event handler for grid size events.
* Fix all frame windows to use new grid size event handler.
* Use offset relative to ID instead of ComboBox index to save last grid size.
* Move last grid size load/save setting into WinEDA_DrawFrame.
* Add equality and assignment operators the GRID_TYPE.
* Add current grid helper methods to BASE_SCREEN.
* Add GetPins helper to LIB_COMPONENT to replace GetNextPin where applicable.
* Add AppendMsgPanel helper to WinEDA_DrawFrame.
* Improve rounding for display of coordinates when millimeter units are selected.
2009-10-14 19:43:31 +00:00
charras 71e537b058 Changed some c_str and GetData functions to GetChars in .Printf functions (forgotten changes) 2009-10-13 11:49:08 +00:00
charras 657325be33 Changed some c_str and GetData functions to GetChars in .Printf functions 2009-10-13 09:00:46 +00:00
charras ccbce931d2 All: better look when displaying info on messages panel 2009-10-11 13:04:47 +00:00
charras 56059efd8a Netclasses work continued
Fixed problems in libedit and crashes when no component loaded
2009-10-10 17:27:53 +00:00
dickelbeck ce4d22f024 work around some gcc 4.3.3 compiler warnings 2009-10-05 04:22:27 +00:00
charras fd27b26271 pcbnew: minor work about netclasses. eeschema: bug fix 2009-10-01 16:46:13 +00:00
stambaughw b762f6aab7 Component library editor improvements.
* Eliminate external direct manipulation of component draw item pointer.
* Add draw item remove, add, and locate methods to library component object.
* Remove redundant locate pin, field, and draw item code.
* Fix add new pin drawing bug that left initial pin draw in place.
* Improved best zoom calculations for small components.
* Library component bounding box calculation now includes fields.
* Removed unnecessary header file "libcmp.h".
* Fixed potential locate draw item bug in library editor hot key handler.
2009-09-29 18:38:21 +00:00
charras fb3a12adc6 fixed typo and minor problems. updated German translation 2009-09-28 19:28:22 +00:00
dickelbeck 8b3d5a69cf Øyvind's patch 2009-09-27 14:09:26 +00:00
stambaughw 8570d3311a Component library editor improvements and minor bug fixes.
* Component library objects renamed for improved readability.
* Fields now move when selected in library editor.
* Add copy constructor to all library draw and library component objects.
* Added copy constructor to EDA_BaseStruct.
* Delete base screen in WinEDA_DrawFrame destructor to prevent potential memory leak.
* Fixed memory access bug when replacing and adding a component to library.
* Moved library component block manipulation code into component object.
* Removed all of the global variables used by the library editor main window object.
* The usual code cleaning and refactoring.
2009-09-25 18:49:04 +00:00
charras f4eeb4dfd6 fixed problem in modedit when creating a new footprint. Minor others changes 2009-09-23 05:53:12 +00:00
stambaughw 43d6c685b5 Command ID refactoring and other minor improvements.
* Split out application specific command IDs to prevent unnecessary rebuilding.
* Eliminate duplicate menu and tool bar command IDs.
* Split component library editor and viewer definitions to separate header files.
* More component library and document file merge code.
* A bunch of minor string readability and consistency fixes.
2009-09-22 12:27:57 +00:00
stambaughw f7452ce131 Component library object and other minor improvements.
* Create static component library methods to manage library list.
* Rename component library, component, and alias objects to more readable name.
* Use pointer to component instead of root name to prevent redundant library searches.
* Add append message helper to message panel that calculates string length.
* Initial ground work for merging library and library document files.
* Improved component library file load error checking.
* Minor component library editor improvements.
2009-09-18 14:56:05 +00:00
charras 7776dd61eb use kbool 2.1 in zones calculations. see CHANGELOG for others changes and more info 2009-09-17 17:48:40 +00:00
stambaughw 3803b79ac5 Component library editor improvements, build fix, and bug fixes.
* Add offset and block hit testing to library component objects.
* Improved search for library entries.
* Fixed library component editor component removal and addition.
* Library editor now uses wxUpdateUIEvents for updating all UI objects.
* Added version check to cmake find boost macro.
* Removed unused code in file libalias.cpp.
* Added method to WinEDA_DrawPanel to take mouse out of managed mode.
2009-09-14 13:24:17 +00:00
charras 7a0f7bda9c minor changes 2009-09-11 06:18:55 +00:00
charras bd9a7d894a Pcbnew, fixed: plot error in outline mode for trapezoid pads (silk screen layers) 2009-09-04 08:05:13 +00:00
stambaughw 79c9be258a Replace PriorQue with boost::ptr_vector for component library entries.
* Replaced WinEDAListBox buttons with wxStdDialogButtonSizer.
* Moved library draw entries GenCopy method to base class.
* Remove priorque.cpp and priorque.h from CMakeLists.txt.
* The usual code cleaning and uncrustification.
2009-09-02 18:12:45 +00:00
charras c3fde30419 code cleaning. Pcbnew: Minor enhancements in Plot dialog 2009-08-29 10:20:48 +00:00
charras 0a58e6303f fixed postscript plot broken. Better default values for pcbnew plot dialog 2009-08-28 18:03:22 +00:00
charras 3806557ff9 Eeschema: fixed: root components non found in schematic 2009-08-28 07:11:56 +00:00
charras b6e8c338c5 Eeschema: fixed: bad undo/redo for Drag commands 2009-08-27 13:51:02 +00:00
peud 2738669644 PS plotting was broken in B/W mode, made neccessary changes. 2009-08-21 19:13:55 +00:00
charras 6ebc2a52dd fixed problems in relative paths calculations for libs and docs files 2009-08-18 07:54:03 +00:00
charras f9f671d1b9 fixed: incorrect sub path calculation for libs and doc filenames (full filenames where always converted to relative paths,
even when they are not in standard libraries paths)
2009-08-13 18:50:47 +00:00
charras 2be6520a28 More about undo/redo in pcbnew and minor cleanup 2009-08-12 10:40:01 +00:00
charras a6fc132999 More about undo/redo in pcbnew 2009-08-11 10:27:21 +00:00
charras 148a574e6f More about undo/redo in pcbnew 2009-08-08 06:07:08 +00:00
dickelbeck 42b1020dc3 MsgPanel is sized dynamically based on system gui font size 2009-08-07 04:44:42 +00:00
charras e5102715e2 class SEG_ZONE deprecated 2009-08-06 18:30:46 +00:00
stambaughw 5f198fb0ee Fix class method syntax that caused MSVC compiler errors. 2009-08-06 18:10:10 +00:00
charras c718765268 More about undo/redo in pcbnew 2009-08-06 15:42:09 +00:00
charras 5699ee3b91 More about pcbnew undo/redo 2009-08-06 07:11:04 +00:00
charras 304525db9a undo/redo rework: fixed some problems ans crashes (not all) in libedit and modedit 2009-08-03 18:54:48 +00:00
faa 8d5a6531f9 pcbnew: remove old of two To_User_Unit(), redraw ratsnest on/off, magnetic cursor to start move/drag module 2009-08-03 12:12:29 +00:00
charras 41c80dd95b pcbnew: work on undo/redo in progress 2009-08-01 19:26:05 +00:00
charras f9be70f26d pcbnew: work on undo/redo in progress Only delete commands are stored in undo/redo stack 2009-07-31 05:33:11 +00:00
charras d535a0fc97 pcbnew: Starting work on undo/redo in pcbnew. Only some delete item commands are stored in undo/redo stack 2009-07-29 13:10:36 +00:00
charras 2a7ac9d3c4 fixed a recent bug in pcbnew print and plot dialogs: fine scale adjust displayed as 0.0
Rework on undo/redo and block functions: more efficient code to undo/redo block move and mirror operations
2009-07-27 14:32:40 +00:00
charras 83be1f8a10 Rework on undo/redo and block functions: more efficient code to undo/redo block move and mirror operations 2009-07-26 17:16:42 +00:00
charras daceb2e019 Rework on undo/redo and block functions 2009-07-25 07:31:07 +00:00
charras 8ec8cf3f43 Rework on undo/redo and block functions 2009-07-25 04:53:39 +00:00
charras 6d14766eb3 uploaded forgotten files 2009-07-23 15:49:39 +00:00
charras 9d6daf5665 undo-redo rework 2009-07-23 15:37:00 +00:00
charras 1868bb8e3c improved OSX compatibility and fixed possible crash in debug mode in Pcbnew 2009-07-20 05:18:47 +00:00
charras e7c9ae2b45 First work about net classes. This is a work in progress and a moving target 2009-07-18 11:44:19 +00:00
faa b78444c226 minor bug at russian GOST in common_plot_functions.cpp (thx Yuri Vikulov) 2009-07-14 04:33:03 +00:00
charras d188bf5ae1 better compatibility with wxWidgets 2.9. Markers enhancement in pcbnew (right click can display marker info) 2009-07-13 15:25:41 +00:00
charras 3be6ba4234 Merged dialog_load_error_base and dialog_display_info_HTML_base, code cleaning 2009-07-13 07:01:57 +00:00
charras 1700a6a78d Merged dialog_load_error_base and dialog_display_info_HTML_base 2009-07-13 06:20:18 +00:00
jerryjacobs 5156a1c119 Added load error dialog. To display file load errors in a wxTextCtrl with a message, this is the BUG 2802441 enhancement 2009-07-12 18:27:30 +00:00
charras aa9e61eda5 Code cleanup about netlist, ERC and markers in eeschema ( work in progress ) 2009-07-12 15:29:42 +00:00
charras a97a2b4b3c Eeschema: Connecting power pins of all parts is no more needed. see changelog 2009-07-10 12:29:31 +00:00
charras baa278a3bc More about ERC and markers in eeschema ( work in progress ) 2009-07-09 17:02:15 +00:00
charras e4656c440d Fixed Crash when changing color under MacOSX. This could also affect all versions. 2009-07-09 04:55:55 +00:00
charras 06d37c4b01 Fixed Crash when changing color under MacOSX. This could also affect all versions. 2009-07-09 04:54:11 +00:00
charras c61cce48c0 More about ERC and markers in eeschema ( work in progress ) 2009-07-08 15:42:45 +00:00
charras 6d930edec3 work in progress about ERC and markers in eeschema 2009-07-07 17:50:02 +00:00
charras 0d2ee0c023 See changelog. work in progress about ERC and markers in eeschema 2009-07-06 18:02:26 +00:00
charras e80d075078 make command-line invocation with relative paths work 2009-07-03 07:32:48 +00:00
charras c20d9b9328 minor bugs in plot functions (bad document size in PS header and junction size) fixed 2009-07-01 14:59:34 +00:00
charras aa509dda2d changes in common_plotDFX.cpp to avoid compil warnings 2009-07-01 05:20:11 +00:00
charras f7a804e23d Bugfix for plotting 2009-06-30 10:43:20 +00:00
charras daeb19013e minor changes 2009-06-28 18:13:55 +00:00
charras 2a80117065 Commit patch for plot functions from Lorenzo 2009-06-28 16:50:42 +00:00
charras ed71f4b772 in bezier_curves: changed calculations like dx*dx to (double)dx * dx to avoid integer overflow in calculation 2009-06-27 07:41:16 +00:00
stambaughw 17bf24354e Build fixes for VC8, compiler warnings fixed, and some minor wxDC zoom changes.
* Added modified version of FindwxWidgets.cmake to prevent manifest build and link errors
  with VC8.
* Fixed ambiguous math function ( sqrt, atan, cos, etc. ) call errors when building
  with MSVC.
* Moved bitmap copy bitmap source file destination to the build path to prevent source
  tree pollution and library rebuilds when building on different platforms.
2009-06-26 17:24:32 +00:00
charras cffe0cfcaa support for bezier curves 2009-06-25 20:45:27 +00:00
charras 6791556e3a Pcbnew: fixed a recent bug that could be creates errors in rats nest calculations (forgotten rats nets) 2009-06-23 15:45:53 +00:00
f3nix 7fc9e5f177 Clean some CMakeLists.txt files. 2009-06-21 13:37:27 +00:00
jerryjacobs db6630b81c Added hauptmech big patch, Updated documentation to match this patch. See CHANGELOG.txt 2009-06-19 20:13:22 +00:00
charras 92266a1986 Pcbnew: Added: in DRC tests: tests for vias min size and tracks min width.
Eeschema: code cleaning
2009-06-18 13:30:52 +00:00
jerryjacobs eebc4ff21f Applied Hauptmech patch, highlight only current layer in high-contrast mode - tracker patch 2807379 2009-06-17 17:08:39 +00:00
charras 535a4d1f92 Eeschema: code cleanup 2009-06-13 17:06:07 +00:00
charras 8a5179fc70 pcbnew: fixed serious bug in clean pcb function
some cleanup.
2009-06-11 18:30:03 +00:00
charras f43d1aaa54 Added text justification for graphic texts in libedit and more(see changelog) 2009-06-11 14:26:17 +00:00
charras e8e6f1a77f code cleaning and very minor bugs fixed 2009-06-04 19:39:50 +00:00
charras a04588db7c Changes in minimum pen size parameters used to draw or plot or print items.
Now uses only an unique default pen size for plot/print and draw items (see changelog)
2009-06-02 07:26:49 +00:00
stambaughw 161068b1c6 Minor bug and compiler warning fixes.
* Applied sheet reference plotting patch from Lorenzo.
* Fixed bug in Pcbnew plot dialog, ignore user scaling when controls are disabled.
2009-06-01 18:28:34 +00:00
charras 23dace1dc8 macOSX compatibility change 2009-05-30 19:34:13 +00:00
charras ce9db78c95 Cleaned and optimized code about new hershey fonts and bold texts handling (see changelog) 2009-05-30 16:06:01 +00:00
charras c7fc091a42 better size scale factor for Hershey fonts 2009-05-29 15:45:13 +00:00
faa 91bceadf7c hershey font cyrillic support (only utf8) 2009-05-29 15:20:42 +00:00
charras d3dc65b656 minot changes 2009-05-29 07:29:55 +00:00
charras 80a713d895 commit hershey patch 2009-05-28 18:27:50 +00:00
charras 42b4cae45e commit hershey patch 2009-05-28 17:39:40 +00:00
charras b1d1a71101 Finished code cleaning about ratsnets calculations and handling.
Minor others changes.
2009-05-28 08:42:24 +00:00
faa 8f36c1fc42 russian GOST vert.text adjust 2009-05-26 10:27:26 +00:00
charras 497cb9f7d0 code cleanup 2009-05-25 16:07:33 +00:00
charras 3f970c85ce more cleanup and enhancements about rats nest (work in progress) 2009-05-25 11:53:55 +00:00
charras e073bdc042 Pcbnew: cleaned code in ratsnet calculations (work in progress). The new code is also faster. 2009-05-24 18:28:36 +00:00
stambaughw 8bf7911125 Build improvements, compiler warning fixes and build fixes, and lots of clean up.
* Created separate SVN version header.
* Add true config.h for platform dependency checks.
* Add dependency check cmake module.
* Remove some leftover hand crafted make files.
* Remove non-cmake build instructions from COMPILING.txt.
* Fix split _() strings causing Visual C++ compiler error.
* Fix lots of compiler warnings.
* Change project file parameter container from wxArray to boost::vector_ptr.
* Removed lots of redundant header definitions.
* Fixed green_xpm redefinition in ercgreen.xpm.
* Remove some dead code and unnecessary class methods.
2009-05-21 17:42:42 +00:00
charras 26b20cad1e Better label dialog editor. Libedit: now, cannot change the component name to an existing alias name (eeschema crashes when happens) 2009-05-13 10:26:11 +00:00
charras 5759f734a8 Rework on TEXTE_PCB, SCH_TEXT and EDA_TextStruct classes.
Code seriously cleaned, obscure and duplicated code removed, and some oddities removed.
Better support of multiline texts.
2009-05-12 12:12:34 +00:00
charras 13a1c6be37 delete "old" makefiles. Use CMakefiles only 2009-05-07 17:33:05 +00:00
charras dfa7e1d618 Code cleaning and enhancements about EDA_TextStruct 2009-05-07 17:10:53 +00:00
stambaughw c2b600ce39 Replace wxList with boost::ptr_vector and fix automatic association bug in CVPCB.
* ALL: More changes for wxDC based zooming.
* 3D_VIEWER: Wrap 3d_viewer.h to prevent redefinitions.
* CVPcb: Replace wxList with boost::ptr_vector and take advantage of boost::foreach.
* CVPcb: Fix automatic association bug.
* CVPcb: Rename some variables for clarity and some minor code clean ups.
* CVPcb: Fix GTK sizing issue in library and path dialog.
* EESchema: Remove left over sizer from last commit from library and path dialog.
2009-05-06 11:55:36 +00:00
charras b49c2d2b9d code cleanup, remove multiline text option in eeschema (multiline text is a work in progress) and minor enhancements 2009-05-05 17:32:07 +00:00
charras 6e6134ea5a improved wxWidgets 3 compatibility 2009-05-02 07:35:04 +00:00
stambaughw 0652ab4fd2 PCBNew UI normalization and global variable reductions.
* All: remove all remaining occurrences of g_DialogFont and dialog font menu handers.
* All: remove all remaining non-standard fonts and button text colors from common dialogs.
* PCBNew: remove all non-standard fonts and button text colors from dialogs.
* PCBNew: update project library and path dialog to match changes to CVPCB version.
* EESchema: update project library and path dialog to match changes to CVPCB version.
* EESchema: save vertical/horizontal line direction setting between sessions.
2009-05-01 18:06:03 +00:00
charras ac45264b4e some enhancements in pcbnew (see changelog) and Cmake files updated to handle a change in doc files 2009-05-01 16:46:56 +00:00
stambaughw 5114b863e5 EESchema UI normalization and configuration updates and Gerbview parser bug fix.
* All - add wxList implementation for dynamic declaration of application settings.
* EESchema: remove non-standard fonts and dialog button text colors from all UI controls.
* EESchema: update project file and application settings from static to dynamic method.
* EESchema: save and restore show hidden pins state between sessions.
* EESchema: global variable reductions.
* EESchema: use EVT_UPDATE_UI instead of SetToolbars() to set control states.
* EESchema: remove unused DialogBlocks BOM dialog project file.
* GerbView: remove non-standard fonts and dialog button text colors from all UI controls.
* GerbView: fix infinite loop when parsing RS274X aperture definitions with whitespace.
* GerbView: add file name to export to PCBNew select layer dialog.
2009-04-29 17:09:00 +00:00
charras a6278c25f4 removed warn compil., updated CMakefiles for macosx and removed obsolete makefile.macosx 2009-04-29 12:10:15 +00:00
drannou fb25b5c403 Adding multi-line feature in PCBNEW and EESCHEMA 2009-04-28 19:34:42 +00:00
stambaughw aa51c05dc6 CVPcb code refactoring, global variable elimination, and UI updates.
* Add methods to read and write project file parameters using dynamically defined list.
* Remove all global variables defined in CVPcb code.
* Dynamically define project file settings so class member variables can be used.
* Separate reading and writing application settings from project file settings.
* Make application UI objects and dialogs respect system UI font.
* Remove non-standard widget colors from CVPcb dialogs.
* Changed CVPcb object link list implementation to use wxList.
* Changed project library and path dialog to make OK button save project file instead of confusing "Save Cfg" button.
* Eliminate some duplicate file wildcard and extension definitions.
* The usual code reformatting, commenting, and spelling fixes.
2009-04-23 15:02:18 +00:00
charras b4b57a96e7 Added: handling multiple user paths in library path list in Cvpcb. Other minor changes 2009-04-21 17:56:27 +00:00
charras 6039a5f785 Added: handling multiple user paths in library path list in pcbnew.
Small change in doc files: footprint_doc moved from help to share/modules
TODO: change dialog_cvpcb_config and copy code (from pcbnew) for multiple user paths in library path list in cvpcb.
2009-04-19 15:03:48 +00:00
charras ff68ae0bf8 Added: handling multiple user paths in library path list (currently, only in Eeschema) 2009-04-18 14:14:40 +00:00
charras bb5832c863 Fixed: incorrect refresh of screen area after closing a popup menu (texts and polygons sometimes not redrawn) 2009-04-17 12:45:22 +00:00
charras 9edace2f5f Code clarification about 3 confusing functions to display info: DisplayInfo (displaying a message info) and class members DisplayInfo and Display_Infos doing the same thing (see changelog) 2009-04-17 08:51:02 +00:00
charras 7ab924c3e1 minor bugs fixed, and remove warnings when using wxWidgets 3 in specctra.cpp 2009-04-16 08:48:54 +00:00
stambaughw cc661bdce8 Minor search path updates, initial UI clean up, and more wxDC zoom work.
* Add default OS program install path(s) to search path list as fail safe.
* Remove unnecessary wxGetApp calls in WinEDA_App class methods.
* Remove non-standard message panel font and changed background to system menu color.
* Remove italic fonts from menus.
* Remove non-standard font in Kicad app project tree.
* Remove font selection dialog menu items from apps for removed fonts.
* Remove all global variables and settings associated with the removed fonts.
* Fixed PCBNew export and import library file dialog response tests from wxCANCEL to wxID_CANCEL.
2009-04-15 19:53:41 +00:00
charras 50d1bcb171 more about management of lib files in defualt paths 2009-04-15 15:53:21 +00:00
charras 20cb87a8b7 better handling of libraries paths (removed g_RealLibraryBuffer that had no sense with the new code), mainly in Eeschema
TODO: better handling of user lib paths (more than one path)
2009-04-14 16:45:22 +00:00
charras 89e7f96574 made kicad compilable with wxWidgets 2.9 (wxWidgets 3) 2009-04-13 05:58:11 +00:00
charras f3e4682f54 eeschema: some fixes, see CHANGELOG 2009-04-12 14:39:54 +00:00
stambaughw d96039a1fb Change search path order, wxDC zoom updates, and code clean ups.
Add helpers for inserting paths to and removing paths from search list.
Moved user defined path before default library paths in search list.
Renamed m_Draw_Auxiliary_Axis to DrawAuxiliaryAxis.
Changed parameter to fix wxDC set mode from FALSE to GR_COPY.
Minor wxDC zoom improvements.
2009-04-09 18:39:39 +00:00
dickelbeck a98c2415df expand the size of the coordinate holding status fields, 2 and 3 2009-04-09 18:23:28 +00:00
dickelbeck 4ee4f83de4 move polar coordinates display to status field 2, so that field 0 persists. 2009-04-09 18:16:16 +00:00
dickelbeck 0261ab718f move comment to header, expand on description of UpdateStatsBar(), make comment Doxygen compatible. 2009-04-09 17:34:51 +00:00
charras ceb1de9e24 eeschema: in file menu: "save as" and "load" uses current path 2009-04-08 18:20:27 +00:00
stambaughw dfb88c6495 Library search path fixes, library configuration dialog fixes, and code cleaning.
Added application method to fix searching for user libraries.
Fixed documentation search path bug.
Moved auto pan setting from draw frame to draw panel were it is defined.
Some minor device context drawing changes.
2009-04-08 18:06:22 +00:00
charras e719b42e1f made GetAssociatedDocument() compatible with last changes in kicad path handling. 2009-04-07 15:54:40 +00:00
faa 6e54ec713d not build russian kicad 2009-04-07 15:45:07 +00:00
charras 1343d9fd41 pcbnew: fixed: bug 2738052 (Delete tool does not delete zones outlines)
eeschema: fixed: void history file list in menu
2009-04-07 11:53:58 +00:00
charras 70707523dd show axis in module editor and gerbview 2009-04-07 07:24:33 +00:00
stambaughw 5b3c5861bd More search path, compiler warning, and bug fixes.
Added template subdirectory to library search path list.
Removed PARAM_CFG_BASE empty destructor to prevent GCC warning.
Set timeout to 0 on DisplayInfo call to prevent debug assertion in eeschema/files-io.cpp.
Declare PARAM_CFG_ARRAY for future project file object implementation.
Removed unnecessary COMMON_GLOBL definition in gr_basic.h and param_config.h.
2009-04-06 18:54:57 +00:00
charras 9efbf02042 add and translate some comments. fixed a problem in modedit (delete module in lib not working) 2009-04-06 16:05:25 +00:00
charras 71ca194b68 overbar patch merged mainly in eechema/class_pin.cpp. Some cleanup and compil problem fixes. 2009-04-06 10:56:17 +00:00
f3nix b38c601661 Set eol-style native on new files. 2009-04-05 21:07:24 +00:00
stambaughw 689579bde1 Global variable unobfuscation, new library path search, and lots of other changes. See CHANGELOG.txt. 2009-04-05 20:49:15 +00:00
charras b65590f708 code cleanup in project_config.cpp and some enhancements 2009-03-28 20:02:34 +00:00
charras 2eaa28f0cb Pcbnew: some enhancements 2009-03-26 19:27:50 +00:00
charras 0f725ee2fc DRC: added test pads to holes (pcbnew). Others minor changes 2009-03-23 19:54:15 +00:00
charras 2ad254d67e minor update 2009-03-22 11:34:14 +00:00
charras e631d0bc7b minor change 2009-03-20 16:05:36 +00:00
charras 85ffff8892 Fixed all: redraw screen (F3 key) not working under Linux (seems a wxGTK problem) 2009-03-14 16:26:49 +00:00
charras 2a9a799f01 eeschema: Added: option to print ALL (more than 8) users fields in B.O.M.
pcbnew: added 5 metric grids and fixed a very minor bug when creating drill map.
2009-03-12 15:24:52 +00:00
jerryjacobs fa9230e2e5 Changed 3D module author after mail contact. Cleanup of function implementions. WinEDA_TextFrame color change (text black, background, white) 2009-03-02 13:43:52 +00:00
charras 8593838f7a fixed: cursor is not positioned properly in find function (pcbnew) 2009-02-26 20:06:51 +00:00
charras a1c528223c German translation updated. Translators list updated. 2009-02-23 07:20:01 +00:00
jerryjacobs 094c411aa2 Added Cyril Frausti to artist for some of his 3d modules, mail adres added of Iñigo Zuluagaz 2009-02-22 12:59:28 +00:00
charras e9c7d50ca6 fixed some typo, misspelling and errors in menus. 2009-02-21 15:12:26 +00:00
charras f2c03f2b97 gr_basic.cpp now clips filled polygons,using the Sutherland and Hodgman algo to clip the poly against a rectangle
Filled polygons are now correctly displayed under Linux(i hope)
2009-02-20 14:31:16 +00:00
charras 5cf5bbce8b Dialog track options redesigned with wxFormBuilder Alt via drill renamed Specific via drill. Added tips in dialog. 2009-02-17 09:03:45 +00:00
charras 69756df3f6 Some update for Kicad Release Candidate 1 2009-02-16 10:28:46 +00:00
stambaughw d8a6d16ce4 Fixed accidental typo on last commit. 2009-02-11 19:55:09 +00:00
stambaughw 07bd76a0e8 Zoom bug fix and optimization.
Prevent drawing center from moving when client zoom size exceeds drawing size.
Prevent drawing refresh when zoom level doesn't change to eliminate flicker.
2009-02-11 19:39:55 +00:00
charras c6f68578b3 Removed some warnings in compilation. A small bug fixed when drawing grids on screen. 2009-02-11 15:49:28 +00:00
charras 078490db0c Bug (only in my last commit) fixed under Windows. Removed some warnings in compilation 2009-02-10 13:46:10 +00:00
charras 0d6c62a9ef Bug (only in my last commit) fixed under Windows. Removed some warnings in compilation 2009-02-10 12:37:12 +00:00
charras 04174ecd10 Solved: path problems when Kicad is installed on a server (Windows or Samba server) 2009-02-09 20:17:06 +00:00
charras 2075ac8476 minor (and old) bugs fixed.
minor changes in search paths for help and translation files.
2009-02-07 20:11:09 +00:00
charras 1d3f2d520c Pcbnew : refinements for user grig 2009-02-07 14:13:16 +00:00
charras aee56a936e Change grid size type from integer to double (using wxRealPoint insteed of wxSize).
Mandatory in Pcbnew to handle without error metric grid used now for some footprints (BGA, connectors)
Not fully tested
2009-02-07 08:33:25 +00:00
charras d73e132455 See changelog 2009-02-06 11:45:35 +00:00
stambaughw 80e03c8c1b Build optimizations and cursor movement key bug fix. 2009-02-05 20:53:08 +00:00
stambaughw b833a46bad More header file realignments to reduce recompiling and general code cleaning. 2009-02-04 15:25:03 +00:00
charras 89e5909f59 Solved: problem when searching non english help files 2009-02-03 20:33:34 +00:00
charras ea38af91fb doc update and some minor enhancements before Release Candidate 2009-02-02 12:12:18 +00:00
charras 994080243f Code cleaning. Some bugs fixed. Added contributors to list in About Kicad. 2009-01-31 18:08:47 +00:00
charras 5813a12ebb Print functions and display zoom level modified to use the new zoom implementation
Comments added in some functions.
2009-01-31 10:05:16 +00:00
charras ee3b95007d Added: comments in Drawtxt.cpp. By the way, solved: bug when drawing a 3D board with pcb texts. 2009-01-30 14:11:36 +00:00
dickelbeck 75ea28917c added the superbly convenient EnsureTextCtrlWidth() 2009-01-29 17:30:38 +00:00
dickelbeck 48f30e191e whitespace 2009-01-29 17:25:10 +00:00
stambaughw 2e5a57e100 New zoom implementation and some build optimizations. 2009-01-29 14:26:20 +00:00
charras c333da1916 some "todo" cleanup 2009-01-18 15:51:06 +00:00
charras 9f8e1d9d1c removed some warning when compiling. Added comments 2009-01-18 10:15:10 +00:00
stambaughw 21faf9d370 Integrate wxFileHistory, add missing header files to fix Linux build, initial search path work, and general housekeeping. 2009-01-17 20:31:19 +00:00
charras 1fd73dff3d Plot PS function now properly plots all sheets in a complex hierarchy. 2009-01-08 10:11:39 +00:00
stambaughw 4a489895a3 More zoom clean ups and code cleaning. 2009-01-07 15:59:49 +00:00
charras 17cc6f4904 eeschema: code cleaning, comments added, and the true number of sheets and sheets numbers in complex hierarchies 2009-01-04 18:52:57 +00:00
charras 930a777eb7 Change dialog to edit fields in libedit (see CHANGELOG.txt) 2008-12-30 19:18:56 +00:00
dickelbeck 8d4a9b510d gerbview polygon erasures added, comment tweaks 2008-12-29 20:05:47 +00:00
dickelbeck 0d790e57a2 polygon work, EDGE_MODULE::m_PolyPoints is now std::vector 2008-12-29 18:02:54 +00:00
jerryjacobs 69f6b27edc Fixed comment for doxygen doc generation 2008-12-29 11:52:15 +00:00
jerryjacobs f26f2c1332 Code cleaning and tab indenting + about update 2008-12-29 11:26:15 +00:00
charras 2bc102a614 Uploaded forgotten file 2008-12-23 07:37:39 +00:00
charras daeb9f0e07 Cleaning code to draw/plot texts; italic allowed for pcbnew 2008-12-22 21:06:44 +00:00
charras 4d12bd3e3d Solved problems with mirrored texts. cleaning obsolete files 2008-12-20 20:38:39 +00:00
charras f1eb69a1a3 more about texts and labels options under eeschema 2008-12-20 13:12:57 +00:00
charras cd6fbbef68 All: cleaning code to draw/plot texts (work in progress). Eeschema: italic and bold texts and labels allowed
(plot functions not yet updated for bold texts)
2008-12-19 20:40:08 +00:00
jerryjacobs af1a7e0725 Updated about dialog, also started tabbed indent instead of spaces in sourcecode 2008-12-19 17:46:32 +00:00
stambaughw 1ecea828c2 Initial ground work for zoom improvements and minor build updates. 2008-12-19 13:51:48 +00:00
charras beeaf53a0b Code cleaning. Removed obscure code to draw texts 2008-12-16 19:44:57 +00:00
charras 6d856f60a6 Pcbnew: Added display a short net name on vias and pads. Also, code cleaning 2008-12-14 19:45:05 +00:00
charras 6c01c55456 code cleanup, better comments and comments translation 2008-12-10 16:49:53 +00:00
charras 6e80810b87 change best zoom calculation in viewlib. Minor others changes and fixes. 2008-12-08 18:56:43 +00:00
stambaughw 2611a54791 Convert global and embedded application pointers to wxGetApp() 2008-12-08 15:27:13 +00:00
charras 0745188d33 some cleanup. Use local time now in DateAndTime. Time in files is now local time 2008-12-07 17:55:29 +00:00
charras e29d89c7c7 minor changes and cleanup 2008-12-06 12:49:33 +00:00
dickelbeck e574a1b061 more DLIST<> work 2008-12-06 08:21:54 +00:00
stambaughw f966097d5a Improved grid implementation, 3D viewer debug assertion fix, moved drawpanel.cpp to common library, and added WinEDA_Appl declaration. 2008-12-05 16:03:05 +00:00
dickelbeck aab39d1de7 injected DLIST<> into many list heads, see change_log.txt 2008-12-04 04:28:11 +00:00
charras 75b3c3bf37 Switch to polygons in zones (old way no more supported)
areas can be now filled using solid polygons, or using segments to fill areas inside polygons.
2008-12-03 10:32:53 +00:00
dickelbeck 7de4bfe6e1 fixes 2008-12-02 18:20:49 +00:00
dickelbeck 85d65db560 refinements after using 2008-12-02 09:13:28 +00:00
dickelbeck 671fabe120 edit component in schematic work 2008-11-26 00:20:16 +00:00
dickelbeck c4215848ac refinements 2008-11-24 21:03:40 +00:00
dickelbeck b113d17eeb makefile tweaks 2008-11-24 07:12:27 +00:00
dickelbeck 3ef380f936 dlist cleanups, start of edit component in schematic rework 2008-11-24 06:53:43 +00:00
dickelbeck 4d3d0a8fcc doubly linked list base class and template for contained specific instantations 2008-11-24 04:34:58 +00:00
charras 1c6ff86768 Zones now have a min thickness filled area parameter 2008-11-22 20:50:30 +00:00
jerryjacobs f43a7acc6a Make menu strings,tooltips, statusbar message more global
Dutch language update
 - 182 strings left
 - 100 fuzzy strings left
2008-11-16 10:13:36 +00:00
faa 8bed5053da cyrillic font support, russian GOST support 2008-11-05 11:41:15 +00:00
charras a0c413a6db solved a minor bug (pcbnew): arcs incorrectly printed in mirror mode 2008-11-02 19:52:57 +00:00
charras 365dbe15b8 Enhancement in zones filling by polygon, and better display for small texts
(more noticeable in eeschema)
2008-10-31 17:02:24 +00:00
charras 07767585c3 better code compatibility with others compilers (MSVC) 2008-10-30 20:12:29 +00:00
charras f723c540d0 code cleaning. Some comments translated into English.
Added: Zones unfill in polygon mode
2008-10-29 15:26:53 +00:00
charras fff34db7f3 pcbnew: added oblong thermal relief for oblong pads (from a contribution) . added contributor to kicad list 2008-10-19 10:13:04 +00:00
jerryjacobs 062bbfe1c3 2008-10-13 18:28:30 +00:00
jerryjacobs 6bf6b1808b General dialog captions updated (made more clear ), standard template fix, icons.cpp remove from common 2008-10-01 19:57:10 +00:00
jerryjacobs 7c655d1d36 Component and library selection color to white (same as eagle), some strings fine tuned and made translatable, dutch translation update, gerbview zoomfit on start 2008-10-01 17:34:55 +00:00
jerryjacobs 0f636a9879 (confirm.cpp) Get_Message frame caption added 2008-09-22 16:15:57 +00:00
jerryjacobs 26af26619a (confirm.cpp) Get_Message frame caption added 2008-09-22 16:03:12 +00:00
charras bb8ee329f8 Bug in get online help: kicad.pdf was always called instead of the suitable help file. thanks to the guy who did not test its changes
eeschema: code cleaning
switch to wxWidgets 2.8.9
2008-09-17 17:26:25 +00:00
charras b92dc298e4 minor change in about_kicad.cpp 2008-09-10 12:02:59 +00:00
charras d115b66884 set build version to stable. 2008-09-10 06:23:52 +00:00
charras 100c64b455 updated: about_kicad.cpp 2008-09-09 17:56:36 +00:00
f3nix b9ceddc354 Polish translation update. 2008-09-09 14:17:04 +00:00
strangeril a8e0701aac Czech translator is Martin Kratoska, not me. I just made corrections. 2008-09-09 11:54:16 +00:00
charras b7d8f5e31f added contributors in about_kicad.cpp 2008-09-09 11:32:21 +00:00
charras b02b170de2 Eeschema: minor bug solved: bad value when display lines widths in info screen in libedit 2008-09-05 19:02:39 +00:00
charras 5a904e460a Solved kbool lib compil problem under Windows and wxWidgets shared version
Pcbnew: Add position edition in footprint dialog edition
2008-09-05 16:08:13 +00:00
charras 8a53aa4621 solved some problems in hotkeys files access when spaces are used in names, and udtated paths according to the new tree used in kicad
Added wxWidgets version in about dialog
2008-09-03 16:19:06 +00:00
charras 8816d4dab1 solved bug 2072876. 2008-08-25 12:41:44 +00:00
strangeril b10990f276 Added Czech language support (needs corrections) 2008-08-25 11:44:10 +00:00
charras d3602e3311 minor changes (typo, about dialog) before release 2008-08-25 05:37:04 +00:00
f3nix c624958732 Polish translation update. 2008-08-24 10:27:54 +00:00
raburton c10fdc422b non-x86 specific 64bit test 2008-08-22 14:17:04 +00:00
raburton 39a9aabbf5 fix #elif build error 2008-08-22 13:36:05 +00:00
jerryjacobs e6838fdd7c About translatable, dutch language update 2008-08-22 13:12:22 +00:00
charras f3230893c4 Solved minor problems in eeschema, and code cleaning. 2008-08-17 18:37:03 +00:00
jerryjacobs 867d30d159 Linux/Unix desktop files updated and moved to resources directory, about dialog updated 2008-08-17 10:10:20 +00:00
charras d55989cc0e patch for 3D viewer from Emanuel Rumpf and minor other changes 2008-08-16 17:42:40 +00:00
jerryjacobs 8fd4401e12 all-programs: about dialog improved 2008-08-15 16:38:05 +00:00
charras 5f777f8c60 pcbnew: bug solved: pad holes not printed 2008-08-09 08:05:42 +00:00
dickelbeck d8485267e7 plot fill patch 2008-08-05 16:06:45 +00:00
charras 8080a2c9ba code cleaning and a bug in eeschema (print all not working) solved 2008-07-31 15:30:57 +00:00
charras 1f34ed0583 minor bug 1974672 solved 2008-07-20 12:59:52 +00:00
charras f49d2e3253 doc update. 2008-07-08 18:45:06 +00:00
f3nix f512957266 Polish translation update. 2008-07-03 21:29:40 +00:00
dickelbeck 44071acf07 Lorenzo's postscript fill patch for bugs 2003834 and 1956732 2008-06-30 13:47:55 +00:00
charras 0cdcd78ba0 doc update. 2008-06-29 18:51:38 +00:00
charras d0fe100306 default path kicad/share added when searching kicad data 2008-06-22 08:59:38 +00:00
charras 6858d10cb5 default path kicad/share added when searching kicad data 2008-06-22 08:54:05 +00:00
charras 4861daa674 Online doc format changed to PDF format. See changelog 2008-06-11 10:33:13 +00:00
charras 777076c86f minor changes. See changelog 2008-06-06 16:39:45 +00:00
f3nix 6bb111cb8e CMake files cleaning. 2008-06-06 12:39:00 +00:00
charras 44743723d1 removed GPC library due to its unacceptable license. Using the great and powerfull kbool library insteed 2008-05-30 18:06:21 +00:00
kajtek1 0221b21b25 Moved all XPM files to <kicad>/bitmaps directory 2008-05-22 14:36:16 +00:00
kajtek1 646ffe09eb Moved and fixed all XPM files to /bitmaps directory.
Fixed all related files also.
2008-05-22 14:25:20 +00:00
charras d87aed0cd0 eeschema: Solved: problem in manual part selection for multiple parts per package components 2008-05-21 09:18:14 +00:00
dickelbeck 845e95c3e4 make and use static bitmaps library 2008-05-17 19:24:22 +00:00
dickelbeck 2fa6f00bd6 debug statements 2008-05-17 19:10:36 +00:00
dickelbeck efc1534886 operator << (wxString, wxPoint) 2008-05-05 19:43:56 +00:00
charras 6bd3fea110 wxProcess::open does not work under windows (the process stays in background mode), wxExecute is still used under windows
Minor other changes
2008-04-25 07:33:45 +00:00
dickelbeck ba92f94fde ProcessExecute instead of wxExecute 2008-04-24 16:55:35 +00:00
dickelbeck 4715ea28e2 delete hierarhical pin sheet bug 2008-04-22 16:38:23 +00:00
charras 6f4f6f6ef8 Added: Dutch language option 2008-04-22 06:10:37 +00:00
charras 9b082be01a Solves a linux problem compilation created by my last commit 2008-04-18 18:30:10 +00:00
f3nix d5193af907 Polish = PL 2008-04-18 18:15:59 +00:00
charras 1547987157 some enhancements. 2008-04-18 13:28:56 +00:00
dickelbeck 721d878fcf GetScreen() work, menu capitalization, beautifying 2008-04-17 16:25:29 +00:00
charras 8123d3a5eb see changelog 2008-04-15 19:38:19 +00:00
charras 7f453831d5 eeschema: code cleaning. SCH_ITEM class used for all schematic items in eeschema. Files reorganization. 2008-04-14 19:22:48 +00:00
charras 9039a0a579 minor changes and cleanup 2008-04-03 18:03:42 +00:00
dickelbeck 9d395aa0c5 MAC alpha support 2008-04-02 14:16:14 +00:00
dickelbeck c439e0da05 draw only in OnPaint 2008-03-31 13:50:57 +00:00
dickelbeck ec4cbb79ed draw only in OnPaint 2008-03-31 13:46:00 +00:00
charras 0f54a686cc Solved: eeschema crashes when create a new sheet. Added comments in gestfich.cpp to explain the default paths used by kicad to find help files and lib files 2008-03-30 15:12:08 +00:00
charras f34be93032 Ensure graphic and footprint texts have a sufficient size to be seen on screen.(bug 1909165). 2008-03-24 20:54:45 +00:00
dickelbeck 154be142cb plot fix, beautification 2008-03-22 06:01:30 +00:00
dickelbeck 2da432b271 plot fix, beautification 2008-03-22 05:55:06 +00:00
dickelbeck 8f2e706853 const of GetZoom() 2008-03-21 19:26:12 +00:00
dickelbeck c406eed135 class name changes, XOR artifacts 2008-03-20 01:50:21 +00:00
charras 0ff83cbab7 MODULE::GetBoundingBox() takes in account the clearence around the pads. other very minor changes 2008-03-18 11:53:52 +00:00
dickelbeck 6de852e8a6 xoring artifacts 2008-03-16 04:47:43 +00:00
charras 9fb2c9fe23 some code cleaning and comments translations. Added: EDA_Rect::Merge( EDA_Rect & aRect ) (see changelog) 2008-03-15 10:24:32 +00:00
dickelbeck 0e709a1227 added bool Intersects() 2008-03-13 16:44:14 +00:00
f3nix 07a0e142ed Lowercase CMake commands. 2008-03-11 15:57:54 +00:00
charras 8111fe4984 Dirty rect Ok. Code must be cleaned. Import footprints from gpcb ok. See changelog for details 2008-03-10 08:14:20 +00:00
plyatov 8b6f6ab21f Eliminated bug - help files not found. 2008-03-06 19:57:06 +00:00
dickelbeck 2caad6b121 beautify 2008-03-05 22:44:38 +00:00
plyatov d4b34ab362 install.txt was corrected.
demos installation added in CMakeLists.
Temporary problem with help appeared.
2008-03-05 07:16:43 +00:00
plyatov 0fb8f818ad docs->doc and help->doc/help relocation. DO NOT UPDATE YOU WORKING COPY UNTIL MY NOTEsvn st! Huge files will be relocated. 2008-03-04 17:14:58 +00:00
dickelbeck 3d73eb6823 Beautification, Doxyfile edits 2008-03-04 14:27:48 +00:00
dickelbeck 10e13ae50a layer names in *.brd file 2008-03-04 04:22:27 +00:00
CHARRAS e2abaa8109 Display filename and full sheet name ("sheet path") in sheet references 2008-02-29 15:31:32 +00:00
CHARRAS 4d9ea908f1 Display filename and full sheet name ("sheet path") in sheet references 2008-02-29 14:19:21 +00:00
CHARRAS acf03b7d55 Global labels problems fixed (see changelog) 2008-02-20 19:37:17 +00:00
dickelbeck 708a394c64 debugging printfs 2008-02-20 19:12:36 +00:00
dickelbeck 8eff8df94b beautify 2008-02-19 00:35:45 +00:00
plyatov eb4e6119f5 Chinese translation support added. 2008-02-18 21:45:29 +00:00
lifekidyeaa c7ec524fc7 eeschema: fixed:
* crash when creating a sheet that does not yet have a sch file
* when loading schematic file v 1 annotations are applied to all sheets independent of path in hierarchy
* component reference is drawn by default upon placing a new libary comp.
2008-02-15 23:21:33 +00:00
lifekidyeaa c5cd85027b 2008-Feb-12 UPDATE Tim Hanson sideskate@gmail.com
================================================================================
+eeschema
        * commiting my changes to allow multiple instances of a given schematic file within 
a hierarchy:
        ** internally, m_currentScreen has been replaced with m_currentSheet,
                which is a list or 'path' of screens.  The path of screens is used to 
generate
                a series of timestamps, which is converted to flat component reference via 
a look-up
                table in the schematic files.
        ** this means that m_currentScreen is no longer used -- use GetScreen().
        ** GetScreen is virtual, as some of the dialogs keep around a WinEDA_BaseScreen 
pointer.
        ** all sub-sheets in a given schematic must have different names to generate a 
meaningful netlist.
2008-02-12 21:12:46 +00:00
f3nix af1c15646f CMake:
* Change tabs to spaces.
* Make Boost required.
2008-01-30 09:42:19 +00:00
CHARRAS 4ac2fd416d infospgm.cpp moved from share/ to common/ 2008-01-28 19:26:19 +00:00
dickelbeck 6ab5ad27f5 Wayne Stambaugh's patch which allows infospgm.cpp to be compiled once rather than for each program 2008-01-28 05:49:15 +00:00
dickelbeck 5dc4cd59ca comment change 2008-01-23 01:51:26 +00:00
dickelbeck 2aa1a26b58 beautification 2008-01-19 20:34:10 +00:00
CHARRAS 339a90e7ac Block commands now works with zones. 2008-01-06 12:43:57 +00:00
dickelbeck 8de0bf46a7 exploring custom layer names 2008-01-05 17:20:46 +00:00
dickelbeck 8a37513952 const strings 2008-01-01 07:51:54 +00:00
dickelbeck 751e2f5c7a comment out unused function strlower() 2007-12-23 05:41:02 +00:00
dickelbeck 467d9d3692 added strlower() 2007-12-22 07:17:22 +00:00
dickelbeck e35e2eac8d fixed compiler warning 2007-12-22 07:16:45 +00:00
CHARRAS 1e11a70ef1 minor change (path added in gestfig.cpp, linux only) 2007-12-21 07:45:42 +00:00
dickelbeck fbe304722e when drc denies via insertion, bridge track not deleted 2007-12-18 02:34:54 +00:00
dickelbeck d01e04c978 fix typo, beautify 2007-12-11 23:12:37 +00:00
dickelbeck cbaf4f9f7e hotkey fix for + and - 2007-12-11 06:35:52 +00:00
dickelbeck 0f452cc016 patch 2007-12-05 20:54:11 +00:00
dickelbeck 628be5d1c1 chasing a bug 2007-12-05 17:56:57 +00:00
f3nix 4fd9325f6d Some small CMake fixes. 2007-12-02 13:56:03 +00:00
dickelbeck 76fb213bf0 2nd of 3 commits for DrcDialog rework 2007-12-01 05:53:52 +00:00
kintel 7b007f6d85 Added deps make target for Mac OS X 2007-11-19 14:35:04 +00:00
CHARRAS 0605d07263 2007-11-14 16:02:19 +00:00
dickelbeck 238c12dae0 modedit bug fix 2007-11-12 05:53:48 +00:00
g_harland 41a643c166 "Colors" dialog box has been enhanced 2007-11-11 09:09:53 +00:00
CHARRAS c4f1a36a8a fixed infospgm.cpp compil proble under gcc 4.2 2007-11-08 09:12:25 +00:00
f3nix 9307b49eec CMake build system for all apps. Usage in install.txt 2007-11-08 07:17:37 +00:00
plyatov 77cb86a1ea Draft files for CMake build system support 2007-11-07 16:18:24 +00:00
CHARRAS 3823d66052 removed not used files. french kicad.po updated 2007-11-07 11:52:29 +00:00
g_harland 1e896d1750 Enhance more dialog boxes for EESchema 2007-11-07 04:24:25 +00:00
CHARRAS 80605bf260 lib path problem: does not modify path if a libname starts by ./ or ../ 2007-11-05 19:54:48 +00:00
CHARRAS 5a948e98b7 made ADD_MENUITEM_xx static inline 2007-11-05 07:07:00 +00:00
raburton bc52b0e60e simple hacky make dependancy solution 2007-11-04 22:14:47 +00:00
CHARRAS 9c3d5bd96d eschema, pcbnew and cvpcb did not find libraries when they were in the default library path, but in a subdirectory 2007-11-02 17:17:44 +00:00
dickelbeck 9fe9fc7c00 fix macro to inline conversion 2007-10-31 17:44:51 +00:00
CHARRAS 3d0e6a5f1e gcc 4.2.1 compatibility: change char * to const char * whenever it was necessary 2007-10-31 08:34:05 +00:00
dickelbeck f353c77cdc more zone preps 2007-10-31 06:40:15 +00:00
dickelbeck 64e9e16886 virtual BOARD_ITEM::Save() 2007-10-30 21:30:58 +00:00
CHARRAS d5d16186a6 listboxes.cpp problem solved (see change_log) 2007-10-29 08:22:45 +00:00
plyatov a5bd7d440b Russian translation update. 2007-10-28 20:33:19 +00:00
kintel 5cf158e536 Fixed cut&paste error 2007-10-28 19:35:17 +00:00
kintel c9679e65c9 Updated build system for Mac OS X 2007-10-28 18:47:28 +00:00
kintel 8863c003e4 Use wxWindowDC instead of wxClientDC as function parameters since we cannot assume that wxPaintDC inherits from wxClientDC 2007-10-28 17:53:09 +00:00
kintel 36e5586539 Fixed path handling under Mac OS X 2007-10-28 17:45:36 +00:00
raburton 5fc7925445 set eol-style native on new file 2007-10-27 13:37:08 +00:00
CHARRAS ec02baab5f remove unused files. some translations.
cvpcb:	set flag wxFRAME_FLOAT_ON_PARENT when create the footprint 3D frame and the display frame
2007-10-27 12:24:09 +00:00
CHARRAS 2a5676b2e2 Add class_marker.cpp and class_marker.h. Some other minor changes 2007-10-26 06:08:19 +00:00
CHARRAS 13a847d344 Add catalan language to language list 2007-10-22 18:58:47 +00:00
g_harland 182dbb605b MAYBE_RESIZE_BORDER field now provided within all .pjd files;
MAYBE_RESIZE_BORDER field restored to cleaningoptions_dialog.h
2007-10-22 00:26:05 +00:00
CHARRAS 9b58687c50 rename dialog_clean_pcb.pjd, other minor changes 2007-10-21 16:46:13 +00:00
g_harland 5d2817fffd Sizers now provided within the "Colors" dialog box 2007-10-21 10:01:15 +00:00
dickelbeck 3cd47555ca see 2007-Oct-12 change_log.txt 2007-10-13 06:18:44 +00:00
dickelbeck 787cf5851e MenuText() tweaks, beautification 2007-10-11 00:11:59 +00:00
dickelbeck e1ff958a3c MsgPanel rewrite 2007-10-10 18:01:14 +00:00
dickelbeck 8300fe1850 todo.txt update 2007-10-09 12:29:02 +00:00
g_harland 9e32b2abdb Assorted changes; see change_log.txt 2007-10-07 03:08:24 +00:00
dickelbeck aba115f0fb improved pcbnew marker support 2007-10-03 19:45:32 +00:00
dickelbeck d985f2d640 DeleteStructure() & DeleteStructList() consolidation 2007-10-03 15:21:13 +00:00
dickelbeck e9921a71fc resizeable borders option 2007-10-02 16:00:55 +00:00
dickelbeck dac25cdbf9 resizeable borders option 2007-10-02 15:35:31 +00:00
CHARRAS 06c9f9c855 enhancements in pcbnew to eeschema cross-probing. removed change in drc.cpp 2007-10-01 15:37:42 +00:00
dickelbeck 9dca39f1d4 SEGVIA::Show() & BOARD_ITEM::MenuText() 2007-10-01 04:14:29 +00:00
g_harland 19330ff0f4 Restore functionality of 'Preferences -> Colors' and 'Preferences -> Options' commands in EEschema 2007-09-24 07:14:01 +00:00
CHARRAS ba04f83247 small change on hotkey management. Added: drag component 2007-09-22 14:31:20 +00:00
dickelbeck 664a1f727b see my 2007-Sep-20 change_log.txt 2007-09-20 21:06:49 +00:00
CHARRAS 62058240b1 change erronous word Hothey to Hotkey in 2 function names 2007-09-20 09:13:40 +00:00
CHARRAS 2cfe92de85 hotkey enhancement 2007-09-20 05:41:40 +00:00
CHARRAS 542b944196 hotkeys handling finished 2007-09-19 15:29:50 +00:00
dickelbeck 18d83b768c See my change_log.txt 2007-Sep-13 UPDATE 2007-09-13 11:55:46 +00:00
CHARRAS d1effbf4e2 EDA_BaseStruct.SetType() and EDA_BaseStruct.ReturnClassName() removed. 2007-09-13 11:28:58 +00:00
g_harland 2f3aeeaa29 Enhance "Colors" dialog box (as listed in change_log.txt) 2007-09-13 09:24:43 +00:00
dickelbeck cb49ea8989 see change_log.txt for 2007-Sep-11 UPDATE 2007-09-12 02:14:07 +00:00
CHARRAS d6072d8ac9 Programmable hotkeys added in gerbview. Fixed a compilation probleme in ansi mode (non unicode mode). 2007-09-10 04:51:01 +00:00
dickelbeck 75e6ef1d2d comment out debug printf 2007-09-09 02:23:49 +00:00
CHARRAS e27d3f8c78 more work on programmable hotkeys. Most of features are ok. 2007-09-06 11:52:26 +00:00
dickelbeck dff70646a2 see change_log for 2007-Aug-31 2007-09-01 12:00:30 +00:00
dickelbeck 726a8ab4df collector work 2007-08-30 22:20:52 +00:00
CHARRAS f5eae50680 more work on hotkeys. many features are ok. 2007-08-30 08:15:05 +00:00
dickelbeck f3c324d535 EDA_BaseStruct::m_StructType is now type KICAD_T 2007-08-24 15:10:46 +00:00
dickelbeck 2e13ccf048 see change_log.txt's 2007-Aug-23 UPDATE 2007-08-24 03:40:04 +00:00
dickelbeck cc62305777 see change_log.txt for 2007-Aug-22 2007-08-23 04:28:46 +00:00
dickelbeck e6239e7456 moved m_Layer into EDA_BaseStruct 2007-08-22 05:11:01 +00:00
g_harland 0e2d1d1c79 Changed values of "proxy-wxSTAY_ON_TOP" and "proxy-wxRESIZE_BORDER" within PJD files to 0, and repurged wxRESIZE_BORDER property from pcbnew/dialog_drc.h 2007-08-21 21:26:33 +00:00
CHARRAS c116a9b5a7 first version of programmable hotkeys (work in progress) 2007-08-21 19:37:31 +00:00
g_harland 0421987b32 Comments within postscript files now fully comply with Adobe's Document Structuring Convention, and beautification 2007-08-20 13:28:34 +00:00
raburton 9f1f455b7a set eol-style to native for new files 2007-08-20 11:33:45 +00:00
CHARRAS 9414bf676b more work on hotkeys 2007-08-20 10:55:09 +00:00
dickelbeck 1d9516c0a7 made GetCurItem() inline 2007-08-20 02:08:15 +00:00
dickelbeck 6acce67a64 made m_CurrentItem private, beautification 2007-08-20 01:20:48 +00:00
dickelbeck b1298e9b66 mac support fixes 2007-08-18 11:43:59 +00:00
dickelbeck 51fc26e178 mouse synchronization from PCBNEW to EESCHEMA 2007-08-14 19:24:48 +00:00
CHARRAS ea6aba8212 Better Hotkey.cpp code for eeschema 2007-08-10 18:05:42 +00:00
dickelbeck 27bd9c751a visitor design pattern, MODULE::FindPadOrModule() 2007-08-09 21:15:08 +00:00
dickelbeck 79de635217 Show() improvements 2007-08-09 01:41:30 +00:00
dickelbeck c1e3416a8f searching and beautifying 2007-08-08 20:51:08 +00:00
CHARRAS 66080848cc Bug fix in class_hierarchy_sheet.cpp. 2007-08-08 08:01:06 +00:00
dickelbeck 6719900ef9 searching and beautification 2007-08-08 03:50:44 +00:00
dickelbeck f8f384384a search and debug infrastructure, beautification 2007-08-07 06:21:19 +00:00
dickelbeck dda28ed69a more new search stuff, beautification 2007-08-06 21:02:23 +00:00
dickelbeck 6f7209aa73 start of new search stuff, beautification 2007-08-06 20:26:59 +00:00
dickelbeck 5748b79107 added some conditional DEBUG code for showing the pcb object tree in simple XML format 2007-08-06 02:02:39 +00:00
dickelbeck 2e4c17a8b0 beautification, commenting, and renaming 2007-08-04 20:05:54 +00:00
dickelbeck b9259f8516 fixed g++ 4.1.2 compiler warnings, added USE_MATCH_LAYER build option 2007-08-02 02:04:45 +00:00
dickelbeck d84960f3b0 spelling changes, remove space from "Edges Pcb" print/plot filenames, from Geoff Harland. 2007-07-20 04:07:44 +00:00
CHARRAS a397c4b248 gestfich.cpp change (A problem under windows already solved, but change was lost) 2007-07-09 09:29:53 +00:00
raburton af37d78ab3 added install targets for the non-binary stuff (libraries, help, etc.)
it's now possible to do a complete usable kicad install from source
2007-06-16 09:07:23 +00:00
charras 1a30862de5 minor changes. update GUI french translation 2007-06-15 12:04:24 +00:00
dickelbeck dc7235c769 Gathered up common compiler and linker flags for the makefile.gtk file set.
Much easier now to compile with debugging symbols enabled.
2007-06-14 16:28:05 +00:00
charras 89b3eb5aa5 bug fixes and merging my development with svn rep. 2007-06-13 15:35:40 +00:00
lifekidyeaa c55e64af3f * added strings to help people learn the layer shortcuts when changing layers with the
horizontal toolbar layer listbox (pgup + pgdwn, which were already in the source, plus 
F5-F8).  I hope this is a useful feature.
2007-06-11 21:23:47 +00:00
raburton 617418b4c7 fix clean targets in makefile so they don't fail if already clean 2007-06-05 16:50:50 +00:00
raburton dedb0228dc add files not currently available in source (e.g. docs, modules, etc.)
set svn:eol-style property to native for all ascii files to support cross platform development
2007-06-05 12:10:51 +00:00
dickelbeck ae74527bc2 Jean-Pierre's changes for kicad-2007-05-25 release 2007-05-28 18:09:49 +00:00
plyatov 23c40f7e86 Initial import of KiCad. 2007-05-06 16:03:28 +00:00