Commit Graph

110 Commits

Author SHA1 Message Date
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 b9b341dce2 PCB common library global variable removal and other minor fixes.
* Move auto save time global variables into PCB_EDIT_FRAME object.
* Move footprint library name list global variable int PCB_EDIT_FRAME
  object.
* Improve library back up and temporary file error message strings and make
  them translatable.
* PCBNew string unification.
* Translate French code names and comments.
* Coding style policy and Doxygen comment fixes.
2011-09-26 16:32:56 -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
Dick Hollenbeck 07ab5534e5 PNG bitmap support, initial implementation 2011-09-08 00:58:45 -05:00
Wayne Stambaugh 4a7dc4ad03 Add menu item function fixes and other minor improvements.
* Rename all ADD_MENUITEM_* functions to AddMenuItem and move them to
  wxstruct.h since they are used by the Kicad main frame classes.
* Move SET_BITMAP and SETBITMAPS definitions to wxstruct.h.
* Fix a bug in SET_BITMAPS that prevented enabling menu item images on
  OSX.
* Rename MsgItem to EDA_MSG_ITEM.
* Remove redundant includes from modified files.
* Doxygen and coding style policy fixes.
2011-09-01 08:54:34 -04:00
Dick Hollenbeck 45c5e594b6 zwischen punkt for migration to PNG bitmaps 2011-08-28 22:04:59 -05:00
Wayne Stambaugh 0d57d670b6 Add user write permission tests to PCBNew and other minor fixes.
* Check user write permissions before saving project, board, and footprint
  library files.
* Append read only to file name and path in title bar when the user
  does not have write privileges.
* Rename class WinEDA_ModuleEditFrame to FOOTPRINT_EDIT_FRAME.
* Lot's of Doxygen comment and coding style policy fixes.
2011-08-26 13:01:17 -04:00
Wayne Stambaugh f60c982397 Refactor PCBNew selection clarification menu icon code.
* Move clarification menu icon code from base board item object to the appropriate
  object.
* Remove left over French comments.
* Coding policy fixes.
2011-08-01 11:29:27 -04: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 045ba78d46 Pcbnew: fix RDC error, for DRC between a an OVAL pad and an other pad.
Minor other fixes.
2011-05-12 13:06:32 +02:00
jean-pierre charras 628e524075 Fix a minor issue in Pcbnew 2011-03-10 18:52:36 +01: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
Marco Mattila 201408a185 Fix magnetic off-grid snapping in pcbnew. 2011-02-28 23:41:00 +02:00
Wayne Stambaugh cb647737ee Improve handling of tool bar command IDs.
* Make EDA_DRAW_FRAME current tool ID member variable private.
* Added global no tool selected ID to replace application specific no
  tool selected IDs.
* Change SetToolID to prevent setting the tool ID to anything less than
  the new global no tool selected ID and assert on debug builds.
* Change command and update user interface command event handlers to use
  new global no tool selected ID.
* Fixed schematic library editor add pin hot key handler.
2011-02-24 15:22:12 -05:00
Wayne Stambaugh ee003180bc Global variable removal and minor Doxygen comment fixes.
* Remove global key press variable.  The key press is know passed to
  GeneralControl().
* Removed unused old mouse buttons global variable.
2011-02-22 11:43:03 -05:00
Wayne Stambaugh c02d90e9a7 Use wxUpdateUIEvent in CVPcb and other minor changes.
* CVPcb now uses wxUpdateUIEvent instead of set toolbars.
* Removed duplicate event handlers in CVPcb that were factored into
  EDA_DRAW_FRAME.
* Fix definition of GeneralControle() in CVPcb that prevented it from being
  called.
* Remove rarely used and scary refresh code GeneralControle() method in all
  main frame windows.
* Factor zoom menu and tool bar command IDs down to EDA_DRAW_FRAME.
2011-02-21 16:07:00 -05:00
Wayne Stambaugh bdca3c5efb All control state handling is now performed in wxUpdateUIEvent handlers.
* Old control state handling code completely removed in all applications.
* Factor common control state handlers into EDA_DRAW_FRAME.
* Replaced EDA_ITEM test for newness with IsNew() method.
* Factor vertical right toolbar command handlers out of giant edit command
  switch statement in EESchema and PCBNew.
2011-02-21 08:54:29 -05:00
Wayne Stambaugh 7b8b51b240 Draw panel object refactoring and other minor code cleaning.
* Rename all member variables and methods that reference the cross hair
  code in draw panel object from cursor to cross hair to eliminate confusion
  between the two concepts.
* Rename cursor capture call backs in draw panel object to improve code
  readability.
* Create helper class for turning off the cross hair while drawing.
* Remove redundant block clear code.
* Remove redundant mouse capture call back reset code when end capture
  call back is called.
* Remove unused function definitions in base draw frame object.
* Lots of minor coding policy and doxygen comment fixes.
2011-02-11 15:48:13 -05:00
Wayne Stambaugh 50f063da07 Changes to use cursor position as parameter and snap to grid settings.
* Changed managed cursor callback definition to include the current
  cursor drawing position.
* Modified all managed cursor callbacks to match new definition.
* Added snap to grid option to base drawing frame object.
* Changed add no connect managed cursor callback to use new position
  parameter instead of the stored one.
* Lots of coding policy fixes.
2011-02-03 14:27:28 -05:00
Wayne Stambaugh 6a26a7f9bf Use logical cursor position and other minor changes.
* Remove unused member variable m_SizeVisu from base screen object.
* Move nearest grid position code into base screen object.
* Add get cursor position method to base screen object.
* Add position parameter to OnHotKey method in base draw frame and all
  derived objects.
* Pass logical position on left mouse button click and double click
  events instead of device position.
