| 
    KiCad PCB EDA Suite
    
   | 
 
#include <item_modification_routine.h>
  
Classes | |
| struct | PARAMETERS | 
Public Member Functions | |
| OUTSET_ROUTINE (BOARD_ITEM *aBoard, CHANGE_HANDLER &aHandler, const PARAMETERS &aParams) | |
| wxString | GetCommitDescription () const override | 
| std::optional< wxString > | GetStatusMessage () const | 
| void | ProcessItem (BOARD_ITEM &aItem) | 
| unsigned | GetSuccesses () const | 
| unsigned | GetFailures () const | 
Protected Member Functions | |
| BOARD_ITEM * | GetBoard () const | 
| The BOARD used when creating new shapes.   | |
| void | AddSuccess () | 
| Mark that one of the actions succeeded.   | |
| void | AddFailure () | 
| Mark that one of the actions failed.   | |
| bool | ModifyLineOrDeleteIfZeroLength (PCB_SHAPE &aItem, const std::optional< SEG > &aSeg) | 
| Helper function useful for multiple tools: modify a line or delete it if it has zero length.   | |
| CHANGE_HANDLER & | GetHandler () | 
| Access the handler for making changes to the board.   | |
Private Attributes | |
| const PARAMETERS | m_params | 
| BOARD_ITEM * | m_board | 
| CHANGE_HANDLER & | m_handler | 
| unsigned | m_numSuccesses | 
| unsigned | m_numFailures | 
Definition at line 439 of file item_modification_routine.h.
      
  | 
  inline | 
Definition at line 454 of file item_modification_routine.h.
References ITEM_MODIFICATION_ROUTINE::ITEM_MODIFICATION_ROUTINE(), and m_params.
      
  | 
  inlineprotectedinherited | 
Mark that one of the actions failed.
Definition at line 185 of file item_modification_routine.h.
References m_numFailures.
Referenced by DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), LINE_FILLET_ROUTINE::ProcessLinePair(), and POLYGON_BOOLEAN_ROUTINE::ProcessShape().
      
  | 
  inlineprotectedinherited | 
Mark that one of the actions succeeded.
Definition at line 180 of file item_modification_routine.h.
References m_numSuccesses.
Referenced by OUTSET_ROUTINE::ProcessItem(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), LINE_EXTENSION_ROUTINE::ProcessLinePair(), LINE_FILLET_ROUTINE::ProcessLinePair(), and POLYGON_BOOLEAN_ROUTINE::ProcessShape().
      
  | 
  inlineprotectedinherited | 
The BOARD used when creating new shapes.
Definition at line 175 of file item_modification_routine.h.
References m_board.
Referenced by DOGBONE_CORNER_ROUTINE::EnsureBoardOutline(), POLYGON_BOOLEAN_ROUTINE::Finalize(), OUTSET_ROUTINE::ProcessItem(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), and LINE_FILLET_ROUTINE::ProcessLinePair().
      
  | 
  overridevirtual | 
Implements ITEM_MODIFICATION_ROUTINE.
Definition at line 741 of file item_modification_routine.cpp.
References _.
Referenced by CONVERT_TOOL::OutsetItems().
      
  | 
  inlineinherited | 
Definition at line 167 of file item_modification_routine.h.
References m_numFailures.
Referenced by DOGBONE_CORNER_ROUTINE::GetStatusMessage(), LINE_CHAMFER_ROUTINE::GetStatusMessage(), LINE_EXTENSION_ROUTINE::GetStatusMessage(), LINE_FILLET_ROUTINE::GetStatusMessage(), OUTSET_ROUTINE::GetStatusMessage(), POLYGON_INTERSECT_ROUTINE::GetStatusMessage(), POLYGON_MERGE_ROUTINE::GetStatusMessage(), and POLYGON_SUBTRACT_ROUTINE::GetStatusMessage().
      
  | 
  inlineprotectedinherited | 
Access the handler for making changes to the board.
Definition at line 199 of file item_modification_routine.h.
References m_handler.
Referenced by POLYGON_BOOLEAN_ROUTINE::Finalize(), ModifyLineOrDeleteIfZeroLength(), OUTSET_ROUTINE::ProcessItem(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), LINE_EXTENSION_ROUTINE::ProcessLinePair(), LINE_FILLET_ROUTINE::ProcessLinePair(), and POLYGON_BOOLEAN_ROUTINE::ProcessShape().
| std::optional< wxString > OUTSET_ROUTINE::GetStatusMessage | ( | ) | const | 
Definition at line 746 of file item_modification_routine.cpp.
References _, ITEM_MODIFICATION_ROUTINE::GetFailures(), and ITEM_MODIFICATION_ROUTINE::GetSuccesses().
Referenced by CONVERT_TOOL::OutsetItems().
      
  | 
  inlineinherited | 
