Commit Graph

2748 Commits

Author SHA1 Message Date
unknown 71b3125d8e Cleanup: remove unnecessary macros EXCHG and NEGATE. add MIRROR macro. 2015-06-26 15:41:56 +02:00
Marco Hess be01e15f66 KiCad: add html file support to tree view.
* Create bitmap for html files in tree view.
* Run default web browser when html files are double clicked.
2015-06-24 15:30:35 -04:00
jean-pierre charras a928bbfaac Fix issue in richio.cpp, when printing strings with a size > 500 chars.
This was due to an use of twice the same va_list by 2 calls to vsnprintf, but the first call can change the va_list.
2015-06-24 15:53:03 +02:00
Chris Pavlina c9d52c8894 Fix segfault when exiting Pcbnew with wxPython scritping enabled. (fixes lp:1431028) 2015-06-23 08:42:12 -04:00
Chris Pavlina 8879c0a411 Fix segfault when exiting stand alone apps under certian conditions. (fixes lp:1467221) 2015-06-23 08:31:27 -04:00
jean-pierre charras bf2f480b7c Dialog exchange modules: add a fp selection from the fp viewer
Fix also an issue on Windows, when using the footprint viewer or the component viewer in modal mode:
Reason: these frames (when run under the Kicad manager) have the Kicad manager as parent, and were built with wxFRAME_FLOAT_ON_PARENT style.
On windows, when the frame with style wxFRAME_FLOAT_ON_PARENT is displayed  its parent frame is brought to the foreground, on the top of the calling frame.
and stays displayed when closing the  frame in modal mode.
This issue does not happen on unix so we use now wxSTAY_ON_TOP on Windows, and wxFRAME_FLOAT_ON_PARENT on unix to simulate a dialog called by ShowModal.
This is not perfect, but at least it works.
2015-06-22 19:21:34 +02:00
unknown 97010c3867 Fix Bug 146731: Zone fills entire area when set to THT Thermal ( fracturing (holes->single contour) algorithm bug ) 2015-06-22 09:09:44 +02:00
jean-pierre charras 7c8c1d4954 Minor fix and cleanup. 3D viewer: modify the status bar. (Should be enough to avoid the bug #1467111). 2015-06-21 20:21:20 +02:00
Tomasz Wlostowski e8fca89a2c fix dereference of a deleted pointer 2015-06-19 19:39:33 +02:00
Maciej Suminski a988ebaabd Zone merging (GAL). 2015-06-19 17:32:33 +02:00
Maciej Suminski 28a270a328 Refactored grid origin point drawing (GAL). 2015-06-18 17:51:53 +02:00
Maciej Suminski b3d4a680fa Prevent weird viewport settings after switching twice to GAL canvas. 2015-06-18 17:51:52 +02:00
jean-pierre charras d0daa2cab7 Add color selector in 3D viewer for silkscreen, solder mask and copper.
Remove unused or duplicate icons.
2015-06-16 20:04:02 +02:00
Maciej Suminski 06aa47c93d Fixed wxString to char* cast for wxWidgets built with certain flags. 2015-06-16 19:15:28 +02:00
Maciej Suminski d3b31316ba Fixed module text visibility settings (GAL). 2015-06-16 17:03:36 +02:00
Maciej Suminski dd5275f6c6 Minor SELECTION_TOOL fixes. 2015-06-16 14:51:39 +02:00
Maciej Suminski c007e308f8 One more dialog assert fix. 2015-06-16 14:51:34 +02:00
Maciej Suminski 5c6ecb0491 Zoom hotkeys fix for Windows (GAL). 2015-06-16 14:22:12 +02:00
Tomasz Wlostowski b562cfb8bb WX_HTML_REPORT_PANEL: a REPORTER widget on steroids. 2015-06-16 14:20:42 +02:00
jean-pierre charras 49fac351ab Fix a few coverity warnings. 2015-06-15 16:01:43 +02:00
Maciej Suminski 6d07e9a754 Fixed dialogs asserts. 2015-06-15 15:54:58 +02:00
jean-pierre charras dc9ebf30e5 A few minor fixes. Eeschema: add a workaround (not afix) to solve issue Bug #1464773 (Print bug with differently sized subsheets). 2015-06-14 19:58:57 +02:00
Tomasz wlostowski eba3a55bb2 pcbnew: new zone filling algorithm using ClipperLib. Possibility to fall back to the old one 2015-06-12 17:13:18 +02:00
Tomasz Wlostowski feaa403266 common/geometry: introducing set-of-polygons class (SHAPE_POLY_SET) and File I/O for shapes class (SHAPE_FILE_IO) 2015-06-12 17:12:02 +02:00
Tomasz Wlostowski 9cf885c383 common/geometry: rouding error fixes 2015-06-12 17:11:50 +02:00
Wayne Stambaugh f97191b050 Fix some more OSX bundle issues due to CvPcb changes. 2015-06-11 16:42:48 -04:00
Maciej Suminski c23adc47b7 Ratsnest algorithm distinguishes layers (GAL). 2015-06-04 14:54:08 +02:00
Maciej Suminski d89d1d49a3 Fixed ghost effect in GAL view. 2015-06-04 14:54:07 +02:00
Brian Sidebotham 8afeba3325 * Fix EDA_LIST_DIALOG which had incorrect wxWidgets version check in
column sizing. Now the columns are sized to fit either the headers or
  items, depending on which is widest
2015-06-02 23:34:55 +01:00
jean-pierre charras 0cab3e47ad Enable plot in clipboard on Linux and OSX in eeschema, and copy in clipboard in 3d viewer ( was existing on Windows, but disabled on other OS ).
Minor other fixes (duplicate hot key in eeschema, which fixes Bug #1460359)
2015-05-31 13:51:50 +02:00
jean-pierre charras 9f03d15a2e Try to enable Clipboard copy on linux 2015-05-31 13:14:57 +02:00
unknown de06578b4b Fix IDF code bug in the calculation of the outlines winding direction. 2015-05-26 08:18:50 +02:00
Garth Corral e63cafa62a Update WX_VIEW_CONTROLS::onMagnify() to recent changes. 2015-05-22 09:37:57 +02:00
Garth Corral 6eaf029a0e Pinch to zoom for OS X. 2015-05-21 22:54:29 +02:00
jean-pierre charras a5367391a9 Plot PS and PDF: fix bug Bug #1457215 (rect/trap pads plotted with an incorrect pen size, and therefore an incorrect size and shape. Only noticeable with a large default pen size)
Very minor coding style fixes.
2015-05-21 11:04:47 +02:00
Maciej Suminski 48a74dba37 Added missing 'def' 2015-05-21 00:47:53 +02:00
Maciej Suminski 420c1d1bcd Changed the patch to support full resolution on Retina screens to be more bulletproof. 2015-05-21 00:42:46 +02:00
jean-pierre charras 84ba36fa72 Allows switching GAL or legacy mode in footprint editor (previously, the mode was inherited from the board editor, and was not modifiable without closing the footprint editor) by menu or F9, F11 and F12 keys) 2015-05-19 18:39:05 +02:00
Maciej Suminski 4026cb6c58 Moved zoom limits and area boundaries handling to VIEW. 2015-05-18 13:48:13 +02:00
Maciej Suminski 6fc59f9acd Full resolution in OpenGL canvas on Retina displays 2015-05-18 13:48:12 +02:00
Maciej Suminski cbb86c3b9c Fixed zooming with Apple pointing devices (GAL). 2015-05-18 13:48:12 +02:00
Maciej Suminski 2043d4696f Scrollbars (GAL). 2015-05-18 13:48:10 +02:00
jean-pierre charras 77249d9b2d Minor fixes: remove a few useless includes and move a few others to the right file. Remove a few coverity warnings about not initialized members.
Minor bug fix: Zone duplicate zone in legacy mode: duplicate a zone to the same layer (and therefore  the same location) is no more allowed.
2015-05-15 14:49:11 +02:00
jean-pierre charras 37b0868376 Pcbnew: fix minor issues about fast grid switching, and next/previous grid selection from hotkeys. (GAL mode still has an issue) 2015-05-12 11:05:36 +02:00
Wayne Stambaugh b2745c4b00 Unify platform information code in about dialog and version information. 2015-05-11 12:25:33 -04:00
Maciej Suminski da75c52665 Hot keys settings are synchronized between GAL & legacy 2015-05-05 20:39:42 +02:00
Maciej Suminski 99e5228948 Moved the list of TOOL_ACTIONs to ACTION_MANAGER. 2015-05-05 20:39:41 +02:00
jp charras 722435f317 Fix issues in auto-save files:
* auto-save was broken for all sub sheets with are in a sub-directory of the project directory. (reason wxFileName::Normalize(), used to create the absolute path  has issues with filenames starting by '$', perhaps due to env var which also start by $). the auto-save prefix is modified ( now AUTOSAVE_PREFIX_FILENAME which defines "_save_"  ) and defined only once.
* auto-save files from sub-sheets were not found due to the fact the path was not set (fixed by Blair Bonnet's patch)
2015-05-03 15:48:05 +02:00
jean-pierre charras d41bc31c49 Fix bug #1447905 (very minor bug, in fact). Fix a few minor coding style issues.
Fix 2 coverity warnings.
2015-05-03 08:31:14 +02:00
jean-pierre charras 2047d87317 Minor fixes (Bug #1414328 and Bug #1440312). Remove translatable attribute in a debug message.
tools/edit_tool.cpp: remove limitation (GAL mode) to delete the last pad in a footprint (a footprint can have 0 pad, for instance a logo)
2015-05-01 17:01:09 +02:00
jean-pierre charras 5a02b91e5f Fix some issues created by rev 5632:
*  Use only double to store zoom levels in class BASE_SCREEN (int type is not working for eeschema or page layout editor) (this fix Bug #1450551, Assertion failed on wxRound() when zooming)
*  Fix crash in all apps but Pcbnew when a grid or a zoom was selected from the popup menu.
*  Modify default hotkeys for Next Grid and Previous Grid: the initial key was a dead key, not suitable as hotkey. the 'N' and Shift N keys are used instead (with a change for unfill zone hotkey)
*  Modify code in EDA_DRAW_FRAME::SetNextGrid() and EDA_DRAW_FRAME::SetPreviousGrid() to make them compatible with other editors than the board editor.
2015-05-01 11:31:23 +02:00
Maciej Suminski 8390fec69d Minor fixes. 2015-04-30 10:46:08 +02:00
Maciej Suminski 47582e2741 GAL autozooms on every EDA_DRAW_FRAME::Zoom_Automatique 2015-04-30 10:46:08 +02:00
Maciej Suminski e37b07a6fc Explicit destruction of menu entries in CONTEXT_MENU. 2015-04-30 10:46:07 +02:00
Maciej Suminski b218c1099f Added TA_CONTEXT_MENU_CLOSED tool event. 2015-04-30 10:46:07 +02:00
Maciej Suminski f2788a3086 Corrected way of storing cursor coordinates for context 2015-04-30 10:46:06 +02:00
Maciej Suminski 06b978b829 Refactored CONTEXT_MENU, added handler for updating. 2015-04-30 10:46:05 +02:00
Maciej Suminski dfb0443b67 Refactoring library dependencies. 2015-04-30 10:46:05 +02:00
Maciej Suminski 025d4cf23a Alternative way of handling grid settings in GAL. 2015-04-30 10:46:04 +02:00
Maciej Suminski 4be876a13a Expandable CONTEXT_MENUs (GAL). Minor CONTEXT_MENU 2015-04-30 10:46:04 +02:00
Maciej Suminski 946b9d1933 setTransitions() are called automatically for tools. 2015-04-30 10:46:03 +02:00
Maciej Suminski 50afd515c2 Minor code cleaning. 2015-04-30 10:46:03 +02:00
Maciej Suminski c4888afbcc Refactored the way GAL handles zoom settings. 2015-04-30 10:46:02 +02:00
Maciej Suminski 557bb43dd2 Moved TOOL_MANAGER & TOOL_DISPATCHER to EDA_DRAW_FRAME. 2015-04-30 10:46:02 +02:00
Maciej Suminski 5c984aa069 Parametrized TOOL_ACTIONs. 2015-04-30 10:46:01 +02:00
jean-pierre charras 569c2be354 Minor fixes: dialog rescue: make strings translatable. Remove a few coverity warnings (not initialized members). Very minor other changes. 2015-04-28 17:07:36 +02:00
Chris Pavlina 26c320db57 Add schematic component library change rescue feature (fixes lp:1435338).
* Add code to test if any of the components in the schematic cache have been changed
  in the component libraries.
* Prompt user to accept or reject components when changes are found.
* If the user chooses to use the components in the cache, create a new library with the old
  components and add it to the beginning of the component library list so the schematic will
  not be changed.
* Create dialogs to handle user feedback and status.
2015-04-25 18:26:51 -04:00
Maciej Suminski 709697ea40 Better way to determine supported OpenGL version and extensions. 2015-04-20 14:16:41 +02:00
Maciej Suminski 7480bcf1ae Yet another desperate trial to fix the depth buffer issues. 2015-04-17 12:15:25 +02:00
Maciej Suminski d281d86eee Fixed undo/redo display refresh for miras & dimensions (GAL). 2015-04-17 12:15:07 +02:00
jean-pierre charras 4daf9039db Eeschema: Fix a very old bug relative to the tool to load power parts:
Previously, only the lib named "power" was used (and therefore power parts defined in other libs not shown).
Now, all power parts can be loaded from any library.
Also, when loading power parts from the chose component dialog or the lib viewer, libs and parts are filtered:  only power parts and libs containing power parts are listed.
Hotkeys: move a few global strings in the files where ther are actually used (and make them local.) and code cleaning.
Fix a few other minor issues.
2015-04-16 17:26:51 +02:00
jean-pierre charras 9c0c89256e Make hotkeys editor titles translatable. 2015-04-14 19:44:19 +02:00
jean-pierre charras ec17455d35 board_items_to_polygon_shape_transform.cpp: remove full duplicate code between DRAWSEGMENT and EDGE_MODULE, and fix incorrect conversion of DRAWSEGMENT polygon type to its polygonal shape.
Gerbview: better info from X2 filefunction attribute displayed in layer manager about copper layers
2015-04-09 20:53:36 +02:00
Wayne Stambaugh 4274f2d5d5 Fix config.h default data install path assignment during configuration.
* Remove redundant definition of KICAD_DATA_PATH since DEFAULT_INSTALL_PATH
  was already defined.
* Use DEFAULT_INSTALL_PATH as the substitution for the default environment
  variable paths.
* Add option to define DEFAULT_INSTALL_PATH during CMake configuration with
  fall back to CMAKE_INSTALL_PREFIX if not not defined.
* Developer note: this change is primarily for package builders where
  CMAKE_INSTALL_PATH is the path where the package builder temporarily
  installs the build output before creating the package.  When building
  packages, DEFAULT_INSTALL_PATH should be set to the path where the
  package will be installed by default.
2015-04-08 13:27:04 -04:00
jean-pierre charras 17297babe7 Eeschema: extend max number of units per package to 52 and clean code to easily extend this value upto 26x26 (but 52 is a reasonable max value).
Fix a few minor coverity warnings.
Add about_dialog typo fix from Nick Østergaard
2015-04-07 13:52:29 +02:00
Nick Østergaard 0241776d54 Sync the about dialog with AUTHORS.txt, and updates the copyright year 2015-04-05 11:48:54 +02:00
Maciej Suminski b1cd83c197 Icons in GAL context menus. 2015-04-02 16:09:48 +02:00
Maciej Suminski 6083f3b011 Internationalization of GAL dialogs & menus. 2015-04-02 16:09:26 +02:00
jean-pierre charras bbbb84e6c2 Fix a few minor coverity warnings.
Fix minor 3D viewer issues (includling change number of segments and its optimization to draw pad holes.)
Fix Bug #1439132 (track and via list on toolbar not always refresh after loading a board).
Remove useless tool in Modedit.
2015-04-02 13:18:19 +02:00
Maciej Suminski 589dd442f5 Clippy returns home. 2015-04-02 09:18:45 +02:00
Maciej Suminski 8be73ad05a KiCad assistant. 2015-03-31 23:45:02 +02:00
Wayne Stambaugh a6172bb72e Minor path configuration code fixes.
* Fix bug (and Coverity error) when deleting environment variable map entries.
* Remove debug logging code inadvertently left over from development.
2015-03-31 11:46:31 -04:00
Maciej Suminski 4dae107dab Alternative depth range in OpenGL GAL. 2015-03-30 22:14:37 +02:00
Wayne Stambaugh 6aff74665a Fix build error cause by difference in wxRichMessageDialog between versions 3.0.1 and 3.0.2. 2015-03-30 10:52:54 -04:00
Maciej Suminski 9e8719d3ff Fixed overlapping segment endings in OpenGL view. 2015-03-30 14:09:56 +02:00
Wayne Stambaugh 45d0448bb9 Add path (environment variable) configuration dialog.
* Create new dialog to edit environment variables.
* Add helper class ENV_VAR_ITEM to manage environment variable values and
  if they were defined externally.
* A path configuration dialog access to KiCad, CvPcb, Pcbnew, and Footprint Editor
  window menus.
* Add validator for environment variables.
2015-03-29 17:22:53 -04:00
jean-pierre charras 1bc3e9f105 Better error messge when a .kiface file ( or, if it exists, a .dll or .so shared library ) is not found at start up 2015-03-26 18:27:13 +01:00
jean-pierre charras bb50e141f4 Pcbnew: Force visibility of items which have no option in dialogs to controle this visibility, when reading the .kicad_brd file.
these options are used in GAL mode, but the usercannot control this visibility. So if the board file does not have these visibility flags set, the GAL never show them.
Fix also a compil warning.
2015-03-26 14:20:11 +01:00
Maciej Suminski b74b2efff0 More printing fixes. 2015-03-25 18:27:17 +01:00
jean-pierre charras 85bc2ae015 Rework on Gerber plot functions: add X2 attributes in J5 version. Minor code cleaning. 2015-03-25 14:07:05 +01:00
Maciej Suminski 0b7fd874a0 Fixed printing issues under Linux. 2015-03-25 10:55:00 +01:00
jean-pierre charras 0e03fbff07 Make hotkey string info translatable in dialogs. These strings are now prefixed by _HKI , which can be used by translation tools to extract them. 2015-03-22 15:04:09 +01:00
https://launchpad.net/~john-j-beard 0350290499 Fix Bug #1426675 (Undo and cancel commands don't have effect for Duplicate operation in legacy mode) 2015-03-22 10:42:41 +01:00
jean-pierre charras 6e8a8a6b25 Fix some coverity warnings (mainly not initialized members) 2015-03-21 10:06:04 +01:00
unknown 35c23f3135 Fix incorrect close function in HTML_MESSAGE_BOX (whichcan be shown in modal or not modal mode) 2015-03-20 20:11:11 +01:00
jean-pierre charras 834b31b491 Plot pdf: fix issue when a 0 sized text is plotted (files are broken): now 0 sized texts are ignored.
pcbnew: remove a false error message when undoing a change on a text, or some other board items (graphic items for instance)
2015-03-18 20:50:42 +01:00
Chris Pavlina 1d2e2e555b Final solution for the text overbar problem in GAL. 2015-03-16 18:18:18 +01:00
Chris Pavlina e6db185f2e Adjusted text overbar height in GAL. 2015-03-16 16:42:45 +01:00
Chris Pavlina be29952819 Fix for hotkey collisions when modifiers are used. 2015-03-16 10:34:45 +01:00
jean-pierre charras 3c4f76abe4 Fix a not shown dialog under XFCE and Unity. Make display hotkeys window not modal. 2015-03-15 12:41:06 +01:00
jean-pierre charras f743b98844 Try to fix Bug #1431391 (Unable to edit pins in Schematic library editor). It happens on XFCE, but also on Unity. This fix works on Unity. (it is due to the fact the dialog is not raised, for an unknown reason, and this bug depend on the way Eeschema and Libedit are run).
Add Ctrl+E hotkey in eeschema to edit a component with Libedit (similar to pcbnew Ctrl+E hotkey)
As usual, fix a few minor coverity warnings
2015-03-14 12:50:39 +01:00
jean-pierre charras 9004ed8801 Remove a few coverity warnings. Fix some comments which were incorrect, due to the changes in code. Remove not compiled code (kept as comments), now outdated or useless
legacy plugin: better compatibility with old brd files (current track width and current vias size, stored in SETUP section, were not read from file and incorrectly set)
2015-03-13 17:48:42 +01:00
unknown b3b791961a coverity common folder fixes (mainly not initialized members). 2015-03-11 17:04:20 +01:00
Maciej Suminski b6c5b291a2 Coverity fixes. 2015-03-11 14:17:43 +01:00
unknown f87577ca72 class PLOTTER: dash lines parameters in one place for plot. I made minor changes (values in mm and set to give the same size as dashed lines drawn by wxDC, using short dash.) 2015-03-10 21:00:50 +01:00
Maciej Suminski 4ad4898254 Fixed jumping cursor when closing pad properties window (GAL footprint editor). 2015-03-10 17:27:15 +01:00
Maciej Suminski 143f52eb4d VIEW_CONTROLS::CaptureCursor() 2015-03-10 13:20:38 +01:00
Maciej Suminski e6a10faab7 FIxed a few clang warnings. 2015-03-09 11:06:54 +01:00
Eldar Khayrullin 5d8f7ba0e6 bugfix: cannot draw 180 degree arc in OpenGL canvas 2015-03-09 10:26:29 +01:00
jean-pierre charras 086ff54ef0 Fix minor issues: plot svg did not handle dashed lines.
Eeschema now uses dashed lines for graphic lines (to be consistent with plot functions and toolbal icon).
Fix an old bug in some envionments which warp the mouse on a bad monitor when opening eeschema, pcbnew and some other windows, only noticeable guys who are lucky enough to have more than one monitor.
2015-03-06 18:46:04 +01:00
Alexander Golubev f2ce42ddb5 fix several -Woverloaded-virtual warnings in common/* dir
- CACHED_CONTAINER::GetVertices: removed useless and unused function
   which does nothing but tainted the API
 - SHAPE_LINE_CHAIN::Collide( const BOX2I& aBox, int aClearance ):
   removed an outdated function with assert(false)
 - SHAPE::BBox(): fix a small typo in the doc string
2015-03-06 15:26:47 +01:00
unknown c3e3ff3682 Minot fixes: Minor coding style issues fix (tab -> spaces). Add missing GetClass to all classes derived from EDA_ITEM. Make debug method Show() only compiled in debug mode. 2015-03-06 09:58:32 +01:00
jean-pierre charras 02c8d4db8a Minor fixes: coding style in 3d-viewer and minor code cleanup, and some fixes in bom python scripts, which did not work when a non ascii char (but a valid utf8 symbol) was found in xml netlist. Add comments. 2015-03-05 20:46:38 +01:00
jean-pierre charras 8d6e75fce6 Fix 2 coverity warnings, and cleanup a old code in dialog_color_config. 2015-03-04 20:45:18 +01:00
jean-pierre charras a550ff84db Fix some coverity and cppcheck warnings (most are very minor issues: not initialized members and initialized but not used variables) 2015-03-04 10:26:00 +01:00
jean-pierre charras c7d04c3d08 Code cleaning: Remove EDA_BASE_FRAME::m_FrameName member which is a duplicate of wxFrame name. 2015-03-03 15:53:47 +01:00
Maciej Suminski 9716165d06 Merged the differential pair router & track length tuning tool. 2015-03-03 13:41:43 +01:00
Maciej Suminski a6bd3314e4 Fixed warnings. 2015-03-03 12:59:26 +01:00
Maciej Suminski 0dd9efd9db Merged the differential pair router & length tuning tool. 2015-03-03 11:50:50 +01:00
jean-pierre charras 2804d2e566 Add hotkeys to Kicad manager, and some rework on hotkeys management. 2015-03-02 18:29:18 +01:00
jean-pierre charras 4bab8dde65 Fix some minor coverity warnings. Fix a bug in pcad2kicad plugin. Scripting: map BASE_SET. Rename some python bom scripts with better names. Fix erroneous comments and add comments 2015-03-02 09:28:49 +01:00
Wayne Stambaugh 25b9a42ea3 More Coverity scan error fix goodness. 2015-02-28 15:50:35 -05:00
Blair Bonnett 2101324691 Fix wxGTK scrollbar assertion in Pcbnew layer setup dialog. 2015-02-28 11:48:39 -05:00
jean-pierre charras d6c6b4debb Fix some coverity warnings (mainly not initialized vars). 2015-02-27 15:33:13 +01:00
Bernhard Stegmaier 30acc07e11 Default path fixes and remove old to find 3D model path code.
* Fix default KISYSMOD/KISYS3DMOD (#ifdef typo) for OSX builds.
* Remove setting KIGITHUB from kicad/pcbnew Info.plist in favor of hardcoded default
  setting for OSX builds.
* Remove now unneeded Set3DShapesDefaultPath() and other small things.
2015-02-27 08:34:02 -05:00
jean-pierre charras 10d67ffbd9 Fix some coverity warnings (not initialized members). Add comments. Better (more informative) title in dialog to download .pretty libs. 2015-02-26 11:33:15 +01:00
Bernhard Stegmaier 1e6c8cf88f Enable file extension filters on OSX file dialog. 2015-02-22 17:48:33 -05:00
Wayne Stambaugh 4c6ca81f2c More Coverity scan error fixes. 2015-02-22 16:25:29 -05:00
jean-pierre charras 0975e3e5bd Move exact dialog: make all messages translatable. Fix minor issues (some can be Windows specific). Remove useless declarations. Fix coding style issues
Fix minor warnings from cppcheck.
2015-02-22 15:43:44 +01:00
jean-pierre charras c1978b3242 Pcbnew: fix crash when undoing a move exact pad in board editor.
Fix also very minor warnings detected by cppcheck.
2015-02-22 10:39:58 +01:00
jean-pierre charras c6f4f15926 Eeschema: Minor code reorganization:
* move not shared files (sch_item_struct.*, sch_base_frame.h) to eeschema;
* move wxEeschemaStruct.h to eeschema and rename it schframe.h to be consistent with the other corresponding file name schframe.cpp;
* remove few not needed  #include
2015-02-21 10:46:44 +01:00
Mark Roszko 3918d3f0b2 Eeschema code cleanup and coverity fixes. 2015-02-21 09:11:58 +01:00
Wayne Stambaugh d1d1e2b58a Lots of Coverity scan error fixes. 2015-02-20 19:41:10 -05:00
jean-pierre charras bd5d468251 Pcbnew: fix bug #142348 (airwire does not always appear after deleting a track). Very minor other fixes. 2015-02-20 20:04:32 +01:00
Maciej Suminski 590d9b3b18 Merged lp:~john-j-beard/kicad/moveexact with some patches. 2015-02-20 14:46:12 +01:00
Tomasz Wlostowski f0e7363f88 SHAPE_LINE_CHAIN: fix segfault 2015-02-20 10:37:25 +01:00
Maciej Suminski c2bd2491f1 Added asserts in spots where DEGREES are not handled. 2015-02-19 16:03:45 +01:00
Maciej Suminski f7a32e839e Moved UndoInhibit related functions from TOOL_MANAGER to EDIT_TOOL. 2015-02-19 14:53:31 +01:00
Maciej Suminski f06690c8d3 Merged lp:~john-j-beard/kicad/moveexact. 2015-02-18 20:27:00 +01:00
Maciej Suminski 4fb9bce354 Code formatting. 2015-02-18 17:53:46 +01:00
Tomasz Włostowski 8bd9dd49bb view: added quick hiding mechanism in VIEW/VIEW_ITEM 2015-02-18 00:43:02 +01:00
Tomasz Włostowski c87b136522 geometry: new methods and fixes in SEG class 2015-02-18 00:40:11 +01:00
Tomasz Włostowski f0c913c65e common: added WX_STATUS_POPUP and WX_UNIT_BINDER widget classes 2015-02-18 00:35:18 +01:00
Tomasz Włostowski 1112681a77 Merge branch 'bzr/master' 2015-02-17 23:09:30 +01:00
Wayne Stambaugh f4d5e349bf Fix a bunch of Coverity scan "unhandled exception" errors. 2015-02-17 13:47:21 -05:00
jean-pierre charras 39497b109e Pcbnew: fix Bug #1422093 (pcbnew crashes after editing a footprint cominng from the board with the fp editor and saving it on a librray and trying to load it to the board)
Some other very minor fixes.
2015-02-17 17:32:47 +01:00
Maciej Suminski b1ace1607b Reworked GAL switching.
Now OpenGL can report its problems instead of shutting down the application.
2015-02-15 02:18:35 +01:00
Maciej Suminski 902d0e3f1f Tools are processing const TOOL_EVENT& (Tool Framework). 2015-02-14 21:28:47 +01:00
John Beard 4f3672da4d Add "move exact" and "duplicate" tools to pcbnew 2015-02-12 03:22:24 +00:00
jean-pierre charras 74e83e924a Pcbnew: Fix Bug #1420074 (Crash when a footprint is added to the board (or edited) from the footprint editor, if a new pad was added, because the net info of the new pad is broken in this case) 2015-02-11 11:10:53 +01:00
Maciej Suminski 0001bc2844 Fix for clarification menu crash (GAL/Windows). 2015-02-11 00:23:45 +01:00
Tomasz Włostowski ae9eacb2c3 Merge branch 'bzr/master' 2015-02-07 09:58:30 +01:00
Adam Wolf 88ce5920b5 Fix OSX help search paths. 2015-02-06 16:13:35 -05:00
jean-pierre charras 7dadeadbf3 bugfix 1418736: pcbnew crashes if "Interactive Router" was selected from the context menu. 2015-02-06 22:01:57 +01:00
Tomasz Włostowski b03d421801 Merge branch 'bzr/master' 2015-02-06 21:32:33 +01:00
Wayne Stambaugh bd199b894e Set default footprint library table and 3D model library environment variables. 2015-02-03 15:42:33 -05:00
jean-pierre charras b1cd42cf08 Pcbnew: simplify draw code in default canvas and plot functions by removing the plot LINE option, which is not existing in all plotters, not existing in opengl/cairo canvas, and not usefull in default canvas. 2015-02-02 09:06:39 +01:00
Wayne Stambaugh 93b0a0831e Minor fixes and code cleaning.
* Check to see if image handler is already initialized to prevent warning
  on debug builds.
* Change LIB_PART destructor message output to use wxLogDebug for debugging
  on windows builds.
* Minor code cleaning and coding policy fixes.
2015-01-27 13:40:52 -05:00
Maciej Suminski 2647fdfd89 Fixed context submenus event handlers (GAL/Windows). 2015-01-25 19:11:02 +01:00
jean-pierre charras f0a52644ea Pcbnew: fix Bug #1413701 (Segfault on highlight "unconnected" net 0 in Pcbnew ). Also, remove now useless code and other very minor fixes. 2015-01-23 12:24:32 +01:00
Wayne Stambaugh ca065833ea Remove EDA_DRAW_FRAME::IsActive() and replace with wxFrame::IsActive(). 2015-01-22 08:42:24 -05:00
jean-pierre charras 64dd1f7461 Eeschema: fix a minor bug and enhances SCH_MARHER::Matches function ( partial use of 0005-SCH_MARKER-fix-a-Woverloaded-virtual.patch, from <fatzer2@gmail.com> ) and other very minor fix. 2015-01-20 13:06:44 +01:00
jean-pierre charras d4e04dcc97 Fix bugs detected by Cppcheck. 2015-01-19 20:03:50 +01:00
Tomasz Włostowski 78442a8b06 Merge branch 'bzr/master' 2015-01-19 19:35:47 +01:00
Tomasz Włostowski ee66a3cd1d common: added WX_UNIT_INPUT to CMakeLists 2015-01-19 19:35:05 +01:00
jean-pierre charras 64925bfc4f Very minor fixes: add missing const return type to some GetBoundingBox() declarations. Change few functions names to better names in some places (like GetName() to GetPinName() ) 2015-01-18 18:28:14 +01:00
jean-pierre charras ac539b9578 Minor and very minors fixes: move -DKICAD_USE_WEBKIT definition to the main CMakeLists.txt. Remove duplicate semi-colon at end of some lines. 2015-01-17 09:01:16 +01:00
jean-pierre charras c27b2fbf4c Fix issues in fp lib table wizard 2015-01-16 09:10:23 +01:00
jean-pierre charras 0b1a6fd7c3 More work on fp lib table wizard: add a button to import the full list of .pretty libs on github.
* if the current select plugin is the github plugin, one can select some of these libraries and add them to the table
* if the current select plugin is the kicad plugin, one can select some of these libraries and download them to make alocal copy.
  They can added to the table after they are downloaded.
2015-01-15 21:01:53 +01:00
jean-pierre charras 972329527e Cvpcb: fix issues relatives to .equ files management:
* Add dialog to edit the list of active equ files.
* allows use of our environment variables in .equ file names.
2015-01-11 18:22:45 +01:00
jean-pierre charras 9cfb97d8b4 Add hight contrast option in Modedit. In hight contrast mode, solder masks and solder paste are shown.
this option was possible only by modifying the way display options are managed.
before these changes, display options were a global DISPLAY_OPTIONS class instance.
Now each EDA_DRAW_FRAME(and derivated classes)  includes its own DISPLAY_OPTIONS class instance.
As a consequence, some duplicate display option variables in these classes have been removed, because there were just duplicate variables of the  DISPLAY_OPTIONS class instance.
2015-01-10 11:27:49 +01:00
Jose Ingnacio c9a1b239a6 Use XDG_CONFIG_DIR for lock file path on Linux.
* With fixes from Adam Wolf.
2015-01-07 10:04:57 -05:00
jean-pierre charras 678a763481 Pcbnew: better display of tracks/vias/grid in toolbar. All: modify the zoom value shown in toolbar or status bar (roughly now zoom 1.0 is near the 1:1 scale, on a 22 inches Monitor). Fix also many other minor and very minor issues 2015-01-06 08:38:58 +01:00
jean-pierre charras ad74a9a191 Pcbnew: better display of tracks/vias/grid sizes in toolbar 2015-01-05 14:20:04 +01:00
jean-pierre charras 6a19315557 Fix compat with swig 3.03 2015-01-04 08:19:04 +01:00
Fat-Zer 846b2ae24e Fix Bug #1381287 (CvPCB ignores the footprint filter field on aliased components) 2015-01-02 08:52:29 +01:00
jean-pierre charras 45fcc04dbf Update ecc83 demo. default KISYS3DMOD definition on Linux: add /usr/local/kicad/share/kicad/module/package3d test to find a suitable value. 2015-01-01 19:52:23 +01:00
jean-pierre charras 605a9bb5f2 Page layout selection: fix Bug #1405972, and add minor enhancement in page layout selection dialog (the new layout is shown after selection).
When the filename is not absolute, the page layout file is now searched first in project folder, and then in kicad template folder, if not found in project.
2014-12-31 13:31:19 +01:00
jean-pierre charras bc230f7650 Code cleaning: move class PAGE_INFO from common.h to class_page_info.h;
Fix issue when using a page layout file in project folder: eeschema and Pcbnew did not use it, unless using an absolute path.
Now, if the file path is nor absolute, it is seen as relative to the project (which is the expected behavior)
fp lib wizard: when pcbnew id compiled with USE_GITHUB_PLUGIN=OFF, the github plugin option is no more accessible (and the web viewer no more used).
2014-12-23 14:01:59 +01:00
jean-pierre charras 6deb3823d7 Aesthetic enhancements ( use few svg icons from Konstantin Baranowskiy).
Allows use of modifier shift key with letters A ... Z  in hot keys (including hot key editor). Thanks to John Bird, who helped me with his patch.
2014-12-18 19:53:19 +01:00
jean-pierre charras d83eb11aa6 Minor fixes. Remove unused icon. Add 3 new icons. Change one icon (3 icons are from Konstantin Baranowskiy) 2014-12-11 13:00:59 +01:00
Maciej Suminski 7e249c758b bugfix: Tools are deactivated on canvas switch. 2014-12-10 00:50:31 +01:00
John Beard 58f2d2e872 Fix debug assertion when CvPcb footprint list is empty. 2014-12-07 12:19:52 -05:00
jean-pierre charras 0e996cac9e Pcbnew: fix Bug #1395594 (pcbplotparams parser sensitive to formatting)
Looked like a minor issue, but was due to a more serious bug, when using 2 different DSN_LEXERS which were not synchronized.
The fix is not perfect, but unfortunately, the parser used to read the PCB_PLOT_PARAMS in .kicad_pcb files is also used in legacy board file reader.
Therefore it is better than write 2 parser functions, one for legacy files, the other for the .kicad_pcb files, which make the same thing.
2014-12-04 20:15:26 +01:00
jean-pierre charras 30c7821ba2 Grebview: add info in layer manager for Excellon drill filles, similar to X2 file function info in X2 gerber files. 2014-11-23 12:41:57 +01:00
Maciej Suminski 18898fe807 tool: Added a generic parameter for RunAction(). 2014-11-21 11:28:34 +01:00
jean-pierre charras 383fec1510 More about fix issue on Ubuntu/Unity. 2014-11-19 21:45:57 +01:00
jean-pierre charras 2ab98f76c1 Try to fix an issue on Ubuntu/Unity for some dialogs which are not displayed. For most, adding GetSizer()->Fit( this ) in dialog constructor fix the issue, but at least one dialog still is not displayed. 2014-11-19 15:22:47 +01:00
Maciej Suminski 9245b90392 Code formatting. 2014-11-14 20:19:00 +01:00
Tomasz Wlostowski 7721d02afe gal/stroke_font: made text vertical alignment follow the non-GAL renderer. 2014-11-14 19:19:08 +01:00
Tomasz Wlostowski 33f3aca611 geometry: IsSolid() and Move() methods, segment overlap detection, some improvements in SHAPE_LINE_CHAIN class. 2014-11-14 19:18:31 +01:00
Tomasz Wlostowski 4e280f065f P&S router: fixed shove force propagation incorrect issues causing improper via dragging. 2014-11-14 19:17:52 +01:00
Tomasz Wlostowski 4e67de5c15 P&S router bugfixes
- fixed walkaround bug causing unwanted overlap/clearance violation when the first segment of trace being laid intersects the obstacle's hull at the same point twice (ie. goes in, turns around and goes out).
- fixed placer bug not splitting the start segment after toggling via placement or changing trace width
2014-11-14 19:17:01 +01:00
Maciej Suminski 90c7c72d81 Reverted missing changes. 2014-11-13 16:37:15 +01:00
Maciej Suminski 7de3aa9af2 Reverted the last commit, apparently not every GLEW contains required definitions. 2014-11-13 16:30:30 +01:00
Maciej Suminski 1f8b77697f gal: Check maximum framebuffer size (OpenGL). 2014-11-13 16:17:53 +01:00
Garth Corral 5c3cc11ed5 Fix debug assertion when clicking on hot key menu. (fixes lp:1389932) 2014-11-06 15:56:34 -05:00
jean-pierre charras 24f516f6ae Fix many doxygen warnings (due to missing info, old comments, typo ...) when building the doxygen doc. 2014-11-02 17:25:04 +01:00
jean-pierre charras 7b5318ff64 Fix minor issues about translated strings and coding style. Add comment relative to file function info in X1 gerber file format. 2014-10-31 19:59:37 +01:00
unknown ad645abac4 Eeschema, Plot dialog: add Plot directory selection. The patch from 1383026@bugs.launchpad.net was widely used. 2014-10-26 14:59:01 +01:00
Wayne Stambaugh b7f890adb3 Fix parallel build bugs.
* Make all files generated by make_lexer() dependencies of thier respective build targets.
* Make building Boost a dependency for all libraries.
* Remove duplicate make_lexer() call for Specctra lexer files.
2014-10-22 19:25:59 -04:00
Wayne Stambaugh e8362df15f Add missing source file licenses and code policy fixes. 2014-10-19 16:20:16 -04:00
jean-pierre charras 9c64b061fe Pcbnew: fix Bug #1380943 (Filled polygons with thick outlines are missing last outline thick segment in gerber)
Remove a debug message in searchhelpfilefullpath.cpp.
2014-10-17 20:30:56 +02:00
Bernhard Stegmaier f06bfe6d70 Commit the rest of the OSX build fixes missed in the previous commit. 2014-10-17 13:45:33 -04:00
Mark Roszko 816974b8ca Hot key editor dialog improvemnts.
* Change hot key editing contol from wxGridTableBase to wxListCtrl.
* Separate hot key lists into separate tabs rather than one large list.
* Coding policy fixes.
2014-10-17 10:36:47 -04:00
unknown 5a947e6759 Fix bug: Dialog "Page settings" does not always detect page format. Formats A, B, C, D, E, Custom (User) are detected right but A0-A4, US* are wrong. 2014-10-17 10:14:30 +02:00
Mark Roszko c85d64aee6 Fix hotkey editor on Windows not using max height of the dialog for the list control.
Set wxNO_BORDER for the tab page.
2014-10-16 23:16:46 -04:00
Bernhard Stegmaier a4c59e6b97 More OSX build fixes.
* Many path related fixes.
* Fix execution of external applications.
* Update mac-osx.txt.
* Add top-level links for standalone applications inside OSX bundle.
* Fix document icons for Eeschema and pl_editor.
* Create individual bundles for standalone applications inside the main application bundle.
* Add usual 'site-packages' to python path in OSX bundle.
* Fix name of OSX bundle plugin folder.
2014-10-16 18:13:01 -04:00
Mark Roszko 606f2e91f8 Make hotkey command titles use consistent capitalization.
Rename "Switch highcontrast" to "Toggle High Contrast".
Eliminate most of the abbreviated hotkey titles.
Doxygenize dialog_hotkeys_editor.h and add missing license block.
Display <unassigned> if key code is 0 (NULL).
2014-10-15 21:17:51 -04:00
Mark Roszko 651a92a80f Hotkey Editor Polishing
Refactor hotkey editor to use tab control instead of one giant list.
Each tab is a separate hotkey section.
Modify EDA_HOTKEY_CONFIG to change the m_Comment member to m_Title for a new purpose.
We want a pretty title in the hotkey editor. We use m_Title for the key export comment which
still conveys the purpose just as easily.
Refactored usage of wxGrid into wxListCtrl which allows capturing navigation characters
and also works better (single selection is built in).
Add hotkey overwrite prompts that are paired with "Common" section. It will check if a hotkey
overlaps with the proper sections. i.e. Common with the all other sections; or Section 1 with just Common.
Right-click menu removed due to wxListCtrl being able to catch the special keys properly.
2014-10-15 21:17:46 -04:00
jean-pierre charras 203247aefe Add missing search paths in kicad help doc search paths ( only noticeable for non English users ). Sometimes the translated doc was not found, and the English doc was displayed. 2014-10-15 15:14:14 +02:00
jean-pierre charras d82f403fd7 Libview and Modview: fix issues relative to hotkeys (hardcoded keys instead of user defined keys) and not working tools and popup menus.
Fix also some minor coding style issues.
2014-10-15 13:40:38 +02:00
Maciej Suminski ad2df70953 Added EDA_DRAW_PANEL_GAL::ForceRefresh(). 2014-10-13 15:22:45 +02:00
jean-pierre charras 82339a9235 Fix bug #1358742 (drill map file output faulty), which was Gerber format specific.
Minor code change (which removes a SWIG warning)
2014-10-13 10:40:34 +02:00
Berhnard Stegmaier b8d1789a22 OSX build fixes and improvements.
* Fix creation of single app bundle with respect to scripting support.
* Cleanup scripting search paths for OSX.
* Fix some small CMake bugs from previous OSX build change.
* Optimize bundle file structure to be consistent with Apple specs.
* Add helper script for compiling wxWidgets and wxPython
* Update OSX build instructions.
2014-10-08 14:41:36 -04:00
Wayne Stambaugh 99f30c9d38 Road map and Doxygen work.
* Remove obsolete settings from Doxygen configuration file.
* Fix some Doxygen warnings.
* Add the board edge segment snapping to developers road map.
* Fix some coding style issues in CMakeLists.txt
2014-10-05 21:18:24 -04:00
Bernhard Stegmaier 8b3c14c08b OSX build improvements.
* Compile all binaries into a single application bundle.
* Use CMake BundleUtilities to make application bundle relocatable.
* Restructure build output to directly create an image file.
* Fix default search paths.
* Set KIGITHUB environment variable.
* Added patch to fix wxWidgets so names for OSX.
2014-10-02 19:03:52 -04:00
jean-pierre charras 9bcdef85cd Eeschema: canvas background color: all frame are now using the same parameter.
fix recent bug which prevent eeschema to save color preferences.
fix few other minor issues.
2014-09-26 12:35:11 +02:00
Lorenzo Marcantonio 260ca0e79f Added support for decoupling stored text from shown text in EDA_TEXT
Factored out text ellipsing support to max 15 character (for generating menu items)
2014-09-13 20:15:45 +02:00
Paulo Henrique Silva 3132690c0b Fix slow opengl canvas on Mac OS 10.9. 2014-09-13 19:31:40 +02:00
jean-pierre charras fb590c7231 Fix PCB Module Editor Help Error.
Remove a minor compil warning in shape_collisions.cpp
2014-09-09 18:46:12 +02:00
Maciej Suminski 2c1cef339f pcbnew: Worksheet layout texts are propetly rotated in GAL. 2014-09-08 14:06:01 +02:00
Dick Hollenbeck 3e861db371 Lock file improvements. 2014-09-07 15:01:26 -04:00
Moses McKnight 6da5e2cdd0 Configuration file consolidation patch from Moses McKnight.
* Create GetNewConfig() and GetKicadConfigPath() to unify configuration file
  creation and location.
* Move Windows configuration out of the registry into configuration files.
* Move Linux configuration files from $HOME to $HOME/.config/kicad to eliminate
  configuration file pollution in the users $HOME folder.
* Fix a bug in the configuration file where the Eeschema hot keys are saved.
2014-09-05 17:12:38 -04:00
jean-pierre charras e5e388f2b4 Help files: can now be html or pdf files: Kicad search first for a .html help file, and if not found in a path, search for the corresponding .pdf file.
Therefore our .pdf files can be replaced at any time  by .html corresponding files in kicad doc/help sub directories.
2014-09-02 18:44:53 +02:00
jean-pierre charras 06f59a94ed eeschema: Find Replace: fix a bug in replace command: sometimes, the string to replace was found, but not replaced if this string contained lower case letters. 2014-09-01 17:28:29 +02:00
Wayne Stambaugh ec9cd765bc Fix default menu alt key accelerator bug. (fixes lp:1035151)
* Add hot key handled return indicator to DRAW_FRAME::GeneralControl() and
  DRAW_FRAME::OnHotKey() and all classed derived from DRAW_FRAME.
* Add code to all GeneralControl() and OnHotKey() functions to return true if
  hot key was handled.
* Call event skip in DRAW_PANEL::OnKeyEvent() when key event is not handled to
  allow default menu event handler to function properly.
2014-08-29 16:23:40 -04:00
jean-pierre charras 020a0ae477 All: Fix crash on close Kicad, when a quasi modal dialog is open, and Kicad is closed from the Kicad project manager. 2014-08-29 19:49:49 +02:00
jean-pierre charras 3d83434275 Very minor fixes. 2014-08-29 08:47:05 +02:00
jean-pierre charras d8c3ccb424 Pcbnew, Eeschema: release lock file when these editors are closed (Until now, the lock file was released when the full Kicad application was closed, not when the editor was closed).
Should fix Bug #1360470  and Bug #1359502 .
2014-08-26 12:54:22 +02:00
jean-pierre charras 858e222ea7 all: fix Bug #1361233 (a template.pro copy file overwrite silently the current project file when a group info is not found, which is a bug, because this group could be just a new group, not yet used) 2014-08-26 09:40:31 +02:00
Wayne Stambaugh 0b69ed3a5c Fix Eeschema sheet issues. Should close out bug lp:593782
* Refresh canvas when user cancels edits so that the discarded sheet is
  cleared from the schematic.
* Add file name validation to the sheet properties dialog to prevent
  illegal file name characters from being entered into the text control.
* Rename FOOTPRINT_NAME_VALIDATOR to FILE_NAME_CHAR_VALIDATOR for clarity.
2014-08-24 18:49:31 -04:00
jean-pierre charras 5a38d2b657 Rework on env. variable KISYS3DMOD. Until now, was used in different files using different ways, so no consistency between files.
code cleanup.
2014-08-24 09:05:07 +02:00
jean-pierre charras a26449b3ef 3d-viewer: code cleaning; bitmap2component: minor fix and code cleanup 2014-08-22 12:24:14 +02:00
Dick Hollenbeck 49538cafb9 https://lists.launchpad.net/kicad-developers/msg14286.html 2014-08-17 18:00:49 -05:00
Dick Hollenbeck 7e483f69bd Modular KiCad Blueprint Milestone B), major portions:
*) When kicad.exe closes a project, close any open KIFACEs so that they cannot
     get disassociated from their true PROJECT.
  *) Allow loading eeschema library editor from kicad.exe
  *) Allow loading pcbnew library editor from kicad.exe
  *) Rename LIB_COMPONENT to LIB_PART.
  *) Add class PART_LIBS, and PART_LIB.
  *) Make PART_LIBS non-global, i.e. PROJECT specific.
  *) Implement "data on demand" for PART_LIBS
  *) Implement "data on demand" for schematic SEARCH_STACK.
  *) Use RSTRINGs to retain eeschema editor's notion of last library and part being edited.
  *) Get rid of library search on every SCH_COMPONENT::Draw() call, instead use
     a weak pointer.
  *) Remove all chdir() calls so projects don't need to be CWD.
  *) Romove APPEND support from OpenProjectFiles().
  *) Make OpenProjectFiles() robust, even for creating new projects.
  *) Load EESCHEMA colors in the KIWAY::OnKiwayStart() rather in window open,
     and save them in the .eeschema config file, not in the project file.
  *) Fix bug with wxDir() while accessing protected dirs in kicad.exe
  *) Consolidate template copying into PROJECT class, not in kicad.exe source.
  *) Generally untangle eeschema, making its libraries not global but rather
     held in the PROJECT.
2014-08-13 15:28:54 -05:00
unknown c8d69f19c8 Pcbnew: add drc test for texts on copper layer (only in full drc test, not in on line drc), from a patch sent by Simon Schumann
Add EDA_TEXT::TransformTextShapeToSegmentList function to export a list of segments used to draw/plot the text.
2014-08-13 17:47:02 +02:00
Andrew Zonenberg afd89c358e 1) EDA_DRAW_FRAME::m_showOriginAxis is never initialized in the constructor
2) LIB_RECTANGLE and related classes sscanf data read from a file using "%s"
without field limits, which can cause problems with malformed/really long
inputs.

3) If some of the optional fields in a lib line are missing, "tmp" can remain
uninitialized.
2014-08-12 09:39:44 -05:00
unknown 84a985f8af Pcbnew: Commit patch (with very minor changes) about SVG file export with the layers ordered from bottom to top. ( bug 1286646 ), from Thiadmer Riemersma. 2014-08-10 16:15:02 +02:00
Maciej Suminski 490a73b62a Fixed filled arcs drawing (GAL). 2014-08-06 13:51:46 +02:00
unknown 2f0ffdc7b5 3d-viewer: fix compil warning, by Mario Luzeiro, with some coding style fixes.
common.cpp: remove useless  warning on wxWidgets < 3.0 about --with-gtkprint build option: on  wxWidgets < 3.0 on Linux the print function does not work even with this build option.
2014-08-05 11:39:42 +02:00
Maciej Suminski 94a46bf2df Fixed pcbnew crash when a locked footprint is dragged from an edge of the screen. 2014-08-01 11:28:08 +02:00
jean-pierre charras 1540368422 Minor fixes and changes:
Remove a minor warning message in Debug mode for 2 dialogs.
Pcbnew: update Gerber X2 file format (File Attribute) to very last X2 specification
Eeschema: Fix a minor bug in block selection (sometimes the last selected component was select instead of items in selected area)
and better drag behavior when draging an item by the drag hotkey.
2014-07-29 18:38:27 +02:00
jean-pierre charras 37757b5283 * Fix Bug #1348607 and a possible crash in libedit dialog component properties after moving up the first user field (which in not possible now).
* better info message in pcbnew when trying to delete a footprint in legacy library
2014-07-25 19:49:14 +02:00
Maciej Suminski 893618bf3f Fixed a hot key conflict. 2014-07-24 13:09:16 +02:00
Maciej Suminski 1d378cfcd1 View is automatically centered when a module editor or viewer are opened (GAL). 2014-07-23 12:06:24 +02:00
jean-pierre charras 4fc4ea6147 Make some system error messages not translatable. Better comments in some dialogs. 2014-07-23 12:48:30 +02:00
jean-pierre charras cab7e67b59 fix Bug #1345193: Drill Map coordinates alway 0 when using Gerber format (due to a missing plotter initialization). 2014-07-21 11:42:36 +02:00
Maciej Suminski a57f7ae8cd Fix OpenGL canvas freeze under Windows. 2014-07-20 21:14:42 +02:00
Maciej Suminski aad359fcf9 Fixed Mac OS build. 2014-07-20 20:58:33 +02:00
jean-pierre charras 2196ed21c9 Apply a workaround to fix a wxWidgets bug in versions 3.0.x relative to mouse wheel event (Windows specific).
Therefore wxWidgets 3.0.1 can be used without need to patch it.
(This bug is fixed in wxWidgets 3.1)
2014-07-20 17:23:48 +02:00
jean-pierre charras 4c77724134 Very minor fixes. *.kicad_pcb files update to current Pcbnew version. 2014-07-20 12:41:14 +02:00
Dick Hollenbeck 6da86c12de KIWAY::player_destroy_handler() skips on the wxWindowDestroyEvent, just in case 2014-07-17 09:10:15 -05:00
Maciej Suminski a525c890fb Alternative way to handle mouse buttons (GAL). 2014-07-15 17:34:53 +02:00
Dick Hollenbeck c5e14ef180 wxJoin version dependency change 2014-07-14 10:03:51 -05:00
Maciej Suminski 91e9df59d4 Fixed layers order after changing the active layer. 2014-07-14 11:36:34 +02:00
jean-pierre charras 7d1c1f3085 Gerber files generation: fix a rounding issue when drawing circles. (explains bug Bug #1339086 ).
Gerbview: allows x.7 format (recently indroduced in Gerber format)
Also minor coding style fixes.
2014-07-14 09:36:37 +02:00
Maciej Suminski 14cfd173e6 Fixed the Module viewer crash when there is no footprint loaded. 2014-07-09 16:57:01 +02:00
Maciej Suminski ff30ced4f4 Cursor position is frozen when a context menu is displayed (GAL). 2014-07-09 16:50:31 +02:00
Maciej Suminski b1837615aa Added event queue to handle events at the end of the event processing cycle. 2014-07-09 16:25:50 +02:00
Maciej Suminski c0a96141df Added AF_NOTIFY flag for TOOL_ACTIONs. 2014-07-09 15:10:32 +02:00
Maciej Suminski 7614b93bf8 Tool indicator is resetted on canvas switch. 2014-07-09 15:10:32 +02:00
Maciej Suminski 65c116621d Added support for changing the cursor size. 2014-07-09 15:10:32 +02:00
Maciej Suminski 2b0e27f132 Introduced SELECTION_CONDITIONS to determine which menu entries should be visible in the SELECTION_TOOL context menu, depending on the selection. 2014-07-09 15:10:32 +02:00
Maciej Suminski b076f3fe4e Fixed grid drawing when the grid origin has negative coordinates. 2014-07-09 15:02:56 +02:00
Maciej Suminski 72c70148e8 Fixed a few memory leaks and Valgrind warnings. 2014-07-09 15:02:56 +02:00
Maciej Suminski 95a4f61eee wxWidgets 2.8 compatibility fix. 2014-07-09 14:23:13 +02:00
Maciej Suminski 456eeaba10 Routines for handling clipboard with TOOL_MANAGER. 2014-07-09 14:01:07 +02:00
Maciej Suminski 94cc845b3f Added AF_ACTIVATE flag for TOOL_ACTIONs.
Reworked the way of processing events in TOOL_MANAGER class.
Added GetCommandStr() for TOOL_EVENT class.
2014-07-09 13:50:27 +02:00
Maciej Suminski 34fbde42fc Improved way of translating wxEvent commands to TOOL_ACTIONs. 2014-07-09 13:50:27 +02:00
Maciej Suminski f8f6fd41ad Introduced a new type of action: TA_ACTIVATE to distinguish events activating tools from common tool actions. 2014-07-09 13:50:27 +02:00
Maciej Suminski 5703b7e8bf Implemented stacking for TOOL_STATEs. 2014-07-09 13:50:27 +02:00
Maciej Suminski 5f806cfa18 Minor fixes to the Tool Framework. 2014-07-09 13:50:27 +02:00
Maciej Suminski f7ecc749f6 Restored std::map in TOOL_MANAGER. 2014-07-09 13:50:27 +02:00
Maciej Suminski dfc052d537 Added an alternative way to reach tools in the Tool Framework. 2014-07-09 11:59:24 +02:00
Maciej Suminski 8a5fedb728 Code formatting and cleaning. 2014-07-09 11:22:43 +02:00
Maciej Suminski 7645ed8601 Grid offset is recomputed only when settings are changed. 2014-07-09 11:22:43 +02:00
Maciej Suminski 5134781a38 GAL view in pad properties dialog - initial version. 2014-07-09 11:22:43 +02:00
Maciej Suminski 2f7706e8cd Reduced number of switched events, allowing to use VIEW_CONTROLS, even if there is no extra event dispatcher. 2014-07-09 11:22:43 +02:00
Maciej Suminski 0fc93666c6 Rework to support multiple views with OpenGL GAL canvas. 2014-07-09 11:22:42 +02:00
Maciej Suminski 60b0a4e0be Alternative approach to handling events and commands by TOOL_DISPATCHER.
Event handlers are (dis)connected depending on the active view.
TOOL_DISPATCHER inherits from wxEvtHandler, so now it receives events directly instead of being fed by external handlers.
2014-07-09 11:22:42 +02:00
Maciej Suminski 3fd26b6dd2 TOOL_ACTIONs are automagically registered by TOOL_MANAGER upon its construction. 2014-07-09 11:22:42 +02:00
Maciej Suminski f5325f8d79 Removed a redundant pointer to EDA_EDIT_FRAME. 2014-07-09 11:22:42 +02:00
Maciej Suminski 13e67e1f3c Fixed VIEW::SetViewport(). 2014-07-09 11:22:42 +02:00
Maciej Suminski a68165d2a0 Minor changes (removed an unnecessary event handler and two function calls that had no real influence). 2014-07-09 10:57:32 +02:00
Maciej Suminski 9a47f4c645 Created a specialization of EDA_DRAW_PANEL_GAL: PCB_DRAW_PANEL_GAL.
Moved View related routines & fields from PCB_{BASE,EDIT}_FRAME & BOARD to PCB_DRAW_PANEL_GAL.
2014-07-09 10:57:32 +02:00
Maciej Suminski 2f6c5f3156 Removed EDA_DRAW_FRAME::SetGalCanvasActive() [it may be misleading], added EDA_DRAW_PANEL_GAL::GetBackend(). 2014-07-09 10:34:00 +02:00
Dick Hollenbeck acbe6290c5 switch back to original sexpr usage of PTREE, add new DSNLEXER constructor, enforce accessors in kicad.exe 2014-07-07 14:49:14 -05:00
Maciej Suminski 0304598a71 Fixed vertical alignment for strings that contain a newline character at the end (GAL). 2014-07-07 13:09:44 +02:00
Dick Hollenbeck 84a14c3a51 back annotation when CVPCB and EESCHEMA are running under KICAD 2014-07-06 23:12:04 -05:00
Dick Hollenbeck d6a8696a99 typo on B_CrtYd, F_CrtYd, B_Fab, F_Fab 2014-07-06 11:59:26 -05:00
Dick Hollenbeck 611592029f fix Inner1.Cu in pcb_parser.cpp, start cvpcb work. 2014-07-05 15:42:59 -05:00
jean-pierre charras 9a7116d4ab Update old demo board files. Minor code cleaning. 2014-07-04 21:36:43 +02:00
jean-pierre charras ab58dbfced Pcbnew: Rework on Gerber ouput: allows choice between format 4.5 and 4.6. Fix a minor issue in Gerber layers attributes.
fix print issue when printing each layer on a separate page.
2014-07-04 16:22:38 +02:00
Lorenzo Marcantonio 89f14906a4 - Added the courtyard/fabrication layer to the layer combo and layer
panel
- Corrected handling of scrollability in layer panel (fixes 1336996)
2014-07-04 10:55:51 +02:00
jean-pierre charras 8a1fd49377 Minor fixes in Gerber files, in file attribute for copper layers. 2014-07-01 21:20:38 +02:00
jean-pierre charras a543f99eb3 Enable technical layers when starting Pcbnew with no board.
Use format 4.6 (full resolution of Pcbnew) in Gerber files to avoid the creation of self-intersecting polygons.
2014-06-30 17:46:47 +02:00
jean-pierre charras b50872edca Gerber output: Some changes after evaluation of Gerber files by Ucamco (the manager of GERBER format):
* default file ext is now .gbr (the "official extension")
* some outdated commands remoded.
* mainly use mm and 4.5 format instead of inches and 3.4 format. this is mandatory,
  because the 3.4 format (comming from old pcbned internal units) creates truncations in coordinates.
  (with serious issues in polygons which can appear self-intersecting afer truncation)
2014-06-30 12:00:21 +02:00
Dick Hollenbeck 1e7495e634 merge 2014-06-30 00:46:18 -05:00
Dick Hollenbeck 06bf0821b9 fix LSET() constructors, formatting 2014-06-29 15:33:29 -05:00
Dick Hollenbeck add4d5eb6f re-work the LSET(int,...) constructor 2014-06-29 13:09:32 -05:00
Dick Hollenbeck ad750defb6 LAYER_ID work 2014-06-29 08:05:51 -05:00
jean-pierre charras 013296cb1a Make gerbview compilable and working (does not use now layers and layer masks from Pcbnew).
Export to Pcbnew is broken, but it is a very rarely used feature. It will be fixed later.
2014-06-27 19:07:42 +02:00
Dick Hollenbeck 8b6c569aef copyright 2014-06-25 09:24:02 -05:00
Dick Hollenbeck b920fa00a5 1) Fix compiles using wx 3.x and 2.8.
2) Fix passing wxString to common/config_params so lookup keys 
   can be dynamically generated.  This gives ~/.kicad files all the colors.
3) Fix LEGACY_PLUGIN so it loads all layer types and masks properly.
4) Extend the table in router/pns_index.h to 128 from 64.
2014-06-24 23:36:02 -05:00
Dick Hollenbeck b76d0c533b add lset.cpp 2014-06-24 13:31:41 -05:00
jean-pierre charras 96b6e1a5cb Make dialog pns properties resizable. DXF import: add very basic polyline import. 2014-06-24 20:04:16 +02:00
Dick Hollenbeck 4578ea8b9e 1) Add 32 Cu Layers.
2) Change from legacy Cu stack to counting down from top=(F_Cu or 0).
   The old Cu stack required knowing the count of Cu layers to make
   sense of the layer number when converting to many exported file types.
   The new Cu stack is more commonly used, although ours still gives
   B_Cu a fixed number.
3) Introduce class LSET and enum LAYER_ID.
4) Change *.kicad_pcb file format version to 4 from 3.
5) Change fixed names Inner1_Cu-Inner14_Cu to In1_Cu-In30_Cu and their
   meanings are typically flipped.
6) Moved the #define LAYER_N_* stuff into legacy_plugin.cpp where they
   can die a quiet death, and switch to enum LAYER_ID symbols throughout.
7) Removed the LEGACY_PLUGIN::Save() and FootprintSave() functions.
   You will need to convert to the format immediately, *.kicad_pcb and
   *.kicad_mod (=pretty) since legacy format was never going to know
   about 32 Cu layers and additional technical layers and the reversed Cu
   stack.
2014-06-24 11:17:18 -05:00
jean-pierre charras 4cd4990bc2 Fix compil issue with KICAD_SCRIPTING_WXPYTHON option ON.
Minor enhancements.
2014-06-20 19:29:35 +02:00
jean-pierre charras 7c99a242cf Remove 2 global variables: g_DrawBgColor and g_ShowPageLimits.
They are now member of EDA_DRAW_FRAME.
This change could fix Bug #1330781 (Background color change in Eeschema affects background color in Pcbnew)
Show page limits has meaning only for the schematic editor,  the board editor and the page layout editor.
Draw background color selection exists only in eeschema and  page layout editor.
In pcbnew, only a black background is allowed.
A side effect is now the user should set the background color in schematic editor, and the library editor (2 different options).
The default is still the white color.
2014-06-20 13:13:04 +02:00
Lorenzo Marcantonio 94d78047e3 Fixes 1332429 2014-06-20 10:55:30 +02:00
jean-pierre charras 9ee8dac056 Pcbnew, python console: make it not dockable (workaround to avoid the fact accelerator keys which are used in the main menu are not sent to the console, in docked mode).
Minor cosmetic enhancement.
2014-06-19 08:26:53 +02:00
Bernhard Stegmaier b22aba2010 Fixes 2014-06-16 11:42:27 -05:00
Lorenzo Marcantonio bb79ec84bc In KIFACE_I::end_common save the 'common' configuration variables loaded in KIFACE_I::begin_common (the background color and the page border flag) 2014-06-12 20:34:16 +02:00
Lorenzo Marcantonio bee6b9f9b7 Fixes #1186269
- Refactored the common part of cursor key movement and crosshair update
  in the various GeneralControl
- Add x10 movement with the keyboard (CTRL modifier)
- Avoid fixup of the cursor position by dummy mouse movements generated
  by cursor warping (original analysis and idea Chris Gibson)
- Do key handling in a way to permit sub-pixel cursor movement
2014-06-12 18:12:14 +02:00
Jean-Samuel Reynaud 00e18d2144 pcbnew crashed on start compiled with KICAD_SCRIPTING_WXPYTHON=ON 2014-06-12 08:57:00 -05:00
Dick Hollenbeck 3d311f831e *) Remove more wxString static constructors which were crashing in PAGE_INFO assignment
to a new BOARD in the footprint editor.  This is PAGE_INFO::A4 and company.
   
*) Remove static storage of the BOARD in the module editor.
2014-06-11 00:00:30 -05:00
jean-pierre charras 737ef50cc0 Plot SVG: fix issue with arcs (bug #1328155 ) both in Pcbnew and Eeschema. 2014-06-10 18:21:38 +02:00
Dick Hollenbeck 8cb3423262 Remove class RETAINED_PATH, put is main member function into SEARCH_STACK.
Change class PROJECT to use a generalized wxString in place of the
RETAINED_PATH items, so that new session and project specific strings
of any purpose can be saved there, for the life of a session.
2014-06-10 10:56:43 -05:00
Bernhard Stegmaier 60a86853ec Removed a few warnings. 2014-06-05 12:40:26 +02:00
Maciej Suminski 35e343597b Grid in GAL takes into account grid offset. 2014-06-04 17:56:44 +02:00
jean-pierre charras e140f79aba Fix some compil warnings and Debug assertions. 2014-06-04 20:48:49 +02:00
jean-pierre charras f76041e956 Fix some compil warnings and Debug assertions 2014-06-04 19:34:23 +02:00
Dick Hollenbeck 431675933a remove global g_UserLibDirBuffer which was a project specific global, and no longer used with FP_LIB_TABLE support. 2014-06-03 10:59:52 -05:00
Maciej Suminski b1a19b1225 Setting proper tool for submenus of CONTEXT_MENU class. 2014-05-31 16:04:10 +02:00
Maciej Suminski 0e69277074 Fix for vertical/horizontal (using Ctrl/Shift + mousewheel) panning in GAL canvas. 2014-05-31 11:48:27 +02:00
jean-pierre charras 771ac33c80 Pcbnew: fix a minor bug: in zones with no net, only the zone clerance was used to created clearence, regardless the pad or footprint local clerance.
Very minor other fixes.
2014-05-29 13:48:14 +02:00
Dick Hollenbeck c8479cdd2b remove unused single_top.c function. 2014-05-27 23:30:38 -05:00
Maciej Suminski dd1fcd0588 Fix for context menu hanging up in GAL. 2014-05-22 17:59:36 +02:00
Tomasz Wlostowski b688f9bc20 math_util: speed up rescaling on 64-bit platforms by using native 128-bit types 2014-05-22 15:07:28 +02:00
Maciej Suminski 69816d8704 The GAL view uses colors settings from the legacy canvas.
Minor refactoring of PAINTER & RENDER_SETTINGS classes.
2014-05-21 23:13:30 +02:00
Lorenzo Marcantonio 07877f9044 Replaced the display line clipper with the way simpler (and faster) Cohen-Sutherland one.
A couple of trivial accessors made inline
2014-05-21 19:02:32 +02:00
jean-pierre charras cfa67aa218 Pcbnew: plot dialog: remove obscure and useless option about texts which are not value or reference.
cosmetic enhancement in dialog.
page layout: fix bug Bug #1320839 (canvas refresh countinously called when moving an item)
2014-05-19 20:24:07 +02:00
Maciej Sumiński c97afea468 Upstream merge. 2014-05-18 17:32:35 +02:00
Maciej Sumiński 46020e20de Merged the new Interactive Push and Shove router.
Do not pay attention to add/remove files - it seems there may be a bug in git-bzr-ng plugin. I have checked them, they stayed exactly the same as before.
2014-05-18 17:16:59 +02:00
jean-pierre charras d54ade9403 Rework on DXF export. 2014-05-17 21:29:15 +02:00
jean-pierre charras 41e41b95f8 Plot DXF: better generation of filled zone polygons. 2014-05-16 21:03:45 +02:00
Lorenzo Marcantonio 645e17684d Pull unfilled polygon drawing thru the line clipper; GTK mess up even in this case and the sheet border lines glitch on the screen at high zoom otherwise in pcbnew. 2014-05-16 19:43:27 +02:00
Maciej Suminski ebf35fd43a Workaround for Mac OS, fixes focus after a mouse click. 2014-05-15 17:08:15 +02:00
jean-pierre charras bb0804ec29 DXF export: fix incorrect export of polygons having thick outline (like zones): Thick segments of outline were drawn like lines with no thickness.
Fix ( workaround only) crash (Windows only) when a quasi modal frame (like footprint viewer) was called from a dialog (like the component properties dialog in schematic editor).
Very minor other fixes.
2014-05-15 08:32:24 +02:00
Maciej Suminski def53707d5 TOOL_MANAGER is no longer static. Reworked autoregistration of TOOL_ACTIONs. 2014-05-14 16:29:53 +02:00
Tomasz Włostowski 5bf50ee910 VIEW: added CalculateExtents() method 2014-05-14 13:48:29 +02:00
Maciej Suminski cce6e27096 Various fixes to geometry & math library. 2014-05-14 11:45:01 +02:00
Maciej Suminski d27ea7895d Moved background color settings from GAL to RENDER_SETTINGS. Added RENDER_SETTINGS::TranslateColor() to convert between EDA_COLOR_T and COLOR4D. 2014-05-14 10:35:12 +02:00
Maciej Suminski 129e26d512 Disable autopanning when GAL panel does not have focus. 2014-05-14 09:42:16 +02:00
Maciej Suminski 4577aed921 Minor reorganization of handling custom events with CONTEXT_MENU. 2014-05-13 11:22:51 +02:00
Maciej Suminski 3f2fc34075 WX_UNIT_TEXT can handle default value. 2014-05-13 11:22:51 +02:00
Maciej Suminski e2feefc08c Fixed custom event handlers for CONTEXT_MENU.
Moved menuCopy to CONTEXT_MENU copy constructor.
2014-05-13 11:22:51 +02:00
Maciej Suminski 05ee03d6b0 Recursive copy constructor for CONTEXT_MENU. 2014-05-13 11:22:51 +02:00
Maciej Suminski 089e99b99e Fixing memory leaks. 2014-05-13 11:22:51 +02:00
Maciej Suminski 761375ddef More compatibility fixes. 2014-05-13 11:22:51 +02:00
Maciej Suminski 3eaef97a7d Added WX_UNIT_TEXT - wxWidget control for inputing sizes using different units (mm, inch, internal units). 2014-05-13 11:22:51 +02:00
Maciej Suminski 2f5103bc67 Fixed jumpy zoom when hotkeys and scroll wheel were used alternatively. 2014-05-13 11:22:51 +02:00
Maciej Suminski 50193f1751 Resolved HOME hot key conflict between menu entry (Zoom Page) and event assigned to the hot key in the ACTION_MANAGER.
Conflicts:
	pcbnew/menubar_pcbframe.cpp
2014-05-13 11:22:51 +02:00
Maciej Suminski 8bb5eaa434 Better way of adding CONTEXT_MENU entries. 2014-05-13 11:22:50 +02:00
Maciej Suminski d6fd8b2e23 Upstream merge. 2014-05-12 17:17:51 +02:00
Maciej Suminski 2ed804b8ef Upstream merge. 2014-05-12 17:17:51 +02:00
Dick Hollenbeck e45aadd11b Modular-Kicad milestone B), minor portion:
*)  Implement a framework for "Data Load On Demand".

*)  Implement FP_LIB_TABLE* PROJECT::PcbFootprintLibs(), which is the first
    prototype.

This allows the project specific footprint tables to be part of the Module Editor
when invoked from Eeschema.
2014-05-09 13:35:48 -05:00
Dick Hollenbeck 9fe5ce67e6 Modular-Kicad milestone B), minor portion:
*)  Implement a framework for "Data Load On Demand".

*)  Implement FP_LIB_TABLE* PROJECT::PcbFootprintLibs(), which is the first
    prototype.

This allows the project specific footprint tables to be part of the Module Editor
when invoked from Eeschema.
2014-05-09 13:35:48 -05:00
jean-pierre charras 963029262b Fix an annoying behavior of new quasi modal frames on Windows (when closing them, the caller frame was no more on top ) 2014-05-09 20:06:18 +02:00
jean-pierre charras dc745aa62e Fix an annoying behavior of new quasi modal frames on Windows (when closing them, the caller frame was no more on top ) 2014-05-09 20:06:18 +02:00
Dick Hollenbeck 55e61bc6e3 Modular-Kicad milestone B), glamorous portions:
*) Eeschema can now show the footprint editor.

*) Eeschema can now invoke the footprint picker from the library part field editor.

*) KIWAY_PLAYER::ShowModal() takes aResultantFocusWindow that tells what window
   to give the focus to.  Required since frames are often near the top of the
   hierarchy and they are invoked by a peer, not a parent.
2014-05-05 12:28:40 -05:00
Dick Hollenbeck 3b0712873a Modular-Kicad milestone B), glamorous portions:
*) Eeschema can now show the footprint editor.

*) Eeschema can now invoke the footprint picker from the library part field editor.

*) KIWAY_PLAYER::ShowModal() takes aResultantFocusWindow that tells what window
   to give the focus to.  Required since frames are often near the top of the
   hierarchy and they are invoked by a peer, not a parent.
2014-05-05 12:28:40 -05:00
Maciej Suminski a4cdf25f83 Upstream merge. 2014-05-05 10:51:31 +02:00
Maciej Suminski 9536ed811d Upstream merge. 2014-05-05 10:51:31 +02:00
Dick Hollenbeck 74cb23a958 Quasimodo is not a monster, he is your friend. 2014-05-04 19:19:16 -05:00
Dick Hollenbeck fb346a0c10 Quasimodo is not a monster, he is your friend. 2014-05-04 19:19:16 -05:00
Dick Hollenbeck bb374d2616 typeinfo.h missing in Debug build for wx2.8 2014-05-04 15:27:29 -05:00
Dick Hollenbeck 7a0093b0c4 typeinfo.h missing in Debug build for wx2.8 2014-05-04 15:27:29 -05:00
Dick Hollenbeck 19dd876684 wx 2.8 now builds, but the quasi-modal support seems broken on 2.8. Wanted others to be able to build at least. 2014-05-04 14:57:44 -05:00
Dick Hollenbeck 80a402a369 wx 2.8 now builds, but the quasi-modal support seems broken on 2.8. Wanted others to be able to build at least. 2014-05-04 14:57:44 -05:00
Dick Hollenbeck fef168aaed Modular-Kicad milestone B), minor portions:
*) KIWAY_PLAYER::IsModal() is now a retained state, controlled by SetModal()

*) Fully re-work the KIWAY_PLAYER::ShowModal() to use a nested event loop.

*) Add support to DIALOG_SHIM for a "quasi-modal" dialog presentation and mode.
   See top of dialog_shim.cpp about that for benefits and need.

*) You can now pick footprint from the schematic component field dialog, although
   if you do this before you open the BOARD, you will only get the global footprint
   libraries, not also the project specific ones.  Opening the BOARD first avoids this
   problem.

This is the first example of cross KIFACE invocation, it is also the first
instance of using a TOP_FRAME other than FRAME_PCB as the first thing. It works,
but it's missing support for opening the project specific table because
historically the FRAME_PCB did that. This is now starting to expose all the near
term needs for KIWAY_PLAYER <-> PROJECT interaction, independence and out of
sequence usage.

A fix for this will be coming in a few days.

However it mostly starts to show why the KIWAY is terribly useful and important.
2014-05-04 13:22:27 -05:00
Dick Hollenbeck a2227a75b4 Modular-Kicad milestone B), minor portions:
*) KIWAY_PLAYER::IsModal() is now a retained state, controlled by SetModal()

*) Fully re-work the KIWAY_PLAYER::ShowModal() to use a nested event loop.

*) Add support to DIALOG_SHIM for a "quasi-modal" dialog presentation and mode.
   See top of dialog_shim.cpp about that for benefits and need.

*) You can now pick footprint from the schematic component field dialog, although
   if you do this before you open the BOARD, you will only get the global footprint
   libraries, not also the project specific ones.  Opening the BOARD first avoids this
   problem.

This is the first example of cross KIFACE invocation, it is also the first
instance of using a TOP_FRAME other than FRAME_PCB as the first thing. It works,
but it's missing support for opening the project specific table because
historically the FRAME_PCB did that. This is now starting to expose all the near
term needs for KIWAY_PLAYER <-> PROJECT interaction, independence and out of
sequence usage.

A fix for this will be coming in a few days.

However it mostly starts to show why the KIWAY is terribly useful and important.
2014-05-04 13:22:27 -05:00
Lorenzo Marcantonio 85c5aa22c6 Constification of HitTest and GetParent
In particular HitTest for zones *do not* select the nearest vertex/edge as a side effect
2014-05-04 19:08:36 +02:00
Lorenzo Marcantonio 342016b692 Constification of HitTest and GetParent
In particular HitTest for zones *do not* select the nearest vertex/edge as a side effect
2014-05-04 19:08:36 +02:00
Dick Hollenbeck f16f248bf9 Change order of headers for wx 2.8, use wxWindowDisabler not ENABLE_DISABLE. 2014-05-03 19:44:57 -05:00
Dick Hollenbeck 19c184df97 Change order of headers for wx 2.8, use wxWindowDisabler not ENABLE_DISABLE. 2014-05-03 19:44:57 -05:00
Dick Hollenbeck 25d1ab4008 Modular-Kicad milestone B), major portions:
*) Rework the set language support, simplify it by using KIWAY.  Now any major
   frame with a "change language" menu can change the language for all KIWAY_PLAYERs
   in the whole KIWAY.  Multiple KIWAYs are not supported yet.

*) Simplify "modal wxFrame" support, and add that support exclusively to
   KIWAY_PLAYER where it is inherited by all derivatives.  The function
   KIWAY_PLAYER::ShowModal() is in the vtable and so is cross module capable.

*) Remove the requirements and assumptions that the wxFrame hierarchy always
   had PCB_EDIT_FRAME and SCH_EDIT_FRAME as immediate parents of their viewers
   and editors. This is no longer the case, nor required.

*) Use KIWAY::Player() everywhere to make KIWAY_PLAYERs, this registers the
   KIWAY_PLAYER within the KIWAY and makes it very easy to find an open frame
   quickly.  It also gives control to the KIWAY as to frame hierarchical
   relationships.

*) Change single_top to use the KIWAY for loading a KIFACE and instantiating
   the single KIWAY_PLAYER, see bullet immediately above.

*) Add KIWAY::OnKiwayEnd() and call it from PGM_BASE at program termination, this
   gives the KIFACEs a chance to save their final configuration dope to disk.

*) Add dedicated FRAME_T's for the modal frames, so m_Ident can be tested and
   these modal frames are distinctly different than their non-modal equivalents.
   KIWAY_PLAYER::IsModal() is !not! a valid test during the wxFrame's constructor,
   so this is another important reason for having a dedicated FRAME_T for each
   modal wxFrame.

On balance, more lines were deleted than were added to achieve all this.
2014-05-03 12:40:19 -05:00
Dick Hollenbeck 991926d320 Modular-Kicad milestone B), major portions:
*) Rework the set language support, simplify it by using KIWAY.  Now any major
   frame with a "change language" menu can change the language for all KIWAY_PLAYERs
   in the whole KIWAY.  Multiple KIWAYs are not supported yet.

*) Simplify "modal wxFrame" support, and add that support exclusively to
   KIWAY_PLAYER where it is inherited by all derivatives.  The function
   KIWAY_PLAYER::ShowModal() is in the vtable and so is cross module capable.

*) Remove the requirements and assumptions that the wxFrame hierarchy always
   had PCB_EDIT_FRAME and SCH_EDIT_FRAME as immediate parents of their viewers
   and editors. This is no longer the case, nor required.

*) Use KIWAY::Player() everywhere to make KIWAY_PLAYERs, this registers the
   KIWAY_PLAYER within the KIWAY and makes it very easy to find an open frame
   quickly.  It also gives control to the KIWAY as to frame hierarchical
   relationships.

*) Change single_top to use the KIWAY for loading a KIFACE and instantiating
   the single KIWAY_PLAYER, see bullet immediately above.

*) Add KIWAY::OnKiwayEnd() and call it from PGM_BASE at program termination, this
   gives the KIFACEs a chance to save their final configuration dope to disk.

*) Add dedicated FRAME_T's for the modal frames, so m_Ident can be tested and
   these modal frames are distinctly different than their non-modal equivalents.
   KIWAY_PLAYER::IsModal() is !not! a valid test during the wxFrame's constructor,
   so this is another important reason for having a dedicated FRAME_T for each
   modal wxFrame.

On balance, more lines were deleted than were added to achieve all this.
2014-05-03 12:40:19 -05:00
jean-pierre charras c698a1da24 Eeschema: fix unwanted creation of noname.pro (or other useless config file), when opening eeschema. Fix also an issue when saving the config (from save config menu) which saved the config file in an unknow folder. 2014-05-02 19:56:24 +02:00
jean-pierre charras 5688a87212 Eeschema: fix unwanted creation of noname.pro (or other useless config file), when opening eeschema. Fix also an issue when saving the config (from save config menu) which saved the config file in an unknow folder. 2014-05-02 19:56:24 +02:00
Maciej Suminski c3b448b633 Upstream merge. 2014-05-01 15:55:50 +02:00
jean-pierre charras 7b843ecac8 Plots function: fix a bug about virtual PLOTTER::Text, which was not virtual for derived classes due to a missing parameter in ::Text in these classes. Noticeable only in SVG plot.
SVG plot, fix a missing reinitialization in plot lines, which could define a filled polyline, instead of a simple polyline
(these fixes solve Bug #1313084 )
2014-04-28 18:13:18 +02:00
jean-pierre charras 802a59dc52 eeschema: fix the very minor bug #1298094. But it was due to a bad bounding box calculation, which is now fixed. 2014-04-25 18:49:32 +02:00
jean-pierre charras 9c1f6b7307 Pcbnew: fix Bug #1304418 . Fix also a related issue which crashes Pcbnew in some corner cases.
(for instance, when a footprint from the currently edited board is loaded in the footprint editor, and when the board is cleared or reloaded)
In footprint editor, the net names are no more shown od modifiable (becuase the footprint editor does not know anything about net names.
This change should allow the changes planned in pcbnew.
2014-04-24 20:54:49 +02:00
Dick Hollenbeck b427aa49c1 single_top w/o kiface whines and exits gracefully. 2014-04-24 13:31:11 -05:00
Dick Hollenbeck 1e68c5f8b3 comment fix, simplified unhandled IO_ERROR exception report in single_top.cpp. 2014-04-24 12:25:57 -05:00
Dick Hollenbeck 8416c5d655 Add diagnostic message for missing *.kiface, which is now a fatal installation bug. 2014-04-24 06:30:14 -05:00
Dick Hollenbeck 61fe97e666 the boost site is getting slower, somebody might need supply a better host and offer bandwidth there for downloading the boost tar. 2014-04-23 08:53:07 -05:00
Dick Hollenbeck 99a19d27cb KIWAY::Player() wxASSERT 2014-04-22 11:16:34 -05:00
Dick Hollenbeck 59d7303b03 KIWAY::Player() wxASSERT 2014-04-22 11:10:07 -05:00
Dick Hollenbeck 8afe4599d0 Teach cvpcb about new KIWAY based cross-probing, factor out MAIL_T into mail_type.h 2014-04-22 10:16:19 -05:00
Dick Hollenbeck 7a129e167b Functional
*) void KIWAY::ExpressMail( FRAME_T aDestination, MAIL_T aCommand, const std::string& aPayload, wxWindow* aSource=NULL );
*) virtual void KiwayMailIn( KIWAY_EXPRESS& aEvent );
*) enum MAIL_T expansion into the brave new world if cross KIWAY_PLAYER communications.

Let the KIWAY_PLAYING begin.....
through well conceived mail from one KIWAY_PLAYER to another.
Get thinking now.  Add a new MAIL_T value, then send ExpressMail(), 
and receive it in KiwayMailIn(), it's that easy.
2014-04-21 09:49:33 -05:00
Dick Hollenbeck 1648d7fd43 Get cross-probing working under the Kiway. 2014-04-21 01:51:33 -05:00
Dick Hollenbeck e47a2bc5d4 happy Easter 2014-04-21 01:28:17 -05:00
Dick Hollenbeck a985255f95 add back missing pcbnew cross probing event handlers. eeschema launches kiface versions of pcbnew & cvpcb if not single. 2014-04-19 23:35:34 -05:00
Dick Hollenbeck f9f3ff22dc hook top frame with KIWAY::playerDestroyHandler() 2014-04-19 14:44:59 -05:00
Dick Hollenbeck ea66e572a0 KIWAY::dso_full_path() was more incomplete. 2014-04-19 13:58:32 -05:00
Dick Hollenbeck 0d6560a218 *) Switch kicad.exe to using KIFACE modules for all major top level windows.
Eeschema, Pcbnew, and Cvpcb all run under the same process now,
    FOR THE VERY FIRST TIME!

*)  Added KIWAY::PlayerCreate(), PlayerClose(), and PlayersClose().

*)  Factored FRAME_T into <frame_type.h> from ID_DRAWFRAME_TYPE.

*)  Found that the following command line is helpful for collecting all the *.kiface
    files into the <build>/kicad/ directory so that kicad can find them.

      $ cp `find . -name '*.kiface'` kicad/

    Maybe somebody will want to rework how the CMake files are organized so all
    the binaries can go into the same place.  See python-a-mingw-us.

*)  This might fix the problem on the Mac where child process windows were not
    coming to the front.  See ->Raise() in kicad/mainframe.cpp.

*)  You can set USE_KIFACE to 0 in kicad/mainframe.cpp to chain load child exes
    instead of using the KIFACE modules directly, i.e. revert.
2014-04-19 13:47:20 -05:00
Dick Hollenbeck 5f65d0da93 *) Add KIFACE_I::StartFlags() and IsSingle() so a KIFACE implementation can know
if it is running under single_top.cpp or under a project manager.

*)  Test Kiface().IsSingle() when adding menus, some operations are not permitted
    when running under a project manager and the KIWAY_PLAYER is pegged to a
    specific project.

*)  Implemented KIWAY::KiFACE() so it loads *.kiface files.  They still have to be
    in the same directory as the main *.exe launcher, so this presents some difficulty
    when the binaries are not yet installed but rather the *.kiface files are still
    in their original build directories.  For today, I simply copied _pcbnew.kiface
    to build/kicad/.

*)  Add a test case to kicad/mainframe.cpp just to get an early peek at loading
    _pcbnew.kiface under the C++ project manager.  Got that working for one
    specific invocation just for proof of concept.  Surprise, it works.
2014-04-17 21:05:40 -05:00
Maciej Suminski e7ea0480e4 Upstream merge. 2014-04-16 11:26:41 +02:00
Maciej Suminski bff37e504e wxWidgets 2.8 compatibility fixes. 2014-04-15 16:36:23 +02:00
Dick Hollenbeck 8e6713ca02 Don't know how it ever worked before, supporting project template kicad.pro 2014-04-15 00:55:15 -05:00
Dick Hollenbeck 4a7ba86996 PROJECT::configCreate() logic changes. 2014-04-15 00:34:28 -05:00
Dick Hollenbeck c39385a5cd improve help file finding after kiway breakage. 2014-04-14 13:49:52 -05:00
Dick Hollenbeck 36bdbde68c oops, wx2.8 compatibility fixes 2014-04-10 16:31:55 -05:00
Dick Hollenbeck 359f05ad76 oops, wx2.8 compatibility fixes 2014-04-10 16:24:15 -05:00
Dick Hollenbeck f687f9ef85 catch some IO_ERRORs 2014-04-10 16:20:01 -05:00
Maciej Suminski 3f8d9da31f Key events are handled by wxEVT_CHAR instead of wxEVT_KEY_[UP|DOWN]. Fixed issue of chars that require modifiers (e.g. ? is Shift+/ on US keyboard layout). 2014-04-09 17:33:22 +02:00
Maciej Suminski 50b202fe99 Hot keys specific to a tool have priority over global hot keys (TOOL_ACTION scope: AS_GLOBAL/AS_CONTEXT is finally handled properly). 2014-04-09 17:05:05 +02:00
Dick Hollenbeck 4011953455 Jettison FP_LIB_TABLE::ConvertFromLegacy() into a static function, where it
was used locally.  Then comment it out in favor of a newer strategy for
filling in nicknames in cvpcb. 

Add MODULE* FootprintLoadWithOptionalNickname( const FPID& aFootprintId )
        throw( IO_ERROR, PARSE_ERROR );
from code found elsewhere.
2014-04-09 08:33:04 -05:00
Dick Hollenbeck d053e5615b More migration towards single process, extend PROJECT::Config*() in proper direction, cleanups. 2014-04-07 23:55:53 -05:00
Maciej Suminski 85365b0dbc Upstream merge. 2014-04-07 18:00:13 +02:00
Maciej Suminski 89161331e4 Fixed refreshing issues (DRC, new items after reloading netlist and probably many other places). 2014-04-07 15:35:50 +02:00
Maciej Suminski 6fa2f060fa Formatted ttl library to comply with KiCad coding policy. 2014-04-07 13:32:09 +02:00
Dick Hollenbeck 6beacd6e95 Rework FOOTPRINT_VIEWER_FRAME::GetActiveFootprintViewer(), fix up comments and warnings. 2014-04-04 09:57:26 -05:00
Maciej Suminski b3318dad5d High contrast color got blueish by accident - fixed. 2014-04-04 15:49:37 +02:00
Maciej Suminski 024bf9dd84 Fixed GAL canvas freeze when ordered twice to change to the same GAL canvas (e.g. double F11). 2014-04-04 12:01:30 +02:00
Maciej Suminski ba275918e3 Renamed [class_]drawpanel_gal.[cpp|h] to [class_]draw_panel_gal.[cpp|h] to follow current naming scheme. 2014-04-04 11:56:04 +02:00
Maciej Suminski d876807966 Fixed cancelling dialogs in DRAWING_TOOL. 2014-04-03 09:48:06 +02:00
jean-pierre charras 9b99ac2a53 All: add 2 hotkeys to simulate a mouse left click (key return) and left dclick (key end) 2014-04-03 09:40:55 +02:00
Maciej Suminski 23392ce8c9 Upstream merge. 2014-04-02 15:38:59 +02:00
Maciej Suminski e79934b03d If tool was previously active and it is called again, it is brought to the top of the active tool stack.
It fixes issue of dragging of items that have EDIT_POINTs, when dragging was activated by hovering over an item and using hot key.
2014-04-01 14:35:09 +02:00
Lorenzo Marcantonio 121494d3d9 Removed relic empty if 2014-03-29 18:34:13 +01:00
Maciej Suminski 39bca76df7 >Added handled hotkeys:
- resetting relative coordinates
- switching units
- not official: changing transparency for layers (works only for main layers, does not work on vias/pads/etc.)
2014-03-24 18:28:21 +01:00
Maciej Suminski 60e9546b62 PCB_EDIT_FRAME::SetHighContrastLayer() went public.
Refactored code that handled zooming events.
Added PCB_RENDER_SETTINGS::Get/SetSketchMode().
PCBNEW_CONTROL reacts to hot keys changing display modes (sketch via/tracks, high contrast).
2014-03-24 17:20:23 +01:00
Maciej Suminski 3a43f0527f Changed void BASE_SCREEN::GetGrids( GRIDS& aList ) to const GRIDS& BASE_SCREEN::GetGrids().
Refactored:
- EDA_DRAW_FRAME::SetNextGrid() & SetPrevGrid()
- PCB_BASE_FRAME::SetFastGrid1() & SetFastGrid2()
Removed a warning from RN_DATA::updateNet(int).
2014-03-21 18:00:11 +01:00
Dick Hollenbeck 4a39fcdd8f single_top.c logic, improved OpenProjectFiles() documentation. 2014-03-21 11:59:19 -05:00
Maciej Suminski c7116e9d03 FIxed too late deletion of TOOLs. 2014-03-21 17:55:46 +01:00
Dick Hollenbeck 8fc1e38271 Enable GITHUB as default, include typeinfo into kiway_holder.cpp 2014-03-21 07:20:54 -05:00
Maciej Suminski 0694f2fa1c TOOL_EVENTs autoregister themselves in ACTION_MANAGER.
ROUTER_TOOL events have temporarily changed their hotkeys assignment.
2014-03-21 10:40:50 +01:00
Dick Hollenbeck a7f1939203 simplify and fix the technique used to get the project fp-lib-table 2014-03-20 20:24:35 -05:00
Wayne Stambaugh 34dda6a1b0 Fix windows build error for missing path separator definitions.
* Use wxFileName::GetPathSeparator() instead of redefining them.
2014-03-20 14:07:19 -04:00
Dick Hollenbeck 223419a8f6 documentation clarity 2014-03-20 11:32:34 -05:00
Maciej Suminski 426844896e Minor fixes (check for net codes size for ratsnest, cursor coordinates are not always shown as if the cursor was snapped). 2014-03-20 11:31:32 +01:00
Maciej Suminski dbc4a8f292 GAL zooms in and out using the default hot keys (F1/F2).
Screen size is saved in VECTOR2I instead of VECTOR2D.
2014-03-20 08:47:31 +01:00
Dick Hollenbeck 6bfff89fe5 merge tip in, resolve. 2014-03-20 01:24:33 -05:00
Dick Hollenbeck 2c67c3ff80 * KIWAY Milestone A): Make major modules into DLL/DSOs.
!   The initial testing of this commit should be done using a Debug build so that
    all the wxASSERT()s are enabled.  Also, be sure and keep enabled the
    USE_KIWAY_DLLs option.  The tree won't likely build without it.  Turning it
    off is senseless anyways.  If you want stable code, go back to a prior version,
    the one tagged with "stable".

*   Relocate all functionality out of the wxApp derivative into more finely
    targeted purposes:
    a) DLL/DSO specific
    b) PROJECT specific
    c) EXE or process specific
    d) configuration file specific data
    e) configuration file manipulations functions.

    All of this functionality was blended into an extremely large wxApp derivative
    and that was incompatible with the desire to support multiple concurrently
    loaded DLL/DSO's ("KIFACE")s and multiple concurrently open projects.
    An amazing amount of organization come from simply sorting each bit of
    functionality into the proper box.

*   Switch to wxConfigBase from wxConfig everywhere except instantiation.
*   Add classes KIWAY, KIFACE, KIFACE_I, SEARCH_STACK, PGM_BASE, PGM_KICAD,
    PGM_SINGLE_TOP,
*   Remove "Return" prefix on many function names.
*   Remove obvious comments from CMakeLists.txt files, and from else() and endif()s.
*   Fix building boost for use in a DSO on linux.
*   Remove some of the assumptions in the CMakeLists.txt files that windows had
    to be the host platform when building windows binaries.
*   Reduce the number of wxStrings being constructed at program load time via
    static construction.
*   Pass wxConfigBase* to all SaveSettings() and LoadSettings() functions so that
    these functions are useful even when the wxConfigBase comes from another
    source, as is the case in the KICAD_MANAGER_FRAME.
*   Move the setting of the KIPRJMOD environment variable into class PROJECT,
    so that it can be moved into a project variable soon, and out of FP_LIB_TABLE.
*   Add the KIWAY_PLAYER which is associated with a particular PROJECT, and all
    its child wxFrames and wxDialogs now have a Kiway() member function which
    returns a KIWAY& that that window tree branch is in support of.  This is like
    wxWindows DNA in that child windows get this member with proper value at time
    of construction.
*   Anticipate some of the needs for milestones B) and C) and make code
    adjustments now in an effort to reduce work in those milestones.
*   No testing has been done for python scripting, since milestone C) has that
    being largely reworked and re-thought-out.
2014-03-19 19:42:08 -05:00
maciej. 898ed7445f GAL: fix zooming using mouse wheel with wxWidgets 3.0. 2014-03-19 21:07:49 +01:00
Maciej Suminski bf418eb1ee Cursor coordinates are updated in GAL canvases. 2014-03-19 14:26:02 +01:00
Maciej Suminski e1ce30d89d Fixed mouse wheel handling for GAL canvases with wx3.0. 2014-03-19 11:57:59 +01:00
Maciej Suminski f6959c039c Comments. 2014-03-18 11:04:52 +01:00
Orson 59a0ced0a6 Corrected the error message about required OpenGL version for GAL. Fixed pcb_calculator .desktop file. 2014-03-14 21:32:25 +01:00
Maciej Suminski afc56d3f6f Moved panning boundaries and scale limits from VIEW to VIEW_CONTROL. 2014-03-12 17:09:53 +01:00
Maciej Suminski 1e04f3b948 Removed excessive variable (m_Corners) from MARKER_BASE. 2014-03-12 15:53:20 +01:00
Maciej Suminski f0251ebdb6 Merge selection tool branch. 2014-03-11 20:45:01 -04:00
Maciej Suminski 54bf21768c Added a few settings to make the layer settings more similar to KiCad defaults (moved vias to VIA_THROUGH_VISIBLE, added a few rules for required layers). 2014-03-11 10:58:58 +01:00
Maciej Suminski ecb3aebce3 Fixed a bug caused by removed VIEW_ITEMs that were marked for updating. 2014-03-10 16:01:15 +01:00
Maciej Suminski c4dbdbf9d3 Removed unnecessary casting. 2014-03-10 10:18:48 +01:00
Cirilo Bernardo 04f8d12ae5 KiCad: improve gerber file extension wildcard so gerbers show up correctly in the file tree pane. 2014-03-06 16:44:48 -05:00
Maciej Suminski b6e3b3a3f9 Merged selection_tool branch. 2014-03-06 10:43:40 +01:00
Maciej Suminski 5ed0980dd5 Merged upstream. 2014-03-06 09:42:16 +01:00
Maciej Suminski c557e52dab Squashed memory leaks. 2014-03-05 14:57:14 +01:00
Maciej Suminski 505b38416d Removed a few memory leaks. 2014-03-03 17:15:41 +01:00
Maciej Suminski c5c83bd271 Added TOOL_MANAGER & ACTION_MANAGER::RunAction( const TOOL_ACTION aAction ).
Selection clearing is invoked using TOOL_ACTION object rather than its name.
2014-02-28 15:46:05 +01:00
jean-pierre charras 2c69b7f512 Fix Bug #1275544 (Page size dialog: page size drop-down doesn't handle mouse-click event) 2014-02-27 20:53:04 +01:00
Maciej Suminski e6598e9d41 Added VIEW::ToWorld( double ).
TOOL_EVENT message is supposed to contain string as parameter.
Added missing header for class_drawsegment.h (KiROUND).
Renamed SELECTION_TOOL::containsSelected() to SELECTION_TOOL::selectionContains().
2014-02-27 16:13:27 +01:00
jean-pierre charras fbecc0d9ce * fp_lib_table.cpp: fix an issue on Windows in ConvertFromLegacy: sometimes, because the comparison was case sensitive, lib nicknames were not found, although libs exist ( for instance if a path was given like f:\mypath instead of F:\mypath)
* getpart.cpp: fix a potential bug on a translatable string with has requirements in spelling.
* fix bug  #1066179
* kicad: fix erroneous labels in sub menus.
2014-02-26 15:06:24 +01:00
Maciej Suminski c5a3c1082a Removed a few RecacheAllItems() calls, some of them changed to specific type recaching (using TYPE_COLLECTOR & VIEW_ITEM::ViewUpdate() ).
Removed OPENGL_GAL::SetStrokeColor().
2014-02-25 14:28:09 +01:00
Maciej Suminski d583280bb0 Minor code cleaning and optimizations. 2014-02-24 14:31:55 +01:00
Maciej Suminski de637d2b8d Fixed a missing group clearing and update for restored VIEW_ITEMs.Fixed a missing group clearing and update for restored VIEW_ITEMs. 2014-02-24 12:56:47 +01:00
Maciej Suminski 1c253bfba0 Some variables initialized to NULL. 2014-02-24 11:17:49 +01:00
Maciej Suminski 5ac699776d Revisiting GAL:
- VIEW_ITEM::ViewUpdate() does not update items immediately. Now it marks them to be updated and the real update occurs on the next rendering frame.
- VIEW::InvalidateItem() made private.
- VIEW_LAYER::enabled -> visible
- Some functions moved to header files.
2014-02-21 16:57:18 +01:00
Maciej Suminski 151826b206 Upstream merge. 2014-02-21 11:05:28 +01:00
Marco Serantoni 932c92af55 [MacOSX] New reorg for building system, typos and path refines 2014-02-19 22:39:21 +01:00
jean-pierre charras fd2afec6f5 Remove some fully outdated code (#pragma, from Henner Zeller's report, and some other things) 2014-02-18 12:41:53 +01:00
Maciej Suminski a802ca87e0 Added TOOL_ACTION for PNS router activation.
Most of the GAL tools are activated by corresponding buttons on the right toolbar.
Removed menu entry for PNS router (as it is activated as the usual "Add track" tool).
2014-02-17 18:21:00 +01:00
Maciej Suminski 3ecae4fa52 GAL::GetGridPoint() returns point in world coordinates. 2014-02-14 14:16:08 +01:00
Maciej Suminski 597e98dbf4 Cursor is in world coordinates. 2014-02-13 20:23:28 +01:00
Maciej Suminski f9f0b46b63 Small GAL refactorization, mostly correcting constness. 2014-02-13 19:31:27 +01:00
jean-pierre charras 29a1bdb32a Fix issues in print mirror. (include some changes coming from Cirilo Berdarno's patch)
gr_basic.cpp: rewrite the function which draws the outlines of a thick segment.
2014-02-12 11:03:34 +01:00
Maciej Suminski e43b5f7c0f Small fix for crippled polylines containing 0 points. 2014-02-11 15:01:49 +01:00
jean-pierre charras 81c84fcac5 fix linux compil. 2014-02-10 10:58:17 +01:00
jean-pierre charras c935624779 Use environment KISYS3DMOD to know defaut path for 3D shapes in footprint editors dialogs. 2014-02-10 10:30:08 +01:00
Marco Serantoni 9263a4e798 [MacOSX] Setting Set3DShapesPath 2014-02-08 18:33:21 +01:00
jean-pierre charras fff54d759e Add the environment variable KYSYS3DMOD to define a default path for 3D models. 2014-02-08 11:44:55 +01:00
jean-pierre charras d68940c4d2 Minor fixes. 2014-02-07 17:09:15 +01:00
Maciej Suminski 25dfbcd39f Upstream merged. 2014-02-07 09:52:47 +01:00
Maciej Suminski 61a76b2955 Merged fix for wrong snapping. 2014-02-06 17:31:24 +01:00
Maciej Suminski 0f026bbe1d Fixed snapping item in a wrong spot bug. 2014-02-06 17:29:13 +01:00
Maciej Suminski 363709e7a9 Added TOOL_INTERACTIVE::Activate().
Removed an unnecessary header from class_board_item.h.
2014-02-06 14:45:33 +01:00
Maciej Suminski 5c9e7d9b9b Merged the lp:~cern-kicad/kicad/selection_tool branch. 2014-02-06 12:48:18 +01:00
Maciej Suminski b9df36eca5 GAL::GetGridPoint() takes a const reference. 2014-02-06 12:38:06 +01:00
Maciej Suminski 81f84748b3 Modifiers (Shift/Ctrl/Alt) are set also while moving the mouse cursor. 2014-02-06 10:43:19 +01:00
Maciej Suminski 1d4c6ad40e Minor optimizations. 2014-02-05 14:51:19 +01:00
Maciej Suminski 468e14f003 Merged ratsnest_threadsafe branch. 2014-02-05 11:55:04 +01:00
Maciej Suminski 0b9a8709f8 Modifiers (Alt/Shift/Control) are properly set for events when autopanning is active. 2014-02-04 13:38:18 +01:00
Maciej Suminski b317894ea0 Snapping settings are valid while autopanning. 2014-02-04 09:44:16 +01:00
Dick Hollenbeck 142782b402 remove wxApp()::FindLibraryPath() usages from Pcbnew. Use environment variable substitution. 2014-02-03 15:39:42 -06:00
Dick Hollenbeck 33e26b278d KIWAY in progress... 2014-02-03 13:26:18 -06:00
Dick Hollenbeck 4f26386e8d Initial KIWAY (modular-kicad) work. Various tweeks. 2014-02-03 09:10:37 -06:00
Maciej Suminski 3f5c3d4349 Minor changes (fix cvpcb build issue, wx2.8 compatibility, some other stuff). 2014-02-03 16:02:54 +01:00
Dick Hollenbeck 741bfb685b Another attempt at wxFrame::SaveSettings() standard infrastructure. 2014-02-02 14:18:10 -06:00
jean-pierre charras 8afe2dfbce Eeschema: Fix bug #1271155 relative to Grid selection in Eeschema. 2014-02-02 20:51:50 +01:00
Maciej Suminski a73e386505 Added a new tool event: TA_UNDO_REDO, sent after undo/redo operation is issued. 2014-01-30 11:18:58 +01:00
jean-pierre charras ce6b907fe3 Add specific bitmaps in export IDF and export DSN menus.
Add missing calls to Show( false ) to some main frames (Kicad, eeschema, gerbview), to force config saving when closing these windows.
Code cleanup and minor coding style fixes  in footprint_wizard_frame
2014-01-29 18:01:42 +01:00
Maciej Suminski c3c7b2e9cc Merged the netnames branch. 2014-01-28 11:59:04 +01:00
Dick Hollenbeck c63fa6ff31 Add EDA_BASE_FRAME::Show() and call SaveSettings() only from there for all derived wxFrames. Remove calls to SaveSettings() elsewhere. 2014-01-27 19:29:26 -06:00
Maciej Suminski a10d918cac Thread-safe version of Delaunay triangulation. 2014-01-27 11:42:47 +01:00
jean-pierre charras 3354bdde05 Pcbnew: fix bug #1272714 . Code cleanup: use 2 different enums for pad shapes and pad drill shapes. Remove never used pad shape. 2014-01-26 15:20:58 +01:00
jean-pierre charras f7ca6e4bf9 add patch from Cirilo Bernardo, and minor fixes. 2014-01-25 13:23:29 +01:00
Dick Hollenbeck d11d92504a tugs and bugs 2014-01-21 00:59:32 -06:00
Dick Hollenbeck 8dc7189653 Add EDA_APP::setLanguageId() accessor and fix FindwxWidgets.cmake for windows cross on linux. 2014-01-20 03:33:17 -06:00
jean-pierre charras a094f7d5b5 Fix some issues in modview, relative to few incorrect use of some wxAuiManager functions.
Fix not working + and - keys in layers manager.
Fix typo errors and modify some messages to make translator's life more easy.
2014-01-19 14:12:57 +01:00
maciej. 76aa0ba756 Fix compile errors when wx3.x is built with --enable-stl 2014-01-18 03:07:05 -06:00
Dick Hollenbeck a3211b2b9e disable deprecation warnings in Debug build, change message in fp_lib_table.cpp 2014-01-18 03:04:12 -06:00
jean-pierre charras 5954910913 Fix some issues in modview, relative to some a bad use of some wxAuiManager functions. 2014-01-13 16:09:52 +01:00
jean-pierre charras f0412874c0 Update demo files. A minor code cleaning. 2014-01-10 21:12:36 +01:00
jean-pierre charras d3f0151ad4 Code cleanup: Pcbnew: move files relative to export functions to the new folder exporters
Pcbnew, Eeschema: remove include file <protos.h> from a lot of files which do not need it.
2014-01-08 20:29:46 +01:00
Dick Hollenbeck a8bc07c832 Add KICAD_REPO_NAME to the about dialog and build_version.cpp 2014-01-08 08:47:39 -06:00
jean-pierre charras f905b4697e Code cleanup: Pcbnew: move files relative to exort functions to the new folder exporters
all: remove include <protos.h>  from a lot of  files which do not need it.
2014-01-08 15:18:51 +01:00
Maciej Sumiński c1e68436f1 Remove assembly language files, and make building Boost optional.
https://lists.launchpad.net/kicad-developers/msg11965.html
2014-01-07 19:52:19 -06:00
Dick Hollenbeck 1c0f034bca Make KiCad compile with minimal warnings against SVN HEAD of wxWidgets as of today. 2014-01-07 19:34:04 -06:00
Cirilo Bernardo b02f12f440 Commit patch about new better vrml export. patch to fix mirrored page layout when print mirrored is enabled ( page layout should not be mirrored) 2014-01-07 20:27:51 +01:00
Maciej Suminski bc71a2c007 Removed TOOL_STATE.idle field, as it was redundant. 2014-01-07 14:11:53 +01:00
Maciej Suminski 537d82fb98 Upstream merge. 2014-01-06 10:29:31 +01:00
Dick Hollenbeck dbb72d161e fix some compiler warnings 2014-01-03 18:07:20 -06:00
Dick Hollenbeck cbcf666470 force switch to boost::context, add --force option to bzr clean-tree 2014-01-03 17:17:50 -06:00
Dick Hollenbeck c264823731 8 bit string relief via class UTF8 2014-01-01 20:17:07 -06:00
Marco Serantoni 54fe3eeeee [MacOSX] Reorganize OSX Library PATH, first the USER's one then the SYSTEM's one 2013-12-31 15:28:34 +01:00
Dick Hollenbeck 52d3535160 minor tidying 2013-12-31 00:25:53 -06:00
Dick Hollenbeck f9ab5d2c61 Add -fvisibility options to significantly reduce binary sizes.
Switch to boost::context for all platforms, almost.
Please try your platform by commenting out fcontext.s in common/CMakeLists.txt.
2013-12-30 11:53:12 -06:00
jean-pierre charras 612e2ddb4a fix bugs 1264240, 1264247, 1264239, 1264233 (clang report errors) 2013-12-29 16:12:27 +01:00
jean-pierre charras a455ab4a90 Fix bugs 1264236, 1264238, 1264254 2013-12-29 12:01:54 +01:00
jean-pierre charras 46e82e4e18 Move HitTestForCorner and HitTestForEdge code from class_zone to polygon/PolyLine.cpp, to avoid redundant code.
Fix bug 1264248.
Fix a very minor issue in RemoveTrailingZeros, for countries where the separator in floating numbers is a comma.
2013-12-29 11:15:06 +01:00
jean-pierre charras f9cc325bd8 Pcbnew, 3D viewer: fix incorrect position of multiline texts. 2013-12-27 08:24:36 +01:00
Dick Hollenbeck 517ca83fbc Hide m_galCanvas and m_galCanvasActive behind accessors. Fix DLIST concatonation API corner case. 2013-12-26 16:36:43 -06:00
Baranovskiy Konstantin 065966291c Fix worksheet multiple line text plotting bug. (fixes lp:1261906) 2013-12-23 11:25:13 -05:00
Marco Serantoni d6292053f3 [MacOSX] Fixing Zone visualization and removing not working code 2013-12-23 16:14:22 +01:00
Maciej Suminski 702a90addc Merge aligned text fix request. 2013-12-22 11:07:47 -05:00
Maciej Suminski 3dc9f295a4 Fixed cursor force position option. 2013-12-20 16:07:58 +01:00
Maciej Suminski fe5c5953fc Upstream merge. 2013-12-20 10:15:00 +01:00
jean-pierre charras 50f6186ebc Dxf export: fix an issue in exported arcs. Update libdfx.
Pcbnew:, libedit, Save lib as...: the new .pretty lib format is the default, instead of legacy .mod format. The legacy format is still selectable in the file selection dialog.
2013-12-19 12:33:57 +01:00
Maciej Suminski 84c496e138 Upstream merge 2013-12-19 11:15:27 +01:00
Baranovskiy Konstantin de65a7a1da Fix border and title block line thickness plotting bug. (fixes lp:1261899) 2013-12-18 13:11:15 -05:00
Maciej Suminski 32065b339a Added const modifiers where applicable (PICKED_ITEMS_LIST).
Added PICKED_ITEMS_LIST::FindItem().
2013-12-18 13:27:18 +01:00
Maciej Suminski 4a0407fb69 Removed some debug logs. 2013-12-18 12:46:18 +01:00
Wayne Stambaugh ca11fcb5c9 Pcbnew: change general properties dialog rotation angle to text edit control. 2013-12-17 16:38:20 -05:00
Wayne Stambaugh 8f6d69e57e Pcbnew: fix 45 degree rotation angle undo and global variable elimination. 2013-12-16 16:40:03 -05:00
Maciej Suminski 60e3b01ace Fixed drawing of rotated texts that are not horizontally center aligned. 2013-12-16 10:36:33 +01:00
Povilas Kanapickas 7f12513c7e Remove some uses of using namespace std. 2013-12-13 10:27:30 -06:00
Dick Hollenbeck 7ba078b620 remove USE_FP_LIB_TABLE code, make it the norm. Add lazy loading support to FOOTPRINT_INFO. 2013-12-12 10:01:03 -06:00
Dick Hollenbeck ed42092464 Add strtok_r.c 2013-12-10 17:52:51 -06:00
Dick Hollenbeck e842d711c6 FIX: make LEGACY_PLUGIN re-entrant. extern "C" strtok_r() put conditionally into libcommon. 2013-12-10 17:41:34 -06:00
Maciej Suminski 4940bff891 Commit merge request lp:197913. 2013-12-10 12:14:30 -05:00
Maciej Suminski 3701e13186 Commit merge request lp:197858 (fixes lp:1249736). 2013-12-10 08:43:04 -05:00
Dick Hollenbeck bb872dd583 spinners initial values and limits. 2013-12-09 16:39:12 -06:00
Wayne Stambaugh 74e43871d4 Fix frame perspective configuration entry name in basicframe.cpp. 2013-12-09 15:27:49 -05:00
Dick Hollenbeck 3582df6a0b molding mercury. 2013-12-09 13:06:47 -06:00
Dick Hollenbeck dba4fccec9 *) Change FOOTPRINT_LIST::ReadFootprintFiles( FP_LIB_TABLE*, const wxString*)
To use multiple working threads.  This entailed adding KiCad typedefs:
*) Add typedefs for MUTEX and MUTLOCK which mask the actual choices for the project.
*) Add FOOTPRINT_LIST::DisplayErrors( wxWindow* ) which is a single strategy for
   showing aggregated load errors.  Although what's there is only scaffolding
   and needs a volunteer who knows HTML pretty well.
*) Ensure all callers of ReadFootprintFiles() use the new DisplayErrors() function.   
*) Push utf8.cpp and utf8.h into common library for open use.
2013-12-09 12:09:58 -06:00