- 05 Dec, 2011 3 commits
-
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
* 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()
-
Dick Hollenbeck authored
* 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(), and BOARD::m_PcbFrame * 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 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 way of destroying the derived class 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()
-
- 04 Dec, 2011 1 commit
-
-
jean-pierre charras authored
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. Dead code removal.
-
- 03 Dec, 2011 1 commit
-
-
jean-pierre charras authored
-
- 02 Dec, 2011 6 commits
-
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
Lorenzo Marcantonio authored
-
- 01 Dec, 2011 5 commits
-
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
Wayne Stambaugh authored
* Replace Eeschema find code with a collector based implementation. * Fixed a search bug when all subsequent searches of an item would ignore the remaining valid child items when an item had more than one child item that matched the search criteria. * Add SCH_FIND_COLLECTOR class to find all items that meet the specified search criteria. * Add SCH_FIND_COLLECT0R_DATA to keep track of information for all matching items. * Use collector to iterate over the list of items that match the search criteria rather than trying to start at the last matched item. * Remove unused searching methods from sheet path and sheet path list objects. * Add replace and replace all functionality to Eeschema find dialog. * Push matching methods down to EDA_ITEM class so they can be used by other derived objects. * Add method to EDA_ITEM to test if item supports replacing. * Add flag to find/replace data to support replace feature. * Disable wild card matching check box when dialog is in replace mode as wild card replacement is not supported at this time. * The usual Doxygen comment and coding policy fixes.
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
- 30 Nov, 2011 5 commits
-
-
Marco Mattila authored
-
Dick Hollenbeck authored
-
jean-pierre charras authored
-
jean-pierre charras authored
Pcbnew: prepare work on new algos for connections calculations.
-
Dick Hollenbeck authored
-
- 29 Nov, 2011 2 commits
-
-
Dick Hollenbeck authored
the GetPosition() and SetPosition() changes. It also starts towards making m_Orientation and m_Thickness fields private with accessors, but does not complete this latter goal.
-
Dick Hollenbeck authored
-
- 28 Nov, 2011 1 commit
-
-
Dick Hollenbeck authored
-
- 27 Nov, 2011 1 commit
-
-
jean-pierre charras authored
Pcbnew: Fix issue in Undo/Redo command: for very large boards ( > 20000 items) this command could take a long time. Now fast.
-
- 26 Nov, 2011 1 commit
-
-
jean-pierre charras authored
-
- 25 Nov, 2011 3 commits
-
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
- 24 Nov, 2011 3 commits
-
-
jean-pierre charras authored
-
jean-pierre charras authored
Eeschema: fix crash in intermediate netlist generation when a component has no pins (like logos or images). Pcbnew: texts in dimensions can be now moved. Gerbview: fix incorrect number of layers in export to pcbnew function.
-
Dick Hollenbeck authored
-
- 17 Nov, 2011 5 commits
-
-
Vladimir Uryvaev authored
-
Wayne Stambaugh authored
-
Vladimir Ur authored
- D_PAD members converted; - style improved; - GetPosition made returning value, added SetPosition; - highly experimental, test it please!
-
Fabrizio Tappero authored
-
Wayne Stambaugh authored
* Fix bug in hierarchical searches using sheet path pointers which are destroyed on every search. Use human readable path as last sheet found in test to prevent comparison of deleted pointers. * Fix a bug in SCH_COMPONENT::Matches() that would prevent searching for pins if the search all fields flags was not set. * Fix a bug in SCH_COMPONENT::Matches() to use the sheet path to perform the comparison to the correct reference designator and unit number. * Fix wrapping in sheet path and sheet path list MatchNextItem methods. * Push search methods down to EDA_ITEM object so advanced searching can be performed on all items derived from EDA_ITEM. * Add virtual method to EDA_ITEM object to test if item supports replacing text. * Replace switch statement magic numbers in Eeschema socket connection code with Pcbnew for improved readability.
-
- 16 Nov, 2011 2 commits
-
-
Dick Hollenbeck authored
-
Vladimir Ur authored
PCB_ITEM: GetPosition -- removed reference load/save length in config
-
- 15 Nov, 2011 1 commit
-
-
jean-pierre charras authored
-