summaryrefslogtreecommitdiff
path: root/Documentation/changelogs/CHANGELOG-2009.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/changelogs/CHANGELOG-2009.txt')
-rw-r--r--Documentation/changelogs/CHANGELOG-2009.txt1013
1 files changed, 1013 insertions, 0 deletions
diff --git a/Documentation/changelogs/CHANGELOG-2009.txt b/Documentation/changelogs/CHANGELOG-2009.txt
new file mode 100644
index 0000000..fbdae4f
--- /dev/null
+++ b/Documentation/changelogs/CHANGELOG-2009.txt
@@ -0,0 +1,1013 @@
+KiCad ChangeLog 2009
+====================
+
+
+2009-Dec-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Added option to use some usual Gerber files extension, depending on the layer
+ Do not allow in plot menu to output files for non enabled layers.
+++Kicad and Gerbview
+ Display Gerber files that use usual files extension (in tree project or dialog files)
+ (See http://en.wikipedia.org/wiki/Gerber_File)
+
+2009-Dec-20 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ Renamed dialog_layers_setup* files.
+ Got rid of the header file since there was only one file including it.
+ Auto-position the column titles based on flexgridsizer column widths.
+ Added m_TitlePanel with contrasting background color (whose color value may not
+ be ideal for all platforms).
+
+
+2009-Dec-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ Finished the Layer Setup Dialog. I assumed that the new layer order will
+ be in place soon. It works fine now, but the layer order is probably
+ misleading, since it does not reflect the current stackup but rather the
+ future stackup. I dropped support for a single layer board. The minimum
+ is two copper layers. Avoid the side you don't want anything on.
+
+ Within a month I should have the layer visibility and selection widget
+ in place.
+
+
+2009-Dec-10 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++all
+ * Factored out the DSNLEXER class so it can be re-used more generally. The
+ constructor takes a keyword table, so it can be used for arbitrary DSN
+ syntax files of your own chosing. Simply create an enum {} with all your
+ unique tokens in it. Then create a KEYWORD table. See SPECCTRA_DB::keywords[].
+ The reason you want an enum is to give the C++ debugger better type information
+ so it can show symbolic integer symbols.
+ * Factored out common richio.cpp and richio.h
+ which is what DSNLEXER uses.
+ * Fixed some minor issues with reading circuit descriptor from a *.dsn file.
+
+
+2009-Dec-6 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew & gerbview
+ * Moved ReturnLayerName() to static BOARD::GetDefaultLayerName() and migrated
+ to a Specctra DSN compatible default layer naming scheme:
+ Component becomes Front, Copper becomes Back.
+ * set_color.h: Cmp becomes Front, Cu becomes Back.
+ * D_PAD::DisplayInfo() changed to use actual copper layer names.
+ * more layer setup dialog work, moved all programmatic wxControl instantiation
+ into the wxFormbuilder environment, but this is fraught with danger:
+ wxFlexGridSizer used the tallest control to establish the row heights, so
+ be careful about changing control borders in the scroll panel. The vertical
+ size can explode since just a couple of pixels times the number of rows
+ is substantial. Currently I am setting a 5 pixel border only left, top, and right
+ but not bottom.
+ * Set copper layer count is back in place as a hack until I can get the enabled
+ layer bit map fully operational.
+
+
+2009-Dec-3 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ Make the source file to the specctra freerouter help panel be html, not *.h
+ This makes it easier to preview the page in a browser. Then autogenerate
+ the *.h file from the html using a CMake script.
+
+2009-Dec-2 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Compiler warning, object name, bug, and string fixes.
+* Fixed EESchema options dialog focus bug so escape key now works in GTK.
+* Rename schematic objects for improved readability.
+* Fixed GCC compiler warnings in plot code.
+* Added paragraph in UIpolicies.txt about setting dialog box sizes.
+* Lots of message box string clean up.
+
+2009-Nov-05 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ control of masks clearance: Pad Editor Dialog rewritten to handle mask clearances
+ and a locad Net clearance
+
+2009-Nov-5 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++all
+ CMakeLists.txt support for AUI.
+
+
+2009-Nov-04 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Added: control of masks clearance
+ - Solder mask clearance can be now defined at footprint and pad level
+ - Solder paste clearance can be now defined as a global value
+ and also at footprint and pad level.
+ The clearance is defined by a constant value and a value proportional to the pad size.
+ The final value is the sum of the 2 partial values
+ Note: this is a work in progress:
+ currently, the pad dialog is not finished and does not
+ have an option to enter the mask values
+ Planned:
+ option to define a net clearance at pad level and footprint level,
+ as an alternate value to the Netclasses values.
+ this option could be useful to create fiducials, and for very small footprints.
+
+
+2009-Nov-1 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ * Added exporting of netclass vias to specctra_export.
+ * DIALOG_DESIGN_RULES now remembers its last selected TAB and screen position and
+ window size, and its grid columns are automatically expanded to fit the
+ column titles. Remembering screen position and size allows someone with
+ multiple monitors to have a given window always come up on the monitor last chosen
+ for it.
+
+
+2009-oct-30 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Replace library editor pin properties dialog box and minor update.
+* Replaced library pin properties dialog with wxFormBuilder version.
+* Remove DialogBlocks version of pin properties dialog.
+* Add pin properties dialog support code to pin object.
+* Create single event handler for displaying pin properties dialog.
+* Remove left over DialogBlocks project file for annotate dialog.
+* Fixed escape key bug in library editor new component dialog.
+* Add GetUnitsLabel() to get human readable units for dialog labels.
+* Translate French comments in all modified files.
+* Some minor clean up of Doxygen comments.
+
+2009-oct-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Rewrite the GUI relative to the tracks widths and vias diameters and drills selection
+ and edition, for compatibility with new netclass approach.
+ Now vias dimensions are defined by their diameter and drill values
+ (This is also a simpler an better way than the old one that considers
+ via diameters and drill values as independant parmeters)
+ When set a via to a "custom" value, the diameter and the drill values are set.
+ (of course one can use the drill defualt value of the netclass)
+ So the via hole edit options (in popup menu) does not exist no more.
+ The global tracks widths and vias diameters and drills changes are now
+ accessible by a specific dialog frame.
+
+
+2009-oct-27 UPDATE Jerry Jacobs <xor.gate.engineering@gmail.com>
+================================================================================
+++common
+ Doxygen output directory changed to Documentation/doxygen
+ Cleanup of HOTKEY IDs
+ Creation and cleanup of hotkey submenu
+
+++misc
+ Moved pcbcfg.cpp to pcbnew_config.cpp
+ Moved eeconfig.ccp to eeschema_config.cpp
+ Fixed typos
+
+2009-oct-23 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Rework on print function: fixed the fully broken print function in Modedit
+ and better code.
+ Removed the display vias option tool in Modedit and Gerbview left toolbar,
+ because this option has no sense here.
+
+2009-oct-21 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ * Work on Net Classes: tracks and vias sizes, vias drill
+ come from netclass netclasses values. Global values removed.
+ * Added for DRC drill vias and microvias min drill value
+
+2009-oct-20 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Replace component library editor draw item dialog box.
+* Created new component library editor draw item dialog box with
+ wxFormBuilder.
+* Removed previous DialogBlocks version of the draw item dialog box.
+* Removed some additional global variables used in component library
+ editor.
+* Add IsFillable() method to draw item base object.
+
+wxWidgets 2.9 string fixes and other minor updates.
+* Replace all known instances of (const wxChar*) casts to GetChars() for
+ wxWidgets 2.9 compatibility.
+* Cleaned up get component dialog so last part gets saved on wild card
+ selections.
+* Remove redundant schematic component drawing code.
+* Added SCH_COMPONENT constructor to create new component from library
+ component object.
+* Add message panel helpers to WinEDA_DrawFrame and update old message
+ panel access code.
+* Using library viewer to add component to schematic now respects unit
+ and body style selection.
+
+2009-oct-14 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Fix save last grid size and other minor updates.
+* Create single event handler for grid size events.
+* Fix all frame windows to use new grid size event handler.
+* Use offset relative to ID instead of ComboBox index to save last grid size.
+* Move last grid size load/save setting into WinEDA_DrawFrame.
+* Add equality and assignment operators the GRID_TYPE.
+* Add current grid helper methods to BASE_SCREEN.
+* Add GetPins helper to LIB_COMPONENT to replace GetNextPin where applicable.
+* Add AppendMsgPanel helper to WinEDA_DrawFrame.
+* Improve rounding for display of coordinates when millimeter units are selected.
+
+2009-oct-01 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+* Component library viewer restores state between uses.
+* Fixed automatic zoom calculations in library viewer.
+* Make library entry list dialog restore previous selection.
+* Fix bounding box calculation for vertical field and text draw objects.
+* Changed library draw object comparison to test for greater and less than.
+* Initial preparation for merging separate library component draw item lists.
+
+
+2009-sept-29 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+* Eliminate external direct manipulation of component draw item pointer.
+* Add draw item remove, add, and locate methods to library component object.
+* Remove redundant locate pin, field, and draw item code.
+* Fix add new pin drawing bug that left initial pin draw in place.
+* Improved best zoom calculations for small components.
+* Library component bounding box calculation now includes fields.
+* Removed unnecessary header file "libcmp.h".
+* Fixed potential locate draw item bug in library editor hot key handler.
+
+2009-sept-27 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ * make pcbnew compatible with last changes
+ (Delete base screen in WinEDA_DrawFrame destructor to prevent potential memory leak.)
+ * Starting complementary work on Net Classes (moving target)
+
+2009-sept-25 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Component library editor improvements and minor bug fixes.
+* Component library objects renamed for improved readability.
+* Fields now move when selected in library editor.
+* Add copy constructor to all library draw and library component objects.
+* Added copy constructor to EDA_BaseStruct.
+* Delete base screen in WinEDA_DrawFrame destructor to prevent potential memory leak.
+* Fixed memory access bug when replacing and adding a component to library.
+* Moved library component block manipulation code into component object.
+* Removed all of the global variables used by the library editor main window object.
+* The usual code cleaning and refactoring.
+
+2009-sept-22:
+Command ID refactoring and other minor improvements.
+* Split out application specific command IDs to prevent unnecessary rebuilding.
+* Eliminate duplicate menu and tool bar command IDs.
+* Split component library editor and viewer definitions to separate header files.
+* More component library and document file merge code.
+* A bunch of minor string readability and consistency fixes.
+
+2009-sept-18:
+Component library object and other minor improvements.
+* Create static component library methods to manage library list.
+* Rename component library, component, and alias objects to more readable name.
+* Use pointer to component instead of root name to prevent redundant library searches.
+* Add append message helper to message panel that calculates string length.
+* Initial ground work for merging library and library document files.
+* Improved component library file load error checking.
+* Minor component library editor improvements.
+
+
+2009-sept-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Speed up ZONE_CONTAINER::Copy method
+ Speed up NETINFO_ITEM* BOARD::FindNet( const wxString& aNetname ) by using afast binary search
+ Switch to kbool V2.1. This version solves others problems in zones calculations.
+ Adding an other way to generate thermal shape; DO NOT USE: this is for kbool tests only
+ (I am thinking some bugs are remaining, so i am always working on kbool tests.
+ Klaas Olwerda is supporting me)
+
+
+2009-sept-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ moved copper layers properties (layers couns anf layers names) from Design rules
+ to a specific dialog.
+ This must be seen as a TEMPORARY work, until a volunteer creates a better dialog box,
+ because there is currently no other way to change copper layers names.
+
+2009-Sep-10 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ Finished initial NETCLASS work, along with UI. Put NETCLASS support
+ into DRC. Fixed DRC dialog so progress during DRC is sensible and visible.
+ The specctra_export probably still needs a little work regarding VIAs.
+ I compiled wxformbuilder from source, so you may need to upgrade to
+ load my *.fbp files.
+
+ Jean-Pierre @ todo: pcbnew/zones_test_and_combine_areas.cpp needs to
+ use NETCLASS and not g_DesignSettings.m_TrackClearance
+
+
+2009-sept-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Work on undo/redo in pcbnew finished.
+ Switch to kbool V2.0. This version solves some problems in zones calculations but not all.
+ The Kbool's author, Klaas Holweda, is still working on these problems
+ Thanks to Klaas
+
+
+2009-aug-23 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Work on undo/redo in pcbnew almost finished.
+
+2009-Aug-16 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ * first of my work on NETCLASSes, more to come.
+ wrote: BOARD* BOARD_ITEM::GetBoard(), int BOARD_CONNECTED_ITEM::GetClearance( BOARD_CONNECTED_ITEM* ),
+ rewrote: classes NETCLASS, NETCLASSES, BOARD::SynchronizeNetsAndNetClasses(),
+ added: NETCLASS::m_ViaDrillSize, NETCLASS::m_Description. Removed netname from
+ EQUIPOTs in *.brd file (were redundant with NETCLASSes in *.brd file). NETCLASSes
+ now follow EQUIPOTs in *.brd file.
+ NETs and NETCLASSes are linked by pointer from class NET.
+ BOARD::SynchronizeNetsAndNetClasses() will validate pointers, NETs and NETCLASSes.
+ * Pay particular attention to the new:
+ int BOARD_CONNECTED_ITEM::GetClearance( BOARD_CONNECTED_ITEM* aItem ) const
+ which considers two netclasses and finds the largest distance from the two
+ involved.
+ * I would love to see class NETINFO_ITEM renamed to NET.
+
+
+2009-Aug-6 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ MsgPanel is dynamically sized based on system gui font. Before this fix
+ the window height was hardcoded and was too small on systems with large
+ fonts. See WinEDA_MsgPanel::GetRequiredHeight();
+
+
+2009-aug-08 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Work on undo/redo in pcbnew in progress.
+ SEG_ZONE is now deprecated.
+ When a zone is fille by segment, the ZONE_CONTAINER handles these segments
+
+2009-july-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Starting work on undo/redo in pcbnew.
+ Currently, undo redo commands are only delete one item (and only for some items)
+
+
+2009-july-25 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++all
+ Rework on undo/redo and block functions
+ Better and simpler coding of block and undo/redo functions
+ The goal is to have the same functions in eeschema and pcbnew.
+ and have a full undo/redo in pcbnew.
+
+2009-july-18 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ First work about net classes. This is a work in progress and a moving target.
+ Manual routing and DRC do not use yet this feature
+
+
+2009-Jul-13 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ added support to specctra import for the <structure_out> descriptor.
+ <route_descriptor> had confused <structure_descriptor> with the <structure_out_descriptor>
+ The fix facillitates round tripping from the TOPO-R router.
+
+
+2009-july-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Eeschema:
+ Enhanced netlist creation and ERC tests for component having multiple parts per package
+ Connecting power pins of all parts is no more needed.
+ Usually, these components have in schematic duplicated power pins.
+ Op amps having 4 parts have also 4 duplicated pins per power input,
+ and therefore the user must place 4 power symboles per physical power pin
+ Now Only one power is needed (now eeschema search for a connected pin
+ between duplicated power pins)
+ Note this is a work in progress because the ERC does not check if these duplicate
+ are connected to the *same* net.
+
+2009-july-06 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++All:
+ Use a common class for markers in pcbnew and eeschema:
+ created a basic class called MARKER_BASE
+ class DRC_ITEM is also common to pcbnew and eeschema
+ class MARKER (in pcbnew) and class MARKER_SCH (eeschema) are derived
+ from this basic class.
+ The main goal is to use a common class for pcbnew and eeschema to handle
+ errors and to have similar dialogs
+ and have more comprehensive ERC messages errors in eeschema
+ This is a work in progress
+
+
+
+2009-july-05 UPDATE Jerry Jacobs <jerkejacobs@gmail.com
+================================================================================
++ Closing bug 2802441, No single error messages any more, 2009-06-07 over2there.
+ Fixed this both in eeschema and cvpcb, for now printing wxstring in a
+ messagebox. Should make a nice textctrl dialog.
++ Added cvpcb directory to Doxyfile
+
+2009-june-19 UPDATE Jerry Jacobs <jerkejacobs@gmail.com>
+================================================================================
+Added Hauptmech patch.
+I Updated doc to match this patch.
+
+++Pcbnew:
+> * Board thickness in the 3D view can be set in *.pcb files (hand edit)
+> * Hotkey files bug: incorrect file extension as default in some open/save dialogs.
+> * Hotkeys made available for pcbnew [add track] and [add module] tools.
+> * Drag and Move hotkeys extended to drag tracks and move nodes/vias when the [add track] tool is active.
+> * Show/Hide Invisible Text button added to lefthand menu
+> * Dropdown list of clearance history available next to trackwidth history.
+
+
+2009-june-18 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Added: in DRC tests: tests for vias min size and tracks min width.
+ Added: Option to show the via area while creating a new track.
+ Useful in compact designs to know how to place a via during track creation.
+
+2009-june-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Eeschema:
+ Added text justification for graphic texts in libedit
+ Minor bug 2803506 fixed (error when mirroring bus entries)
+ Some code cleaning.
+ Better locating algo for arcs in libedit
+
+2009-may-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Eeschema:
+ Changes about thickness of lines in draw/plot functions.
+ Now there is only one thickness parameter for plot and print.
+ This is now the default thickness value,
+ used for items that have a line thickness = 0,
+ and NOT the minimum thickness.
+ reasons:
+ - Obviously, differents parameters to draw and plot are bad.
+ (what you plot is NOT what you see)
+ - small texts are not readable with an minimum thickness value
+ that could be good for others items.
+
+
+2009-may-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++All:
+ Cleaned and optimized code about new hershey fonts and bold texts handling.
+ Bold texts use now the same font as normal texts.
+ Only the pen size used to draw them is bigger.
+ - The max pen size allowed depending on texts sizes is now tested
+ when loading boards and modules, and clamped if too large.
+
+
+
+2009-may-28 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Finished code cleaning about ratsnets calculations and handling
+ Obscure code removed ( I hope)
+ Better names for some members of BOARD class.
+
+2009-may-24 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ clean code in ratsnet calculations (work in progress)
+ The old code was very difficukt to understand, and was sometime very ugly.
+ Mainly, the list of nets (RATSNEST_ITEM class, formerly EQUIPOT class)
+ are now handled in a std::vector, and not a linked list.
+ This is better, because nets identifiers for pads and tracks are a number called netcode.
+ now, this is the index of the given net in this list, and the code to find a net given by its netcode
+ is very fast.
+
+
+2009-may-12 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++All:
+ Rework on TEXTE_PCB, SCH_TEXT and EDA_TextStruct classes.
+ Code seriously cleaned, obscure and duplicated code removed,
+ and some oddities removed ( like different .m_Orient values in eeschema and
+ pcbnew, for the same text orientation )
+ Multiline texts (in comments and Pcb texts) are now supported.
+ In pcbnew text justifications could work (but not yet used and tested)
+
+
+2009-may-01 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew:
+ Better dialog options for zones on technical layers.
+ Zones on silk screen filled with segments are now plotted
+ Better support of multiline texts (work in progress)
+
+2009-apr-25 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ Eeschema:
+ When annotating: tests and repairs bad (duplicated) time stamps.
+ Can be found in old schematics or converted from others tools ...
+
+2009-apr-24 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Fixed: fully broken netlist import from eeschema when using time stamp.
+ (normal operation worked fine)
+ Added: alawys print diags in dialog window when reading a netlist
+
+2009-apr-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ALL:
+ Code clarification: There were 3 functions to display info:
+ - DisplayInfo (displaying a message info)
+ - class members DisplayInfo and Display_Infos doing the same thing
+ (and sometimes these 2 functions were existing in some classes)
+ This was *very* confusing and created minor bugs
+ (info in eeschema was not always displayed, because the "bad" function was used)
+ Now DisplayInfo is renamed DisplayInfoMessage
+ Ann class member DisplayInfo is used in all classes ( replaces all Display_Infos instances)
+
+2009-apr-12 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++eeschema:
+ Default libraries path are now differents for pcbnew and eeschema (as it do)
+ Fixed: bad library search path for schematic component docs (docs were not found)
+ Added: display actual lib paths in eeschema lib config dialog.
+
+ These next fix give the same behavior than "old" version
+ Use relative paths in libraries and doc filenames when possible
+ i.e when a file is found in a sub path in a default path
+ (very important for Windows/linux/mac compatibility of projects and their configs)
+
+ TODO: allows user to add paths in list. Currently the user path for lib is broken
+ (but the new code could allow the user to add more than one user path)
+
+ TODO: do the same for pcbnew and cvpcb
+
+2009-apr-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++eeschema:
+ - Viewlib: listboxes for lib or component selection are now resizable
+ - library cache name changed from <root_name>.cache.lib to <root_name>-cache.lib
+ Needed by the new code using wxFileName.
+ When wxFileName calculate the filename, it returns <root_name>,
+ and the old code returns <root_name>.cache
+ So to avoid problems or ugly code, the lib cache name is now <root_name>-cache
+ Old cache is used if the lib cache with the new name is not found.
+
+
+2009-apr-07 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew:
+ fixed: bug 2738052 (Delete tool does not delete zones outlines)
+++eeschema:
+ fixed: void history file list in menu
+++All:
+ made GetAssociatedDocument() compatible with last changes in kicad path handling.
+ Get PDF doc associated with a component now works
+ Some work still needed.
+
+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.
+