Commit Graph

281 Commits

Author SHA1 Message Date
Wayne Stambaugh 6c28cdc62c More encapsulation work and other minor improvements.
* EDA_RECT and EDA_ITEM completely encapsulated.
* Removed unnecessary EDA_ITEM member m_Selected and replaced functionality
  with SELECTED flag bit.
2011-12-21 08:42:02 -05:00
Dick Hollenbeck 463c17b807 fix EDA_ITEM::Show() prototype bug, fix KICAD_PLUGIN::Save() problem with netclasses. 2011-12-14 11:25:42 -06:00
Dick Hollenbeck 96bb90dee1 kicad_plugin 2011-12-13 22:29:25 -06:00
Dick Hollenbeck b979d1e0b9 plugin work, accessors 2011-12-12 02:37:05 -06:00
Dick Hollenbeck b6dcf9b7f4 Collect all the PCBNew Save() and ReadDesc...() functions into new file item_io.cpp,
which should eventually go away in favor of kicad_plugin.cpp.
Add CMake options USE_NEW_PCBNEW_LOAD and USE_NEW_PCBNEW_SAVE, which should not be
used yet, and both default to OFF accordingly.
2011-12-06 23:39:18 -06:00
Dick Hollenbeck c4979318d2 more plugin work 2011-12-06 23:28:49 -06:00
jean-pierre charras e8c3ca2929 Pcbnew: remove global variables (g_TabOneLayerMask and g_ViaType_Name) 2011-12-06 09:35:13 +01:00
jean-pierre charras d5ea4750e7 Pcbnew: starting work on better ratsnest and connections calculations algorithms.
This first draft should fix bug 851670 and is faster than existing alogorithm.
2011-10-31 14:44:13 +01:00
Wayne Stambaugh 2c251196c6 Minor dialog fixes and code cleaning.
* Grammar and spelling fixes in Eeschema, CvPcb, and Pcbnew path and
  library dialog tool tips.
* Translate the French file name subrill.cpp to highlight.cpp.
* Lots of coding style policy fixes.
2011-10-17 16:01:27 -04:00
Wayne Stambaugh 70569edb05 Pcbnew auto save improvements.
* Factor auto save common code into base frame class so all frame windows
  can take advantage of the shiny new auto save goodness.
* Use a timer instead of depending on mouse and keyboard events to trigger
  an auto save.
* Check for auto save file when opening a board and ask user if they
  wish to use the auto save file or the last saved board file.
* Protect all base frame public members.
2011-10-13 15:56:32 -04:00
Wayne Stambaugh c2f1113e5d Fix Pcbnew KICAD_T enum names for consistency. 2011-10-01 15:24:27 -04:00
Wayne Stambaugh 4b853dedb4 Application name capitalization fixes.
* Correct all user strings and comments for the correct capitalization of
  application names according to JP.  They are KiCad, Pcbnew, CvPcb,
  Eeschema, and GerbView.
* Add a note the the user interface policy about the correct capitalization.
2011-09-30 14:15:37 -04:00
Roman Bashkov 611a5155fc pcbnew:
* Add visible clearance when edit node or track segment,
  add parameter "show clearance for new or edited track with via area"
  in "Display options" menu.
2011-09-30 12:24:10 +04:00
Wayne Stambaugh de96452c41 Minor common PCB library code fixes.
* More common header file compiler fixes.
* Translate French code naming and comments.
* Remove global variable ScreenPcb.
* Dead code removal.
2011-09-24 14:33:28 -04:00
Wayne Stambaugh edd35b4e90 PCB common library header rationalization.
* All header files used to create the PCB common library now compile as
  stand alone code.  This prevents the need to define them in a specific
  order to make source code compile properly.  It should also now be
  possible to relocate the source code to build the common PCB library
  to a separate folder.
