Commit Graph

119 Commits

Author SHA1 Message Date
Dick Hollenbeck 2c67c3ff80 * KIWAY Milestone A): Make major modules into DLL/DSOs.
!   The initial testing of this commit should be done using a Debug build so that
    all the wxASSERT()s are enabled.  Also, be sure and keep enabled the
    USE_KIWAY_DLLs option.  The tree won't likely build without it.  Turning it
    off is senseless anyways.  If you want stable code, go back to a prior version,
    the one tagged with "stable".

*   Relocate all functionality out of the wxApp derivative into more finely
    targeted purposes:
    a) DLL/DSO specific
    b) PROJECT specific
    c) EXE or process specific
    d) configuration file specific data
    e) configuration file manipulations functions.

    All of this functionality was blended into an extremely large wxApp derivative
    and that was incompatible with the desire to support multiple concurrently
    loaded DLL/DSO's ("KIFACE")s and multiple concurrently open projects.
    An amazing amount of organization come from simply sorting each bit of
    functionality into the proper box.

*   Switch to wxConfigBase from wxConfig everywhere except instantiation.
*   Add classes KIWAY, KIFACE, KIFACE_I, SEARCH_STACK, PGM_BASE, PGM_KICAD,
    PGM_SINGLE_TOP,
*   Remove "Return" prefix on many function names.
*   Remove obvious comments from CMakeLists.txt files, and from else() and endif()s.
*   Fix building boost for use in a DSO on linux.
*   Remove some of the assumptions in the CMakeLists.txt files that windows had
    to be the host platform when building windows binaries.
*   Reduce the number of wxStrings being constructed at program load time via
    static construction.
*   Pass wxConfigBase* to all SaveSettings() and LoadSettings() functions so that
    these functions are useful even when the wxConfigBase comes from another
    source, as is the case in the KICAD_MANAGER_FRAME.
*   Move the setting of the KIPRJMOD environment variable into class PROJECT,
    so that it can be moved into a project variable soon, and out of FP_LIB_TABLE.
*   Add the KIWAY_PLAYER which is associated with a particular PROJECT, and all
    its child wxFrames and wxDialogs now have a Kiway() member function which
    returns a KIWAY& that that window tree branch is in support of.  This is like
    wxWindows DNA in that child windows get this member with proper value at time
    of construction.
*   Anticipate some of the needs for milestones B) and C) and make code
    adjustments now in an effort to reduce work in those milestones.
*   No testing has been done for python scripting, since milestone C) has that
    being largely reworked and re-thought-out.
2014-03-19 19:42:08 -05:00
jean-pierre charras f956fbd8ac painter: better size of pad nums and pad netnames in opengl mode 2013-11-04 18:18:19 +01:00
jean-pierre charras d5ecafd5af Fix some minor issues in hotkey dialogs 2013-09-21 19:09:08 +02:00
jean-pierre charras 1f3f11ca0d Add margin values control in pl_editor, and remove margin definition from class PAGE_INFO. 2013-07-20 21:36:19 +02:00
jean-pierre charras 91c3f3bc83 All: use a S expression to describe the page layout (title block and grid references). Work in progress.
This should  allow users to define their own page layout.
2013-06-05 14:03:16 +02:00
Matthew Beckler 088832b8f6 Match 'new char[]' with proper delete[] char* rather than delete char*. 2013-04-13 23:07:04 -05:00
jean-pierre charras 8f62c6aa05 Move AddMenuItem inline functions outside wxstruct.h in a new file (menu_helpers.h)
Enhancements in AddMenuItem (that accepts now a menu type)
Partial use of the Edwin van den Oetelaar's patch (patch not fully working or correct)
2012-04-09 11:16:47 +02:00
Dick Hollenbeck b8a0ab4c52 switch to <> for includes from "" per conversation with Jean-Pierre and Wayne, adjust search paths 2012-01-22 22:33:36 -06:00
jean-pierre charras 7c17187052 Pcbnew: Fix typo in 2 filenames. Add comments in ratsnest.cpp.
Fix bug 887202.
2011-11-07 19:04:19 +01:00
Wayne Stambaugh b98b23a1a6 Factor Eeschema rotate item hot keys into a rotate event handler.
* Add a rotate event handler to schematic frame object.
* Remove unique rotate item command IDs.
* Use process event instead of post event to eliminate the need to clean
  up the command event client object from the heap.
* Unify find next item and next DRC error hot key commands.
* Unify move and rotate hot keys commands.
2011-10-26 16:46:04 -04:00
Wayne Stambaugh 1bd7fc8a4e Minor menu bar fixes.
* Fixed bug on Windows that prevented the menu short cuts from working
  properly.
