40 selector->SetLayersHotkeys(
false );
42 selector->SetBoardFrame( aParent );
79 if( startLayer == endLayer )
91 if( staggered &&
m_pitch.GetIntValue() <= 0 )
106 m_stack->SetStartLayer( startLayer );
107 m_stack->SetEndLayer( endLayer );
constexpr EDA_IU_SCALE pcbIUScale
#define MAX_MICROVIA_STACK_PITCH_MM
wxStaticText * m_viaDrillUnit
PCB_LAYER_BOX_SELECTOR * m_startLayer
wxStaticText * m_viaDrillLabel
wxTextCtrl * m_viaSizeCtrl
wxStaticText * m_pitchLabel
PCB_LAYER_BOX_SELECTOR * m_endLayer
wxStaticText * m_pitchUnit
wxStaticText * m_viaSizeLabel
wxStaticText * m_viaSizeUnit
DIALOG_MICROVIA_STACK_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Microvia Stack"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxDEFAULT_DIALOG_STYLE)
wxTextCtrl * m_viaDrillCtrl
wxCheckBox * m_useNetclass
DIALOG_MICROVIA_STACK(PCB_BASE_EDIT_FRAME *aParent, PCB_VIA_STACK *aStack)
void onUseNetclass(wxCommandEvent &aEvent)
bool TransferDataFromWindow() override
void onTypeChanged(wxCommandEvent &aEvent)
bool TransferDataToWindow() override
void SetupStandardButtons(std::map< int, wxString > aLabels={})
void finishDialogSettings()
In all dialogs, we must call the same functions to fix minimal dlg size, the default position and per...
EDA_UNITS GetUserUnits() const
static LSET AllNonCuMask()
Return a mask holding all layer minus CU layers.
Common, abstract interface for edit frames.
Class to display a pcb layer list in a wxBitmapComboBox.
A microvia stack: several single hop microvias, plus connecting traces for staggered stacks,...
static bool IsSpanValid(BOARD *aBoard, PCB_LAYER_ID aStart, PCB_LAYER_ID aEnd)
True when both span ends are copper layers within the board's copper layer count.
static std::optional< VIA_PARAMETER_ERROR > ValidateViaParameters(std::optional< int > aDiameter, std::optional< int > aPrimaryDrill, std::optional< PCB_LAYER_ID > aPrimaryStartLayer=std::nullopt, std::optional< PCB_LAYER_ID > aPrimaryEndLayer=std::nullopt, std::optional< int > aSecondaryDrill=std::nullopt, std::optional< PCB_LAYER_ID > aSecondaryStartLayer=std::nullopt, std::optional< PCB_LAYER_ID > aSecondaryEndLayer=std::nullopt, std::optional< int > aTertiaryDrill=std::nullopt, std::optional< PCB_LAYER_ID > aTertiaryStartLayer=std::nullopt, std::optional< PCB_LAYER_ID > aTertiaryEndLayer=std::nullopt, int aCopperLayerCount=0)
void DisplayErrorMessage(wxWindow *aParent, const wxString &aText, const wxString &aExtraInfo)
Display an error message with aMessage.
This file is part of the common library.
PCB_LAYER_ID
A quick note on layer IDs:
PCB_LAYER_ID ToLAYER_ID(int aLayer)
KICOMMON_API wxString MessageTextFromValue(const EDA_IU_SCALE &aIuScale, EDA_UNITS aUnits, double aValue, bool aAddUnitsText=true, EDA_DATA_TYPE aType=EDA_DATA_TYPE::DISTANCE)
A helper to convert the double length aValue to a string in inches, millimeters, or unscaled units.