diff options
Diffstat (limited to 'Documentation/changelogs/CHANGELOG-2011.txt')
-rw-r--r-- | Documentation/changelogs/CHANGELOG-2011.txt | 297 |
1 files changed, 297 insertions, 0 deletions
diff --git a/Documentation/changelogs/CHANGELOG-2011.txt b/Documentation/changelogs/CHANGELOG-2011.txt new file mode 100644 index 0000000..fc3e1e6 --- /dev/null +++ b/Documentation/changelogs/CHANGELOG-2011.txt @@ -0,0 +1,297 @@ +KiCad ChangeLog 2011 +==================== + +Please add newer entries at the top, list the date and your name with +email address. + + +2011-Dec-19, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> +================================================================================ +Pcbnew: + Enhanced algorithms to calculate board connections: + - A track is seen connected to a pad if the track end is inside the pad shape. + - Pads inside pads are now seen connected, if the center of the pad is + *inside* the other pad. + (this is made to be sure a large copper area is shared by the 2 pads, + and to keep algorithm fast). + Algorithm to calculate pads connections is still very fast. + However some other functions (drag pads, track len calculation ...) + still need the track end exactly on the pad position. + + +2011-Dec-13 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++common + * changed all the RotatePoint() functions in trigo.{h,cpp} to take a double as the + angle, which is still in tenths of degrees for now. + * EDA_TEXT::m_Orient is now double, still in tenths of degrees (for a short while), + but the double means parsing files and saving them use a different format string. +++pcbnew + * DRAWSEGMENT::GetStart() and GetEnd() do not operate for S_ARC like they used to. + They are now simply accessors for m_Start and m_End. Use DRAWSEGMENT::GetArcStart() + and GetArcEnd() and GetCenter() for arcs. specctra_export.cpp was the only + source file dependent on the old behavior. + * DIMENSION::m_Text is now contained, not dynamically allocated. + * more kicad_plugin work. + + +2011-Dec-9 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++PCBNew + * added BOARD::GetPad(int), made BOARD::m_NetInfo private, and contained + within the BOARD, not dynamically allocated and owned via pointer. + * added BOARD::GetPadCount() + * changed NETINFO_LIST::GetCount() to GetNetCount() + * added BOARD::GetNetCount() + * more kicad_plugin work. + +2011-Dec-5 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++PCBNew + * Removed Pcb_Frame argument from BOARD() constructor, since it precludes + having a BOARD being edited by more than one editor, it was a bad design. + And this meant removing m_PcbFrame from BOARD. + * removed BOARD::SetWindowFrame(), since BOARD::m_PcbFrame gone. + * Removed the global BOARD_DESIGN_SETTINGS which was in class_board.cpp + * Added BOARD_DESIGN_SETTINGS to the BOARD class, a full instance + * A couple of dialogs now only change BOARD_DESIGN_SETTINGS when OK is pressed, + such as dialog_mask_clearance, dialog_drc, etc. + * Removed common/pcbcommon.cpp's int g_CurrentVersionPCB = 1 and replaced it + with build_version.h's #define BOARD_FILE_VERSION, although there may be a + better place for this constant. + * Made the public functions in PARAM_CFG_ARRAY be type const. + void SaveParam(..) const and void ReadParam(..) const + * PARAM_CFG_BASE now has virtual destructor since we have various ways of + destroying the derived classes and boost::ptr_vector must be told about this. + * Pass const PARAM_CFG_ARRAY& instead of PARAM_CFG_ARRAY so that we can use + an automatic PARAM_CFG_ARRAY which is on the stack. + * PCB_EDIT_FRAME::GetProjectFileParameters() may no longer cache the array, + since it has to access the current BOARD and the BOARD can change. + Remember BOARD_DESIGN_SETTINGS are now in the BOARD. + * Made the m_BoundingBox member private, this was a brutally hard task, + and indicative of the lack of commitment to accessors and object oriented + design on the part of KiCad developers. We must do better. + Added BOARD::GetBoundingBox, SetBoundingBox(), ComputeBoundingBox(). + * Added PCB_BASE_FRAME::GetBoardBoundingBox() which calls BOARD::ComputeBoundingBox() + + +2011-Dec-04, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> +================================================================================ +Pcbnew: + Enhanced algorithms to calculate board connections: + Previously, a track was seen connected to a pad only if the track end is + exactly on the pad position. + Now a track is seen connected to a pad if the track end is inside the pad shape. + Algorithm to calculate pads connections to track is still very fast. + However some other functions (drag pads, track len calculation ...) + still need the track end exactly on the pad position. + +2011-Nov-27 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++PCBNew + * Add PLUGIN and IO_MGR classes. + * Remove one argument from BOARD constructor, + * add BOARD::SetWindowFrame() + +2011-sept-13 UPDATE Wayne Stambaugh <stambaughw@verizon.net> +================================================================================ + PCBNew locate code refactoring. + + * Move various locate functions into the appropriate board item object. + * Unified best zoom for all frames derived from PCB_BASE_FRAME. + * Remove track.cpp as it is no longer needed. + * Dead code removal. + * Remove scary frame window pointer member from board item objects. + * Add draw bounding box to gerber draw item for debugging purposes. + +2012-Sept-8 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++all + * Write an automatic bitmap generation script in cmake, PNG2cpp.cmake + * Write an infrastructure generate *.png files from inkscape files, and do + it maintaing the "as needed" change detection support. + * Support an *.SVG maintainer mode, AND an *.SVG user mode. + * Engineer a seemless switchover from old style xpm files, with minimal + impact to system wide source code. + +2011-Sept-07, UPDATE Andrey Fedorushkov <andrf@mail.ru> +================================================================================ +Pcbnew: + Add hotkey "P" - place item + Add Roman Bashkov patch for record/play sequence hotkey macros + Add record and play macros for sequence hotkey. + Macros set to numeric key 0..9: + <Ctrl>+<numkey> - start record macros + <hotkey> <mouse move> ... <hotkey>|<mouse place> + <Ctrl>+<numkey> - end record macros + <numkey> - play macros + Add menu save/read macros to/from xml-file + Add configure rotate angle for rotate module: 45 or 90 deg. + Fix segfault when move/drag segment if disconnected to pad + +2011-Sept-01, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> +================================================================================ + Add Fabrizio Tappero <fabrizio-dot-tappero[at]gmail-dot-com> in contributors list. +Eeschema: + Graphic texts ans labels: fix fully broken undo/redo code relative to the way undo/redo command + handles changes (maintly move) for labels + Fix minor bug for undo command relative to block rotate + Remove dead code. + Add new class BITMAP_BASE, and (for Eeschema) SCH_BITMAP to handle bitmap images in schematic. + Remember plot Bitmaps in not possble with all plotters. + + +2011-Aug-19, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> +================================================================================ +Pcbnew: + Add support for not plated through holes (NPTH) pads + * These NPTH pads are used for mechanical purpose only, and cannot be connected to a net. + * When these pads have a same size and shape for the hole and the pad, the pad is not plotted + in GERBER files. + +2011-Apr-12, UPDATE Jerry Jacobs <xor.gate.engineering@gmail.com> +================================================================================ +Minor UI changes that affect OS X platform. + - Fix for opening the help contents + - Fix for opening files with the default editor + - Fix for opening PDF files + +Solved all with the BSD open command, for other OS'es which have X11 and +utilities they can use the xdg-open command which I added to the pdf viewer tries +list. + +Kicad projectview: +Remove not-existing files when a empty project is created, this confuses when +users try to open it. Show a entry that the project is empty instead of these +void files. + +2011-Apr-6, UPDATE Jerry Jacobs <xor.gate.engineering@gmail.com> +================================================================================ +Cleanup of all the menubar code to have the same style, remove the C comments. +Make the wxMenu behave native on OSX for KiCad, CvPCB and Gerbview and remove +unneeded ifdefs when using the wxIDs. Add a OnQuit for the gerber frame. +Change item->SetBitmap( item ) to use macro SET_BITMAP for menu items. + +2011-Apr-4, UPDATE Jerry Jacobs <xor.gate.engineering@gmail.com> +================================================================================ +More native OSX changes, this removes some WXMAC defines replaced by wxID +macros. These are handled by wxWidgets itself and reduces in-app platform +defines. More work needs to be done for CvPCB and Gerbview. + +All: + Hotkey names in menu's all have tabs, this looks more uniform and pretty. + +EESschema & PCBNew: + Fix about and preferences wxMenu to be more native (remove unneeded WXMAC ) + Disable all icons in wxMenu on OSX with macro SETBITMAPS + +jp charras: + SETBITMAPS is incorrectly used here. change to SET_BITMAP + +2011-Mar-25 UPDATE Wayne Stambaugh <stambaughw@verizon.net> +================================================================================ + EESchema multiple item hit testing and other minor improvements. + + * Add item clarification context menu to EESchema when multiple unresolved + items are found at the current cross hair position. + * Add collector class SCH_COLLECTOR for supporting multiple item hit testing. + * Removed bit wise masked filtering from schematic item hit testing. + * Removed all old hit testing functions and methods scattered about the + EESchema source code. + * Move terminal point test function into SCH_SCREEN object. + * Fixed bug in terminal point test when terminating a bus to a label. + * Define the < operator for sorting schematic items. + * Add area calculation method to EDA_Rect item. + * Add method for returning an item's bitmap for menu display purposes. + * Add method for returning an item's menu text for menu display purposes. + * Changed EDA_ITEMS container from boost::ptr_vector to std::vector. + * Factor coordinate string conversion code from EDA_DRAW_FRAME to function CoordinateToString(). + +2011-Mar-16, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> +================================================================================ +Gerbview: + Added: read Excellon files created by Pcbnew. + The full Excellon command set is not supported, but drill files created by Pcbnew are supported. + +2011-Feb-05, UPDATE Jean-Pierre Charras <jean-pierre.charras@gipsa-lab.inpg.fr> +================================================================================ +CvPcb: + Code cleanup. Rename WinEDA_CvpcbFrame to CVPCB_MAINFRAME, + according to coding style policy. + Change in CvPcb: + CvPcb does not use now .dcm files, only .mod files, + to read modules keywords and doc + + +2011-Feb-2 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++common: + * macros.h now has TO_UTF8() and FROM_UTF8() which are working converters + to and from UTF-8 encoding for any wxWidgets build mode. We can switch to + them at any time. I am using them now for specctra conversions and + elsewhere where I wanted gauranteed UTF8 encoding. + * added OUTPUTFORMATTER::Quoted( const wxString& ) to simplify converting + to UTF8 encoded s-expression atoms. The recommended technique is now simply: + out->Quoted( wxString ).c_str() + +2011-Jan-30 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++all: + * DSNLEXER::NextTok() now uses two separate modes to parse quoted strings. + This gives us the freedom to control our own destiny separate from the + constraints put on us by the Specctra DSN spec. + * Added Documentation/s-expressions.txt to explain all this. + * Enhanced our quoting protocol by moving away from doubling up double quotes + to a C like escape mechanism. + * Now support multi-line strings, which when properly escaped, can still be + read in as a token originating on a single line. + +2011-Jan-21 UPDATE Wayne Stambaugh <stambaughw@verizon.net> +================================================================================ + EESchema code refactoring and coding policy naming fixes. + + * Move schematic wire and bus break code into schematic screen object. + * Move schematic test for dangling ends into schematic screen object. + * Remove left over debugging output in schematic screen object. + * Remove unused file eeschema/cleanup.cpp. + * Fix bug in schematic line object hit test algorithm. + * Fix a string concatenation compile error added in r2752. + * Rename class WinEDA_BasicFrame to EDA_BASE_FRAME. + * Rename class WinEDA_DrawFrame to EDA_DRAW_FRAME. + * Rename class WinEDA_DrawPanel to EDA_DRAW_PANEL. + +2011-Jan-19 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++all: + * TokenList2DsnLexer.cmake now supports comments, which start with a leading + # character, and may be either on their own line or on a line after a token. + * DSNLEXER::PopReader() now pops even the last LINE_READER* and returns it. +++pcbnew: + * SPECCTRA_DB now inherits from new class SPECCTRA_LEXER, which led to a great + deal of simplification and code factoring. + * Moved specctra keywords into specctra.keywords. + +2011-Jan-17 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++all: + * TokenList2DsnLexer.cmake now wraps each token enum in its own namespace. It + also no longer setup of the "using" directive in the header file, which was + bad behavior. C++ enum values will have name collisions unless the enums + themselves are different namespaces. +++new: + * Sweet library is now a DSO/DLL. + * Brought in SWIG to do a wrap of the Sweet DSO/DLL for unit testing + and scripting. The SWIG DSO/DLLs are built separate from the Sweet DSO/DLL + and are also optional. + +2011-Jan-1 UPDATE Dick Hollenbeck <dick@softplc.com> +================================================================================ +++new: + * Added the basic structure to the Sweet parser in sch_part.cpp. + * Got inheritence working off of the 'extends' keyword and PART::inherit() + * Tossed the units support out of sweet.keywords, since we agreed to go dimensionless. +++richio: + * Added the problemInputLine support to PARSE_ERROR, so UI can show the + offending line of bytes. Yes bytes, not even guaranteed to be characters. + + |