- 26 Jan, 2014 1 commit
-
-
Maciej Suminski authored
-
- 24 Nov, 2013 1 commit
-
-
jean-pierre charras authored
Pcbnew: Code cleaning and bug fix in autoplace functions Dialog exchange footprints has now a separate button to update the .cmp file, only on request.
-
- 05 Nov, 2013 1 commit
-
-
jean-pierre charras authored
Pcbnew: Fix incorrect bounding box calculation of texts. Only noticeable with boards conveted from Eagle, which are using other text justification than center. Eagle plugin: filter and replace not allowed chars in FPID(-':' and '/') by _ or -, if they are used in Eagle footprint names (otherwise, boards converted and saved under kicad_pcb format are not readable by Pcbnew).
-
- 02 Oct, 2013 1 commit
-
-
Maciej Suminski authored
-
- 04 Sep, 2013 1 commit
-
-
Maciej Suminski authored
-
- 03 Sep, 2013 1 commit
-
-
Maciej Suminski authored
-
- 09 Aug, 2013 1 commit
-
-
Maciej Suminski authored
-
- 29 Jun, 2013 1 commit
-
-
jean-pierre charras authored
Replace in EDA_TEXT::Draw the parameter EDA_DRAW_PANEL* aPanel by EDA_RECT* aClipBox, which is the actual parameter used by Draw. This change make more easy to use this function when a EDA_DRAW_PANEL canvas is not used to draw texts. Remove dead code in worksheet.cpp.
-
- 05 May, 2013 2 commits
-
-
Lorenzo Marcantonio authored
-
Lorenzo Marcantonio authored
The plan goes like this: - eeschema still uses int in decidegrees - all the other things internally use double in decidegrees (or radians in temporaries) - in pcbnew UI the unit is *still* int in decidegrees The idea is to have better precision everywhere while keeping the user with int i angles. Hopefully, if a fractional angle doesn't come in from the outside, everything should *look* like an integer angle (unless I forgot something and it broke) When the time comes, simply updating the UI for allowing doubles from the user should be enough to get arbitrary angles in pcbnew.
-
- 01 May, 2013 1 commit
-
-
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
-
- 09 Apr, 2013 3 commits
-
-
Lorenzo Marcantonio authored
-
Lorenzo Marcantonio authored
Dynamic contrast for netname and pin numbers ('halo' text) Handle netname drawing even on diagonal tracks
-
Lorenzo Marcantonio authored
More layer classification cleanup
-
- 07 Apr, 2013 1 commit
-
-
Lorenzo Marcantonio authored
Better description for entities on right click menu and panel Typo fixes and some comment reformats
-
- 02 Apr, 2013 2 commits
-
-
Maciej Suminski authored
-
Maciej Suminski authored
New classes: - VIEW - represents view that is seen by user, takes care of layer ordering & visibility and how it is displayed (which location, how much zoomed, etc.) - VIEW_ITEM - Base class for every item that can be displayed on VIEW (the biggest change is that now it may be necessary to override ViewBBox & ViewGetLayers method for derived classes). - EDA_DRAW_PANEL_GAL - Inherits after EDA_DRAW_PANEL, displays VIEW output, right now it is not editable (in opposite to usual EDA_DRAW_PANEL). - GAL/OPENGL_GAL/CAIRO_GAL - Base Graphics Abstraction Layer class + two different flavours (Cairo is not fully supported yet), that offers methods to draw primitives using different libraries. - WX_VIEW_CONTROLS - Controller for VIEW, handles user events, allows zooming, panning, etc. - PAINTER/PCB_PAINTER - Classes that uses GAL interface to draw items (as you may have already guessed - PCB_PAINTER is a class for drawing PCB specific object, PAINTER is an abstract class). Its methods are invoked by VIEW, when an item has to be drawn. To display a new type of item - you need to implement draw(ITEM_TYPE*) method that draws it using GAL methods. - STROKE_FONT - Implements stroke font drawing using GAL methods. Most important changes to Kicad original code: * EDA_ITEM now inherits from VIEW_ITEM, which is a base class for all drawable objects. * EDA_DRAW_FRAME contains both usual EDA_DRAW_PANEL and new EDA_DRAW_PANEL_GAL, that can be switched anytime. * There are some new layers for displaying multilayer pads, vias & pads holes (these are not shown yet on the right sidebar in pcbnew) * Display order of layers is different than in previous versions (if you are curious - you may check m_galLayerOrder@pcbnew/basepcbframe.cpp). Preserving usual order would result in not very natural display, such as showing silkscreen texts on the bottom. * Introduced new hotkey (Alt+F12) and new menu option (View->Switch canvas) for switching canvas during runtime. * Some of classes (mostly derived from BOARD_ITEM) now includes ViewBBox & ViewGetLayers methods. * Removed tools/class_painter.h, as now it is extended and included in source code. Build changes: * GAL-based rendering option is turned on by a new compilation CMake option KICAD_GAL. * When compiling with CMake option KICAD_GAL=ON, GLEW and Cairo libraries are required. * GAL-related code is compiled into a static library (common/libgal). * Build with KICAD_GAL=OFF should not need any new libraries and should come out as a standard version of Kicad Currently most of items in pcbnew can be displayed using OpenGL (to be done are DIMENSIONS and MARKERS). More details about GAL can be found in: http://www.ohwr.org/attachments/1884/view-spec.pdf
-
- 31 Mar, 2013 2 commits
-
-
Lorenzo Marcantonio authored
-
Lorenzo Marcantonio authored
Implemented the LAYER_NUM typedef (LAYER was already taken as a class name...) to represent a layer number.
-
- 26 Mar, 2013 1 commit
-
-
jean-pierre charras authored
Pcbnew: fix an issue when texts in footprints have a size = 60 mils (default size for texts). After saving and reading the .kicad_pcb file, the size was not correct.
-
- 18 Mar, 2013 1 commit
-
-
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.
-
- 13 Mar, 2013 1 commit
-
-
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.
-
- 12 Jan, 2013 1 commit
-
-
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.
-
- 02 Sep, 2012 2 commits
-
-
Lorenzo Marcantonio authored
-
Lorenzo Marcantonio authored
-
- 01 Sep, 2012 1 commit
-
-
Lorenzo Marcantonio authored
-
- 11 Aug, 2012 1 commit
-
-
Dick Hollenbeck authored
-
- 08 Jun, 2012 1 commit
-
-
jean-pierre charras authored
Minor code cleaning in autoroute files.
-
- 31 May, 2012 1 commit
-
-
Dick Hollenbeck authored
-
- 27 Apr, 2012 1 commit
-
-
jean-pierre charras authored
-
- 22 Apr, 2012 1 commit
-
-
Wayne Stambaugh authored
* Move board item object Format() functions into PCB_IO object. * Change file format to use layer names instead of numbers. * Change file extension to kicad_pcb.
-
- 12 Apr, 2012 1 commit
-
-
Wayne Stambaugh authored
* Move EDA_TEXT object into separate header and source file. * Compile EDA_TEXT class separately for BOARD_ITEM and SCH_ITEM units. * Compile PAGE_INFO class separately for BOARD_ITEM and SCH_ITEM units. * Minor formatting tweaks to Pcbnew s-expression file. * Move internal unit formatting functions into BOARD_ITEM and SCH_ITEM.
-
- 07 Apr, 2012 1 commit
-
-
Wayne Stambaugh authored
* Save dialog now supports saving boards to new file format. * Add CMake option to build s-expression file save. * Add check to main CMakeList.txt file to make sure nanometers are enables when the new file format is built. * Minor tweaks to object format functions for improved output. * Rename kicad_plugin.h/cpp to legacy_plugin.h/cpp.
-
- 01 Apr, 2012 1 commit
-
-
Wayne Stambaugh authored
* Add s-expression Format() function to all objects derived from BOARD_ITEM. * Add s-expression Format() function to base objects as required. * Add functions to convert coordinates from base internal units (nanometers) to millimeter string for writing to s-expression file. * Add temporary dummy conversion functions to prevent link errors until schematic and board object and action code can be separated into DSO/DLL. * Add CMake build option to build Pcbnew with nanometer internal units.
-
- 26 Mar, 2012 1 commit
-
-
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.
-
- 17 Mar, 2012 1 commit
-
-
Wayne Stambaugh authored
* Remove double Clone() function calls from all classes derived from EDA_ITEM. * Lots of Doxygen comment warning fixes.
-
- 15 Mar, 2012 1 commit
-
-
Wayne Stambaugh authored
* All objects derived from EDA_ITEM now have consistent hit test method definitions. * Remove double function calls from all classes derived from SCH_ITEM. * Lots of Doxygen comment fixes.
-
- 23 Jan, 2012 1 commit
-
-
Dick Hollenbeck authored
-
- 14 Jan, 2012 1 commit
-
-
Wayne Stambaugh authored
* Remove unnecessary copy constructors from board and module library objects. * Add doClone() method to board and library objects. * Add comment to class definitions where the default copy constructor generated by the compiler was adequate. * Replace copy method with clone method where applicable. * Remove DuplicateStruct() function. * Remove track object copy function.
-
- 03 Jan, 2012 1 commit
-
-
Wayne Stambaugh authored
-