|
KiCad PCB EDA Suite
|
Syncer for SHAPE_T::ELLIPSE_ARC. More...
Public Types | |
| enum | CTRL_IDX { CENTER_X = 0 , CENTER_Y , MAJOR_RADIUS , MINOR_RADIUS , ROTATION , START_ANGLE , END_ANGLE , NUM_CTRLS } |
Public Member Functions | |
| ELLIPSE_ARC_GEOM_SYNCER (PCB_SHAPE &aShape, std::vector< BOUND_CONTROL > &aBoundCtrls) | |
| bool | Validate (wxArrayString &aErrs) const override |
| void | updateAll () override |
| void | OnChange () |
| void | BindCtrls (size_t aFrom, size_t aTo, std::function< void()> aCb) |
| void | SetShape (PCB_SHAPE &aShape) |
Protected Member Functions | |
| wxTextCtrl * | GetCtrl (size_t aIndex) const |
| int | GetIntValue (size_t aIndex) const |
| EDA_ANGLE | GetAngleValue (size_t aIndex) const |
| void | ChangeValue (size_t aIndex, int aValue) |
| void | ChangeAngleValue (size_t aIndex, const EDA_ANGLE &aValue) |
| PCB_SHAPE & | GetShape () |
| const PCB_SHAPE & | GetShape () const |
Private Attributes | |
| PCB_SHAPE & | m_shape |
| std::vector< BOUND_CONTROL > & | m_boundCtrls |
Syncer for SHAPE_T::ELLIPSE_ARC.
Like ELLIPSE_GEOM_SYNCER plus start/end angles.
Definition at line 722 of file pcbnew/dialogs/dialog_shape_properties.cpp.
| Enumerator | |
|---|---|
| CENTER_X | |
| CENTER_Y | |
| MAJOR_RADIUS | |
| MINOR_RADIUS | |
| ROTATION | |
| START_ANGLE | |
| END_ANGLE | |
| NUM_CTRLS | |
Definition at line 725 of file pcbnew/dialogs/dialog_shape_properties.cpp.
|
inline |
Definition at line 738 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::BindCtrls(), CENTER_X, ELLIPSE_ARC, END_ANGLE, GEOM_SYNCER::GEOM_SYNCER(), GEOM_SYNCER::GetShape(), NUM_CTRLS, and OnChange().
|
inlineinherited |
Definition at line 75 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_boundCtrls.
Referenced by ARC_GEOM_SYNCER::ARC_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::BEZIER_GEOM_SYNCER(), CIRCLE_GEOM_SYNCER::CIRCLE_GEOM_SYNCER(), ELLIPSE_ARC_GEOM_SYNCER::ELLIPSE_ARC_GEOM_SYNCER(), ELLIPSE_GEOM_SYNCER::ELLIPSE_GEOM_SYNCER(), LINE_GEOM_SYNCER::LINE_GEOM_SYNCER(), and RECTANGLE_GEOM_SYNCER::RECTANGLE_GEOM_SYNCER().
|
inlineprotectedinherited |
Definition at line 125 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_boundCtrls.
Referenced by ELLIPSE_ARC_GEOM_SYNCER::updateAll(), ELLIPSE_GEOM_SYNCER::updateAll(), ARC_GEOM_SYNCER::updateCSA(), and LINE_GEOM_SYNCER::updatePolar().
|
inlineprotectedinherited |
Definition at line 119 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_boundCtrls.
Referenced by ELLIPSE_ARC_GEOM_SYNCER::updateAll(), ELLIPSE_GEOM_SYNCER::updateAll(), BEZIER_GEOM_SYNCER::updateBezier(), CIRCLE_GEOM_SYNCER::updateCenterPoint(), CIRCLE_GEOM_SYNCER::updateCenterRadius(), RECTANGLE_GEOM_SYNCER::updateCenterSize(), RECTANGLE_GEOM_SYNCER::updateCorners(), RECTANGLE_GEOM_SYNCER::updateCornerSize(), ARC_GEOM_SYNCER::updateCSA(), LINE_GEOM_SYNCER::updateEnds(), LINE_GEOM_SYNCER::updatePolar(), ARC_GEOM_SYNCER::updateSME(), and LINE_GEOM_SYNCER::updateStartMidpoint().
|
inlineprotectedinherited |
Definition at line 113 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_boundCtrls.
Referenced by ELLIPSE_ARC_GEOM_SYNCER::OnChange(), ELLIPSE_GEOM_SYNCER::OnChange(), ARC_GEOM_SYNCER::OnCSAChange(), LINE_GEOM_SYNCER::OnPolarChange(), and ARC_GEOM_SYNCER::Validate().
|
inlineprotectedinherited |
Definition at line 101 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_boundCtrls.
|
inlineprotectedinherited |
Definition at line 107 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_boundCtrls.
Referenced by BEZIER_GEOM_SYNCER::OnBezierChange(), CIRCLE_GEOM_SYNCER::OnCenterPointChange(), CIRCLE_GEOM_SYNCER::OnCenterRadiusChange(), RECTANGLE_GEOM_SYNCER::OnCenterSizeChange(), ELLIPSE_ARC_GEOM_SYNCER::OnChange(), ELLIPSE_GEOM_SYNCER::OnChange(), RECTANGLE_GEOM_SYNCER::OnCornersChange(), RECTANGLE_GEOM_SYNCER::OnCornerSizeChange(), ARC_GEOM_SYNCER::OnCSAChange(), LINE_GEOM_SYNCER::OnEndsChange(), LINE_GEOM_SYNCER::OnPolarChange(), ARC_GEOM_SYNCER::OnSMEChange(), LINE_GEOM_SYNCER::OnStartMidpointChange(), ARC_GEOM_SYNCER::Validate(), CIRCLE_GEOM_SYNCER::Validate(), ELLIPSE_ARC_GEOM_SYNCER::Validate(), ELLIPSE_GEOM_SYNCER::Validate(), and RECTANGLE_GEOM_SYNCER::Validate().
|
inlineprotectedinherited |
Definition at line 131 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_shape.
Referenced by ARC_GEOM_SYNCER::ARC_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::BEZIER_GEOM_SYNCER(), CIRCLE_GEOM_SYNCER::CIRCLE_GEOM_SYNCER(), ELLIPSE_ARC_GEOM_SYNCER::ELLIPSE_ARC_GEOM_SYNCER(), ELLIPSE_GEOM_SYNCER::ELLIPSE_GEOM_SYNCER(), LINE_GEOM_SYNCER::LINE_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::OnBezierChange(), CIRCLE_GEOM_SYNCER::OnCenterPointChange(), CIRCLE_GEOM_SYNCER::OnCenterRadiusChange(), RECTANGLE_GEOM_SYNCER::OnCenterSizeChange(), ELLIPSE_ARC_GEOM_SYNCER::OnChange(), ELLIPSE_GEOM_SYNCER::OnChange(), RECTANGLE_GEOM_SYNCER::OnCornersChange(), RECTANGLE_GEOM_SYNCER::OnCornerSizeChange(), ARC_GEOM_SYNCER::OnCSAChange(), LINE_GEOM_SYNCER::OnEndsChange(), LINE_GEOM_SYNCER::OnPolarChange(), ARC_GEOM_SYNCER::OnSMEChange(), LINE_GEOM_SYNCER::OnStartMidpointChange(), RECTANGLE_GEOM_SYNCER::RECTANGLE_GEOM_SYNCER(), ELLIPSE_ARC_GEOM_SYNCER::updateAll(), ELLIPSE_GEOM_SYNCER::updateAll(), BEZIER_GEOM_SYNCER::updateBezier(), CIRCLE_GEOM_SYNCER::updateCenterPoint(), CIRCLE_GEOM_SYNCER::updateCenterRadius(), RECTANGLE_GEOM_SYNCER::updateCenterSize(), RECTANGLE_GEOM_SYNCER::updateCorners(), RECTANGLE_GEOM_SYNCER::updateCornerSize(), ARC_GEOM_SYNCER::updateCSA(), LINE_GEOM_SYNCER::updateEnds(), LINE_GEOM_SYNCER::updatePolar(), ARC_GEOM_SYNCER::updateSME(), and LINE_GEOM_SYNCER::updateStartMidpoint().
|
inlineprotectedinherited |
Definition at line 133 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_shape.
|
inline |
Definition at line 786 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References center, CENTER_X, CENTER_Y, end, END_ANGLE, GEOM_SYNCER::GetAngleValue(), GEOM_SYNCER::GetIntValue(), GEOM_SYNCER::GetShape(), MAJOR_RADIUS, MINOR_RADIUS, ROTATION, EDA_SHAPE::SetEllipseCenter(), EDA_SHAPE::SetEllipseEndAngle(), EDA_SHAPE::SetEllipseMajorRadius(), EDA_SHAPE::SetEllipseMinorRadius(), EDA_SHAPE::SetEllipseRotation(), EDA_SHAPE::SetEllipseStartAngle(), and START_ANGLE.
Referenced by ELLIPSE_ARC_GEOM_SYNCER().
|
inlineinherited |
Definition at line 90 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References m_shape, and updateAll().
|
inlineoverridevirtual |
Implements GEOM_SYNCER.
Definition at line 768 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References center, CENTER_X, CENTER_Y, GEOM_SYNCER::ChangeAngleValue(), GEOM_SYNCER::ChangeValue(), end, END_ANGLE, EDA_SHAPE::GetEllipseCenter(), EDA_SHAPE::GetEllipseEndAngle(), EDA_SHAPE::GetEllipseMajorRadius(), EDA_SHAPE::GetEllipseMinorRadius(), EDA_SHAPE::GetEllipseRotation(), EDA_SHAPE::GetEllipseStartAngle(), GEOM_SYNCER::GetShape(), MAJOR_RADIUS, MINOR_RADIUS, ROTATION, and START_ANGLE.
|
inlineoverridevirtual |
Reimplemented from GEOM_SYNCER.
Definition at line 751 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References _, GEOM_SYNCER::GetIntValue(), MAJOR_RADIUS, and MINOR_RADIUS.
|
privateinherited |
Definition at line 137 of file pcbnew/dialogs/dialog_shape_properties.cpp.
Referenced by BindCtrls(), ChangeAngleValue(), ChangeValue(), GEOM_SYNCER(), GetAngleValue(), GetCtrl(), and GetIntValue().
|
privateinherited |
Definition at line 136 of file pcbnew/dialogs/dialog_shape_properties.cpp.
Referenced by GEOM_SYNCER(), GetShape(), GetShape(), and SetShape().