summaryrefslogtreecommitdiff
path: root/Documentation/changelogs/CHANGELOG-2007.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/changelogs/CHANGELOG-2007.txt')
-rw-r--r--Documentation/changelogs/CHANGELOG-2007.txt1547
1 files changed, 1547 insertions, 0 deletions
diff --git a/Documentation/changelogs/CHANGELOG-2007.txt b/Documentation/changelogs/CHANGELOG-2007.txt
new file mode 100644
index 0000000..a0d98bf
--- /dev/null
+++ b/Documentation/changelogs/CHANGELOG-2007.txt
@@ -0,0 +1,1547 @@
+KiCad ChangeLog 2007
+====================
+
+2007-Dec-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++pcbnew:
+ First draft (and code..) about new zone handling, using polygons to define an outline.
+ Now currently not useable because the fill function (and many other important functions) is not implemented.
+ Many functions are not yet implemented: merging zones, cutout, DRC ...
+ Nevertheless, one can create, modify edit and save zone outlines
+
+
+2007-Dec-23 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++all
+ * Because of the discussion 4 months ago about using Boost::Python, and
+ because of an excellent boost::ptr_vector class, I want to make some of the
+ boost libraries be necessary for building Kicad. These would be:
+ 1) boost pointer container library (immediately)
+ http://www.boost.org/libs/ptr_container/doc/ptr_container.html
+ See the work in specctra.cpp to see where this is going:
+ typedef boost::ptr_vector<ELEM> ELEM_ARRAY found within class PARENT.
+ I found that gcc 4.2.1 was complaining about the standard ubuntu libboost-dev
+ package and would not compile ptr_vector class. But the svn of boost
+ fixed this.
+ 2) boost::python when building python in.
+ * Added FIND_PACKAGE(Boost) to CMakeLists.txt
+
+
+2007-Dec-22 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++all
+ added strlower() to common.h and string.cpp.
+ fixed compiler warnings in common/gr_basic.cpp and pcbnew/clean.cpp
++pcbnew
+ started the DSN file import/export for SPECCTRA routers, adding dsn.cpp and
+ specctra.cpp, with "stand alone" compile support for it in pcbnew/CMakeLists.txt.
+
+
+2007-Dec-17 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ WinEDA_PcbFrame::Other_Layer_Route() was leaving in the bridging segment
+ when the DRC denied the via insertion.
+
+
+2007-Dec-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++pcbnew:
+ some changes about zones: enhanced dialog, and files reorganisation
+
+
+2007-Dec-14 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ WinEDA_PcbFrame::Other_Layer_Route() now returns bool, so that if the DRC
+ would not allow the new via placement, then it can be checked and the layer
+ change can also then be aborted. Previously the layer change would happen
+ in mid track even if the via could not be placed.
+
+
+2007-Dec-13 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ * surbrill.cpp's int WinEDA_PcbFrame::Select_High_Light( wxDC* DC )
+ was re-written to use the GENERAL_COLLECTOR, and the scanList is set to
+ give pads a higher search priority than tracks, vias or zones.
+ The objective was to use the pad if possible, rather than a track on a pad,
+ so the pad can be sent to eeschema. Finding the track only (even though
+ on a pad) would not send anything to eeschema.
+
+
+2007-Dec-12 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ * Fized zone drawing bug in svn HEAD only.
+ pcbnew/zones.cpp, see:
+ http://tech.groups.yahoo.com/group/kicad-users/message/2993
+
+
+2007-Dec-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++all
+ * Fixed hotkey table for '+' and '-' bug. The lookup table in
+ common/hotkeys_basic.cpp had bad entries for + and -. These hotkeys
+ were not working on Linux.
+ * Added polygon directory to Doxyfile.
+
+
+2007-Dec-09 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++cvpcb:
+ listboxes.cpp FootprintListBox::m_ActiveFootprint member was not initialized.
+ Can crash cvpcb (WINDOWS only, i believe)
+
+
+2007-Dec-09 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++pcbnew:
+ changes in file organisation and classes to prepare zone redesign. No real new code.
+ class zone functions and definitions moved in class_zone.h and .cpp
+
+
+2007-Dec-07 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++pcbnew
+ Very minor bug in drill map : inaccurate via shapes (I believe EXCELLON drill file has no problems)
+
+
+2007-Dec-06 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++all
+ Solved zoom key command problems (under linux and windows)
+ (seen http://sourceforge.net/tracker/index.php?func=detail&aid=1844960&group_id=145591&atid=762476)
+
++pcbnew
+ solved bug when loading a footprint in modedit: invisible text attribute was lost (trunk and tag)
+
+
+2007-Dec-4 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ added the D() macro to fctsys.h to ease conditional debug printf()s.
+ worked on http://sourceforge.net/tracker/index.php?func=detail&aid=1844960&group_id=145591&atid=762476
+ but could not resolve it in 1/2 day.
+
+
+2007-Dec-4 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ * drc.cpp and dialog_drc.cpp update.
+ Added double click support on a MARKER or unconnected DRC_ITEM in the listboxes.
+ On Linux, it sometimes pops up the menu from PcbGeneralLocateAndDisplay()
+ for some reason after repositioning the cursor. That is not intended, but
+ after several attempts to work around it, I realized it is not so bad to
+ have this happen.
+ * Added right click popup menus to the list boxes. User must first select
+ the item he wants to go to, as the right click does not change the selection.
+ * Added WinEDA_BasePcbFrame::CursorGoto( const wxPoint& ) by factoring it
+ out of pcbnew/find.cpp
+ Done now, its ready for folks to start using it and testing it.
+
+
+2007-Dec-02 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++eeschema:
+ Solved an annotation problem: in multiple parts per package components,
+ when sorted by position, parts were not grouped by package.
+
+
+2007-Dec-2 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ drc.cpp and dialog_drc.cpp intermediate update.
+
+
+2007-Nov-30 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ * added virtual GetPosition() to BOARD_ITEM and derivatives.
+ * added classes DRC, REPORT_ISSUE, DRC_ITEM and rearranged drc.cpp entirely
+ to comprize the DRC class. The result has finer granularity of functions
+ and each is fairly well documented in English, see drc_stuff.h.
+ Keeping old stuff commented out at bottom of drc.cpp until some more usage
+ and testing is done.
+ * Made the DRC dialog modeless, so it can sit off to the side while the MARKER
+ are inspected one by one.
+
+
+2007-Nov-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++pcbnew:
+ Removed a bug (function block() ) which crashes pcbnew when erasing a zone by block delete
+
+
+2007-Nov-27 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ * changed class MARQUEUR to class MARKER name only.
+ * Moved BOARD's MARKERs from m_Drawings to vector<MARKER*> m_markers so
+ they can be easily deleted and navigated to from the drc dialog.
+ * deprecated the MARKER::Unlink() function.
+ * Added
+ BOARD::Add( BOARD_ITEM*, int )
+ BOARD::GetMARKER(int)
+ BOARD::Delete( BOARD_ITEM* )
+ BOARD::DeleteMARKERs();
+ * Changed BOARD::~BOARD() to use DeleteMARKERs().
+ * Revised screen drawing routine to know about BOARD::m_markers.
+ * Revised BOARD::Visit() to know about BOARD::m_markers.
+ * Revised pcbnew/find.cpp to know about BOARD::m_markers.
+ * removed wxYield() from drc.cpp
+
+
+2007-Nov-26 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ DRC code and dialog rework start. This breaks DRC, until I get out the
+ other end of the tunnel.
+
+
+2007-Nov-24 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++pcbnew
+ * dialog_track_options uses a portable technique for SetFocus(), namely the
+ function OnInitDialog( wxInitDialogEvent& event ).
+ * started work on dialog_drc, not checked in. basic wxHtmlListBox is working with dummied text.
++all
+ makefile.include's now use CXX instead of CC for compiling.
+
+
+2007-Nov-15 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++pcbnew:
+ Removed a bug (function Delete_Zone() ) which crashes pcbnew when erasing a zone by popup menu
+
+
+2007-Nov-13 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema & pcbnew
+ * The "Page Settings" dialog box has been enhanced; it now includes a
+ wxStdDialogButtonSizer, and is also now designed to be expandable.
++ pcbnew
+ * The "DRC Control" and "Netlist:" dialog boxes have also been enhanced. Each
+ of those dialogs now includes a wxStdDialogButtonSizer and a "Cancel" button,
+ (so each of those dialogs can now (otherwise) be cancelled by pressing the
+ "Esc" key), and is also now designed to be expandable.
+
+
+2007-Nov-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ Fixed modedit.cpp bug which occurred when selecting a non pad item (such
+ as a text field) in the module editor, then selecting Dimensions -> Pad Settings
+ in the module editor.
+
+
+2007-Nov-11 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema & pcbnew & gerbview
+ * The "Colors" dialog box has been enhanced; the distance between adjacent
+ controls now increases (and in both horizontal and vertical directions)
+ when that dialog is resized. And the "Cancel" button is no longer centre-
+ justified; it is now right-justifed instead.
++ eeschema
+ * A wxStdDialogButtonSizer is now used within the "EESchema Colors" dialog box,
+ meaning that the sequence of the "OK", "Cancel", and "Apply" buttons within
+ that dialog now depends upon which (OS) version of KiCad is being used (and
+ thus matching the nature of the corresponding dialogs within Pcbnew and GerbView
+ in that regard). (As of yet, the vertical distance between adjacent controls
+ does not increase when this dialog is resized, but that aspect will also be
+ implemented when time permits.)
++ gerbview
+ * The "GerbView Layer Colors:" dialog box has been updated, and is now similar
+ in nature to the corresponding dialogs within EESchema and Pcbnew. Tool tips
+ have also been provided for the "Show All" and "Show None" buttons.
+
+
+2007-Nov-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++eeschema:
+ More comprehensive dialog in netlist plugin interface.
+ Eeschema configuration now shows the plugin netlist list
+
+
+2007-Nov-09 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ 3d-viewer
+ * The 3d_canvas.cpp file has been updated to use a const parameter, as suggested
+ within (Bug) Request ID 1828487.
++ pcbnew
+ * Sizers have now been provided for the "Pcbnew Layer Colors:" dialog box (previously
+ identified as the "Colors:" dialog box), and tool tips have been provided for the
+ "Show All" and "Show None" buttons.
+ * The reglage.cpp file (which is not currently used) has been removed, and replaced
+ with reglage.cpp.notused.
+
+
+2007-Nov-02 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all
+ removed not used files
+
+
+2007-Nov-07 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ all
+ * The common/svg_print.cpp, common/svg_print.h, and common/svg_print.pjd files (which
+ are not currently used) have been removed, and replaced with svg_print.cpp.notused,
+ svg_print.h.notused, and svg_print.pjd.notused. And common/makefile.include has
+ also been updated so that none of those files are now listed at all.
++ eeschema
+ * A "Cancel" button has now been provided within each of the "Component properties",
+ "EESchema Annotation", "EESchema Erc", "Global Label properties", "Label properties",
+ and "Text properties" dialog boxes, and each of those dialogs can now (otherwise) be
+ cancelled by pressing the "Esc" key. (In due course, each of those dialogs will be
+ refined yet further; this is just an incremental enhancement.)
+ * The eestatus.cpp file (which is not currently used) has been removed, and replaced
+ with eestatus.cpp.notused.
+
+
+2007-Nov-05 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema
+ * The previously provided "Close" button within the "Netlist" dialog box has
+ now been replaced with a "Cancel" button, and this dialog can now (otherwise)
+ be cancelled by pressing the "Esc" key. General cleanup and beautification of
+ eeschema/netlist_control.cpp.
++ pcbnew
+ * The color of each text string provided within the "Swap Layers:" dialog box is
+ now set to blue for each string specifying that the associated layer is *not*
+ being swapped with any other layer, or to fushia for each string specifying that
+ the associated layer *is* being swapped with another layer. (This change was
+ made after being suggested by Dick Hollenbeck.)
++ gerbview
+ * The color of each text string provided within the "Layer selection" dialog box
+ is similarly now set to blue for each string specifying that the associated
+ Gerber layer is *not* being exported to any pcbnew layer, or to fushia for each
+ string specifying that the associated Gerber layer *is* being exported to a
+ pcbnew layer.
+
+
+2007-Nov-2 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ fixed a crashing bug which happened if you "dragged" a module with
+ tracks. Then deleted one of the pad connected tracks, then deleted the
+ next track attached to the first one. Memory was being corrupted because
+ PcbGeneralLocate() and display was not being called on the 2nd track to
+ be deleted because the m_Flags test:
+ bool ItemFree = (GetCurItem()==0 || GetCurItem()->m_Flags==0);
+ was returning false. Solution was to SetCurItem(NULL) after deleting a
+ TRACK. This makes sense, SetCurItem() is used for designating a "selected"
+ item, and a deleted TRACK is not even in the BOARD anymore and should not
+ be selected or selectable. I think this bug may have been causing spurious
+ crashes for the last couple of months.
+
+
+2007-Nov-02 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++all:
+ solved: eeschema, pcbnew and cvpcb did not find libraries when they were
+ in the default library path, but in a subdirectory
+ (this is because the default path was not added to the name if the name had
+ already a path)
+
+
+2007-Nov-02 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ * Sizers have now been provided for the "Swap Layers:" dialog box, and the
+ previously provided radiobuttons have been replaced with buttons and static
+ text strings. (In the previous version of this dialog, radiobuttons were being
+ used in an inappropriate manner. The most "orthodox" way of implementing the
+ functionality within this dialog would be to provide a combobox for each layer,
+ but as up to 30 strings would be needed within the dropdown list associated with
+ each of those controls (one string for each of the layers, and another string to
+ deselect the layer), such controls would be less than user-friendly. Hence a
+ button is now provided for each layer instead (and which, like the previously
+ provided radiobutton, invokes the "Select Layer:" dialog box after being clicked
+ on). Two static text strings are also provided for each layer, with one of them
+ being used to identify that layer, and the other being used to identify which
+ layer that each layer is currently being swapped to.) The previously provided
+ "Select" and "Deselect" buttons are no longer required, and are thus no longer
+ provided.
++ gerbview
+ * The "Layer selection" dialog box (invoked during the "Export to Pcbnew" command)
+ has similarly been updated. (This dialog did use spacers before, but once again,
+ the previously provided radiobuttons were being used in an inappropriate manner.)
+
+
+2007-Nov-01 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ * Provided new definitions of FIRST_COPPER_LAYER and LAST_COPPER_LAYER within
+ include/pcbstruct.h, and used those definitions within various other files.
+ Beautified and generally refined 3d-viewer/3d_draw.cpp and pcbnew/plotgerb.cpp.
+
+
+2007-Oct-31 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++kicad:
+ rename mdiframe.cpp to mainframe.cpp
+ create commandframe.cpp to handle the command frame (which have the 4 "fast launch" buttons)
+
+
+2007-Oct-31 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ all
+ * Added Doxygen configuration file, whose standard name is Doxyfile. Output
+ is set to go to ./doxygen directory just off the project tree.
+ * Added a note to todo.txt which asks folks to start using "Doxygen compatible"
+ comments in member functions and classes. Run Doxygen on the project, then
+ look at the documentation for class INSPECTOR as an example.
++ pcbnew
+ * zones.cpp, Trace_Pcb(), & EDGE_ZONE class:
+ Reversed the usage of EDGE_ZONE::Pnext and Pback in the list management to be
+ consistent with other classes and with BOARD_ITEM::IterateForward() and
+ BOARD::~BOARD().
+ * Fixed a display bug when high contrast mode is enabled and the track tool
+ is selected.
+
+
+2007-Oct-31 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++all:
+ gcc 4.2.1 compatibility: change char * to const char * whenever it was necessary,
+ mainly in .xpm files
+
+
+2007-Oct-30 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ added BOARD_ITEM::Save() and to all derived classes as well. Made virtual
+ and removed all UI code from these utility functions.
+ removed WriteDesc() functions from all BOARD_ITEM derived classes, although
+ Keeping old ones in commented out form for a while for reference.
+ @todo: delete these from *.cpp files eventually.
+ zones.cpp, clean up in prep for enhancements.
++ gerbview
+ fixed bug which came about when BOARD::~BOARD() started deleting the objects
+ that a BOARD owns. export_to_pcbnew.cpp was not consistent with this
+ design and was crashing. Also, export_to_pcbnew.cpp now uses the simple
+ BOARD::Save() function. It was another place to maintain the PCB file format,
+ rather than simply putting that knowledge into one place like BOARD::Save().
++ all
+ beautified gr_basic.cpp and made CLIP_LINE macro a static inline function.
+
+
+2007-Oct-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++cvpcb: listboxes.cpp problem solved: exists only under windows
+ now apply to windows only, because this Workaround creates a problem undex linux
++others:
+ some very minor problems solved
++eeschema:
+ in B.O.M.: the footprint field can be added to the field list
+
+
+2007-Oct-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++cvpcb: listboxes.cpp problem solved: Workaround for a curious bug in wxWidgets:
+ if we switch from a long list of footprints to a short list (a filtered footprint list),
+ and if the selected item is near the end of the long list,
+ the new list is not displayed from the top of the list box
++eeschema:
+ Implemented: graying in/out of "Edit/Undo", "Edit/Redo" menu items,
+ when Undo/Redo stack is empty/filled.
++pcbnew:
+ Implemented: action for ID_POPUP_PCB_DELETE_MARKER
+
+
+2007-Oct-27 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all:
+ remove unused files.
+ some translations
++cvpcb:
+ set flag wxFRAME_FLOAT_ON_PARENT when create the footprint 3D frame and the
+ display frame
+ minor other changes
++ pcbnew:
+ Use collector class to locate items in modedit.
+ This is a big enhancement,
+ but a small work for me because Dick made all the work.
+
+
+2007-Oct-26 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ Add class_marker.cpp and class_marker.h and move MARQUEUR functions in class_marker.cpp
+ Change MARQUEUR::HitTest to take in account the zoom level.
+ change global var EDA_Appl to g_EDA_Appl
+
+
+2007-Oct-25 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ cvpcb
+ * Fine-tuned contents of dialog_display_options.cpp, dialog_display_options.h,
+ and dialog_display_options.pjd, so that the controls within the associated
+ ("Display Options") dialog box now also expand if that dialog is expanded.
++ all
+ * The share/selcolor.cpp file (which is no longer used) has been removed, and
+ replaced with share/selcolor.cpp.notused
+
+
+2007-Oct-24 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ cvpcb:
+ 2 missing .prj files added (and updated)
+ dialog_display_option.cpp is rebuild from its dialog_display_option.prj source
+
+
+2007-Oct-23 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema
+ * Sizers have now been provided for the "EESchema Preferences" dialog box,
+ together with "OK", "Cancel", and "Apply" buttons. And an additional bitmap
+ button and checkbox have also been provided for the purpose of editing the
+ color and visibility of the grid.
+
+
+2007-Oct-21 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ all
+ * Provided an MAYBE_RESIZE_BORDER field within all of the .pjd files (used by
+ DialogBlocks), and restored the MAYBE_RESIZE_BORDER field to cleaningoptions_dialog.h
+
+
+2007-Oct-21 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ all
+ added UIpolicies.txt
+
+
+2007-Oct-21 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ rename dialog_clean_pcb.pjd to cleaningoptions_dialog.pjd,
+ accordind to the corresponding cpp filename.
+ enter the new tool tips in cleaningoptions_dialog.pjd.
++all:
+ USE_RESIZE_BORDER is now defined (default) in fctsys.h.
+ Therefore, under windows, dialogs are now resizable (like under unix)
+
+
+2007-Oct-21 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema & pcbnew & gerbview
+ * Sizers have now been provided within the "Colors" dialog box.
+
+
+2007-Oct-19 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * "Clean tracks" changed to "Track operations".
+ * Housekeeping on clean.cpp completed.
+ Added static void ConnectDanglingEndToVia( BOARD* pcb ) in clean.cpp which
+ extends tracks to via centers. Call it from "extend to pads", works nice.
+ * Added tooltip text to cleaningoptions_dialog.cpp's m_ConnectToPadsOpt
+ but don't know if DialogBlocks will parse this backwards.
+ * Made compilable, somebody broke #define VIA_???? s throughout. Would not compile.
+ * SEGVIA::SetPos() & GetPos() added.
+
+
+2007-Oct-17 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ Removed enhancements in connectivity computation because
+ rastnest computation does not work (errors) with short track segments
+ (lenght < width) . This is not a bug, but an algorithm problem, so
+ I must work on algos.
+
+
+2007-Oct-17 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ * Rolled back previous changes (made in revision 336) that edited the values of
+ vias' Shape property (following feedback from Jean-Pierre Charras concerning
+ the true significance of that property).
+
+
+2007-Oct-13 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ remove a change for Read VIA because via attributes
+ (TROUGH VIA, BLIND VIA or BURIED VIA) are autorisations for layer connection,
+ and are not a real layer indicator.
+ If a via connect layers from copper to component, it can have a BURIED VIA attribute.
+ the meaning is for this via the layer pair can be changed for other layer pair
+ if after editing this via connect 2 tracks which are only int internal layers,
+ its layer pair can be changed.
+ If a via has a TROUGH VIA attribute, it connects ALL layers, whenever tracks
+ connected to it.
+ Note: curenty: only TROUGH VIA are handled.
+ Other types (BLIND VIA and BURIED VIA) are only experimental.
+ A **lot** of code is needed for a full support.
+ enhancements in connectivity computation
+
+
+2007-Oct-15 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ * Made some changes involving vias so that these would have the correct value
+ of the Shape property assigned to them - while being created, and while files
+ are being saved, and while files are being loaded.
+
+
+2007-Oct-14 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew:
+ * housekeeping and translation to English on bottom third of pcbnew/clean.cpp.
+ No algorithm changes were intended, only improved readability.
+ * my todo: figure out how to intercept double clicks on a wxWidgets text control
+ so I can complete the work I started on MARQUEUR error tracking.
+
+
+2007-Oct-13 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ ratsnest.cpp translated into english.
+ Many infos on the LEE algorithm used here added.
+ todo (by myself): connect.cpp translation.
+ onrightclick() bug (created by last change) solved: one could reselect an item,
+ while moving a previously selected item (pcbnew crashes).
+
+
+2007-Oct-13 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema
+ * The previously provided "Quit" button within the "List of Material" dialog box
+ has been replaced with "OK", "Cancel", and "Apply" buttons. Greater consistency
+ has also been achieved after clicking on the "Create List" button; none of the
+ prevailing settings are subsequently saved (previously, some, but not all, of
+ the settings were subsequently saved). (However, settings can still be saved by
+ clicking on either of the "OK" or "Apply" buttons instead.) Assorted cleanup
+ and beautification of associated source code.
+ * The genliste.cpp file (which is no longer used) has been removed, and replaced
+ with genliste.cpp.notused
+
+
+2007-Oct-12 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ all
+ * m_NetCode is now private or protected throughout.
+ added SetNet() and GetNet() to all classes which have this member name.
+ ditto for m_Sous_NetCode, for which there is now SetSubNet() and GetSubNet().
++ pcbnew
+ added more disambiguating text to the PcbGeneralLocateAndDisplay() popup
+ menu for tracks. We need all the info we can get there I found after using
+ the software for many hours.
+
+
+ Jean-Pierre:
+
+ I never thought I would find a greater problem in using Kicad than having to
+ lay down all the ground and power tracks, rather that just linking vias into
+ pre-established zones or "tagged layers".
+
+ But I have, hundreds of my tracks and vias are showing
+ unconnected under my BGA, (where say the track or via is NetCode==0) and it
+ should not be, because the damn track ties the BGA pad to a nearby via.
+ How can the software be made to think these three items are on the same net,
+ without re-entering all the damn tracks?
+
+ This issue has been coming up for months on the user list, it must be dealt with now.
+ There is always the same lame answer, "make sure your tracks go to the center of the pads".
+ Nonsense, the software picked the track end points, not me, and grid was on when it did it.
+ There are bugs here.
+
+ Does Recalcule_all_net_connexion() work, and why is not called from anywhere?
+
+
+
+2007-Oct-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * D_PAD::Draw() refinements.
+ * WinEDA_DrawFrame::SetToolID() will redraw the DrawPanel if the track
+ button is selected or de-selected and the high-contrast mode is in play.
+ * If high-contrast mode is in play, the Select Layer Pair dialog completion
+ will redraw the DisplayPanel, now that SMD pads' colors are so dependent
+ on these variables.
+
+
+2007-Oct-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * D_PAD::Draw() so that it shows SMD pads as greyed out when in high contrast
+ mode and not on current layer. Slight variation on this when laying down
+ tracks: m_Route_Layer_BOTTOM or m_Route_Layer_TOP layers' SMD pads are
+ not greyed out.
+ * Changed English UI text for "Cotation" to "Dimension".
+
+
+2007-Oct-11 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ * The "Target Properties" and "Pads Global Edit" dialog boxes can now (otherwise)
+ be cancelled by pressing the "Esc" key, and the caption of the "OK" button
+ within the latter dialog box has been capitalised (so that an icon is now
+ provided within that button within the Linux version of KiCad).
+ * The pcbpiste.cpp file (which is no longer used) has been removed, and replaced
+ with pcbpiste.cpp.notused
++ cvpcb
+ * The affiche.cpp file (which is no longer used) has been removed, and replaced
+ with affiche.cpp.notused
+
+
+2007-Oct-11 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ * The previously provided "Exit" button within the "Colors:" dialog box has been
+ replaced with "OK", "Cancel", and "Apply" buttons, and the code for editing the
+ visibility of the Grid layer from that dialog now is "cleaner" than before.
+ Details associated with buttons within that dialog box moved from set_color.cpp
+ to set_color.h (matching implementation for GerbView's corresponding dialog box).
+ * Fixed bug which previously prevented the Copper layer from being selected as the
+ current layer when only one copper layer is enabled (and made some modifications
+ to the code for selecting the next copper layer and previous copper layer).
++ gerbview
+ * The code for editing the visibility of the Grid layer from the "GerbView Layer
+ Colors:" dialog box is "cleaner" than before, and assorted other beautification.
++ eeschema
+ * The options.cpp file (which is no longer used) has been removed, and replaced
+ with options.cpp.notused
+
+
+2007-Oct-10 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * bug fix: prevent OnRightClick() from calling PcbGeneralLocateAndDisplay()
+ when creating a new track.
+ * bug fix: popup menu was not handling Mires, because the collector was not
+ being asked to find them.
+ * added TRACK::ShowWidth() and call it from BOARD_ITEM::MenuText(). There was
+ not enough information in Selection Clarification at a busy junction to
+ make a reasonable choice.
+ * SEGVIA::MenuText() shows via width, rather than net_code.
+ * Beautified ratsnets.cpp, I would like to understand it better. It would help
+ if the comments were in English.
++ all
+ * Changed English UI text "Mire" to "Target" according to this post:
+ http://tech.groups.yahoo.com/group/kicad-users/message/1380
+ * rewrote msgpanel.cpp so it retains wxStrings and therefore can repaint its
+ window when being uncovered, resized or whatever.
+
+
+2007-Oct-9 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ changed pcbnew/onrightclick.cpp so that a right click only shows the
+ Selection Clarification menu if there is no selected object or if the
+ click is in a position different from where the selection was previously
+ made.
+
+
+2007-Oct-09 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema:
+ cross-probing minor bug solved ( due to last modification): pins/pads not probed
+
+
+2007-Oct-08 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ gerbview
+ Display on screen now updates properly (in Linux version) after clicking on
+ the "OK" button provided within the "GerbView Layer Colors" dialog box.
+
+
+2007-Oct-7 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema
+ create new file cross-probing.cpp
+ move RemoteCommand() to cross-probing.cpp and create SendMessageToPCBNEW()
+
++ pcbnew
+ bug in move pad fixed (could crash pcbnew)
+ Small change in selection clarification (side effect removed):
+ - Escape or click on title does not show the next popup menu.
+ - the title is displayed under linux
+ - definition CUIVRE_N translated into COPPER_LAYER_N
+
+
+2007-Oct-07 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ all
+ * Various dialog boxes can now (otherwise) be cancelled by pressing the "Esc" key.
+ (Some dialog boxes still require attention in that regard though, so that task
+ is not yet complete.) And the captions of the "OK" button within various dialog
+ boxes have been fully capitalised (meaning that an icon is now provided within
+ each of those buttons within the Linux version of KiCad).
+ * DIALOG_STYLE (defined within include/wxstruct.h) now includes MAYBE_RESIZE_BORDER
+ field. (Refer to 2007-Oct-2 UPDATE notes for the relevance of this.)
+ * Beautification and house keeping.
++ eeschema
+ * The editpart.cpp and libedpart.cpp files (which are no longer used) have been
+ removed, and replaced with editpart.cpp.notused and libedpart.cpp.notused
++ cvpcb
+ * Additional "OK", "Cancel", and "Apply" buttons have now been provided for the
+ "Options" dialog box which lists various display options for footprints.
++ pcbnew
+ * Invoking the "Select Layer Pair:" dialog box is no longer possible whenever only
+ one (copper) layer is currently enabled. And it is no longer possible to select
+ the same layer to be both the Top Layer and Bottom Layer (for any Layer Pair).
+ * Deselecting layers during the "Swap layers" command is now more user-friendly,
+ due to the provision of an additional "(Deselect)" radiobutton within the (child)
+ "Select Layer:" dialog box (which is always invoked whenever a different
+ radiobutton within the "Swap Layers:" dialog box is clicked on). (It had
+ previously been necessary to cancel the "Select Layer:" dialog box before being
+ able to click on the "Deselect" button within the "Swap Layers:" dialog box.)
+ * Definition for NB_LAYERS changed from (EDGE_N + 1) to (LAST_NO_COPPER_LAYER + 1)
+ (Although EDGE_N is currently the "last" layer, that wouldn't necessarily still
+ be true if any additional layers are ever defined in the future.) And comparisons
+ to 29 (or 28) have been replaced with comparisons to NB_LAYERS (when appropriate).
++ gerbview
+ * The previously provided "Exit" button within the "GerbView Layer Colors" dialog
+ box has been replaced with "OK", "Cancel", and "Apply" buttons; and both the
+ visibility and color of the Grid layer can now be edited from the same dialog.
+ * Deselecting (Gerber) layers during the "Export to Pcbnew" command is now more
+ user-friendly, due to the provision of an additional "(Deselect)" radiobutton
+ within the (child) "Select Layer:" dialog box (which is always invoked whenever
+ a different radiobutton within the "Layer selection:" dialog box is clicked on).
+ (It had previously been necessary to cancel the "Select Layer:" dialog box before
+ being able to click on the "Deselect" button within the "Layer selection:" dialog
+ box.)
+ * The "Export to Pcbnew" command now requires at least one Gerber file to have been
+ already loaded. And Gerber files can now be loaded into any of the 32 (Gerber)
+ layers provided. (It had previously been necessary to avoid having any gaps within
+ the sequence of used Gerber layers.)
+
+
+2007-Oct-6 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew
+ create new file cross-probing.cpp
+ move RemoteCommand() and SendMessageToEESCHEMA() to cross-probing.cpp
+
+
+2007-Oct-3 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ made BOARD_ITEM::UnLink() virtual
+ added BOARD_ITEM::DeleteStructure().
+ added EDA_BaseStruct::DeleteStructList()
+ deleted gerbview/struct.cpp, pcbnew/struct.cpp,
+ BOARD::~BOARD() now deletes objects that it owns.
+ Collectors now finds MARQUEURs also
+ added MARQUEURS::Display_Infos()
+ added MARQUEURS::HitTest()
+
+
+2007-Oct-2 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ all
+ The lack of border resizing in dialogs has been a problem. In my world,
+ dialog boxes are resizable. I use large fonts, I like to see stuff.
+ So now for __UNIX__ they are resizeable, for windows not.
+ See fctsys.h and the #define for MAYBE_RESIZE_BORDER. For windows it defaults
+ to zero which means resizeable is not featured. A compiler command line
+ option of "USE_RESIZE_BORDER" can override this windows default.
+
+
+2007-Oct-01 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew/eeschema
+ Cross-probing pcbnew to eeschema:
+ A left click on a pad in pcbnew moves the eeschema cursor on the corresponding component pin
+ A left click on a footprint ref or value in pcbnew moves the eeschema cursor on the corresponding component ref or value
+ A left ckick on a footprint moves the eeschema cursor on the corresponding component anchor
++ pcbnew
+ removed drc.cpp change line 584, and translate comments in english.
+ nothing broken:
+ -> a pad with its netcode = 0 means the pad ** must be left unconnected ** (not attached to * a net).
+ -> a track with its netcode = 0 means the track is not attached to a net (cannot be connected to any pad).
+
+
+2007-Sep-30 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ Added dedicated Show() function for SEGVIA. Enhanced BOARD_ITEM::MenuText()
+ for SEGVIA.
+
+
+2007-Sep-29 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * drc.c made a change near line 584 to comment out pt_pad->m_NetCode test against
+ zero. This was preventing me from laying out my board. It's possible that
+ this broke something else, but it is also clear that something was broke before
+ this change, because I could not put down some tracks.
+ * beautification, house keeping.
+
+
+
+2007-Sep-29 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew
+ create new file onleftclick.cpp
+ move onleftcligk() and onleftDcligk() from edit.cpp to onleftclick.cpp
+
+
+2007-Sep-27 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all
+ test case for OnLeftClick() handling enhancements.
+ TAB key removed, because is not needed for block selection and double click.
+ (SHIHT ou CTRL or ALT key is sufficient to suppress the popup menu
+ if needed for a double click )
+ Some work is still needed, of course
++ pcbnew
+ Color grid setting now works
+
+
+2007-Sep-26 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ all
+ test case for OnLeftClick() handling from a release circumstance.
+ a few simple changes to void WinEDA_DrawPanel::OnMouseEvent( wxMouseEvent& event ),
+ but they affect all programs in a subtle way.
+ TAB key allow double clicking, but is not needed for block selection.
+
++ pcbnew
+ GENERAL_COLLECTOR::GetCount() returns int, not unsigned. Was tired of the
+ compiler complaining when using an int ndx.
+
+
+2007-Sep-25 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * removed reference to global display options DisplayOpt.DisplayZones in
+ collectors.cpp so collectors.cpp can continue to be used in multiple future
+ (non-display related) general contexts. I don't want unnecessary dependencies
+ in there. The way to completely ignore a type is to exclude it from scanList.
+ The way to sometimes ignore a type is to add support for this in COLLECTORS_GUIDE.
+ * Moved TYPEZONE to end of AllBoardItems, added GENERAL_COLLECTOR::AllButZones to
+ provide support for DisplayOpt.DisplayZones.
+ * Added aHotKeyCode to PcbGeneralLocateAndDisplay()
++ gerbview
+ * viewer was getting stuck in a loop when loading a bad gerber file. Fixed
+ the bug, but line 223 through 225 of readgerb.cpp needs review.
+ * beautified a few files with uncrustify, (any I had to look at).
+
+
+2007-sept-25 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ * add class_board_item.cpp file and move BOARD_ITEM::MenuText() and BOARD_ITEM::MenuIcon() in it
+ * Add zone detection, forgotten in PcbGeneralLocateAndDisplay()
++ class_collector.h:
+ add void COLLECTOR::Remove( unsigned int item_position ), needed by zone detection, see PcbGeneralLocateAndDisplay
+
+
+2007-Sep-25 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ gerbview
+ The "Exit" button previously provided within the dialog box invoked from the
+ "Preferences -> File ext" menu entry has now been replaced by "OK" and "Cancel"
+ buttons. Similarly, the "Accept" button previously provided within each of the
+ dialog boxes invoked from the "Preferences -> Options" and "Preferences -> Display"
+ menu entries has now been replaced by an "OK" button. And each of those three
+ dialog boxes can now (otherwise) be cancelled by pressing the "Esc" key.
+
+
+2007-sept-22 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all
+ * small change in hotkeys handling
+ (Ki_HotkeyInfo: new member m_IdMenuEvent to call an existing event handler from a hotkey list)
+
++ eeschema:
+ * added drag component in pop up menu and hotkeys
+ * plot svg format: incorrect arc draw fixed
+
+
+2007-Sep-22 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ GENERAL_COLLECTOR::Collect() was skipping thru hole pads even though they
+ were visible.
+ Highlight tool now sends message to eeschema when a pad is selected.
+
+
+2007-Sep-20 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ eeschema
+ * beautify, add debug Show() functions, changed ReturnFieldName()
+ to return "const wxString&" for speed, added GetFieldValue().
+ * tracking down questionable behavior (a bug?) in erc regarding pwr_flag, still looking
+
+
+2007-sept-20 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all
+ * hotkeys handling finished
++ pcbnew
+ * bug fix: a subtle bug in place via : partial drc only was made.
+
+
+2007-Sep-14 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * controle.cpp, added Function AllAreModulesAndReturnSmallestIfSo() which is
+ called from PcbGeneralLocateAndDisplay()
+ * onrightclick.cpp changed to calls to BOARD_ITEM::MenuText(), and switched
+ to member functions for createPopupMenus() so we can get all the state
+ information we need for the proper menus.
+ * BOARD_ITEM::MenuText() got new argument BOARD*, and elaboration for
+ TRACKs and VIAs and Pcb Graphics.
+ * Fixed a problem in GENERAL_COLLECTOR::Inspect() so it now knows that MODULEs
+ have their own visibility controls (same for pads and pcb texts). This
+ interpretation must always match the drawing code's interpretation.
+ * Made TRACK::TRACK( const TRACK& ) protected to enforce use of TRACK::Copy()
+
+
+2007-Sep-13 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ kicad
+ * Inverted the logic associated with filters. Filters now enable a file
+ in the project manager. The default is to ignore all files.
+ * The filter for *.sch files is smarter, in that it looks to display only
+ top level *.sch files, rather than all *.sch files.
++ Others
+ More beautification
+
+
+2007-sept-13 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all
+ * EDA_BaseStruct.SetType() removed.
+ The m_StructType member of class EDA_BaseStruct is no more modified in kicad.
+ Now Virtual functions can be widely used.
+ * The old EDA_BaseStruct.ReturnClassName() was removed.
+ the virtual EDA_BaseStruct.GetClass() is used instead.
+
++ gerbview: hotkeys Ok.
+
+
+2007-Sep-13 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema & pcbnew & gerbview
+ A Cancel button has now been provided for the "Colors" dialog box, which also
+ permits it to (otherwise) be cancelled by pressing the "Esc" key; the button
+ whose color matches that of the color currently selected (for the layer being
+ edited) also has the initial focus set to it.
+
+
+2007-Sep-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * Changed PcbLocateAndDisplay() to be tool specific in its search and to present
+ a popup menu when there are multiple items under the mouse. It is also
+ a framework for future enhancements.
+ @todo: grep for @todo and finish off those tasks.
+ * Introduced a formal notion of "selected item". This is done with the addition
+ of the WinEDA_BasePcbFrame::SetCurItem() function. So now you have to first
+ select an item with the left mouse button before you attempt to use the
+ right button popup menu. Right button no longer has an effect on the
+ currently selected item. The currently selected item is shown in the MsgPanel.
+ When none is selected, the m_Pcb is shown.
+ * Tweaked the OnRightClick() popup menus so that the most likely choices are
+ at the top.
+ * Added wxString BOARD_ITEM::MenuText() const and BOARD_ITEM::MenuIcon() and
+ both need more work, work which I will not have time to do.
+
+
+2007-Sep-10 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * Searched and did not see any usage of TRACK::Copy(int), where int was other
+ than '1', so renamed it to TRACK::CopyList(int) and commented it out because
+ with int==1, this makes Copy(1) equivalent to the new Copy(void).
+ * Made TRACK::Copy() capable of copying SEGZONE too.
+
+
+2007-sept-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ gerbview
+ Programmable hotkeys added. Fixed a compilation probleme in ansi mode (non unicode mode).
+
+
+2007-Sep-8 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * Made good progress in onrightclick.cpp for multiple items under the mouse.
+ * Fixed some macros in macros.h so they can be followed with a semicolon and
+ used like simple expressions.
+ All changes not yet committed.
+
+2007-sept-6 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema & pcbnew
+ Programmable hotkeys update.
+ some features are still subject to change (mainly path for config files: see 2007-aug-30 UPDATE))
+ The preference menu has a command to create and reread config hotkey files.
+ the hotkey ? lists the current hotkeys.
+
+
+2007-Sep-4 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * Made GENERAL_COLLECTORS_GUIDE and GENERAL_COLLECTOR useable. They can now
+ serve as a fully functional replacement for PcbGeneralLocateAndDisplay(),
+ see DEBUG code in BOARD_ITEM* WinEDA_BasePcbFrame::PcbGeneralLocateAndDisplay().
+ * Made GENERAL_COLLECTOR capable of Collect()ing from a MODULE as well as a BOARD.
+ * pcbnew/onrightclick.cpp changed English from "Free Module" to "Unlock Module".
+ Next I hope to add some UI to handle multiple items under the mouse in onrightclick.cpp
+
+
+2007-sept-04 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew
+ better comments in editrack-part2 (the todo remark solved)
++ todo.txt: note about editrack-part2 modified (problem solved)
+
+
+2007-Aug-31 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & gerbview
+ * Added TRACK::Copy() which can copy a SEGVIA or a TRACK.
+ * Changed export_to_pcbnew.cpp so it created a SEGVIA properly, a significant change.
+ Moved and changed a big block of code in export_to_pcbnew.cpp so we can
+ properly construct the SEGVIA(). Not tested.
+ * Make EDA_BaseStruct::m_StructType private so we can trap where it is being
+ changed. (It should never be changed after construction, see comment above
+ EDA_BaseStruct::SetType().)
+
+
+2007-Aug-30 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ * Removed SEGVIA::IsViaOnLayer, and instead implemented an override to
+ virtual BOARD_ITEM::IsOnLayer() called SEGVIA::IsOnLayer().
+ * Tweaked TRACK::Visit() to not traverse the KICAD_T scan list and a
+ corresponding change to BOARD::Vist() so we can now get VIA priority
+ if desired. (Have to traverse m_Tracks twice, wonder if we could use
+ two lists: m_Tracks and a new m_Vias?)
+ * Changed signature of MODULE::Display_Infos( WinEDA_DrawFrame* frame ) so
+ it gets called virtually with any BOARD_ITEM* which is actually a MODULE*.
+ This was a bug.
+ * With virtual functions, it is now critical that the correct object type
+ be instantiated. This was not happening in ioascii.cpp when reading
+ the vias. Bug fixed.
+ * GENERAL_COLLECTOR getting closer to useable.
+
+
+2007-aug-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema & pcbnew
+ more about programmable hotkeys.
+ Most existing hotkeys are programmable and displayed in popup menus or tools
+ Work still in progress but most features are ok.
+ some features are not fixed (mainly the configuration files path, which is
+ currently the home directory under unix systems and kicad/template under windows))
+
+
+2007-Aug-29 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ Started abstract class COLLECTORS_GUIDE.
+ Renamed classtrc.cpp to classtrc.cpp.notused
+ Changed some comments in class BOARD's header to english, clarifying
+ linked list contents.
+
+
+2007-aug-27 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ all
+ Display grid size in mils or mm in popup menu according to the current unit choice
+
+
+2007-Aug-24 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ eeschema & pcbnew
+ * Removed class EDA_BaseLineStruct, which brought no behavioral advantage, only data.
+ Classes which were based on it got its data members added and their initializers.
+ * Changed type of EDA_BaseStruct::m_StructType from int to KICAD_T which is an
+ enum. This makes debugging easier since gdb will show the name of the
+ KICAD_T rather than simply a number. Added NOT_USED = -1 to KICAD_T enum for
+ 3d which was using -1.
+ * More beautification using latest uncrustify and the committed uncrustify.cfg
+
+
+2007-Aug-24 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ A new option has now been provided which permits Gerber files to be generated
+ in which the contents of the Edges Pcb layer are not also included with the
+ contents of each other layer.
+
+
+2007-Aug-23 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ eeschema & pcbnew
+ * Fixed MODULE::Visit() and BOARD::Vist() so they traverse certain lists
+ only once and they are working nicely now.
+ * You can test the GENERALCOLLECTOR::Scan() code by compiling with DEBUG=1 on
+ the command line and enabling the stuff near line 124 in
+ pcbnew/controle.cpp, then watch Show( std::cout ) show the selected items in
+ xml format on your console. (launch pcbnew from command line.)
+ @todo:
+ The layer selection mechanism used by the collector is still inadequate, so
+ tomorrow I will add a new class COLLECTORS_GUIDE which can be used by a
+ COLLECTOR to control its operation. It adds the concept of layer
+ locking, even though PCBNEW does not support that in the UI yet.
+
+
+2007-Aug-22 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ eeschema & pcbnew
+ Things are still pretty transient, should be stable a day or two:
+ * Fixed a filename case sensitivity problem that would show up on Linux
+ but probably not on Windows: bitmap/Reload.xpm needed uppercase R.
+ * Wedged a new class BOARD_ITEM underneath all PCB drawable classes. This is
+ a big change and may introduce a bug or two, but it is worth it for the
+ future, because we can add virtual functions there that do not impact
+ the entire project (since everything is derived from EDA_BaseStruct).
+ The corresponding class in EESCHEMA seems to be DrawPartStruct, so we had
+ nothing in PCBNEW like that.
+ BOARD_ITEM::GetLayer() and SetLayer() introduced, more functions to come.
+ Much of this work is geared towards making collectors.cpp's ARROWCOLLECTOR::Inspect()
+ very very simple, and that can be a model for future work.
+ * Changed min() and max() macros to MIN() and MAX() because min() and max()
+ are actually reserved according to the C++ standard! (and their usage prevented
+ the use of #include <vector>).
+ * Added files class_collector.h, collectors.h, and collectors.cpp.
+ File collectors.cpp is still unfinished.
+ * Started using a function and class comment style that will make sense to the
+ Doxygen source code documenter program.
+ * Beautified more un-beautified files.
+
+
+2007-aug-21 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema & pcbnew
+ First version of programmable hotkeys by editing hotkey configuration files.
+ some hotkeys are not programmable (Zoom)(work in progress)
+
+
+2007-Aug-21 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ administrative
+ Added copyright.h as a proposed copyright header for Mr. Charras's review.
+ Added uncrustify.cfg, the configuration file for the "uncrustify" C++ beautifier.
+
+
+2007-Aug-20 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & eeschema
+ * Moved allowed m_Flags values from pcbnew.h, general.h, and eeschema/delete.cpp to base_struct.h
+ near m_Flags itself. Several of the flags values were changed. I am only
+ comfortable with this change if m_Flags is not written to disk anywhere,
+ and we need to give that some thought. If m_Flags is a memory only usage
+ and not saved to disk, then this change should be safe. I could not find
+ any case where m_Flags was being saved to disk, but I could have missed one.
+ The reason for the change was to consolidate into one place the allowed values
+ so that as new flags are allocated there is no conflict.
+ * Moved most all the pcbnew/affiche.cpp functions to virtual member functions of their
+ respective classes with the name Display_Infos().
+ * Moved GetEquipot() global function to BOARD::FindNet().
+ These changes are working towards a concise locate.cpp module, on the way
+ to implementing the multiple choice support. Mass edits should be slowing down
+ in a day or so.
+
+
+2007-Aug-20 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ eeschema & pcbnew
+ The comments provided within postscript files now fully comply with Adobe's
+ Document Structuring Convention.
+
+
+2007-aug-20 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema & pcbnew
+ modify hotkeys.cpp code (large modifications).
+ Added: common code in hotkeys_basic.cpp (in common) and hotkeys_basic.h (in include)
+ In the future, i hope hotkeys will be programmed by a config file
+
++ pcbnew
+ filename drc_dialog.prj changed to dialog_drc.prj
+ (according to the fulename dialog_drc.cpp and dialog_drc.h created by dialogblock from the .prj)
+
+
+2007-Aug-19 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ all
+ * Made BASE_SCREEN::m_CurrentItem private so we can force usage of the new
+ SetCurItem() function, and use it to put a breakpoint on the only place
+ that m_CurrentItem is changed, namely in the new SetCurItem() function.
+ ( Added new function GetCurItem() as well to class BASE_SCREEN in
+ drawpanel_wxstruct.h.) Using a stack trace at the breakpoint we can tell
+ who called it. There were in excess of 450 edits to get this done so I
+ had to commit it asap so other folks could get on with edits without a
+ merge conflict.
+ * Started work on the COLLECTOR class which will assist in giving a choice
+ in PCBNEW when there is more than one click candidate at the same mouse
+ or cursor coordinates. COLLECTOR not committed yet.
+ * More beautification.
+ * The mouse click and part synchronization from EESCHEMA to PCBNEW would
+ track fine but would not always position the PCBNEW part on screen. Now
+ we center it unconditionally. No change was made in the reverse direction
+ since that code uses the long established Find support.
+
+
+2007-Aug-14 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ eeschema & pcbnew
+ * Added mouse click, TCP/IP socket based, part synchronization in the reverse
+ of how it was working, so a mouse click on a module in PCBNEW will take
+ EESCHEMA to the part with the same reference.
+ * More beautification, working with developer of uncrustify. Almost ready
+ to add the customized uncrustifiy configuration file to this project.
+ * Fixed a bug in pcbnew/tracepcb.cpp's WinEDA_PcbFrame::Trace_Pcb( wxDC* DC, int mode )
+ which was using a bool for the MaskLay variable, causing through hole pads
+ on modules on copper layer not to be shown when the copper components were
+ set to invisible.
+
+
+2007-aug-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema
+ modify hotkeys.cpp code.
+
+
+2007-Aug-10 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & common
+ Improved MODULE::FindPadOrModule().
+ Ran more source files through auto-beautifier.
+ Renamed dupltrac.cpp to dupltrac.cpp.notused.
+
+
+2007-aug-10 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema
+ better hotkeys.cpp code.
+
+
+2007-Aug-09 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & common
+ Released the new Visitor paradigm. Wrote MODULE::FindPadOrModule() using
+ it.
+
+
+2007-aug-09 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema
+ Some new hotkeys (see hotkeys.cpp).
+ Now, the key ? display the current existing hotkeys
+
+
+2007-Aug-08 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & common
+ * Renamed locate.cpp's distance() to DistanceTest() and moved it to trigo.cpp.
+ Pass more parameters to DistanceTest and removed globals that were used by
+ distance() in locate.cpp.
+ Moved and renamed DistanceTest function proto from protos.h to trigo.h.
+ * Implemented HitTest() for class_cotation, class_mire, and a few other classes
+ by factoring out existing code from locate.cpp. locate.cpp should operate
+ exactly the same as before.
+ * Improved or implemented the Show() function for several classes.
+ * Detected that the suspected class_module hit-testing bug was not real,
+ i.e. no bug found.
+
+
+2007-aug-08 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ eeschema
+ bug in class_hierarchy_sheet.cpp.
+
++ pcbnew
+ small change in block commands:
+ rastnest was updated for each footprint, while moving footprints.
+ Now it is updated at the end of changes.
+ enhancements in block.cpp and connect.cpp
+
+
+2007-Aug-07 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & common
+ * More searching work. Made HitTest() virtual. Factored out a HitTest()
+ function for both class_module and class_pad from existing code.
+ * Embellished the Show() function for several of the classes. Could be the
+ basis of a possible future XML export, but with the native format being
+ ascii already, this is of questionable value as an export.
+ * Discovered a long time existing bug in class_module hit-testing.
+ Still need to understand it. It could just be an improperly formatted module.
+
+
+2007-Aug-06 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & common
+ Started sketching out a new search architecture. To learn more:
+ look for "INSPECTOR" text in base_struct.h.
+
+
+2007-Aug-05 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew & common
+ * Added some conditional DEBUG code for showing the pcb object tree in
+ simple XML format. See class EDA_BaseStruct's new Show() function.
+ * Changed the function name of Locate( const wxPoint& ref_pos ) to bool HitTest(..)
+ in both class_text_mod and base_struct.
+ * More beautification and commenting.
+
+
+2007-Aug-04 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ Read-ability formatting, I am playing with a C++ beautifier called "uncrustify".
+ I had to patch it and spent 2 days getting it configured. Patch not
+ sent upstream yet.
+ Fixed a bug in "display local ratsnest pad or module": if you had a small
+ module and the mouse clicked its reference text, the ratnest for
+ the associated module would not show. The work around was to add
+ support to Show_1_Ratsnest() so it could take a TYPETEXTEMODULE as
+ the result of the hit-testing. But I think a longer term better
+ solution will be to create a specific search function for this kind
+ of hit-testing, one which could disregard text and look only for
+ pads and modules.
+
+
+2007-aug-02 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew
+ Drc test now generates a DRC file report.
+
+
+2007-Jul-31 UPDATE Geoff Harland <gharlandau@yahoo.com.au>
+================================================================================
++ pcbnew
+ Drill Map and Drill Report files now list the diameters of each drill in
+ the selected drill unit first, and then in the other drill unit.
+ Drill report files also now list the tool assigned to each drill, and
+ the correct hole count and oval count for each drill size; the
+ file creation date and the selected drill unit are also listed.
+
+
+2007-Jul-30 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew
+ Some file are added (missing .prj files)
+ Better Drc test:
+ Zones can be tested.
+ better pad to pad test.
+
+
+2007-Jul-25 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
+ ** Some minor enhancements
++ pcbnew
+ In Drc diags, better (more explicit) messages
+ Change (and simplify) code in 'update' as well as 'insert' modules into main PCB from within the module editor,
+ because it had a bug (crashes when there was no footprint in pcb)
+
+
+
+2007-June-21 UPDATE Tim Hanson <tim@hardcarve.com>
+================================================================================
++ pcbnew
+ 1. added button to 'update' as well as 'insert' modules into main PCB
+ from within the module editor. Made them functional, of course.
+ 2. added control-o, control-s & control-f to pcbnew,
+ though I'm not perfectly happy with the implementation -- wxwidgets puts
+ the control-characters in alphabetical order!
+
+
+2007-June-25 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew
+ minor enhancement in Edit footprint dialog (more help tool tips).
+ better hotkey.cpp (code cleaning and info messages)
+
+
+2007-June-19 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ After locking a module with 'L', update the status window with the locked
+ status. Side step some asserts from wxWidgets which were happening when
+ running compiled for debug.
+
+
+2007-June-16 UPDATE Richard A Burton <richardaburton@gmail.com>
+================================================================================
++ pcbnew
+ fix debug assert starting pcbnew with wx2.6
++ build
+ add install targets for resources and docs
+
+
+2007-June-15 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ pcbnew
+ ** only modules on the present layer are subject to individual module
+ moves, rotations, or layer swaps, with the 'M', 'G', 'R' or 'S' hotkeys.
+ ** only unlocked modules are subject to the individual module moves,
+ rotations, or layer swaps, with the 'M', 'G', 'R' or 'S' hotkeys.
+ ** implemented the 'L' hotkey to quickly lock or unlock a module,
+ just by hovering over it and hitting the 'L' or 'l' key. The lock is
+ toggled.
+ ** Enhanced locate.cpp's Locate_Prefered_Module(BOARD * Pcb, int typeloc)
+ significantly, it now has a widely ranging behavior based on the
+ typeloc argument.
+
+
+2007-June-14 UPDATE Igor Plyatov <plyatov@mail.ru>
+================================================================================
++ eeschema
+ Added sorting by value or position in to the annotation window
+ (Thanks for patch to Andrey Fedorushkov).
+
+2007-June-13 RELEASE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++All:
+ merging my development with svn version
+
++ pcbnew:
+ bug fix (problem in postscript generation due to the internationalization
+ of floating point number notation )
+ added tool to select layer pair and monitor active layer
+
++ eeschema
+ bug fix:
+ crash libedit when loading certain components (linux only)
+ incomplete generation of erc file list
+
+
+2007-June-13 UPDATE Richard A Burton <richardaburton@gmail.com>
+================================================================================
++ build:
+ dynamic linking by default, use make -f makefile.gtk KICAD_STATIC_LINK=1
+ or uncomment the bit in libs.linux for static
+
+
+2007-June-11 UPDATE Richard A Burton <richardaburton@gmail.com>
+================================================================================
++ build:
+ removed several 2 line scripts for configuring wx builds and put them in
+ how-to-build-kicad.txt
+ improved KICAD_STATIC_LINK handling so it can be overridden on the command
+ line e.g. "make -f makefile.gtk KICAD_STATIC_LINK=0"
+
+
+2007-June-11 UPDATE Dick Hollenbeck <dick@softplc.com>
+================================================================================
++ Started this change log file.
+
+
+2007-June-5 UPDATE Richard A Burton <richardaburton@gmail.com>
+================================================================================
++ pcbnew:
+ fixed 3d-display image export (blank box in image)
++ build:
+ fixed makefile clean targets so they don't fail if already clean
+ fixed wx2.6 compatibility
+
+
+2007-May-25 RELEASE Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
+================================================================================
++ pcbnew:
+ bug: problem with 3D shapes.
++ Gerbview:
+ Better (but crude...) support to export gerber files to pcbnew.
+