- 02 Apr, 2013 1 commit
-
-
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
-
- 28 Mar, 2013 4 commits
-
-
Maciej Suminski authored
Added template RTREE and class VIEW_RTREE (R-tree for fast spatial indexing of VIEW items; for future usage in GAL)
-
Maciej Suminski authored
Added class COLOR4D that contains color representation with 4 components (RGBA) (for future usage in GAL)
-
Maciej Suminski authored
-
Maciej Suminski authored
include/vector2d.h: Removed old version include/math/math_util.h: rescale() for VECTOR2 include/math/vector2d.h: New version of VECTOR2 include/math/box2.h: New version of BOX2 common/drawframe.cpp: Refactorization of code, so it is compatible with new classes include/plot_common.h, pcbnew/basepcbframe.cpp: Changed header inclusion path CMakeLists.txt: Added definition to turn on WX_COMPATIBILITY for replacement classes
-
- 23 Mar, 2013 2 commits
-
-
Andrey Fedorushkov authored
-
jean-pierre charras authored
-
- 20 Mar, 2013 2 commits
-
-
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.
-
Dick Hollenbeck authored
standard layer name support from BOARD::GetLayerName(). This function evolved in a contorted direction over time, and was being asked to return one of 3 different kinds of layer names, even though it only took a boolean to control that choice. Users are better served by forcing them to get to know the concise new English Standard layer names. This is because these concise names show up in the "pretty" footprint/module files as the standard representation of both feature and copper layers. Change the name of BOARD::GetDefaultLayerName() to GetStandardLayerName(). Drop boolean argument to both BOARD::GetStandardLayerName() and BOARD::GetLayerName().
-
- 19 Mar, 2013 1 commit
-
-
Carl Poirier authored
-
- 18 Mar, 2013 2 commits
-
-
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.
-
Miguel Angel Ajo authored
checkcoding.py refactor from Edwin van den Oetelaar, some extra refactorings by me, improvement suggestions from Carl Poirier
-
- 17 Mar, 2013 4 commits
-
-
jean-pierre charras authored
Pcbnew: fix Bug #1156193 . Fix compil issues when KICAD_SCRIPTING_WXPYTHON is not enabled and KICAD_SCRIPTING is enabled
-
Miguel Angel Ajo authored
-
Miguel Angel Ajo authored
-
Miguel Angel Ajo authored
-
- 16 Mar, 2013 3 commits
-
-
Miguel Angel Ajo authored
Fix wxString.Print call to be compatible with wx2.8, thanks to Барановский Константин and Edwin van den Oetelaar for submiting same patch, same hour, are you twins? ;)
-
jean-pierre charras authored
-
Miguel Angel Ajo authored
Allow plugins to be reloaded without closing/opening pcbnew, next step is plugin editor, just a few lines away...
-
- 15 Mar, 2013 6 commits
-
-
Miguel Angel Ajo authored
-
Miguel Angel Ajo authored
-
Miguel Angel Ajo authored
LOCALE_IO toggle implementation for locale switches on scripting; code cleanups to comply with kicad coding style policy
-
Miguel Angel Ajo authored
-
Miguel Angel Ajo authored
wxT added to the locales fix, message box on python exceptions inside wizard, added some missing copyright notices
-
Miguel Angel Ajo authored
Fix for locales that set , as a decimal point (which is incompatible with python scripting), also fixed the m_Reference encapsulation in module to Reference()
-
- 14 Mar, 2013 2 commits
-
-
Dick Hollenbeck authored
EAGLE_PLUGIN now establishes (trace_min), (via_min_size), (via_min_drill), and Default Net's (clearance) by groking the eagle *.brd info. This makes it more probable that fewer DRC errors come about on first DRC attempt.
-
jean-pierre charras authored
-
- 13 Mar, 2013 5 commits
-
-
jean-pierre charras authored
-
jean-pierre charras authored
-
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.
-
Dick Hollenbeck authored
-
Dick Hollenbeck authored
-
- 12 Mar, 2013 3 commits
-
-
jean-pierre charras authored
-
jean-pierre charras authored
-
Miguel Angel Ajo authored
Reverted back the ( i ) parameters for python, applied the PyGILState_Ensure from Dick into his PyLOCK class
-
- 11 Mar, 2013 2 commits
-
-
jean-pierre charras authored
-
Dick Hollenbeck authored
improvements to python's GIL acquisition and release, but not done yet, since I think the GIL needs to be acquired even when not involving wxPython.
-
- 10 Mar, 2013 3 commits
-
-
jean-pierre charras authored
-
jean-pierre charras authored
Pcbnew: fix issues: Ensure pads type connector have a drill size= 0, like SMD pads. Ensure keepout zones have no net.
-
Miguel Angel Ajo authored
-