34 m_targetLength( aFrame, m_targetLengthLabel, m_targetLengthCtrl, m_targetLengthUnits ),
35 m_targetDelay( aFrame, m_targetDelayLabel, m_targetDelayCtrl, m_targetDelayUnits ),
36 m_minA( aFrame, m_track_minALabel, m_minACtrl, m_minAUnits ),
37 m_maxA( aFrame, m_maxALabel, m_maxACtrl, m_maxAUnits ),
38 m_spacing( aFrame, m_spacingLabel, m_spacingCtrl, m_spacingUnits ), m_r( aFrame, m_rLabel, m_rCtrl, m_rUnits ),
39 m_settings( aSettings ), m_mode( aMeanderType )
65 GetSizer()->SetSizeHints(
this );
70 GetSizer()->SetSizeHints(
this );
148 int lastTargetSkew = 0;
248 if( event.IsChecked() )
258 if( event.IsChecked() )
wxBitmapBundle KiBitmapBundle(BITMAPS aBitmap, int aMinHeight)
void SetInitialFocus(wxWindow *aWindow)
Sets the window (usually a wxTextCtrl) that should be focused when the dialog is shown.
void SetupStandardButtons(std::map< int, wxString > aLabels={})
Class DIALOG_TUNING_PATTERN_PROPERTIES_BASE.
wxStaticText * m_sourceInfo
wxRadioButton * m_radioBtnLength
wxTextCtrl * m_targetDelayCtrl
wxTextCtrl * m_targetLengthCtrl
wxCheckBox * m_overrideCustomRules
wxStaticText * m_targetDelayLabel
wxCheckBox * m_singleSided
wxRadioButton * m_radioBtnDelay
wxStaticBitmap * m_legend
wxStaticText * m_targetLengthLabel
void onRadioBtnTargetLengthClick(wxCommandEvent &event) override
const DRC_CONSTRAINT & m_constraint
bool TransferDataToWindow() override
PNS::MEANDER_SETTINGS & m_settings
DIALOG_TUNING_PATTERN_PROPERTIES(PCB_BASE_EDIT_FRAME *aParent, PNS::MEANDER_SETTINGS &aSettings, PNS::ROUTER_MODE aMeanderType, const DRC_CONSTRAINT &aConstraint)
bool TransferDataFromWindow() override
UNIT_BINDER m_targetLength
void onRadioBtnTargetDelayClick(wxCommandEvent &event) override
void onOverrideCustomRules(wxCommandEvent &event) override
UNIT_BINDER m_targetDelay
const MINOPTMAX< int > & GetValue() const
bool GetOption(OPTIONS option) const
Common, abstract interface for edit frames.
Dimensions for the meandering algorithm.
int m_minAmplitude
Maximum meandering amplitude.
void SetTargetLength(long long int aOpt)
bool m_isTimeDomain
The net class this meander pattern belongs to.
static const long long int LENGTH_UNCONSTRAINED
int m_cornerRadiusPercentage
Place meanders on one side.
bool m_singleSided
Initial side when placing meanders at segment.
void SetTargetLengthDelay(long long int aOpt)
static const int SKEW_UNCONSTRAINED
MINOPTMAX< long long int > m_targetLength
Desired propagation delay of the tuned line.
void SetTargetSkew(int aOpt)
MINOPTMAX< int > m_targetSkew
Target skew value for diff pair de-skewing.
MEANDER_STYLE m_cornerStyle
Rounding percentage (0 - 100).
MINOPTMAX< int > m_targetSkewDelay
int m_maxAmplitude
Meandering period/spacing (see dialog picture for explanation).
bool m_overrideCustomRules
Type of corners for the meandered line.
MINOPTMAX< long long int > m_targetLengthDelay
Target skew value for diff pair de-skewing.
void SetTargetSkewDelay(int aOpt)
static const long long int DELAY_UNCONSTRAINED
int m_spacing
Amplitude/spacing adjustment step.
virtual long long int GetValue()
Return the current value in Internal Units.
void Enable(bool aEnable)
Enable/disable the label, widget and units label.
virtual void SetUnits(EDA_UNITS aUnits)
Normally not needed (as the UNIT_BINDER inherits from the parent frame), but can be used to set to DE...
virtual void SetValue(long long int aValue)
Set new value (in Internal Units) for the text field, taking care of units conversion.
@ PNS_MODE_TUNE_DIFF_PAIR
@ PNS_MODE_TUNE_DIFF_PAIR_SKEW