1. 19 Nov, 2014 1 commit
  2. 10 Sep, 2014 1 commit
    • Lorenzo Marcantonio's avatar
      TEXTE_MODULE cleanup in preparation for text on different layers · 424aac6c
      Lorenzo Marcantonio authored
      - Removed the friends MODULE and FOOTPRINT_EDIT_FRAME from TEXTE_MODULE
        (as in the @todo comment)
      
      - Refactored the Rotate/Flip/Mirror for text in modules into the
        TEXTE_MODULE class itself (members RotateWithModule, FlipWithModule,
        MirrorWithModule)
      
      - New behaviour in coloring text on screen: reference and value still
        take the color from the MOD_TEXT_FR_VISIBLE and MOD_TEXT_BK_VISIBLE
        visibles; other text takes the color of the layer containing it
        (except when hidden, obviously) but still get its visibility
        controlled by those visibles (probably the most intuitive and useful
        behaviour)
      
      - Still need to decide: should text on a layer be hidden when the layer
        is? Probably yes (still to be implemented);
      
      - Some comment fixed and many cast converted to static_cast
      424aac6c
  3. 07 Sep, 2014 1 commit
  4. 28 Jul, 2014 1 commit
  5. 15 Jul, 2014 1 commit
  6. 09 Jul, 2014 1 commit
  7. 02 Jul, 2014 1 commit
  8. 30 Jun, 2014 1 commit
  9. 24 Jun, 2014 1 commit
    • Dick Hollenbeck's avatar
      1) Add 32 Cu Layers. · 4578ea8b
      Dick Hollenbeck authored
      2) Change from legacy Cu stack to counting down from top=(F_Cu or 0).
         The old Cu stack required knowing the count of Cu layers to make
         sense of the layer number when converting to many exported file types.
         The new Cu stack is more commonly used, although ours still gives
         B_Cu a fixed number.
      3) Introduce class LSET and enum LAYER_ID.
      4) Change *.kicad_pcb file format version to 4 from 3.
      5) Change fixed names Inner1_Cu-Inner14_Cu to In1_Cu-In30_Cu and their
         meanings are typically flipped.
      6) Moved the #define LAYER_N_* stuff into legacy_plugin.cpp where they
         can die a quiet death, and switch to enum LAYER_ID symbols throughout.
      7) Removed the LEGACY_PLUGIN::Save() and FootprintSave() functions.
         You will need to convert to the format immediately, *.kicad_pcb and
         *.kicad_mod (=pretty) since legacy format was never going to know
         about 32 Cu layers and additional technical layers and the reversed Cu
         stack.
      4578ea8b
  10. 24 Apr, 2014 1 commit
  11. 20 Mar, 2014 1 commit
    • Dick Hollenbeck's avatar
      * KIWAY Milestone A): Make major modules into DLL/DSOs. · 2c67c3ff
      Dick Hollenbeck authored
      !   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.
      2c67c3ff
  12. 19 Mar, 2014 1 commit
  13. 14 Mar, 2014 1 commit
  14. 13 Mar, 2014 1 commit
  15. 05 Mar, 2014 1 commit
  16. 25 Feb, 2014 2 commits
    • Maciej Suminski's avatar
      Renamed BOARD_CONNECTED_ITEM::GetNet() -> GetNetCode() · f7d00a39
      Maciej Suminski authored
      Renamed BOARD_CONNECTED_ITEM::SetNet() -> SetNetCode()
      Added BOARD_CONNECTED_ITEM::GetNet() for accessing NETINFO_ITEM* of a given item.
      Fixed module editor crash when launched to edit a module from a PCB.
      Replaced some BOARD::FindNet( item->GetNet() ) calls with BOARD_CONNECTED_ITEM::GetNet().
      f7d00a39
    • Maciej Suminski's avatar
      Renamed BOARD_CONNECTED_ITEM::GetNet() -> GetNetCode() · 75026d87
      Maciej Suminski authored
      Renamed BOARD_CONNECTED_ITEM::SetNet() -> SetNetCode()
      Added BOARD_CONNECTED_ITEM::GetNet() for accessing NETINFO_ITEM* of a given item.
      Fixed module editor crash when launched to edit a module from a PCB.
      Replaced some BOARD::FindNet( item->GetNet() ) calls with BOARD_CONNECTED_ITEM::GetNet().
      75026d87
  17. 26 Jan, 2014 1 commit
  18. 14 Jan, 2014 1 commit
    • Maciej Suminski's avatar
      Removed D_PAD::SetNetname() function and D_PAD::m_Netname, D_PAD::m_ShortNetname fields. · 654e7e55
      Maciej Suminski authored
      D_PAD::GetNetname() and D_PAD::GetShortNetname() were moved to BOARD_CONNECTED_ITEM. Now they use the net name stored in NETINFO_ITEM.
      Moved some one-line functions from class_board_connected_item.cpp to class_board_connected_item.h.
      Added a copyright notice, moved Doxygen comments from class_board_connected_item.cpp to class_board_connected_item.h.
      
      I have some doubts if changes introduced pcbnew/dialogs/dialog_pad_properties.cpp do not break anything, but I could not find a test case that breaks the pcbnew.
      
      Performed tests:
      - changed pad's net name from empty to existent - ok, name was changed
      - changed pad's net name from empty to nonexistent - ok, error message is displayed, net name stays empty
      - changed pad's net name from existent to empty - ok, net name became empty
      - changed pad's net name from existent to nonexistent - ok, error message is displayed, net name is not changed
      - (re)reading netlists, including net changes - fine, changes are applied, but empty nets are still kept
      - loaded pcbnew/pcad2kicadpcb_plugin/examples/CK1202_V1.pcb to test P-CAD import plugin - ok, net names are correct
      - imported an Eagle 6.0 board (Arduino Uno; http://arduino.cc/en/uploads/Main/arduino_Uno_Rev3-02-TH.zip) then saved in .kicad_pcb format and reloaded - ok, net names are correct
      - saved demos/video/video.kicad_pcb in legacy format and then loaded it again - ok, net names are correct
      654e7e55
  19. 02 Oct, 2013 1 commit
  20. 09 Jul, 2013 1 commit
  21. 30 May, 2013 1 commit
    • jean-pierre charras's avatar
      Pcbnew: Fix Bug #1185556. fix issue about Solder Paste Ratio value which was... · 57b30ad2
      jean-pierre charras authored
      Pcbnew: Fix Bug #1185556. fix issue about Solder Paste Ratio value which was accepting only one digit in mantissa in 3  dialogs  (now 6 digits in all dialogs).
      fix potential issue in .kicad_pcb file creation, in some places where a %g or %.16g format was used:
      al least under Mingw/gcc4.7.2, the floating number was written using scientific notation, not accepted by the S-expr reader.
      57b30ad2
  22. 01 May, 2013 1 commit
    • Lorenzo Marcantonio's avatar
      Angle and distances cleanup (preparing for angles in doubles) · 0e903dba
      Lorenzo Marcantonio authored
      - Removed spurious int casts (these are truncated anyway and will break
        doubles)
      
      - Applied the Distance, GetLineLength, EuclideanNorm, DEG2RAD, RAD2DEG
        ArcTangente and NORMALIZE* functions where possible
      
      - ArcTangente now returns double and handles the 0,0 case like atan2, so
        it's no longer necessary to check for it before calling
      
      - Small functions in trigo moved as inline
      0e903dba
  23. 25 Apr, 2013 1 commit
    • Wayne Stambaugh's avatar
      Pcbnew NETLIST_READER improvements. · 61b4f8a9
      Wayne Stambaugh authored
      * Create separate NETLIST object to hold contents of netlist files.
      * Read entire netlist and footprint link files before making applying
        changes to board.
      * Add BOARD::ReplaceNetlist() function to eliminate the calls between the
        NETLIST_READER, PCB_EDIT_FRAME, and BOARD objects.
      * Change placement of new components below the center of the current board
        or in the center of the page if the BOARD is empty.
      * Add dry run option to netlist dialog to print changes to message control
        without making changes.
      * Add button to netlist dialog to allow saving contents of message control
        to a file.
      * Eliminate the need to compile netlist_reader_*.cpp in both CvPcb and Pcbnew.
      * Add netlist_reader_*.cpp to the pcbcommon library.
      * Remove redundant load component link file code from CvPcb.
      * Modify CvPcb new to work with the new NETLIST_READER object.
      * Add compare() function and < and == operators to FPID object.
      * Add REPORTER class to hide an underlying string writing implementation for
        use in low level objects.  Thank you Dick for the idea.
      * Lots of minor coding policy, Doxygen comment, and missing license fixes.
      61b4f8a9
  24. 09 Apr, 2013 1 commit
  25. 05 Apr, 2013 1 commit
  26. 30 Mar, 2013 1 commit
  27. 12 Feb, 2013 1 commit
    • Wayne Stambaugh's avatar
      Pcbnew pad properties dialog assertion and layout fixes. · 001afa49
      Wayne Stambaugh authored
      * Fixed spacing issue in pad properties dialog.
      * Remove wxSHAPED flag from pad drawing panel to prevent assertion in
        wxSizer.
      * Used sane default pad size and drill size settings to prevent wxRound
        assertions.
      * Add license to class_board_design_settings.cpp.
      001afa49
  28. 12 Jan, 2013 1 commit
    • Wayne Stambaugh's avatar
      Base object decoupling improvements. · f8a56d44
      Wayne Stambaugh authored
      * Improve MSG_PANEL_ITEM to handle message panel information.
      * Create containers for passing message panel items between objects and
        the message panel.
      * Rename EDA_ITEM::DisplayInfo to EDA_ITEM::GetMsgPanelInfo.
      * Remove all direct manipulation of EDA_DRAW_FRAME from all objects derived
        from EDA_ITEM.
      f8a56d44
  29. 12 Dec, 2012 1 commit
  30. 06 Dec, 2012 1 commit
  31. 22 Sep, 2012 1 commit
  32. 05 Sep, 2012 1 commit
  33. 02 Sep, 2012 2 commits
  34. 25 Jun, 2012 1 commit
  35. 18 May, 2012 1 commit
  36. 16 Apr, 2012 1 commit
    • Wayne Stambaugh's avatar
      More internal unit improvements. · 6468805c
      Wayne Stambaugh authored
      * Move all convert from user to internal units into base_units.cpp.
      * Remove internal units parameters from all moved conversion functions.
      * Revise all source code that calls the moved conversion functions.
      * Remove internal units from all dialog text control helper classes.
      6468805c
  37. 13 Apr, 2012 1 commit
    • Wayne Stambaugh's avatar
      More internal unit improvements. · 57d75a75
      Wayne Stambaugh authored
      * Move all convert from internal to user units functions into separate file.
      * Remove internal units parameter from all moved conversion functions.
      * Revise all source code that calls the moved conversion functions.
      * Compile these conversion routines separately for the appropriate pcb or
        schematic internal units.
      * Move internal units specific status bar update code into the appropriate
        application for updating the status bar.
      * Move millimeter user units rounding function to common.cpp.
      57d75a75
  38. 11 Apr, 2012 1 commit