25#ifndef PANEL_SETUP_BOARD_STACKUP_H 
   26#define PANEL_SETUP_BOARD_STACKUP_H 
   38class wxBitmapComboBox;
 
Container for design settings for a BOARD object.
 
Manage one layer needed to make a physical board.
 
Manage layers needed to make a physical board.
 
Information pertinent to a Pcbnew printed circuit board.
 
A color representation with 4 components: red, green, blue, alpha.
 
LSET is a set of PCB_LAYER_IDs.
 
PANEL_SETUP_BOARD_STACKUP_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
 
int GetSublayerId(int aRow)
 
void onAddDielectricLayer(wxCommandEvent &event) override
 
DIELECTRIC_SUBSTRATE_LIST m_silkscreenMatList
 
wxArrayString m_core_prepreg_choice
 
void onExportToClipboard(wxCommandEvent &event) override
 
bool transferDataFromUIToStackup()
Transfer current UI settings to m_stackup but not to the board.
 
PANEL_SETUP_BOARD_STACKUP(wxWindow *aParentWindow, PCB_EDIT_FRAME *aFrame, PANEL_SETUP_LAYERS *aPanelLayers, PANEL_SETUP_BOARD_FINISH *aPanelFinish)
 
wxSize m_numericTextCtrlSize
 
std::vector< wxControl * > m_controlItemsList
 
void onColorSelected(wxCommandEvent &event)
 
bool TransferDataFromWindow() override
 
void onCopperLayersSelCount(wxCommandEvent &event) override
 
void onUnitsChanged(wxCommandEvent &event)
 
void ImportSettingsFrom(BOARD *aBoard)
 
wxColor getColorIconItem(int aRow)
 
PANEL_SETUP_BOARD_FINISH * m_panelFinish
 
void updateIconColor(int aRow=-1)
Update the icons color (swatches in first grid column)
 
void updateCopperLayerCount()
Updates the enabled copper layers when the dropdown is changed.
 
wxColor GetSelectedColor(int aRow) const
Return the color currently selected for the row aRow.
 
void onRemoveDielectricLayer(wxCommandEvent &event) override
 
wxControl * addSpacer(int aPos)
add a Spacer in m_fgGridSizer when a empty cell is needed
 
int computeBoardThickness()
Recompute the board thickness and update the textbox.
 
void setDefaultLayerWidths(int targetThickness)
Set the widths of dielectric layers to sensible defaults.
 
void synchronizeWithBoard(bool aFullSync)
Synchronize the full stackup shown in m_fgGridSizer according to the stackup of the current board and...
 
void buildLayerStackPanel(bool aCreateInitialStackup=false, bool aRelinkStackup=false)
Populate m_fgGridSizer with items to handle stackup parameters This is a full list: all copper layers...
 
void onThicknessChange(wxCommandEvent &event)
 
BOARD_DESIGN_SETTINGS * m_brdSettings
 
int GetCopperLayerCount() const
 
BOARD_STACKUP_ITEM * GetStackupItem(int aRow)
 
void showOnlyActiveLayers()
Show or do not show items in m_fgGridSizer according to the stackup of the current board.
 
DIELECTRIC_SUBSTRATE_LIST m_solderMaskMatList
 
std::vector< BOARD_STACKUP_ROW_UI_ITEM > m_rowUiItemsList
 
PANEL_SETUP_LAYERS * m_panelLayers
 
void onRemoveDielUI(wxUpdateUIEvent &event) override
 
void lazyBuildRowUI(BOARD_STACKUP_ROW_UI_ITEM &ui_row_item, int aPos)
Creates the controls in a BOARD_STACKUP_ROW_UI_ITEM relative to the aStackupItem.
 
DIELECTRIC_SUBSTRATE_LIST m_delectricMatList
 
wxBitmapComboBox * createColorBox(BOARD_STACKUP_ITEM *aStackupItem, int aRow)
creates a bitmap combobox to select a layer color
 
wxSize m_numericFieldsSize
 
void disconnectEvents()
disconnect event handlers connected to wxControl items found in list m_controlItemsList
 
void onAdjustDielectricThickness(wxCommandEvent &event) override
 
void OnLayersOptionsChanged(const LSET &aNewLayerSet)
Must be called if the copper layers count has changed or solder mask, solder paste or silkscreen laye...
 
~PANEL_SETUP_BOARD_STACKUP()
 
void onMaterialChange(wxCommandEvent &event)
 
wxSize m_colorSwatchesSize
 
void rebuildLayerStackPanel(bool aRelinkItems=false)
Populate m_fgGridSizer with items to handle stackup parameters If previous items are in list,...
 
The main frame for Pcbnew.
 
wxControl * m_ThicknessCtrl
 
BOARD_STACKUP_ROW_UI_ITEM(BOARD_STACKUP_ITEM *aItem, int aSubItem, int aRow)
 
wxStaticText * m_LayerName
 
wxControl * m_ThicknessLockCtrl
 
wxControl * m_EpsilonCtrl
 
wxButton * m_MaterialButt
 
wxControl * m_MaterialCtrl
 
wxControl * m_LayerTypeCtrl
 
BOARD_STACKUP_ITEM * m_Item