442 lines
20 KiB
Plaintext
442 lines
20 KiB
Plaintext
KiCad ChangeLog 2009
|
|
====================
|
|
|
|
Please add newer entries at the top, list the date and your name with
|
|
email address.
|
|
|
|
2009-apr-06 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
|
|
================================================================================
|
|
++common:
|
|
overbar patch merged in drawtxt.cpp and mainly in eechema/class_pin.cpp
|
|
some cleanup and some compiling problems fixed.
|
|
|
|
++eeschema:
|
|
changed dialog_eeschema_config.cpp to use wxFormBuilder to create
|
|
the corresponding equivalent dialog in dialog_eeschema_config_fbp.cpp
|
|
|
|
2009-apr-05 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++All
|
|
* Removed all instances #ifdef eda_global, COMMON_GLOBL, and MAIN in order
|
|
to unobfuscate global variables.
|
|
* Moved global variables common to all applications into common.cpp.
|
|
* Moved global variables common to Pcbnew, Gerbview, and Cvpcb into
|
|
pcbcommon.cpp.
|
|
* Create pcbcommon library to prevent compiling shared PCB drawing object
|
|
files multiple times.
|
|
* Replaced round() with wxRound and eliminate MSVC specific implementation.
|
|
* Moved project configuration files into the application class.
|
|
* Moved editor name global variable into the application class.
|
|
* Created load and save settings methods for basic frame class and begin
|
|
putting global variables in the class where they are used.
|
|
* Start replacing obsolete wxWidgets file functions and redundant Kicad
|
|
file name manipulation code with wxFileName.
|
|
* Initial library search path implementation using wxPathList.
|
|
* Define correct wxFileDialog wild cards.
|
|
* Apply patch Fix typo in about box to keep MAC folks happy.
|
|
* Lots of general code clean up, spelling error fixes, and uncrustification.
|
|
* Renamed Affiche_Status_Box to UpdateStatusBar.
|
|
++EESchema
|
|
* Defined Load() method so library file drawing objects can load themselves.
|
|
* Defined GetBoundingBox() method so library file drawing objects can
|
|
calculate their own bounding box.
|
|
* Fix arc library drawing object bounding box calculation.
|
|
* Remember last import and export library path in library editor.
|
|
* Add new library search path support.
|
|
++Kicad
|
|
* Eliminate the one giant case statement to rule them all command event
|
|
handler and create per command event handlers.
|
|
++CvPcb
|
|
* Add new library search path support.
|
|
* Add message dialogs to prompt user of library file load errors instead of
|
|
failing silently.
|
|
* Fix NULL pointer bug were display frame would crash CvPcb when
|
|
WinEDA_DisplayFrame::Get_Module() could not find foot print module.
|
|
++PcbNew
|
|
* Add new library search path support.
|
|
* Add message dialogs to prompt user of library file load errors instead of
|
|
failing silently.
|
|
|
|
|
|
2009-mar-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
added BOM generator (in postprocess menu)
|
|
|
|
|
|
2009-mar-28 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
|
|
================================================================================
|
|
++All
|
|
code cleanup in project_config.cpp.
|
|
Now parameters common to all projects are saved on exit.
|
|
(they are usally options like colors, draw options ...)
|
|
|
|
++pcbnew:
|
|
added option to show or not netnames on pads and tracks
|
|
|
|
|
|
2009-mar-23 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
in DRC: added test pads to holes.
|
|
++Al:
|
|
minor changes.
|
|
|
|
|
|
2009-mar-16 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
Fixed:
|
|
bug that crashes pcbnew when removing all footprints
|
|
(in connection calculations, pointers to pads not reset)
|
|
|
|
bug that crashes pcbnew when filling a zone
|
|
if a module has a trapezoidal pad
|
|
(trapezoidal pads are not yet implemented in zone filling,
|
|
they are now calculated as rect shape (todo: a better handling) )
|
|
|
|
|
|
2009-mar-12 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++eeschema:
|
|
Added: option to print ALL users fields in B.O.M.,
|
|
so if more than 8 fields, they are printed. (issue 2680640)
|
|
|
|
++pcbnew:
|
|
Added 5 metric grids (1mm, 0.5mm 0.25mm 0.2mm and 0.1mm) in default grid list.
|
|
Minor bug in drill map creation (PS format) fixed
|
|
|
|
2009-mar-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
fixed: a bug that can delete an existing zone after creating a new zone,
|
|
if the new zone contains this existing zone
|
|
This is a DRC error, buf can be temporary possible when creating complex zones
|
|
|
|
2009-mar-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
++gerbview:
|
|
print,plot: error message displayed when no layer selected.
|
|
|
|
|
|
2009-Mar-5 UPDATE Vesa Solonen <vesa.solonen@hut.fi>
|
|
================================================================================
|
|
++pcbnew:
|
|
bug fix in zones_convert_brd_items_to_polygons.cpp:
|
|
Fixes "thermal stub bleed" in zone fill. Small (compared to thermal width) pads are handled properly now.
|
|
|
|
|
|
2009-mar-05 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
bug fix in move_or_drag_track.cpp:
|
|
function SortTrackEndPoints() broken: does not handle pointers to pads for start and end and flags relative to these pointers
|
|
MergeCollinearTracks( ) broken, because it merge segments having different width or without any connectivity test.
|
|
2 collinear segments can be merged only in no other segment or vais is connected to the common point
|
|
and if they have the same width. See cleanup.cpp for merge functions
|
|
These functions break the connectivity calculations.
|
|
So they are temporary disabled (see my comments in these functions)
|
|
bug fix in Marque_Une_Piste(): the last segments created can be see as part of the flagged track:
|
|
so delete track (or edit track width) deletes the track and some others segments (last created)
|
|
bug fix 2660689 Unconnected pads in RC4. Also fixed some no deletion of the old track when creating a new track
|
|
|
|
|
|
2009-Feb-25 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++EESchema
|
|
* Fixed hot key bug that caused undo and redo events in the library editor
|
|
to be passed to the schematic frame. Fixes bug #1896790.
|
|
* Fixed hot key bug that allowed new wire to be placed during block move
|
|
causing a manage cursor message box to pop up.
|
|
* Fixed hot key bug that allows an object in block to be deleted during
|
|
a move or drag operation.
|
|
|
|
|
|
2009-Feb-25 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++pcbnew
|
|
* Markers were not shown when on top of a high-lighted pad. Moved highlight
|
|
drawing function into class BOARD and out of Frame. Call BOARD::DrawHighLight() from
|
|
within BOARD::Draw() to fix.
|
|
* Gerbers were not generated if you had EDGE_MODULEs on a copper layer, such as in
|
|
a MuWaveBasicShape. The line thickness was not being put into the gerber via a DCODE.
|
|
These gerber files were bad, and geda gerbv would also complain.
|
|
* A few window titles were not conformant with UIpolicies.txt.
|
|
* You could not load a *.pro file from another project into PCBNEW if your current
|
|
project had none. Changed wildcard mask.
|
|
* Deleted gen_self.h and moved that code into muonde.cpp
|
|
|
|
|
|
2009-Feb-24 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++pcbnew
|
|
* dialog boxes calling OnInitDialog are flashing because these functions
|
|
change the size of controls that are already on screen. This leads to
|
|
an annoying resize operation. So I renamed OnInitDialog(event) to
|
|
void init() and call it from the constructors. Did this for
|
|
dialog_general_options.cpp and dialog_display_options.
|
|
* dialog_general_options was not setting g_MagneticPadOption and g_MagneticTrackOption
|
|
|
|
|
|
2009-Feb-24 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
bug fix:
|
|
2628615 Error message after right click into zone
|
|
2625434 Crash after trying to edit a line/drawing
|
|
++cvpcb
|
|
fix: 2625090 CVpcb - language selection
|
|
|
|
|
|
2009-Feb-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++gr_basic.cpp
|
|
Added: Function ClipAndDrawFilledPoly()
|
|
Used to clip a polygon and display it as Filled Polygon
|
|
uses the Sutherland and Hodgman algo to clip the given poly against a rectangle.
|
|
This rectangle is the drawing area
|
|
this is useful under Linux (2009) because filled polygons are incorrectly drawn
|
|
if they have too large coordinates (seems due to integer overflows in calculations)
|
|
Could be removed in some years, if become unnecessary.
|
|
|
|
|
|
2009-Feb-17 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++pcbnew
|
|
Loading a module into the module editor was changing the layer count
|
|
of a loaded board. This is because void WinEDA_ModuleEditFrame::Process_Special_Functions( wxCommandEvent& event )
|
|
calls bool WinEDA_BasePcbFrame::Clear_Pcb( bool query )
|
|
which then sets the global g_DesignSettings.m_CopperLayerCount = 2;
|
|
This is terrible.
|
|
We need a layer count in each board, not as a global. For now, comment out the assignment in initpcb.cpp.
|
|
|
|
|
|
2009-Feb-17 Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
Dialog track options redesigned with wxFormBuilder
|
|
Alt via drill renamed Specific via drill in dialog and popup menu.
|
|
Added tips in dialog.
|
|
|
|
|
|
2009-Feb-09 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++eeschema
|
|
Changed dialog_edit_label so that it is UIpolicies.txt compliant. Proper case
|
|
on window titles, resizeable dialog border, minimum text width handling.
|
|
|
|
|
|
2009-Feb-7 Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++All:
|
|
change grid size type from integer to double (using wxRealPoint insteed of wxSize)
|
|
This is mandatory in Pcbnew to handle metric user grids without error
|
|
(was unusable before, using integer grid size).
|
|
A lot of footprints uses not metric grid.
|
|
refinements for user grid (mainly in read/write config).
|
|
|
|
|
|
2009-Feb-06 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++pcbnew
|
|
added "cutout" from a ZONE_CONTAINER capability to the SPECCTRA export.
|
|
added "netless zone" support to SPECCTRA export.
|
|
|
|
|
|
2009-Feb-6 Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
Added a forgotten contributor (Tim Hanson) to kicad contributor list.
|
|
|
|
++pcbnew:
|
|
Zoom factors in 1.5 progression, and limited to 18 values
|
|
(near to to Wayne Stambaugh's changes: 15 values are not enought for pcbnew)
|
|
removed minor problems in zoom box selection (removed blank line).
|
|
Added user grid selection in modedit and refinements when user grid is selected.
|
|
|
|
|
|
++eeschema:
|
|
Zoom factors in 1.5 progression, and limited to 15 values according to Wayne Stambaugh's changes.
|
|
|
|
2009-Feb-05 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++All
|
|
* Change CMakeList.txt so that all PCB object classes that do not need built
|
|
separately for pcbnew, gerbview, and cvpcb only get built once and added
|
|
to the common library.
|
|
* Override all classes derived from WinEDA_BasePcbFrame so that the source
|
|
code file basepcbframe.cpp only gets compiled once and added to the common
|
|
library.
|
|
* Prevent cursor movement keys from moving outside of client area by
|
|
automatically scrolling the drawing.
|
|
|
|
|
|
2009-Feb-4 UPDATE Vesa Solonen <vesa.solonen@hut.fi>
|
|
================================================================================
|
|
++pcbnew:
|
|
++eeschema:
|
|
Zoom factors in 3th root series of 2. So two intermediates between half/double scale.
|
|
|
|
2009-Feb-04 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++All
|
|
* Refactor header files to reduce the number of files that need recompiled
|
|
when making changes to base classes.
|
|
* Move sine and cosine look up tables from trigo.h to trigo.cpp to avoid
|
|
multiple recompiles.
|
|
|
|
|
|
2009-feb-01 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++All:
|
|
change filename drawpanel_wxstruct.h to class_drawpanel.h
|
|
and move class BASE_SCREEN description from drawpanel_wxstruct.h to a new file: class_base_screen.h
|
|
minor enhancement for window zoom command.
|
|
refinements in 3D zones drawing.
|
|
|
|
2009-jan-31 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++All:
|
|
Print functions and display zoom level modified to use the new zoom implementation
|
|
Comments added in some functions.
|
|
Code cleaning
|
|
some bugs fixed.
|
|
Added contributors to list in about Kicad.
|
|
|
|
2009-Jan-29 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++All
|
|
* Replace zoom implementation with a more flexible ( and hopefully useful )
|
|
design.
|
|
* Removed gr_basic.h from fctsys.h so that the entire project doesn't get
|
|
rebuilt unnecessarily.
|
|
|
|
|
|
2009-Jan-29 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++all
|
|
common.c added EnsureTextCtrlWidth()
|
|
++eeschema
|
|
* dialog edit component in schematic: make sure chipname text control is wide
|
|
enough to handle unusually long chip names.
|
|
* Retain and re-use user's desired dialog edit component window size.
|
|
Did not have time to look at dialog edit component in library.
|
|
|
|
|
|
2009-Jan-27 UPDATE Vesa Solonen <vesa.solonen@hut.fi>
|
|
================================================================================
|
|
++pcbnew:
|
|
Zone arc approximation starts with half increment offset from v/h for pads and vias
|
|
to get more fill space between rows.
|
|
|
|
2009-Jan-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++pcbnew:
|
|
Found why remove unused thermal stubs fails sometimes:
|
|
Only the first filled area in a zone was tested.
|
|
Solved.
|
|
|
|
2009-Jan-18 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++All
|
|
* Replace Kicad file history implementation with wxFileHistory.
|
|
* Laid groundwork for search paths using wxPathList in EDA_Appl.
|
|
* Made ReCreateMenuBar actually recreate the menu bar. Now language updates
|
|
to menus can be changed without restarting program.
|
|
* Lots of general housekeeping, simplification, and code beautifying.
|
|
++EESchema
|
|
* Fix zoom and pan bug in library viewer panel due to incorrect DrawPanel
|
|
rectangle.
|
|
* Add zoom accelerator keys to library viewer (works in GTK, not Windows).
|
|
* Add Postscript header to new print dialog so Linux build works.
|
|
++PcbNew
|
|
* Add Postscript header to new print dialog so Linux build works.
|
|
|
|
|
|
2009-Jan-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++All:
|
|
Cleaned code in print dialogs.
|
|
They are now specific to eeschema and pcbnew.
|
|
Gerbview uses pcbnew dialog.
|
|
The code is now a lot more easy to understand.
|
|
|
|
|
|
2009-Jan-15 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++Pcbnew:
|
|
Added: patch from Rok Markovic (rok@kanardia.eu) to remove unused stubs in thermal pads
|
|
Modified: print boards when printing in color mode layers on one sheet:
|
|
now printed in OR mode like drawings on screen
|
|
Also in SVG mode, but OR mode seems not work very well in SVG mode (tested with inkscape).
|
|
|
|
|
|
|
|
2009-Jan-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++Pcbnew:
|
|
Added: print SVG format.
|
|
SVG print/plot function uses WRITE modeinsteed of OR mode as graphic mode.
|
|
todo ? uses OR graphic mode with black background color (wait and see)
|
|
++eeschema:
|
|
Code cleanup for Print SVG format, and used wxFormBuilder in SVG print dialog
|
|
|
|
|
|
2009-Jan-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++Pcbnew:
|
|
Calculations to create filled areas in a zone modified and uses 2 pass:
|
|
1 - filled areas are calculated with pads in zone.
|
|
2 - If thermal shapes are wanted, they are added (i.e. copper removed after ).
|
|
Seen comments in zones_convert_brd_items_to_polygons.cpp
|
|
The initial method was calculate filled areas in one pass.
|
|
With the 2 pass calculation, the calculation time is more expensive but:
|
|
- Kbool seems now works correctly in cases where the one pass way does not work
|
|
- Thermal reliefs can have a better shape (todo..) because when calculating them, the filled
|
|
areas are known (this was not the case in one pass way)
|
|
|
|
|
|
2009-Jan-08 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++Eeschema:
|
|
Print and plot functions now properly prints all sheets in a complex hierarchy
|
|
plot files created have now a new filename in order to be compatible with complex hierarchies
|
|
|
|
|
|
2009-Jan-07 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++Eeschema:
|
|
Print function now properly prints all sheets in a complex hierarchy
|
|
Note: plot functions are not updated and do not plot all sheets.
|
|
|
|
|
|
2009-Jan-07 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
|
|
================================================================================
|
|
++all
|
|
* Don't pan or zoom on mouse wheel events when the cursor is not in the
|
|
drawing area.
|
|
* Reduce all zoom code to a single zoom command handler.
|
|
* Eliminate redundant zoom command identifiers.
|
|
* Move pop up zoom command handler from DrawPanel to DrawFrame.
|
|
* Change hot key zoom handlers to use command events.
|
|
* Added DrawFrame event table to replace COMMON_EVENTS_DRAWFRAME macro.
|
|
* Added locale path relative to binary path for development purposes.
|
|
* Minor code clean ups and duplicate header removal in files that were
|
|
updated.
|
|
|
|
|
|
2009-Jan-04 UPDATE Dick Hollenbeck <dick@softplc.com>
|
|
================================================================================
|
|
++all
|
|
wxPcbStruct.h: made m_Pcb private, added GetBoard(). Am considering
|
|
putting each gerber layer into its own BOARD.
|
|
|
|
|
|
2009-Jan-02 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
|
|
================================================================================
|
|
++Eeschema:
|
|
Code cleaning.
|
|
LibDrawPolyline uses now std::vector<wxPoint> to handle corners.
|
|
DrawPolylineStruct uses now std::vector<wxPoint> to handle corners.
|
|
|