* Fix duplicate menu short cut keys in KiCad, Pcbnew, and Eeschema.
* Add menu short cuts for all possible menu entries.
2011-10-18 15:59:19 -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
Wayne Stambaugh c09bc26dc2 Minor PCBNew code fixes.
* Translate French code names and comments.
* Dead code removal.
* Hot key object and structure coding style policy fixes.
* Doxygen comment warning fixes.
2011-09-29 12:49:40 -04:00
jean-pierre charras 063c56be30 Use accelerators from hot keys in place menu, from the Fabrizio's idea 2011-09-24 19:15:29 +02:00
jean-pierre charras 8db19bbd6a Preparing hotkeys/shortcuts changes in place menu. 2011-09-23 22:00:30 +02:00
jean-pierre charras e9b71f1e83 Commit changes asked by Fabrizio Tappero.
Fix compatibility issues with old xpm icons.
Add or update .xpm and .ico files for shortcuts and taskbars
Remove artwork folder.
2011-09-13 21:37:25 +02:00
jean-pierre charras 1c412879d5 New icons: fix problems about .ico files (under Window)
Remove or move old .ico and .pgn files and add new icons (.ico files and .png files) in bitmaps_png/icons and bitmaps_xpm/icons
.png files and .ico are used to build desktop shortcuts
Handle variable size bitmaps in kicad.
2011-09-10 19:48:35 +02:00
jean-pierre charras 3b381cf8cf Remove *.ico files and used only xpm or new pgn bitmaps for icons under Window.
Fix minor other issues.
Remove unused files.
2011-09-09 21:30:59 +02:00
Andrey Fedorushkov 9f98995a46 pcbnew:
* Add hotkey "P" - place item
* 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-09-07 13:27:02 +04:00
Fabrizio 4467b911b0 Commit patch make by Fabrizio, with a minor change to avoid duplicate HTML dialog. 2011-09-06 09:02:18 +02: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 56f5295527 more KiBitmap() stuff 2011-08-29 16:42:11 -05:00
jean-pierre charras 94372b81e5 Eeschema: fix bug 783535. Minor code cleaning.
Pcbnew: fix very minor issue.
2011-05-16 21:32:57 +02:00
Jerry Jacobs 6b39096b03 Cleanup of all menubar code, see CHANGELOG.txt 2011-04-06 15:52:47 +02:00
Wayne Stambaugh df8f7d1ee0 EESchema remove global variable and fix text object change type undo/redo.
* Move undo item copy global variable into schematic editor frame object
  member variable.
* Add helper methods for accessing the undo item copy member variable.
* Fix undetected bug when changing a text type.
* Added an exchange command to the undo/redo base class for handling undoing
  a changed item type which cannot be undone by swapping out the variables.