2011-09-23 09:57:12 -04:00
JP Charras and Fabrizio Tappero, fabrizio.tappero 846dca8c05 Update .cpp icon files not updated in previous commit.
Fix minor issues.
Fic compil issue in dimension.cpp with wxMSW 2.8.12 (wxMSW 2.8.12 only).
2011-09-22 21:16:55 +02:00
Wayne Stambaugh ab76e809ac PCBNew trace mark code refactoring and other minor fixes.
* Refactor trace mark functions into the board object.
* Remove track.cpp as it is no longer needed.
* Dead code removal.
2011-09-16 11:54:50 -04:00
Wayne Stambaugh e4d1fa12ac PCBNew trace search code refactoring and other minor fixes.
* Refactor trace search functions into the appropriate object.
* Translate French code names and comments.
* Lots of coding style policy fixes.
2011-09-16 10:13:02 -04:00
Wayne Stambaugh 3d7c91af44 PCBNew locate via code refactoring and other minor fixes.
* Refactor via locate code into the appropriate object.
* Rename all HightLight code to HighLight.
* Dead code removal.
2011-09-14 16:04:58 -04:00
Wayne Stambaugh cb78c9452b Undo changes from my last commit that caused a trace drag bug. 2011-09-14 11:08:44 -04:00
Wayne Stambaugh efc93aa52b 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.
2011-09-13 09:29:43 -04:00
Wayne Stambaugh 0c44335795 Lots and lots of PCBNew code cleaning and fix build bug introduced in r3108.
* Changed <wx-2.8/xml/xml.h> to "xnode.h" in pcbnew_config.cpp to fix bug
  when building against wxWidgets 2.9 and above.
* Convert broken wxXmlNode code to use XNODE.
* Overloaded XNODE constructor for creating child nodes.
* Translate French naming conventions.
* Translate French comments.
* Remove tabs from several source files.
* Coding style policy and Doxygen comment fixes.
2011-09-07 15:41:04 -04:00
jean-pierre charras 711c83679e Pcbnew: finish work on Length Die (displays track length, and fulll length and length die for tracks ending on pads having a length die > 0 ) 2011-08-20 16:46:48 +02:00
Dick Hollenbeck e77af399a5 improved comments and formatting 2011-08-09 09:13:01 -05:00
jean-pierre charras 81ddf0bb56 Eeschema: fix bug 812924. Very minor other changes to make translations more easy. 2011-07-20 07:57:06 +02:00
Wayne Stambaugh 2fb2ab0d37 Refactor PCBNew selection clarification menu text code.
* Move menu text code from base board item object to the appropriate
  object.
* Add helper to get board layer to base board item object.
2011-07-14 11:42:44 -04:00
jean-pierre charras 14e3507e16 gr_basic: fix incorrect clipping of thick lines (due to changes in code, the thickness was not taken in account to calculate the clip box size)
Pcbnew: fix a very minor bug.
2011-04-14 20:44:46 +02:00
Wayne Stambaugh 67f70fe079 Coding style and Doxygen comment fixes.
* Rename EDA_Rect class to EDA_RECT.
* Rename EDA_TextStruct class to EDA_TEXT.
* Remove duplicate Doxygen comments from sch_sheet_path.cpp.
2011-03-29 15:33:07 -04:00
Wayne Stambaugh 018292a8c6 PCBNew auxiliary tool bar changes and other minor improvements.
* Remove clearance and net class name read only text boxes from PCBNew
  auxiliary tool bar.
* Display full net class information in message panel when an object that
  supports net classes is selected.
* Move coordinate string conversion function to EDA_DRAW_FRAME object and
  made it more versatile.
* Refresh message panel text when units change.
2011-03-11 10:53:28 -05:00
Wayne Stambaugh 1010601a78 PCBNew control update bug fixes, fixes lp:725963.
* Fix grid select box update bug on context menu.
* Fix via size and track width select box update bugs.
* Fix layer pair indicator button update bug.
* Fix auto track width tool bar control enable bug.
* Fix via size and track width select status bug in context menu.
* Fix layer select box and layer control widget select bug when current
  layer is removed.
* Add virtual function to notify objects derived from EDA_DRAW_FRAME that
  the units setting has changed.
