summaryrefslogtreecommitdiff
path: root/Documentation/changelogs/CHANGELOG-2010.txt
diff options
context:
space:
mode:
authorsaurabhb172020-02-26 16:14:17 +0530
committerGitHub2020-02-26 16:14:17 +0530
commit003d02608917e7a69d1a98438837e94ccf68352a (patch)
tree1392c90227aeea231c1d86371131e04c40382918 /Documentation/changelogs/CHANGELOG-2010.txt
parent886d9cb772e81d2e5262284bc3082664f084337f (diff)
parente255d0622297488c1c52755be670733418c994cf (diff)
downloadKiCad-eSim-003d02608917e7a69d1a98438837e94ccf68352a.tar.gz
KiCad-eSim-003d02608917e7a69d1a98438837e94ccf68352a.tar.bz2
KiCad-eSim-003d02608917e7a69d1a98438837e94ccf68352a.zip
Merge pull request #3 from saurabhb17/master
secondary files
Diffstat (limited to 'Documentation/changelogs/CHANGELOG-2010.txt')
-rw-r--r--Documentation/changelogs/CHANGELOG-2010.txt1010
1 files changed, 1010 insertions, 0 deletions
diff --git a/Documentation/changelogs/CHANGELOG-2010.txt b/Documentation/changelogs/CHANGELOG-2010.txt
new file mode 100644
index 0000000..40f5d1b
--- /dev/null
+++ b/Documentation/changelogs/CHANGELOG-2010.txt
@@ -0,0 +1,1010 @@
+KiCad ChangeLog 2010
+====================
+
+2010-dec-31 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++all
+ * Exclude boost header include path from Doxygen files.
+ * Coding guide line and doxygen warning fixes.
+++EESchema
+ * Rename OBJ_CMP_TO_LIST to SCH_REFERENCE.
+ * Move code related to SCH_REFERENCE into the object where it belongs in hope
+ that some day the object members can be made private instead of public.
+ * Add GetComponent method to sheet path and sheet path list objects.
+ * Move screen list code into screen list object.
+
+
+2010-Dec-28 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++richio:
+ * Deleted kicad_exceptions, because it required the big #include <wx/wx.h> and
+ that was slowing down compiling. Moved that stuff back into richio.h where
+ it came from.
+ * Enhanced IO_ERROR to format an errorText.
+ * Added THROW_IO_ERROR() and THROW_PARSE_ERROR() macros to capture the
+ the call site of the thrower. If you have problems compiling, it is probably
+ due to the definition of __LOC__ in richio.h. Some compilers may not support
+ __func__ in C++ yet. Find a macro that identifies your compiler, and we can
+ work out something in the #define of __LOC__.
+
+2010-Dec-28 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++new:
+ Completed most of /new class LIB_TABLE.
+ Completed all of /new class LPID.
+++common:
+ Tricked xnode.h into not issuing deprecation warnings.
+++richio:
+ * Added support of DSNLEXER( LINE_READER* ) to TokenList2DsnLexer.cmake, which
+ allows the chaining of different grammars on top of a common LINE_READER.
+ * Changed OUTPUT_FORMATTER::Quoted() to return a std::string and not modify
+ its input parameter.
+
+
+2010-dec-21 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++all
+ * Doxygen comment warning fixes.
+ * Coding policy fixes.
+++common
+ * Add clone method to EDA_ITEM object.
+++EESchema
+ * Replace GenCopy() method with Clone() in all items derived from SCH_ITEM.
+ * Simplify repeat last schematic item with new Clone() method.
+ * Simplify duplicate schematic item method with new Clone() method.
+ * Separate objects in sch_items.h/cpp into separate files per object.
+
+
+2010-dec-20, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+common:
+ Rename EDA_Rect::Inside to EDA_Rect::Contains
+ ( EDA_Rect::Inside( const EDA_Rect& aRect ) was very ambiguous )
+ Fix some Doxygen warnings and erroneous comments
+
+
+2010-Dec-19 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++new:
+ Completed a good portion of /new class DIR_LIB_SOURCE.
+ Added an autonomous CMakeLists.txt file to /new, with new-docs target and
+ test program target.
+
+2010-dec-15, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+Gerbview:
+ Added: in file dialog, multiple file selection.
+ Added: Draw mode selector (in left toolbar):
+ Raw mode:
+ a Gerber image is drawn on screen without buffering.
+ Artifacts happen if there are negative items drawn, if more than one
+ Gerber file is shown.
+ Stacked mode:
+ each Geber image is drawn in a buffer and after drawn on screen
+ No artifact with negative items.
+ Each Gerber image covers previous images.
+ OR mode (transparency mode):
+ each Geber image is drawn in a buffer and after drawn on screen
+ No artifact with negative items.
+ Each Gerber image is "ORed" with previous images, like in Pcbnew.
+ Try to optimize Draw function in buffered modes.
+ (Useful for PC that have problems with "blit" graphic function)
+ Fix minor issues.
+
+2010-dec-13 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+ * Remove deprecated options and quoted project name option in Doxygen file.
+ * Make Bazaar ignore the files generated by Doxygen in the new folder.
+++EESchema
+ * More schematic component encapsulation work.
+ * Doxygen comment fixes.
+
+
+2010-Dec-13 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++eeschema:
+ Committed a new design for a "Distributed Library System".
+ To make the html docs, run doxygen in <kicad_base>/new with that as your
+ current working directory, or run the shell script in there. You need
+ Doxygen installed.
+
+
+2010-dec-13 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++common
+ * Make base marker hit test method const.
+++EESchema
+ * Improve hit testing for schematic components.
+ * Add initial support for hit test filtering.
+ * Moved static function CountConnectedItems() into SCH_SCREEN object.
+ * Add IsConnected() method to SCH_ITEM object.
+
+
+2010-dec-10 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++All
+ * Make a whole bunch of object methods const in order to make HitTest() const.
+ * Lots of coding policy fixes.
+++common
+ * Add Inside override to EDA_Rect to test if another EDA_Rect is inside.
+ * Add additional parameter to EDA_TextStruct GetTextBox method to support
+ Y axis inversion and non-default thickness.
+ * Add accuracy parameter to EDA_TextStruct TextHitTest method.
+++EESchema
+ * Refactor schematic object hit testing to provide coherent object interface.
+ * Remove redundant GetBoundaryBox from schematic component object.
+ * Remove redundant layer member from schematic text object.
+ * Create hit test override to check for rectangle intersection and
+ containment.
+ * Simplify schematic block selection hit testing.
+ * Make schematic and component library object enum naming consistent.
+
+
+2010-dec-08 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++All
+ * Coding policy object naming and formating fixes.
+++GerbView
+ * Fix compiler warnings.
+++Common
+ * Change item list type from SCH_ITEM to EDA_BaseStruct in BASE_SCREEN
+ object.
+ * Encapsulate BASE_SCREEN drawing item list member.
+ * Change grid container from wxWidgets to standard C++ container.
+
+
+2010-dec-07 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Finish encapsulating LIB_FIELD object.
+ * Encapsulated all members currently in use in LIB_PIN object.
+++Common
+ * Add SetModified() helper to EDA_BaseStruct object that checks for a parent
+ object and sets it's modified status as well.
+
+
+2010-dec-02 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Move color configuration dialog to dialogs folder.
+ * Simplify color configuration dialog design, remove enable grid checkbox( I
+ think we have enough places to do this), and remove abbreviated labels.
+ * Restore changing value field behavior to create new component from the
+ current one and handle all of the potential library naming conflict issues.
+ * Create a toolbar button perform the same function as renaming the value
+ field for improved usability.
+ * Add new copy component bitmap contributed by Jean-Pierre Charras.
+
+
+2010-dec-02, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+Pcbnew:
+ For zone filling algo, change the default polygon library from Kbool to Boost::polygon.
+
+
+2010-dec-01, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+Gerbview:
+ Added support for complex definitions of parameters in aperture macros and primitives macro
+ (a complex definition in a parameter that is calculated by an arithmetical expression)
+ Gerbview should now have a decent support of Gerber language.
+ Currently only the obscure knockout command is not supported (I have no motivation to do that)
+ Other "bug":
+ scale in A and B axis is poorly supported: coordinates are scaled, but shapes can have problem:
+ fro instance, a circle is drawn as a circle when A and B scales are different,
+ and perhaps should be an ellipse.
+ On the other hand, Gerber doc is not clear about the meaning of A and B scale.
+ (Alas! Gerber doc is not clear about most of advanced commands)
+
+
+2010-nov-19 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Move library new component and schematic edit sheet dialogs to dialogs
+ folder.
+ * Set library new component and schematic edit sheet dialogs default button.
+ * Create wxFormBuilder version of edit sheet label dialog and remove hand
+ coded version.
+ * More coding policy fixes.
+
+
+2010-nov-19 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Move library dimension, schematic configuration, and schematic options
+ dialogs to dialogs folder.
+ * Set library dimension, schematic configuration, and schematic options
+ dialogs default button to OK button.
+ * Kicad coding policy clean ups.
+
+
+2010-nov-17 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Move library text edit, library draw item edit, SVG print, and BOM dialogs
+ to dialogs folder.
+ * Rename library text edit dialog file and object names to comply with
+ coding policy.
+ * Set default button in library text edit, library draw item edit, SVG print,
+ and BOM dialogs.
+ * Move BOM dialog code into BOM dialog object source file.
+
+
+2010-nov-11 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Make schematic object file naming consistent.
+ * Move annotate dialog to dialogs subdirectory and set the "Annotation"
+ button as the default.
+ * Move ERC dialog to dialogs subdirectory and set the "Test Erc" button
+ as the default.
+ * Move the print dialog to dialogs subdirectory and set the "Print" button
+ as the default.
+ * Create print dialog header and move the OnPrint() method into
+ schframe.cpp.
+
+
+2010-nov-10 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Header file rationalization.
+ * Move schematic object load code into the appropriate schematic object.
+
+
+2010-nov-3 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++common
+ * Initial ground work for using Boost container for storing draw items
+ instead of internal linked list.
+++EESchema
+ * Move tests for dangling end code back into schematic objects.
+ * Add clear draw object state helper to SCH_SCREEN object.
+ * Add support for schematic objects to keep temporary list of connection
+ objects for dangling end and other connection related tests.
+ * Rearrange schematic label object code.
+ * Remove duplicate error message boxes when loading schematic items.
+
+
+2010-oct-28, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+PolyLine.cpp:
+ remove unused method CPolyLine::TestPointInsideContour() which was a duplicate of
+ TestPointInsidePolygon().
+ In CPolyLine::TestPointInside(); replace curious algo (which have a problem)
+ to test a point inside a polygon by TestPointInsidePolygon()
+++Pcbnew:
+ fix a bug in Drc and clearance calculations when using a dummy pad
+ ( in zones calcualtions and to test holes ot tracks and holes to pads DRC).
+
+2010-oct-26 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Change screen list object array type from wxARRAY to std::vector.
+ * Move all SCH_SCREEN methods into file class_sch_screen.cpp.
+ * Move find dialog files to dialogs sub-directory.
+ * Remove hallucinatory save and restore methods I wrote from component
+ library draw objects.
+ * Merge external TstAlignSegment function to SCH_LINE::MergeOverlap method.
+ * Move save schematic method to files-io.cpp and remove empty file
+ save_schemas.cpp.
+++include
+ * Remove unused internal link list next and back methods from base screen
+ object.
+
+
+2010-oct-25 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema
+ * Remove common library component and alias base class CMP_LIB_ENTRY.
+ * Derive LIB_COMPONENT and LIB_ALIAS directly from EDA_BaseStruct.
+ * Encapsulate most library draw item object members.
+ * Make most library draw item get methods constant.
+ * Merge two edit component properties methods into a single method.
+ * Update double click left mouse button to use merged edit component
+ properties method.
+ * Set schematic find dialog find button as default button.
+++include
+ * Add in-line flag state helpers to EDA_BaseStruct.
+
+
+2010-oct-22 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+ Component library editor bug fixes and other minor fixes.
+ * Fix bug that prevented component from being replaced in library when
+ the component root name was changed.
+ * Fix drawing bug when changing text or field item string while move in
+ progress.
+ * Fix drawing bug when rotating text item while move in progress.
+ * Prevent undo or redo when editing a component draw item.
+ * Fix assert bug when replacing component in library when the component
+ root name was changed.
+ * Fix bug in field editor caused by new root alias implementation that
+ prevented any field from being changed.
+ * Fix minor spacing issues with EESchema find dialog.
+ * Deprecate remaining internal linked list code from component library
+ objects.
+ * Rename pin object files to match new library object file naming
+ scheme.
+ * Move LIB_TEXT object definition into it's own header file.
+
+2010-Oct-20 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++richio:
+ LINE_READERs will now allocate a smaller initial size buffer, say 5000 bytes,
+ and then resize their buffers up to some provided maximum, after which an
+ exception is thrown should a line exceed that maximum line length.
+
+
+2010-oct-15, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++gerbview:
+ Added support for gerber commands:
+ SR (Step and Repeat)
+ multiple MOIN and/or MOMM in file (switch units from inch to mm and mm to inch)
+
+2010-oct-09, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++gerbview:
+ Fixed some issues:
+ Now aperture macro with parameters works.
+ Note: complex parameters (like $1 + 4) are not supported
+
+ other commands not yet supported:
+ SF (scale factors)
+ Offsets (image and layer)
+ Rotations (image and layer)
+ Axis definition
+ Mirroring
+ SR (Step and repeat)
+ KO
+
+2010-Oct-5 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++richio:
+ * LINE_READER now has a GetSource() function which is used in error
+ reporting. This is typically the name of the file which is supplying the
+ lines of text, or string "clipboard" if the text is coming from the clipboard.
+ Derived classes FILE_LINE_READER and STRING_LINE_READER's constructors both
+ need an additional parameter which identifies the source.
+ * FILE_LINE_READER now owns the source FILE and will close it in its destructor.
+ This resulted in the removal of several fclose() statements that had been
+ there to close a file associated with a FILE_LINE_READER.
+ * DSNLEXER now supports an internal LINE_READER* stack which is used to handle
+ nested s-expression files, with the ability to resume from the proper place
+ in the containing file. There is now PushReader() and PopReader() functions
+ in DSNLEXER to handle this. No protection is provided against circular
+ inclusions, but this could be done by searching the stack and comparing
+ GetSource() values for anything already on the stack before pushing.
+ Each s-expression grammar is free to define one or more keywords that cause
+ nesting to occur. That policy choice is not part of DSNLEXER's job.
+ One example might be:
+ (inherit (footprint library_uri ftprintname))
+
+2010-oct-04 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+ Initial work on new component library stucture.
+ * Use C++ map in component library instead of boost::ptr_vector.
+ * Drop Boost pointer containers for standard C++ containers.
+ * Moved duplicate name user interface elements from library object to
+ library editor.
+ * Added code to support direct addition and replacement of component
+ alias objects into libraries.
+ * Removed temporary strings used to add and remove alias objects.
+ * Libraries only store alias objects, components now accessed thru alias.
+ * Simplify library API for adding, removing, and replacing components.
+ * Updated edit component in library dialog and library editor to reflect
+ component library object changes.
+ * Fixed bug in library viewer when displaying alias name.
+ * Made a few header files compile stand alone per the new coding policy.
+ * Remove some dead code and the usual code formatting fixes.
+
+
+2010-oct-03, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++gerbview:
+ finished Draw functions for aperture macros.
+ Now aperture macros are draww correctly.
+ Known bug: aperture macros having parameters are incorrect: parameters are not transmited correctly.
+ Work still in progress.
+
+2010-sept-28, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++gerbview:
+ Important changes:
+ graphic functions rewritten.
+ graphics items are now specific to gerbview (added a GERBER_DRAW_ITEM class)
+ and do not use tracks from pcbnew.
+ The way used to draw them is also new.
+ Apertures are now correctly drawn for round, oval, rectangular and regular polygon shapes
+ (with or without holes)
+ Aperture definition type Polygon is not yet handle.
+ Polygons are correctly drawn.
+ TODO:
+ Draw functions for aperture macros.
+ Work in progress.
+
+
+2010-Aug-9 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++CMakeModules:
+ Revise TokenList2DsnLexer.cmake to take outCppFile and outHeaderFile optinally
+ and enum mandatorily. Standardize the script's invocation technique within
+ all the CMakeLists.txt files.
+
+2010-Aug-8 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++CMakeModules:
+ Revise TokenList2DsnLexer.cmake to make an entire derived lexer class that
+ returns the proper enum type for superior debugging.
+++eeschema
+ * netform.cpp now outputs the allowed footprint filters for a given library
+ component.
+ * There is an auto-generated class called NETLIST_LEXER which is defined in
+ from netlist.keywords by TokenList2DsnLexer.cmake into netlist_lexer.h, that
+ may be the basis of loading a S-expression form of the generic netlist format
+ which is written from netform.cpp.
+
+
+2010-Aug-7 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++common
+ * add xnode.cpp and xnode.h which can be used to output either an XML or
+ S-expression document file.
+ * Add class STREAM_OUTPUTFORMATTER which is a richio class which can write
+ to any of the wxOutputStream derivatives, such as file, socket, zip, tar.
+ * Added netlist.keywords
+++eeschema
+ * netform.cpp can now output S-expression OK, although I have it commented out
+ pending the addition of a UI for it.
+
+
+2010-Aug-4 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++eeschema netform.cpp:
+ * Finish up first working version of the XML export.
+
+2010-Aug-3 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++eeschema netlist.cpp and netform.cpp:
+ * Found several speed optimizations in the netlist export code.
+ * Now sort the pins properly if they have pin numbers like A1 and A10,
+ i.e. alphanumerics in them.
+
+
+2010-Jul-30 & 31 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++eeschema:
+ * Now link with XML support within wxWidgets.
+ * Export the generic netlist in XML. Only the libpart elements are missing now.
+ Still need to rework the chain loaded netlist plugin, but may do that in XSL.
+ * OBJ_CMP_TO_LIST class now uses a std::string to hold the 8 bit string m_Ref,
+ but hides this behind accessors which provide for both Unicode and 8 bit
+ set and get functions.
+ * build_BOM.cpp retains the selected filename on subsequent runs as a default.
+ * Code cleaning, especially in build_BOM.cpp.
+
+
+2010-jul-27, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++all:
+ Updated boost to version 1.44
+ Added boost::polygon (experimental)
+++pcbnew:
+ Added experimental zone fill calculations with boost::polygon
+ old file zones_convert_brd_items_to_polygons.cpp has now 2 versions:
+ zones_convert_brd_items_to_polygons_with_Boost.cpp use boost::polygon to calculate filled areas
+ zones_convert_brd_items_to_polygons_with_BKbool.cpp use kbool (code cleaned).
+
+ >>> to use boost polygon version:
+ call cmake with option: -DUSE_BOOST_POLYGON_LIBRARY=ON
+
+2010-jul-12, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew:
+ Added grid origin patch from Lorenzo Marcantonio.
+ Converted set grid dialog from DialogBlocks to wxFormBuilder,
+ and added in this dialog the grid origin parameters settings.
+
+2010-jun-24 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+++EESchema component library and hierarchical sheet label object improvements.
+ * Continue component library class clean up and encapsulation work.
+ * Change hierarchical sheet label container to boost::vector_ptr.
+ * Encapsulate hierarchical label handling in hierarchical sheet class.
+ * Convert some missed occurrences of wxString::GetData() to GetChars( wxString ).
+ * Fix some minor code formatting issues.
+
+2010-jun-23, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++eeschema:
+ In netlist generation, changed the rule to calculate netnames of nets with labels:
+ Previously, named nets (i.e. nets with local, hierarchical or global labels) have their name
+ defined by the first label found in list.
+ So net names could be changed without really changing the schematic.
+ Now the names are calculated from the rules (by priority order) :
+ 1 - use the most top level labels in hierarchies.
+ 2 - use global labels first, local labels next (hidden power pins names are global labels).
+ 3 - use alphabetic sort (so, if GND and AGND are connected, the net will be always named AGND,
+ and adding a VSS connection cannot change the net name)
+ So power nets and nets that have more than one label cannot have their netname changed
+ if there is no actual change relative to these nets names in schematic
+
+
+2010-Jun-17 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++eeschema:
+ Added "template fieldnames" to eeschema. Thanks to
+ Brian Sidebotham <brian.sidebotham@gmail.com> for the origins of this patch.
+ https://lists.launchpad.net/kicad-developers/msg04828.html
+
+ A template fieldnames are a list of template elements
+ consisting of {name, value, visibility} which you want shown in the eeschema
+ component fieldname (property) editors (both schematic and library versions
+ of the editors). Template fieldnames are forced into the editors'
+ presentation of the fields even though those fields may not exist in the
+ component. Entering a non-blank value while in a field editor will cause the
+ field & value to be retained in the component. Therefore it is unusual to
+ provide a non-blank '.value' in a template, because a trip through the field
+ editor will invariably add that field to the component since the template
+ being applied has initially a non blank 'value'. The current template editor
+ is only going to last about a week and it does not support adding non-blank
+ template values yet, nor visibility control, only field '.name'. But the
+ template fieldnames configuration storage and component field editors do
+ know how to handle template.visible and template.value already, in addition
+ to template.name. See the file .eeschema in your home directory for the
+ configuration storage, keyword: FieldNames. e.g. only field Manufacturer has
+ a '.value':
+
+ FieldNames=(templatefields (field (name "Manufacturer")(value "IBM 12")) (field (name "Vendor")) (field (name "Installed")) (field (name "Ralphy") visible))
+
+ DSNLEXER is used to parse the FieldNames record, & OUTPUTFORMATTER to generate it.
+
+
+2010-jun-15, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+bitmap2component:
+ Use wxWidgets.
+ Better user interface
+ More bitmaps file format import (from wxWidgets)
+ This tool does not use Kicad classes. So it can be hacked by guys who do not know kicad sources.
+
+2010-jun-10, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+Added an experimental tool (bitmap2component) to create logos from .bmp bitmaps. Added Potrace library to convert bitmaps to polygons
+ This tool uses potarce library that converts a bitmap picture (.bmp or .pgm format) to a set of polygons.
+ bitmap2component converts a bitmap to a .emp footprint (that can be imported by modedit) or a .lib component that can be
+ imported by libedit.
+ Note: imported bitmaps logos are vectored by potrace, so there is no pixelation effect.
+ Scale is 1:1 for 300ppi pictures.
+ bitmap2component currently runs only is command line mode
+ run
+ bitmap2component bitmapfile.bmp bitmapfile.lib 1 to create a schematic component logo
+ (import this file using libedit)
+ or
+ bitmap2component bitmapfile.bmp bitmapfile.emp 1 to create a footprint logo
+ (import this file using modedit)
+
+
+2010-may-18, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++All:
+ Set minimum cmake version requirement to 2.6.4
+ (does not works with 2.6.1)
+++Pcbnew, Module Editor:
+ Added footprint name edition in the module properties dialog.
+ Until now, the footprint name used to retrieve a footprint in lib was
+ set only when saving the footprint in lib, and could not be edited without saving
+ the footprint in lib.
+
+2010-may-01, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Board and footprint editors:
+ Auto update 3D display after footprint or board edition.
+ (board or footprint is reloaded only when the 3D frame is reactivated, so
+ no extra time is needed during edition)
+
+2010-apr-29, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Fixed a crash that happens sometimes when opening the design rule dialog.
+ (due to the sorting function by netclass then by netname)
+ The sorting by netclass then by netname is now working well.
+
+
+2010-apr-23, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Fixed minor problems.
+ Changed French word COTATION to DIMENSION in class COTATION (now class DIMENSION)
+
+2010-apr-22, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew+Gerbview:
+ Fixed minor problems in printing.
+
+2010-apr-19, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ * Added VRML export, from the patch sent by Lorenzo Marcantonio ( october 2009, 11)
+ * Fixed :
+ options to control vrml export.
+ flipped footprints
+ * Tested using Cortona and Blender.
+
+ Needs more testing and refinements
+
+2010-apr-16, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Cvpcb:
+ Fixed a bug in footprint display frame (coordinates not displayed). Windows only.
+ Added right toolbar to select display options
+ Can now read netlists using UTF8 encoding.
+ Convert dialog_display_option from DialogBlocks to wxFormBuilder
+++Pcbnew:
+ Fixed a very minor bug.
+Cvpcb+Pcbnew:
+ Code cleanup in read netlist functions: use now FILE_LINE_READER.
+
+2010-Apr-12 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++all:
+ Switched the source code repository from subversion at sourceforge.net to
+ launchpad using bazaar.
+
+
+2010-apr-08, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Drc: take in account the clearance "local parameters" for pads that have local parameters.
+ Until now, only NETCLASS clearance values were used.
+ (local parameters are used in zone filling)
+ But because a pad (or a footprint) can have a specific clearance value
+ Drc used now this value, and NETCLASS value only if no local value specified.
+
+2010-mar-31, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew
+ Fixed an issue in GERBER file creation, under Vista and W7 only for non administrator users
+ Plot files were 0 byte length.
+ This was due to use of function tmpfile() in a GERBER function
+ to create a temporary file that seems not working using mingw.
+ Replaced by more usual files functions.
+
+2010-mar-29, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew
+ enhancements in printing or plot in SVG format:
+ When printing technical layers, pads on solder mask or solder paste layers
+ where printed in sketch mode.
+ Now they are printed as solid shapes, with dimensions according to
+ solder paste or solder mask clearances.
+
+
+2010-mar-18 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Eeschema
+ Some bugs fixed
+ Starting enhancements in Libedit: menubar and commands to "plot"
+ current component in PNG or SVF file (SVG file not fully working, must be refined)
+
+2010-mar-13 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ All:
+ Stable verion for kicad release
+
+2010-mar-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Pcbnew:
+ Added (see dialog_layers_setup.cpp) compilation options to
+ -hide non active copper layers
+ -show inner layers in same order than the layer manager
+ Currently these options are 2 define
+ HIDE_INACTIVE_LAYERS
+ // if defined, displays only active copper layers
+ // if not displays always 1=the full set (16 layers)
+ USE_LAYER_MANAGER_COPPER_LAYERS_ORDER
+ //if defined, used the layer manager copper layers order
+ // (from FRONT to BACK) to display inner layers.
+ // if not, use the default order (from BACK to FRONT)
+
+ Currently not active, can be changed if the correponding lines are uncommented in dialog_layers_setup.cpp
+
+2010-Mar-3 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++common
+ * DSNLEXER now owns an abstract LINE_READER by pointer so that polymorphism
+ can be used in alternative LINE_READERS.
+ * Write FILE_LINE_READER and STRING_LINE_READER. The latter can be used
+ to parse text coming from the clipboard or other string source.
+
+
+2010-Feb-20 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++common
+ DSNLEXER now supports:
+ 1) nested quotes. This is in anticipation of broader usage of the
+ file type/syntax. A string like this in the file:
+ "my ""favorate"" string"
+ can be returned as
+ my "favorite" string
+ 2) CommentsAsTokens is implemented, so you can ask the lexer to return
+ comments as tokens, so they can be preserved. The default is to ignore
+ them. A comment is defined as any line that has # as its first
+ non-blank character. (This means comments cannot follow anything else
+ on a line.)
+
+
+2010-Feb-19 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+kicad: fixing an annoying problem:
+ * Building the tree project can be *very* long if there are a lot of subdirectories
+ * in the working directory.
+ * Unfornately, this happens easily if the project file *.pro is in the home directory
+ * So the tree project is built "on demand":
+ * First the tree is built from the current directory and shows files and subdirs.
+ * > First level subdirs trees are built (i.e subdirs contents are not read)
+ * > When expanding a subdir, each subdir content is read,
+ * and the corresponding sub tree is populated on the fly.
+
+
+2010-Feb-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+kicad:
+ * Building the tree project can be *very* long if there are a lot of
+ * subdirectories in the working directory.
+ * Unfornately, this happens easily if the project file *.pro
+ * is in the home directory
+ * when subdirs are not loaded, double click on a directory to load its files and subdirs
+ * #define ADD_FILES_IN_SUBDIRS was used until now.
+ * It is now commented, so one must double click on a subdir name to load its files
+ * See treeprj_frme.cpp for more info
+
+2010-Feb-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+Eeschema, libedit: fixed last problems when editing alias info.
+ Now alias changes can be undone, and are correctly updated in lib
+ when updating the current edited component in memory
+ New code could be a good starting point to store all aliases info in the
+ root component,
+ and also easily store it to the *.lib files and remove the .dcm associated files
+ (most of code is done)
+
+
+2010-Feb-14 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+Eeschema, libedit: fixed add/remove alias functions, broken
+All: added in popup menus hotkeys info for zoom commands
+
+
+2010-Feb-14 UPDATE Jerry Jacobs <xor.gate.engineering[at]gmail[dot]com>
+================================================================================
+++ KiCad
+ Check if project is noname.pro so we don't get a error if kicad is first run.
+ Removed double separator in file menu.
+ Moved recent project to submenu in Open recent.
+
+++ Common
+ Added CTest/CDash support file
+ Moved helper tool to helper subdirectory
+
+++ OSX
+ Update compiling doc
+
+2010-Feb-07 UPDATE Vesa Solonen <vesa.solonen@hut.fi>
+================================================================================
+++ all:
+ Finnish translation, take one.
+
+2010-Feb-04 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ gerbview:
+ Use layer_widget to manage gerber layers colors and visibility.
+
+2010-Jan-31 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ pcbnew:
+ More about work on color selection and items visibility:
+ removed global variables and a lot of redundancies
+ Now Modedit does not uses the visiblity options of the board editor
+ (That can create a problem if hide modules is activated)
+ work in progress but almost finished
+
+
+2010-Jan-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ pcbnew:
+ More about work on color selection and items visibility
+ work in progress
+
+2010-Jan-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+ ++ All:
+ added a test to solve a problem when cross compiling Kicad under Linux for Windows
+ Specific to countries that use a comma as separators in floating point numbers notation:
+ Depending on wxWideget version:
+ printed as 0,5 and read as 0.5
+ or
+ printed as 0.5 and read as 0,5
+ So float values are always broken in dialogs (many are seen as 0)
+ Now a test is made, and if there are problems relative to floats
+ (write/read conversion error),
+ use the C convention (always a point as separator)
+
+ ++ eeschema:
+ Removed metrics grid values, that cannot be handled in schematic.
+ (because 2 items are seen as connected if they have the same coordinates
+ mixing mm and mils with internal units = 1 mil break netlist
+ and ERC calculations
+ So grid value *must* be an integer (in 1/1000 inch).
+ And metric grid is not very useful in schematic.
+ (Also 1 mil and 0.025 mm can be seen as the same value for a schematic that do not
+ needs precision in dimensions, so no need to have mils and mm in grid values)
+
+++ pcbnew:
+ Starting work on color selection and items visibility
+ * code cleaning and removing global values.
+ * Separe visibility options for board editor and module editor
+ (work in progress, just starting)
+
+
+2010-Jan-28 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+ *fixed eeschema crash when using the hotkey m (move) command.
+* Pcbnew :added option to show/hide footprints values and/or references
+ See if show/hide footprints texts option is now always useful.
+
+2010-Jan-27 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ Pcbnew:
+ Code cleaning about visibility variables (duplicates) in draw functions.
+ Removed old color and visiblity dialog
+ work in progress
+
+2010-Jan-24 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ Pcbnew:
+ in variable names, change non existent word Hight to High
+ Remove redundant tool in left toolbar (option toolbar)
+ (this option is now in layers manager)
+ Show layers in horizontal combo box in same order as in layer manager.
+
+++all:
+ minor code cleaning.
+
+2010-Jan-23 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew's PCB_LAYER_WIDGET
+ Removed wxformbuilder dependency from LAYER_WIDGET, thus killing off
+ layer_widget_base.* and panel_layer_select.fbp.
+ Added aPointSize to LAYER_WIDGET constructor so it uses that font size.
+ Removed layer_widget.h from wxPcbStruct.h for faster compiles with less
+ dependencies, and this meant moving the class LYRS out of
+ class WinEDA_PcbFrame. While doing that I renamed it to PCB_LAYER_WIDGET.
+ Integration of PCB_LAYER_WIDGET into WinEDA_PcbFrame to fully support
+ the layer change logic. Added syncLayerWidget(),
+ * WinEDA_PcbFrame:
+ Added syncLayerWidget(), syncLayerBox() (via a rename), setActiveLayer(),
+ and getActiveLayer().
+ Use a font size in PCB_LAYER_WIDGET 80% of the system font size for systems
+ with screen resolution height <= 900, or 100% if not. See WinEDA_PcbFrame
+ constructor.
+ * See TODO.txt for more things that need to be done.
+
+
+2010-Jan-23 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++ Pcbnew:
+ Update Layer manager display when changing active layer (from hotkey or menus)
+ fixed minor problems and fixed Layer Alignment Target bug.
+
+2010-Jan-22 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Minor fixes and code cleaning.
+
+* Remove redundant background redrawing RedrawActiveWindow.
+* Remove redundant managed cursor callback in RedrawActiveWindow.
+* Use refresh to redraw instead of directly calling RedrawActiveWindow.
+* Remove unused SetDrawBgColor for drawframe.cpp.
+* Fix compiler warning in cvpcb/cvframe.cpp.
+* Fix menu spelling and syntax errors in pcbnew.
+* Rename Trace_Curseur to DrawCursor in common/drawpanel.cpp.
+
+2010-Jan-21 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++pcbnew
+ Integration of LAYER_WIDGET into WinEDA_PcbFrame. See
+ TODO.txt for more things that need to be done.
+
+
+2010-Jan-17 UPDATE Jerry Jacobs <xor.gate.engineering[at]gmail[dot]com>
+================================================================================
+More work to make kicad more Mac OS X compliant.
+* Workaround for wxAboutDialog bug.
+* WXMAC needs wxID_EXIT to make closing the application function properly.
+* Workaround for hotkeys, on Mac OS X we can't use Fx keys.
+ This needs to be further implemented and is a work in progress.
+ We need to modify the hotkey code to display Mac OS X the
+ special modifier keys in the hotkey list.
+
+
+2010-Jan-18 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
+++any
+ Finished up complete implementation of class LAYER_WIDGET and am now ready to
+ integrate it into PCBNEW. This class was kept as general as possible by
+ omitting as many Kicad document structures as possible, and so can be used
+ in GERBVIEW. For GERBVIEW it could benefit from some minor additional
+ work such as a "move up" function for layer order changes. This is a matter
+ of rearranging wxWindows within the m_LayersFlexGridSizer.
+ Integration into PCBNEW should be done in just a few days.
+
+
+2010-Jan-17 UPDATE Jerry Jacobs <xor.gate.engineering[at]gmail[dot]com>
+================================================================================
++ EESchema
+ + Added Torsten Huter's patch for hotkeys
+ + Moved recent opened documents to submenu
+
++ Pcbnew
+ + Big (re)organisation of pcbframe menubar and cleanup
+
+2010-Jan-13 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
+================================================================================
+Minor bug fixes, compiler warning fixes and code cleaning.
+
+* Fix debug asserts when passing NULL pointers to wxAuiPaneInfo.
+* Fix Kicad main window sash sizer bug when using wxAui.
+* Remove specctra_test from Visual Studio builds to prevent build errors.
+* Add WIN32 to layer widget test so it will build properly on Visual Studio.
+* Fixed compiler conversion warnings in PCBNew.
+* Fixed worksheet print scaling in PCBNew.
+* Minor code renaming.
+
+2010-Jan-12 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++All
+ Use wxAutoBufferedPaintDC in OnPaint event
+ Seems solves slow grid redraw on some PC (tested under Window 7)
+ and is faster than use wxPaintDC, not buffered
+ (note MACOSX has natively a double buffer, so no change for MACOSX)
+
+2010-Jan-08 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++Gerbview
+ Added support of arcs in polygons outlines.
+ Needed to show copper areas in some gerber files
+ Not fully tested but works better than without this support...
+
+
+2010-Jan-03 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ - fixed a potential bug in a fill zone function: AddClearanceAreasPolygonsToPolysList()
+ - Try to fix a problem with AddClearanceAreasPolygonsToPolysList() under Window Vista and Window 7
+ This is perhaps a problem in kbool library
+ (a bug in Bool_Engine destructor ?)
+ It happens when:
+ - a lot of polygon corners are added in group A
+ - nothing in group B
+ - No operation asked in kbool engine ( that also has a bug if an operation is asked
+ with no polygon in group B)
+ - and call the Bool_Engine destructor.
+ Could be a stack error or overflow, very hard to locate and debug.
+ - Under Vista seems create always a crash.
+ - Under Window 7 sometimes create a crash.
+ - No problem under XP and Linux.
+ -Workaround:
+ Leave the group A void if group B is void.
+ I am not sure this change fix the problem.
+ Just it solves this problem with 2 samples boards that crash Pcbnew without this change.
+
+2010-Jan-01 UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr>
+================================================================================
+++pcbnew
+ Rewrite plot dialog using wxDialogBlocks.
+ Display layers list according to the Setup layers dialog order.
+++Gerbview
+ Write Gerbview plot dialog using wxDialogBlocks.
+ Do not use anymore the Pcbnew one.
+