* Revert change to common/hotkeys_basic.cpp that broke hot key behavior.
* Lots of coding policy changes while making the changes above.
2011-04-05 10:46:51 -04:00
Jerry Jacobs fb47536123 More native changes for OSX, see CHANGELOG.txt 2011-04-04 20:05:55 +02:00
jean-pierre charras 92952b70aa Use UTF-8 encoding only in kicad files. Under Linux, this was already the case. Under Windows, texts with non ascii characters must be corrected.
This ensure compatibility between platforms.
2011-02-28 19:36:19 +01: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 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 7cb34aece7 Schematic component object encapsulation and Doxygen comment warning fixes. 2010-12-14 10:56:30 -05:00
Dick Hollenbeck 636b2d301e function comments, fix ones in *.cpp files until they can be deleted if they exist in the headers 2010-11-12 10:36:43 -06:00
jean-pierre charras bfe4f85b99 Fixed some issues in hotkeys editor 2010-08-29 18:36:52 +02:00
jean-pierre charras a153b25411 Hotkey editor code tweaking 2010-08-28 21:08:58 +02:00
jean-pierre charras f77121a57a Fixed compatibility with wxWidegets 2.9.1.
Added hotkeys editor from David Turner, with a lot of enhancements and fixes
Added pins connections info in intermediate netlist for each compoment. This is redundant, but some netlist formats (ORCADPCB, PSPICE) are very easy to create with this redundant info.
2010-08-28 20:02:24 +02:00
jerryjacobs 706ba777f2 Hotkey patch appro Vladimir Uryvaev on kicad-devel 2010-02-25 on 11:57am 2010-02-25 17:08:28 +00:00
charras 8dd82dfbd4 code cleanup and enhancements about hotkeys 2010-02-16 11:02:20 +00:00
charras 1ee86d4a52 code cleanup and enhancements about hotkeys 2010-02-16 10:42:57 +00:00
charras 25720516c9 Eeschema, libedit: fixed add/remove alias functions, broken
All: added in popup menus hotkeys info for zoom commands
2010-02-14 18:14:33 +00:00
charras c4bc7bb46b enhancements about hot keys 2010-01-20 18:59:46 +00:00
charras 9d400e4c19 fixed some (minors) problems about hotkeys.
Code cleaning.
Patch for 3D problem with macOSX
2010-01-19 20:43:44 +00:00
charras 04f41a4a7b menu cleaning and changing obscure menu info. and menu labels
files cleaning
2010-01-18 12:37:53 +00:00
stambaughw bc5d9a75f5 Complete comment translation of common source. 2009-11-23 15:16:50 +00:00
jerryjacobs 1c983b013d Hotkey submenu added, fixed typos. See CHANGELOG.txt 2009-10-27 13:48:24 +00:00
dickelbeck ce4d22f024 work around some gcc 4.3.3 compiler warnings 2009-10-05 04:22:27 +00:00
dickelbeck 8b3d5a69cf Øyvind's patch 2009-09-27 14:09:26 +00:00
jerryjacobs db6630b81c Added hauptmech big patch, Updated documentation to match this patch. See CHANGELOG.txt 2009-06-19 20:13:22 +00:00
stambaughw 8bf7911125 Build improvements, compiler warning fixes and build fixes, and lots of clean up.
* Created separate SVN version header.
* Add true config.h for platform dependency checks.
* Add dependency check cmake module.
* Remove some leftover hand crafted make files.
* Remove non-cmake build instructions from COMPILING.txt.
* Fix split _() strings causing Visual C++ compiler error.
* Fix lots of compiler warnings.
* Change project file parameter container from wxArray to boost::vector_ptr.
* Removed lots of redundant header definitions.
* Fixed green_xpm redefinition in ercgreen.xpm.
* Remove some dead code and unnecessary class methods.
2009-05-21 17:42:42 +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 5b3c5861bd More search path, compiler warning, and bug fixes.
Added template subdirectory to library search path list.
Removed PARAM_CFG_BASE empty destructor to prevent GCC warning.
Set timeout to 0 on DisplayInfo call to prevent debug assertion in eeschema/files-io.cpp.
Declare PARAM_CFG_ARRAY for future project file object implementation.
Removed unnecessary COMMON_GLOBL definition in gr_basic.h and param_config.h.
2009-04-06 18:54:57 +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 e9c7d50ca6 fixed some typo, misspelling and errors in menus. 2009-02-21 15:12:26 +00:00
stambaughw b833a46bad More header file realignments to reduce recompiling and general code cleaning. 2009-02-04 15:25:03 +00:00
stambaughw 2611a54791 Convert global and embedded application pointers to wxGetApp() 2008-12-08 15:27:13 +00:00
charras 8a53aa4621 solved some problems in hotkeys files access when spaces are used in names, and udtated paths according to the new tree used in kicad
Added wxWidgets version in about dialog
2008-09-03 16:19:06 +00:00
dickelbeck fbe304722e when drc denies via insertion, bridge track not deleted 2007-12-18 02:34:54 +00:00
dickelbeck cbaf4f9f7e hotkey fix for + and - 2007-12-11 06:35:52 +00:00
CHARRAS 0605d07263 2007-11-14 16:02:19 +00:00
CHARRAS 3d0e6a5f1e gcc 4.2.1 compatibility: change char * to const char * whenever it was necessary 2007-10-31 08:34:05 +00:00
plyatov a5bd7d440b Russian translation update. 2007-10-28 20:33:19 +00:00
CHARRAS ba04f83247 small change on hotkey management. Added: drag component 2007-09-22 14:31:20 +00:00
CHARRAS 62058240b1 change erronous word Hothey to Hotkey in 2 function names 2007-09-20 09:13:40 +00:00
CHARRAS 2cfe92de85 hotkey enhancement 2007-09-20 05:41:40 +00:00
CHARRAS 542b944196 hotkeys handling finished 2007-09-19 15:29:50 +00:00
CHARRAS d6072d8ac9 Programmable hotkeys added in gerbview. Fixed a compilation probleme in ansi mode (non unicode mode). 2007-09-10 04:51:01 +00:00
CHARRAS e27d3f8c78 more work on programmable hotkeys. Most of features are ok. 2007-09-06 11:52:26 +00:00
CHARRAS f5eae50680 more work on hotkeys. many features are ok. 2007-08-30 08:15:05 +00:00
CHARRAS c116a9b5a7 first version of programmable hotkeys (work in progress) 2007-08-21 19:37:31 +00:00
raburton 9f1f455b7a set eol-style to native for new files 2007-08-20 11:33:45 +00:00
CHARRAS 9414bf676b more work on hotkeys 2007-08-20 10:55:09 +00:00