* Coding policy class naming fixes.
2011-03-01 14:26:17 -05:00
jean-pierre charras fe50448399 Pcbnew: remove duplicate definitions of some flags (like EDIT and IN_EDIT) that have exactly the same meaning, but different values... (very dangerous)
Remove obsolete code.
2011-02-13 18:53:48 +01:00
Wayne Stambaugh d657b43052 Use wxDC for all coordinate manipulations.
* Remove all occurrences if #ifdef USE_WX_ZOOM and all associated code within
  the #else/#endif block ( old zoom code ).
* Removed the build option for USE_WX_ZOOM from CMakeList.txt and config.h.in.
* Removed all scaling code in base screen object.
* Fixed buffered paint and buffered client DC on Windows.  Buffering works
  properly on Linux and Windows.
* Modified kicad_device_context.h to automatically uses buffering on platforms
  where double buffering is supported natively.
* Remove all of the scaled versions of the drawing functions in gr_basic.cpp
  and any support code.
* Removed all traces of ActiveScreen global variable from eeschema and
  gerbview.
* Renamed Recadre_Trace to RedrawScreen in draw frame object.
* Renamed PostDirtyRect to RefreshDrawingRect in draw panel object.
* Lots of code cleaning an Doxygen comment improvements.
2011-01-30 17:22:38 -05:00
Wayne Stambaugh 73e38ce98c 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-01-21 14:30:59 -05:00
jean-pierre charras a9010796e0 Doxygen comment warning fixes. 2010-12-29 18:47:32 +01:00
jean-pierre charras 5bab73d638 Eeschema: fix issues in drag command (mainly hotkey command and forgotten wire ends connected to components to drag).
Rename EDA_Rect::Inside to EDA_Rect::Contains ( EDA_Rect::Inside( const EDA_Rect& aRect ) was very ambiguous )
 Fix some Doxygen warnings and erroneous comments; Add comments.
2010-12-20 18:44:25 +01:00
Wayne Stambaugh adb4ad1a7b Schematic object improvements and other minor fixes. 2010-12-10 14:47:44 -05:00
Wayne Stambaugh c79077c9a2 Minor fixes and lots of coding policy changes. 2010-12-08 15:12:46 -05:00
Dick Hollenbeck 6c9244e8c3 fix function comments, this time ones in *.cpp files until they
can be deleted later if they exist in the headers, or moved to 
headers if they should exist in the headers.
2010-11-12 10:59:16 -06:00
Macor Mattila f05b6d4962 Pcbnew: Commit block move patch from Marco Mattila 2010-11-11 22:46:55 +01:00
jean-pierre charras a8ebad2fc4 Gerbview: added: image polarity, axis select, layer rotation. Code cleanup. 2010-10-16 16:51:22 +02:00
charras 32ff242157 Pcbnew: fixed an inconsistency in DRC. (see changelog)
fixed others very minor bugs.
2010-04-08 11:33:43 +00:00
stambaughw 3066c70559 Implement wxDC coordinate handling and wxGCDC.
* Implement code to allow wxDC to handle coordinate conversions between
  device and drawing units.
* Add build settings to enable wxGCDC for wxGraphicsContext testing.
* Remove wxAUI conditional build cruft as it is now required to build
  Kicad.
* Fix scroll increment size regression to prevent jumping around the
  zoom center position.
* Add find GDI+ cmake module for building on WXMSW when wxGraphicsContext
  is enabled.
