KiCad PCB EDA Suite
|
Public Types | |
enum | CTRL_IDX { CSA_CENTER_X = 0 , CSA_CENTER_Y , CSA_START_X , CSA_START_Y , CSA_ANGLE , SME_START_X , SME_START_Y , SME_MID_X , SME_MID_Y , SME_END_X , SME_END_Y , NUM_CTRLS } |
Public Member Functions | |
ARC_GEOM_SYNCER (PCB_SHAPE &aShape, std::vector< BOUND_CONTROL > &aBoundCtrls) | |
bool | Validate (wxArrayString &aErrs) const override |
void | updateAll () override |
void | OnCSAChange () |
void | updateCSA () |
void | OnSMEChange () |
void | updateSME () |
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 |
Definition at line 403 of file pcbnew/dialogs/dialog_shape_properties.cpp.
Enumerator | |
---|---|
CSA_CENTER_X | |
CSA_CENTER_Y | |
CSA_START_X | |
CSA_START_Y | |
CSA_ANGLE | |
SME_START_X | |
SME_START_Y | |
SME_MID_X | |
SME_MID_Y | |
SME_END_X | |
SME_END_Y | |
NUM_CTRLS |
Definition at line 406 of file pcbnew/dialogs/dialog_shape_properties.cpp.
|
inline |
Definition at line 425 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::BindCtrls(), CSA_ANGLE, CSA_CENTER_X, GEOM_SYNCER::GetShape(), NUM_CTRLS, OnCSAChange(), OnSMEChange(), SME_END_Y, and SME_START_X.
|
inlineinherited |
Definition at line 69 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_boundCtrls.
Referenced by ARC_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::BEZIER_GEOM_SYNCER(), CIRCLE_GEOM_SYNCER::CIRCLE_GEOM_SYNCER(), LINE_GEOM_SYNCER::LINE_GEOM_SYNCER(), and RECTANGLE_GEOM_SYNCER::RECTANGLE_GEOM_SYNCER().
|
inlineprotectedinherited |
Definition at line 119 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_boundCtrls.
Referenced by updateCSA(), and LINE_GEOM_SYNCER::updatePolar().
|
inlineprotectedinherited |
Definition at line 113 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_boundCtrls.
Referenced by BEZIER_GEOM_SYNCER::updateBezier(), CIRCLE_GEOM_SYNCER::updateCenterPoint(), CIRCLE_GEOM_SYNCER::updateCenterRadius(), RECTANGLE_GEOM_SYNCER::updateCenterSize(), RECTANGLE_GEOM_SYNCER::updateCorners(), RECTANGLE_GEOM_SYNCER::updateCornerSize(), updateCSA(), LINE_GEOM_SYNCER::updateEnds(), LINE_GEOM_SYNCER::updatePolar(), updateSME(), and LINE_GEOM_SYNCER::updateStartMidpoint().
|
inlineprotectedinherited |
Definition at line 107 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_boundCtrls.
Referenced by LINE_GEOM_SYNCER::OnPolarChange(), and Validate().
|
inlineprotectedinherited |
Definition at line 95 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_boundCtrls.
|
inlineprotectedinherited |
Definition at line 101 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_boundCtrls.
Referenced by BEZIER_GEOM_SYNCER::OnBezierChange(), CIRCLE_GEOM_SYNCER::OnCenterPointChange(), CIRCLE_GEOM_SYNCER::OnCenterRadiusChange(), RECTANGLE_GEOM_SYNCER::OnCenterSizeChange(), RECTANGLE_GEOM_SYNCER::OnCornersChange(), RECTANGLE_GEOM_SYNCER::OnCornerSizeChange(), OnCSAChange(), LINE_GEOM_SYNCER::OnEndsChange(), LINE_GEOM_SYNCER::OnPolarChange(), OnSMEChange(), LINE_GEOM_SYNCER::OnStartMidpointChange(), RECTANGLE_GEOM_SYNCER::Validate(), Validate(), and CIRCLE_GEOM_SYNCER::Validate().
|
inlineprotectedinherited |
Definition at line 125 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_shape.
Referenced by ARC_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::BEZIER_GEOM_SYNCER(), CIRCLE_GEOM_SYNCER::CIRCLE_GEOM_SYNCER(), LINE_GEOM_SYNCER::LINE_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::OnBezierChange(), CIRCLE_GEOM_SYNCER::OnCenterPointChange(), CIRCLE_GEOM_SYNCER::OnCenterRadiusChange(), RECTANGLE_GEOM_SYNCER::OnCenterSizeChange(), RECTANGLE_GEOM_SYNCER::OnCornersChange(), RECTANGLE_GEOM_SYNCER::OnCornerSizeChange(), OnCSAChange(), LINE_GEOM_SYNCER::OnEndsChange(), LINE_GEOM_SYNCER::OnPolarChange(), OnSMEChange(), LINE_GEOM_SYNCER::OnStartMidpointChange(), RECTANGLE_GEOM_SYNCER::RECTANGLE_GEOM_SYNCER(), BEZIER_GEOM_SYNCER::updateBezier(), CIRCLE_GEOM_SYNCER::updateCenterPoint(), CIRCLE_GEOM_SYNCER::updateCenterRadius(), RECTANGLE_GEOM_SYNCER::updateCenterSize(), RECTANGLE_GEOM_SYNCER::updateCorners(), RECTANGLE_GEOM_SYNCER::updateCornerSize(), updateCSA(), LINE_GEOM_SYNCER::updateEnds(), LINE_GEOM_SYNCER::updatePolar(), updateSME(), and LINE_GEOM_SYNCER::updateStartMidpoint().
|
inlineprotectedinherited |
Definition at line 127 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_shape.
|
inline |
Definition at line 489 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References CSA_ANGLE, CSA_CENTER_X, CSA_CENTER_Y, CSA_START_X, CSA_START_Y, GEOM_SYNCER::GetIntValue(), GEOM_SYNCER::GetShape(), EDA_SHAPE::SetArcAngleAndEnd(), EDA_SHAPE::SetCenter(), EDA_SHAPE::SetStart(), and updateSME().
Referenced by ARC_GEOM_SYNCER().
|
inline |
Definition at line 514 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::GetIntValue(), GEOM_SYNCER::GetShape(), EDA_SHAPE::SetArcGeometry(), SME_END_X, SME_END_Y, SME_MID_X, SME_MID_Y, SME_START_X, SME_START_Y, and updateCSA().
Referenced by ARC_GEOM_SYNCER().
|
inlineinherited |
Definition at line 84 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::m_shape, and GEOM_SYNCER::updateAll().
|
inlineoverridevirtual |
Implements GEOM_SYNCER.
Definition at line 483 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References updateCSA(), and updateSME().
|
inline |
Definition at line 502 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::ChangeAngleValue(), GEOM_SYNCER::ChangeValue(), CSA_ANGLE, CSA_CENTER_X, CSA_CENTER_Y, CSA_START_X, CSA_START_Y, PCB_SHAPE::GetCenter(), GEOM_SYNCER::GetShape(), EDA_SHAPE::GetStart(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by OnSMEChange(), and updateAll().
|
inline |
Definition at line 525 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References GEOM_SYNCER::ChangeValue(), EDA_SHAPE::GetArcMid(), EDA_SHAPE::GetEnd(), GEOM_SYNCER::GetShape(), EDA_SHAPE::GetStart(), SME_END_X, SME_END_Y, SME_MID_X, SME_MID_Y, SME_START_X, SME_START_Y, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by OnCSAChange(), and updateAll().
|
inlineoverridevirtual |
Reimplemented from GEOM_SYNCER.
Definition at line 444 of file pcbnew/dialogs/dialog_shape_properties.cpp.
References _, std::abs(), EDA_ANGLE::AsDegrees(), CalcArcCenter(), CSA_ANGLE, GEOM_SYNCER::GetAngleValue(), GEOM_SYNCER::GetIntValue(), SME_END_X, SME_END_Y, SME_MID_X, SME_MID_Y, SME_START_X, SME_START_Y, VECTOR2< T >::x, and VECTOR2< T >::y.
|
privateinherited |
Definition at line 131 of file pcbnew/dialogs/dialog_shape_properties.cpp.
Referenced by GEOM_SYNCER::BindCtrls(), GEOM_SYNCER::ChangeAngleValue(), GEOM_SYNCER::ChangeValue(), GEOM_SYNCER::GetAngleValue(), GEOM_SYNCER::GetCtrl(), and GEOM_SYNCER::GetIntValue().
|
privateinherited |
Definition at line 130 of file pcbnew/dialogs/dialog_shape_properties.cpp.
Referenced by GEOM_SYNCER::GetShape(), and GEOM_SYNCER::SetShape().