1. 25 Apr, 2013 2 commits
    • 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
    • jean-pierre charras's avatar
  2. 06 Apr, 2013 2 commits
  3. 05 Apr, 2013 1 commit
  4. 04 Apr, 2013 1 commit
    • Lorenzo Marcantonio's avatar
      More work on EDA_COLOR_T and layers. · d12a4592
      Lorenzo Marcantonio authored
      In particular the new mechanism for handling extended color palettes is in place,
      included renaming the ini keys and saving the color name instead of its index; this means better forward compatibility with palette changes.
      
      Since ini keys are changed, colors will be reset
      d12a4592
  5. 31 Mar, 2013 1 commit
  6. 28 Mar, 2013 1 commit
  7. 27 Mar, 2013 1 commit
  8. 20 Mar, 2013 1 commit
    • Wayne Stambaugh's avatar
      Encapsulation, bug, context menu string, and, coding policy fixes. · 25e7abec
      Wayne Stambaugh authored
      * Complete encapsulation of the ZONE_CONTAINER class.
      * Fixed a bug in the EDA_TEXT::Format() default effects behavior due to
        improper conversion to internal units and missing test for default
        thickness.
      * Improved grammar of some Pcbnew context menu strings.
      * Moved some more cleverly hidden BOARD object methods into class_board.cpp.
      * Lots of coding policy and documentation fixes.
      25e7abec
  9. 18 Mar, 2013 1 commit
    • Wayne Stambaugh's avatar
      More encapsulation work. · 7d0ec1a1
      Wayne Stambaugh authored
      * Complete encapsulation of the MODULE class.
      * Complete encapsulation of the EDA_TEXT class.
      * Encapsulate most of the ZONE_CONTAINER class.
      * Add pcbcommon library as a dependency for reSWIGging the scripting
        support.  This should cover most dependency cases.
      7d0ec1a1
  10. 14 Mar, 2013 1 commit
  11. 13 Mar, 2013 1 commit
    • Wayne Stambaugh's avatar
      Pcbnew encapsulation and code cleaning. · 42d7bf6c
      Wayne Stambaugh authored
      * Encapsulate most of the MODULE class.
      * Start encapsulating the DIMENSION class.
      * Lay some groundwork for EDA_TEXT encapsulation.
      * Move cleverly hidden MODULE functions into class_module.cpp.
      * Use std::swap to exchange TEXTE_PCB values for undo/redo.
      * Remove unused members from MODULE class.
      * The usual coding policy and documentation fixes.
      42d7bf6c
  12. 13 Jan, 2013 1 commit
  13. 12 Jan, 2013 1 commit
  14. 23 Dec, 2012 1 commit
  15. 15 Dec, 2012 1 commit
  16. 04 Oct, 2012 1 commit
  17. 21 Sep, 2012 1 commit
  18. 12 Sep, 2012 1 commit
  19. 11 Sep, 2012 2 commits
  20. 29 Aug, 2012 1 commit
  21. 28 Aug, 2012 1 commit
  22. 27 Aug, 2012 2 commits
  23. 26 Aug, 2012 2 commits
  24. 23 Aug, 2012 1 commit
  25. 21 Aug, 2012 1 commit
  26. 11 Aug, 2012 1 commit
  27. 04 Aug, 2012 1 commit
  28. 25 Jul, 2012 1 commit
  29. 09 Jun, 2012 1 commit
    • Wayne Stambaugh's avatar
      Add Pcbnew s-expression file parser. · 2d0d8050
      Wayne Stambaugh authored
      * Add s-expression file parser object and keyword files.
      * Fix minor issues with s-expression file formatting.
      * Fix a minor bug the zone container fill state parsing in the legacy plugin.
      * Move EDA_TEXT visibility definition to eda_text.h.
      * Add minor BOARD_ITEM object improvements to support s-expression file
        parser.
      2d0d8050
  30. 02 Jun, 2012 1 commit
  31. 11 May, 2012 1 commit
  32. 27 Apr, 2012 1 commit
  33. 19 Apr, 2012 1 commit
    • Dick Hollenbeck's avatar
      // Dick Hollenbeck's KiROUND R&D · c24863c0
      Dick Hollenbeck authored
      // This provides better project control over rounding to int from double
      // than wxRound() did.  This scheme provides better logging in Debug builds
      // and it provides for compile time calculation of constants.
      
      
      #include <stdio.h>
      #include <assert.h>
      #include <limits.h>
      
      //-----<KiROUND KIT>------------------------------------------------------------
      
      /**
       * KiROUND
       * rounds a floating point number to an int using
       * "round halfway cases away from zero".
       * In Debug build an assert fires if will not fit into an int.
       */
      
      #if defined( DEBUG )
      
      // DEBUG: a macro to capture line and file, then calls this inline
      
      static inline int KiRound( double v, int line, const char* filename )
      {
          v = v < 0 ? v - 0.5 : v + 0.5;
          if( v > INT_MAX + 0.5 )
          {
              printf( "%s: in file %s on line %d, val: %.16g too ' > 0 ' for int\n", __FUNCTION__, filename, line, v );
          }
          else if( v < INT_MIN - 0.5 )
          {
              printf( "%s: in file %s on line %d, val: %.16g too ' < 0 ' for int\n", __FUNCTION__, filename, line, v );
          }
          return int( v );
      }
      
      #define KiROUND( v )    KiRound( v, __LINE__, __FILE__ )
      
      #else
      
      // RELEASE: a macro so compile can pre-compute constants.
      
      #define KiROUND( v )  int( (v) < 0 ? (v) - 0.5 : (v) + 0.5 )
      
      #endif
      
      
      //-----</KiROUND KIT>-----------------------------------------------------------
      
      // Only a macro is compile time calculated, an inline function causes a static constructor
      // in a situation like this.
      // Therefore the Release build is best done with a MACRO not an inline function.
      int Computed = KiROUND( 14.3 * 8 );
      
      
      int main( int argc, char** argv )
      {
          for( double d = double(INT_MAX)-1;  d < double(INT_MAX)+8;  d += 2.0 )
          {
              int i = KiROUND( d );
      
              printf( "t: %d  %.16g\n", i, d );
          }
      
          return 0;
      }
      c24863c0
  34. 09 Apr, 2012 1 commit
  35. 26 Mar, 2012 1 commit
    • Wayne Stambaugh's avatar
      Minor code improvements and coding policy fixes. · 45445dd8
      Wayne Stambaugh authored
      * BLOCK_SELECTOR class is not longer derived from EDA_ITEM.
      * Encapsulate BLOCK_SELECTOR class member variables and add access methods.
      * Move HandleBlockBegin() function from block_commande.cpp to drawframe.cpp.
      * Remove virtual methods from top level derived objects per future
        coding policy change.
      * Remove Doxygen copydoc statement from objects derived from EDA_ITEM
        since the comments are automatically copied to the derived object.
      * Removed copy and pasted Doxygen comments from objects derived from
        EDA_ITEM.
      45445dd8