2010-02-08 18:15:42 +00:00
charras a46cd46d9d pcbnew: More about work on color selection and items visibility:
removed global variables and a lot of redundancies
2010-01-31 20:01:46 +00:00
charras 5732d815c6 Work on colors handling, and others changes. see changelog.
hide/show rastnest in pcbnew is currently not working, will be fixed soon
2010-01-29 20:36:12 +00:00
dickelbeck 920186ddb4 more layer widget incorporation 2010-01-21 20:53:01 +00:00
charras 6769e4c94a code cleaning and fixed a TODO remark in EDA_BoardDesignSettings::SetEnabledLayers( int aMask ) 2009-12-21 12:05:36 +00:00
dickelbeck 860fbb16d7 ++pcbnew & gerbview
* Moved ReturnLayerName() to static BOARD::GetDefaultLayerName() and migrated
    to a Specctra DSN compatible default layer naming scheme:
        Component becomes Front, Copper becomes Back.
  * set_color.h: Cmp becomes Front, Cu becomes Back.
  * D_PAD::DisplayInfo() changed to use actual copper layer names.
  * more layer setup dialog work, moved all programmatic wxControl instantiation
    into the wxFormbuilder environment, but this is fraught with danger:
    wxFlexGridSizer used the tallest control to establish the row heights, so
    be careful about changing control borders in the scroll panel. The vertical
    size can explode since just a couple of pixels times the number of rows
    is substantial.  Currently I am setting a 5 pixel border only left, top, and right
    but not bottom.
  * Set copper layer count is back in place as a hack until I can get the enabled
    layer bit map fully operational.
2009-12-07 03:46:13 +00:00
stambaughw 4611bfd58c Comment translations.
* Completed translation of all kicad source.
* Translated source files A through C in pcbnew.
2009-11-12 15:43:38 +00:00
charras e027e65971 code and files cleanup 2009-10-28 11:48:47 +00:00
charras db49e2a505 some minor bug fixes and enhancements 2009-10-27 10:55:46 +00:00
charras fe10a9938f Removed global default clearance, track size and vias drill. Use netclasses values only. 2009-10-21 19:16:25 +00:00
stambaughw 7e24e43890 wxWidgets 2.9 string fixes and other minor updates.
* Replace all known instances of (const wxChar*) casts to GetChars() for
  wxWidgets 2.9 compatibility.
* Cleaned up get component dialog so last part gets saved on wild card
  selections.
* Remove redundant schematic component drawing code.
* Added SCH_COMPONENT constructor to create new component from library
  component object.
* Add message panel helpers to WinEDA_DrawFrame and update old message
  panel access code.
* Using library viewer to add component to schematic now respects unit
  and body style selection.