Definition at line 165 of file item_modification_routine.h.
References m_numSuccesses.
Referenced by DOGBONE_CORNER_ROUTINE::GetStatusMessage(), LINE_CHAMFER_ROUTINE::GetStatusMessage(), LINE_EXTENSION_ROUTINE::GetStatusMessage(), LINE_FILLET_ROUTINE::GetStatusMessage(), OUTSET_ROUTINE::GetStatusMessage(), POLYGON_INTERSECT_ROUTINE::GetStatusMessage(), POLYGON_MERGE_ROUTINE::GetStatusMessage(), and POLYGON_SUBTRACT_ROUTINE::GetStatusMessage().
      
  | 
  protectedinherited | 
Helper function useful for multiple tools: modify a line or delete it if it has zero length.
| aItem | the line to modify | 
| aSeg | the new line geometry | 
Definition at line 81 of file item_modification_routine.cpp.
References ITEM_MODIFICATION_ROUTINE::CHANGE_HANDLER::DeleteItem(), GetHandler(), EDA_SHAPE::GetShape(), ITEM_MODIFICATION_ROUTINE::CHANGE_HANDLER::MarkItemModified(), SEGMENT, EDA_SHAPE::SetEnd(), and EDA_SHAPE::SetStart().
Referenced by DOGBONE_CORNER_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), and LINE_FILLET_ROUTINE::ProcessLinePair().
| void OUTSET_ROUTINE::ProcessItem | ( | BOARD_ITEM & | aItem | ) | 
Definition at line 766 of file item_modification_routine.cpp.
References SEG::A, ITEM_MODIFICATION_ROUTINE::CHANGE_HANDLER::AddNewItem(), ITEM_MODIFICATION_ROUTINE::AddSuccess(), PADSTACK::ALL_LAYERS, ANGLE_180, ANGLE_90, ARC, SEG::B, chain, CIRCLE, circle(), KIGEOM::ConvertToChain(), ITEM_MODIFICATION_ROUTINE::CHANGE_HANDLER::DeleteItem(), EDA_SHAPE::GetArcAngle(), SHAPE_ARC::GetArcMid(), ITEM_MODIFICATION_ROUTINE::GetBoard(), GetBoardItemWidth(), PCB_SHAPE::GetCenter(), EDA_SHAPE::GetCornerRadius(), EDA_SHAPE::GetEnd(), ITEM_MODIFICATION_ROUTINE::GetHandler(), SHAPE_RECT::GetHeight(), BOARD_ITEM::GetLayer(), BOARD_ITEM::GetMaxError(), SHAPE_ARC::GetP0(), SHAPE_ARC::GetP1(), PCB_SHAPE::GetPosition(), SHAPE_RECT::GetPosition(), EDA_SHAPE::GetRadius(), SHAPE_ARC::GetRadius(), EDA_SHAPE::GetRectangleHeight(), EDA_SHAPE::GetRectangleWidth(), GetRectRoundedToGridOutwards(), GetRotated(), EDA_SHAPE::GetShape(), EDA_SHAPE::GetStart(), SHAPE_RECT::GetWidth(), SEG::Length(), m_params, SHAPE_POLY_SET::Outline(), OVAL, pad, PCB_PAD_T, PCB_SHAPE_T, POLY, radius, RECTANGLE, VECTOR2< T >::Resize(), SHAPE_POLY_SET::Rotate(), ROUNDRECT, SEGMENT, ROUNDRECT::TransformToPolygon(), TRAPEZOID, EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by CONVERT_TOOL::OutsetItems().
      
  | 
  privateinherited | 
Definition at line 202 of file item_modification_routine.h.
Referenced by GetBoard(), and ITEM_MODIFICATION_ROUTINE().
      
  | 
  privateinherited | 
Definition at line 203 of file item_modification_routine.h.
Referenced by GetHandler(), and ITEM_MODIFICATION_ROUTINE().
      
  | 
  privateinherited | 
Definition at line 206 of file item_modification_routine.h.
Referenced by AddFailure(), GetFailures(), and ITEM_MODIFICATION_ROUTINE().
      
  | 
  privateinherited | 
Definition at line 205 of file item_modification_routine.h.
Referenced by AddSuccess(), GetSuccesses(), and ITEM_MODIFICATION_ROUTINE().
      
  | 
  private | 
Definition at line 467 of file item_modification_routine.h.
Referenced by OUTSET_ROUTINE(), and ProcessItem().