Commit Graph

27 Commits

Author SHA1 Message Date
Dick Hollenbeck f73e785662 1) Switch to boost hashtable support from wx macros which did not handle std::string.
This required the additional compiler command line option "-std=c++0x".

2) Switch to unique_ptr from auto_ptr which is C++ deprecated.

3) Change to new English layer names per mailing list discussion, see class_board.cpp.

4) When saving to *.kicad_pcb or *.kicad_mod, identify opportunities to use wildcard
   layer sets, for pads so far.

5) Switch to two std::string hashtables in pcb_parser.cpp, away from one wxString based one
   for layer names and layer sets mapping. One hashtable holds the mask, the other the index.
   Layer sets are only in the mask table.

6) Move "LOCALE_IO toggle" into PCB_IO::Format() since it is a public API function and
   caller should find it as convenient as possible to use.  LOCALE_IO should handle
   nesting OK in the case where public Format() is called from one of the Footprint*()
   functions.

7) Drop support for "export module to new library".  Creating new libraries will have to
   be handled in concert with library table entries, and we've talked recently about
   creating a better footprint library manager, one that resides in a DLL/DSO.  So
   this kind of functionality needs to be handled in there in the near future.

8) Change name of exported PCB_IO module/footprint to *.kicad_mod and not *.emp.
2012-11-14 01:15:59 -06:00
jean-pierre charras 9b6f75afd3 Pcbnew: Make scripting version compilable under Windows 2012-10-01 08:04:06 +02:00
Miguel Angel Ajo e469a6b3d8 pcbnew scripting: cleanup, renamed KICAD_SCRIPTING_EXPERIMENT to KICAD_SCRIPTING_WXPYTHON, now every flavour compiles 2012-08-02 19:24:53 +02:00
Miguel Angel Ajo 02ced9a339 scripting: fixed kicad compilation, cleanups 2012-08-02 09:47:30 +02:00
Miguel Angel Ajo f4c8abb1b4 Double Python initialization fixed 2012-08-01 13:54:20 +02:00
Miguel Angel Ajo 49e2e292dd Adam Vašíček patches for WIN32 compilation of kicad scripting 2012-07-22 14:15:38 +02:00
Miguel Angel Ajo 2b54414e60 Support for nanometer build, extra example 2012-07-15 22:01:05 +02:00
Miguel Angel Ajo ad25f4c43a Cleanup toward test-merge 2012-07-06 21:10:55 +02:00
Miguel Angel Ajo cd68572df5 code cleanup and comments 2012-06-27 23:19:19 +02:00
Miguel Angel Ajo 84c562de1c Footprint wizard, plus fixes 2012-05-16 11:35:18 +02:00
Miguel Angel Ajo 8317e918d9 wxGrid instead of list, now we do really have values... 2012-05-11 00:30:26 +02:00
Miguel Angel Ajo f77f7e645b * Footprint wizard UI: Added to module editor.
* Footprint wizard C++ generic classes
* Footprint wizard C++ to python wrappers 
* Automatic plugin loader from ~/.kicad/plugins
* Python plugin architecture: Footprint wizards
2012-05-09 19:37:25 +02:00
Miguel Angel Ajo ea0562c124 KiCad scripting plugin architecture, footprint wizards first 2012-05-05 22:18:47 +02:00
Miguel Angel Ajo 5512567d74 wxArrayString typemaps, class missing yet 2012-04-23 08:59:37 +02:00
Miguel Angel Ajo b188f76b65 Exceptions handled on board Load/Save 2012-04-20 23:20:56 +02:00
Miguel Angel Ajo 9fc9ca3265 merged testing branch 2012-04-14 23:18:27 +02:00
Miguel Angel Ajo 3fcbc847a9 lajos kamocsay compilation patches 2012-04-09 08:53:24 +02:00
Miguel Angel Ajo 151fc3065b detect building status of the swig .py file (on parallel make builds). Fix unit conversion returns (From_xxx) to integer, what's all the wxPoint/wxRect/wx.. expect. Extended createPcb.py example 2012-04-09 08:19:57 +02:00
Miguel Angel Ajo 7a61b1f4b9 missing script 2012-04-08 17:00:15 +02:00
Miguel Angel Ajo f3ddaf5dce Fixed wxSize bug, wxPoint(double,double) support, units. Fixed GetBoard wasn't accessible at every build. Extended example for board creation (now adds pads). Also fixed the _pcbnew loading from pcbnew which should only go to the internal _pcbnew and not the _pcbnew.so/dso. Right installation path for _pcbnew.so (in linux only) 2012-04-08 16:25:49 +02:00
Miguel Angel Ajo 4de3380ca5 BOARD::Add now it's wrapped in python and clears the .thisown flag on python to avoid GC from deleting the object later (BOARD will do) 2012-04-06 21:46:45 +02:00
Miguel Angel Ajo 62c00ba871 Compilation cleanup, TODO.txt update about library creation 2012-04-06 20:13:03 +02:00
Miguel Angel Ajo 76821902c8 Added wxRect and wxSize wrappers to wx.i 2012-04-05 23:41:45 +02:00
Miguel Angel Ajo 9ea12cf091 fixed DEBUG build dependency... 2012-03-19 16:39:50 +01:00
Miguel Angel Ajo 5d6ca51ea8 * cleanups: board.i board_item.i separated from pcbnew.i
* dlist.i empty list fixed (Segfault)
* units.i: FromMM FromMils ToMM ToMils
* added a little example (listPcb.py) that shows most items in a board
2012-03-19 12:21:29 +01:00
Miguel Angel Ajo 2d0a80bcbb std::vector and std::string items
DLIST iterator code, now we can do:

    for module in pcb.m_Modules:
    	print module.GetReference()

instead of:

    module = pcb.m_Modules

    while module:
	print module.GetReference()
	module = module.Next()

or even:
    module_list = list(pcb.m_Modules)
2012-03-19 09:36:38 +01:00
Miguel Angel Ajo e97a630235 * More cleanup (common wrappers moved to scripting, instead of pcbnew/scripting)
* Added a first test 'testLoadSave.py'
2012-03-17 18:30:03 +01:00