2009-10-16 17:18:23 +00:00
charras 89535a1366 some enhancements and cleanup. Fixed problem when deleting Netclasses in Design rules dialog window 2009-10-14 18:14:58 +00:00
charras 56059efd8a Netclasses work continued
Fixed problems in libedit and crashes when no component loaded
2009-10-10 17:27:53 +00:00
dickelbeck b4fe26a31f Isaac's next color/layer work step 2009-10-10 01:25:53 +00:00
dickelbeck 7e93bb19df Isaac's via patch 2009-09-29 04:44:35 +00:00
charras e8fef505f8 Pcbnew: fixed a double deletion that crashes pcbnew. Starting my work on net classes (moving target) 2009-09-27 11:00:21 +00:00
dickelbeck 362b6b53f6 NETCLASS work, see CHANGELOG.txt 2009-09-10 15:22:26 +00:00
charras 41c80dd95b pcbnew: work on undo/redo in progress 2009-08-01 19:26:05 +00:00
charras 42022adb3f code cleaning 2009-07-30 11:04:07 +00:00
charras e877819945 Pcbnew: Added: Option to show the via area while creating a new track. Better code. 2009-06-18 20:51:01 +00:00
jerryjacobs eebc4ff21f Applied Hauptmech patch, highlight only current layer in high-contrast mode - tracker patch 2807379 2009-06-17 17:08:39 +00:00
charras 42b4cae45e commit hershey patch 2009-05-28 17:39:40 +00:00
charras b1d1a71101 Finished code cleaning about ratsnets calculations and handling.
Minor others changes.
2009-05-28 08:42:24 +00:00
charras e073bdc042 Pcbnew: cleaned code in ratsnet calculations (work in progress). The new code is also faster. 2009-05-24 18:28:36 +00:00
charras b256efc50e minor bugs fixed 2009-05-21 12:45:21 +00:00
charras 9edace2f5f Code clarification about 3 confusing functions to display info: DisplayInfo (displaying a message info) and class members DisplayInfo and Display_Infos doing the same thing (see changelog) 2009-04-17 08:51:02 +00:00
stambaughw 689579bde1 Global variable unobfuscation, new library path search, and lots of other changes. See CHANGELOG.txt. 2009-04-05 20:49:15 +00:00
charras 2eaa28f0cb Pcbnew: some enhancements 2009-03-26 19:27:50 +00:00
stambaughw b833a46bad More header file realignments to reduce recompiling and general code cleaning. 2009-02-04 15:25:03 +00:00
stambaughw 2e5a57e100 New zoom implementation and some build optimizations. 2009-01-29 14:26:20 +00:00
charras 962b8b0ead Added: patch from Rok Markovic, and some changes in printing functions 2009-01-15 14:32:29 +00:00
charras 94cf5b0d28 pcbnew: minor but mandatory change when printing tracks (removed net names printing) 2009-01-14 08:27:16 +00:00
dickelbeck b603580355 WinEDA_BasePcbFrame::m_Pcb is now private, use GetBoard() to access it. 2009-01-05 05:21:35 +00:00
charras cd6fbbef68 All: cleaning code to draw/plot texts (work in progress). Eeschema: italic and bold texts and labels allowed
(plot functions not yet updated for bold texts)
2008-12-19 20:40:08 +00:00
charras beeaf53a0b Code cleaning. Removed obscure code to draw texts 2008-12-16 19:44:57 +00:00
charras 23003001f1 minor changes. 2008-12-15 10:24:19 +00:00
charras 6d856f60a6 Pcbnew: Added display a short net name on vias and pads. Also, code cleaning 2008-12-14 19:45:05 +00:00
charras 9dae370c1f cleanup, cosmetic enhancements. enhancements about display zones options 2008-12-12 21:30:07 +00:00
dickelbeck aab39d1de7 injected DLIST<> into many list heads, see change_log.txt 2008-12-04 04:28:11 +00:00
dickelbeck 3ef380f936 dlist cleanups, start of edit component in schematic rework 2008-11-24 06:53:43 +00:00
charras 178bc946e3 First version of pcbnew using polygonal filled areas in zones in rats nets calculations. 2008-11-18 18:13:55 +00:00
charras 3c97a45f48 code cleaning, and some minor bugs solved 2008-10-25 10:21:46 +00:00
dickelbeck 9d395aa0c5 MAC alpha support 2008-04-02 14:16:14 +00:00
dickelbeck aa93f54d97 BOARD_ITEM::Draw() 2008-04-01 05:21:50 +00:00
dickelbeck ae459044de Patch originating from Jonas Diemer 2008-03-15 04:18:32 +00:00
dickelbeck 6153dadc07 TRACK::GetBoundingBox() revised for when track clearance is displayed 2008-03-11 01:19:08 +00:00
dickelbeck bc04d5e54c delete track uses dirty rect 2008-03-10 15:02:27 +00:00
dickelbeck 3bb1764dff delete track uses dirty rect 2008-03-10 15:00:22 +00:00
dickelbeck 920ea81061 dirty stuff 2008-03-10 13:33:12 +00:00
dickelbeck aa51131bdc BoundingBox 2008-03-05 22:39:33 +00:00
dickelbeck fcc86fb007 fix for magnetic tracks for parallel case, cleanup of original patches 2008-02-29 23:01:30 +00:00
dickelbeck 30932a4607 Werner Almesberger's patches 2008-02-26 21:12:08 +00:00
dickelbeck ce04867e84 BOARD::GetLayerName() 2008-02-19 00:30:10 +00:00
dickelbeck d47823c144 specctra session work 2008-02-09 08:34:45 +00:00
CHARRAS e9b3322fc0 On line DRC when creating a zone outline 2008-01-20 19:55:22 +00:00
CHARRAS 7d676fbfd3 support for micro vias. small problem in zone detection solved 2008-01-18 08:54:15 +00:00
CHARRAS e3a3d16af8 small bugs fixed. Added: Support for microvias (see changelog) 2008-01-12 20:31:56 +00:00
CHARRAS 339a90e7ac Block commands now works with zones. 2008-01-06 12:43:57 +00:00
dickelbeck 128521f0fe 2nd of 3 commits for DrcDialog rework 2007-12-01 03:42:52 +00:00
CHARRAS 37d19fb2d6 Removed a bug (function Delete_Zone() ) which crashes pcbnew 2007-11-15 10:09:12 +00:00
CHARRAS 5a948e98b7 made ADD_MENUITEM_xx static inline 2007-11-05 07:07:00 +00:00
dickelbeck eec9f1f428 fixed track delete bug 2007-11-02 18:21:43 +00:00
g_harland 5746386290 Added definitions for FIRST_COPPER_LAYER and LAST_COPPER_LAYER 2007-11-01 05:27:31 +00:00
dickelbeck 64e9e16886 virtual BOARD_ITEM::Save() 2007-10-30 21:30:58 +00:00
dickelbeck 7693e34e96 fixed compilation errors with VIA symbols 2007-10-19 16:24:44 +00:00
CHARRAS cfc6872238 some translations 2007-10-19 06:31:17 +00:00
CHARRAS 387a876332 Removed enhancements in connectivity computation (in certain cases, does not work) 2007-10-17 14:35:59 +00:00
g_harland 269ac2915b Roll back changes made in revision 336 (involving vias' Shape property) 2007-10-16 20:52:49 +00:00
g_harland 28b171872f Improvements related to vias 2007-10-15 07:50:59 +00:00
dickelbeck 3cd47555ca see 2007-Oct-12 change_log.txt 2007-10-13 06:18:44 +00:00
dickelbeck b8a449e015 smd pad in high-contrast mode enhancement 2007-10-12 03:24:46 +00:00
dickelbeck 787cf5851e MenuText() tweaks, beautification 2007-10-11 00:11:59 +00:00
CHARRAS 1f842ae14c bug in move pad fixed (could crash pcbnew).Other minor changes 2007-10-07 18:24:15 +00:00
dickelbeck aba115f0fb improved pcbnew marker support 2007-10-03 19:45:32 +00:00
dickelbeck 6245ac5286 minor maintainability improvements 2007-10-01 13:51:07 +00:00
dickelbeck ba7cc83493 SEGVIA::Show() & BOARD_ITEM::MenuText() 2007-10-01 04:34:11 +00:00
dickelbeck 9dca39f1d4 SEGVIA::Show() & BOARD_ITEM::MenuText() 2007-10-01 04:14:29 +00:00
dickelbeck afedb36134 gerberview & pcbnew fixes 2007-09-26 04:09:22 +00:00
CHARRAS d1effbf4e2 EDA_BaseStruct.SetType() and EDA_BaseStruct.ReturnClassName() removed. 2007-09-13 11:28:58 +00:00
dickelbeck fe13569b11 fix TRACK::Copy() usage 2007-09-11 04:14:15 +00:00
dickelbeck dff70646a2 see change_log for 2007-Aug-31 2007-09-01 12:00:30 +00:00
dickelbeck 726a8ab4df collector work 2007-08-30 22:20:52 +00:00
dickelbeck f3c324d535 EDA_BaseStruct::m_StructType is now type KICAD_T 2007-08-24 15:10:46 +00:00
dickelbeck cc62305777 see change_log.txt for 2007-Aug-22 2007-08-23 04:28:46 +00:00
dickelbeck 49e32e096e unified m_Flags, EDA_BaseStruct::Display_Infos(), and ~GetEquipot() 2007-08-20 19:33:15 +00:00
dickelbeck 79de635217 Show() improvements 2007-08-09 01:41:30 +00:00
dickelbeck c1e3416a8f searching and beautifying 2007-08-08 20:51:08 +00:00
raburton dedb0228dc add files not currently available in source (e.g. docs, modules, etc.)
set svn:eol-style property to native for all ascii files to support cross platform development
2007-06-05 12:10:51 +00:00
dickelbeck ae74527bc2 Jean-Pierre's changes for kicad-2007-05-25 release 2007-05-28 18:09:49 +00:00
plyatov 23c40f7e86 Initial import of KiCad. 2007-05-06 16:03:28 +00:00