* Pass logical position to on right mouse button click instead of device
  position.
* Use logical event position parameter for locating items in EESchema
  instead of the stored position.
* Remove unused position parameter when displaying component edit dialog
  in EESchema.
* Comment out debugging macro in eeschema/template_field_names.cpp that was
  preventing debug builds using wxWidgets 2.8.x.
2011-02-02 14:01:21 -05:00
Wayne Stambaugh 85ae0373e3 Global variable removal and coordinate fixes.
* ActiveScreen global variable is gone, yeah!
* Use drawing coordinates instead of screen coordinates when calling
  GeneralControle().
2011-02-01 10:46:25 -05: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 e560573c5e Schematic object encapsulation and other minor improvements.
* Encapsulate file name member of base screen object.
* Encapsulate associated screen member of schematic sheet object.
* Create add screen method to schematic sheet object to simplify setting
  the associated screen.
* Move the change file name code in the schematic sheet object to the edit
  sheet method in the schematic editor frame object to eliminate message
  dialogs.
* Improve reference counting in schematic screen object.
* Add helper type definitions for changing schematic object storage to C++
  containers.
2011-01-20 11:34:57 -05:00
Marco Serantoni 81b3fdf157 Mac: OVERLAY FIXES for WX2.8 and Enhancements 2010-12-17 23:57:09 +01:00
Wayne Stambaugh c79077c9a2 Minor fixes and lots of coding policy changes. 2010-12-08 15:12:46 -05:00
Marco Serantoni ea812ef5c9 Zones drawing optimization with WXGrapchisContext + Fix bug #612132 2010-10-09 10:08:29 +02:00
Marco Serantoni 148baffdd9 OSX implementation of wxOverlay (speedups board operations) and cleanup 2010-09-22 01:46:02 +02:00
Marco Serantoni bf67eed7eb OSX adjustments - grid fix - speedup of refresh 2010-09-19 12:23:53 +02:00
jean-pierre charras 7774d684c7 Pcbnew: Added move and rotate hot keys in board editor. hotkeys.cpp code cleaned. Fixed a bug that can crashes Pcbnew when switching track posture. 2010-08-17 12:41:44 +02:00
Wayne Stambaugh 5ce9c9a9d7 Open file dialog fixes and minor code cleaning.
* Fix a minor problem with wxFileDialog to open a file that no longer
  exists in PCBNew.
* Make GerbView open file behavior the same as PCBNew.
* Remove redundant PCB file wild card definition.
* Add open file refactor task to the todo list.
* Fix some minor code formatting issues.
2010-05-17 16:35:46 -04:00
stambaughw aab2f8a775 USE_WX_ZOOM clean up and other minor improvements.
* Make USE_WX_ZOOM clipping routine actually clip rather than just test
  if line needs drawn.
* Clean up as many USE_WX_ZOOM #ifdefs as possible.
* Minor coordinate rounding improvements.
* Minor scrolling and panning improvements.
* Remove unused KicadGraphicContext object code.
2010-02-22 16:45:35 +00:00
charras a70a580596 committed newfont patch. Pcbnew: board date automatically updated at each change. 2010-02-19 13:23:58 +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 6efce74c96 Eeschema: fixed bug when edit a component reference using the component dialog editor
Code cleaning and using DrawPanel->Refresh() instead of ReDraw() when possible.
2010-01-13 13:43:36 +00:00
dickelbeck d21bf859ae visibility of button text, resizable on dialog 2009-11-23 14:40:29 +00:00
stambaughw 92064f1dbf Fix save last grid size and other minor updates.
* Create single event handler for grid size events.
* Fix all frame windows to use new grid size event handler.
* Use offset relative to ID instead of ComboBox index to save last grid size.
* Move last grid size load/save setting into WinEDA_DrawFrame.
* Add equality and assignment operators the GRID_TYPE.
* Add current grid helper methods to BASE_SCREEN.
* Add GetPins helper to LIB_COMPONENT to replace GetNextPin where applicable.
* Add AppendMsgPanel helper to WinEDA_DrawFrame.
* Improve rounding for display of coordinates when millimeter units are selected.
2009-10-14 19:43:31 +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
stambaughw 43d6c685b5 Command ID refactoring and other minor improvements.
* Split out application specific command IDs to prevent unnecessary rebuilding.
* Eliminate duplicate menu and tool bar command IDs.
* Split component library editor and viewer definitions to separate header files.
* More component library and document file merge code.
* A bunch of minor string readability and consistency fixes.
2009-09-22 12:27:57 +00:00
dickelbeck 362b6b53f6 NETCLASS work, see CHANGELOG.txt 2009-09-10 15:22:26 +00:00
charras 42022adb3f code cleaning 2009-07-30 11:04:07 +00:00
charras 8ec8cf3f43 Rework on undo/redo and block functions 2009-07-25 04:53:39 +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 0d6c62a9ef Bug (only in my last commit) fixed under Windows. Removed some warnings in compilation 2009-02-10 12:37:12 +00:00
charras aee56a936e Change grid size type from integer to double (using wxRealPoint insteed of wxSize).
Mandatory in Pcbnew to handle without error metric grid used now for some footprints (BGA, connectors)
Not fully tested
2009-02-07 08:33:25 +00:00
stambaughw 80e03c8c1b Build optimizations and cursor movement key bug fix. 2009-02-05 20:53:08 +00:00
stambaughw b833a46bad More header file realignments to reduce recompiling and general code cleaning. 2009-02-04 15:25:03 +00:00
charras f83bc3e3fa pcbnew: solved: info not displayed when clicking on a module. Removed: gcc 4.2.1 warning in moduleframe.cpp 2009-01-31 21:42:05 +00:00