KiCad PCB EDA Suite
PANEL_SETUP_FEATURE_CONSTRAINTS Class Reference

#include <panel_setup_feature_constraints.h>

Inheritance diagram for PANEL_SETUP_FEATURE_CONSTRAINTS:
PANEL_SETUP_FEATURE_CONSTRAINTS_BASE

Public Member Functions

 PANEL_SETUP_FEATURE_CONSTRAINTS (PAGED_DIALOG *aParent, PCB_EDIT_FRAME *aFrame)
 
 ~PANEL_SETUP_FEATURE_CONSTRAINTS () override
 
bool TransferDataToWindow () override
 
bool TransferDataFromWindow () override
 
void ImportSettingsFrom (BOARD *aBoard)
 

Public Attributes

UNIT_BINDER m_trackMinWidth
 
UNIT_BINDER m_viaMinSize
 
UNIT_BINDER m_viaMinDrill
 
UNIT_BINDER m_uviaMinSize
 
UNIT_BINDER m_uviaMinDrill
 
UNIT_BINDER m_holeToHoleMin
 

Protected Attributes

wxCheckBox * m_OptAllowBlindBuriedVias
 
wxCheckBox * m_OptAllowMicroVias
 
wxCheckBox * m_OptRequireCourtyards
 
wxCheckBox * m_OptOverlappingCourtyards
 
wxStaticText * m_TrackMinWidthTitle
 
wxTextCtrl * m_TrackMinWidthCtrl
 
wxStaticText * m_TrackMinWidthUnits
 
wxStaticText * m_ViaMinTitle
 
wxTextCtrl * m_SetViasMinSizeCtrl
 
wxStaticText * m_ViaMinUnits
 
wxStaticText * m_ViaMinDrillTitle
 
wxTextCtrl * m_SetViasMinDrillCtrl
 
wxStaticText * m_ViaMinDrillUnits
 
wxStaticText * m_uviaMinSizeLabel
 
wxTextCtrl * m_uviaMinSizeCtrl
 
wxStaticText * m_uviaMinSizeUnits
 
wxStaticText * m_uviaMinDrillLabel
 
wxTextCtrl * m_uviaMinDrillCtrl
 
wxStaticText * m_uviaMinDrillUnits
 
wxStaticText * m_HoleToHoleTitle
 
wxTextCtrl * m_SetHoleToHoleCtrl
 
wxStaticText * m_HoleToHoleUnits
 

Private Attributes

PCB_EDIT_FRAMEm_Frame
 
BOARD_DESIGN_SETTINGSm_BrdSettings
 

Detailed Description

Definition at line 37 of file panel_setup_feature_constraints.h.

Constructor & Destructor Documentation

PANEL_SETUP_FEATURE_CONSTRAINTS::PANEL_SETUP_FEATURE_CONSTRAINTS ( PAGED_DIALOG aParent,
PCB_EDIT_FRAME aFrame 
)

Definition at line 32 of file panel_setup_feature_constraints.cpp.

References PCB_BASE_FRAME::GetBoard(), BOARD::GetDesignSettings(), m_BrdSettings, and m_Frame.

33  :
41 {
42  m_Frame = aFrame;
44 }
PANEL_SETUP_FEATURE_CONSTRAINTS_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL)
BOARD * GetBoard() const
wxTreebook * GetTreebook()
Definition: paged_dialog.h:43
BOARD_DESIGN_SETTINGS & GetDesignSettings() const
Function GetDesignSettings.
Definition: class_board.h:538
PANEL_SETUP_FEATURE_CONSTRAINTS::~PANEL_SETUP_FEATURE_CONSTRAINTS ( )
inlineoverride

Member Function Documentation

void PANEL_SETUP_FEATURE_CONSTRAINTS::ImportSettingsFrom ( BOARD aBoard)

Definition at line 93 of file panel_setup_feature_constraints.cpp.

References BOARD::GetDesignSettings(), m_BrdSettings, and TransferDataToWindow().

Referenced by DIALOG_BOARD_SETUP::OnAuxiliaryAction(), and ~PANEL_SETUP_FEATURE_CONSTRAINTS().

94 {
95  BOARD_DESIGN_SETTINGS* savedSettings = m_BrdSettings;
96 
97  m_BrdSettings = &aBoard->GetDesignSettings();
99 
100  m_BrdSettings = savedSettings;
101 }
BOARD_DESIGN_SETTINGS & GetDesignSettings() const
Function GetDesignSettings.
Definition: class_board.h:538
Class BOARD_DESIGN_SETTINGS contains design settings for a BOARD object.
bool PANEL_SETUP_FEATURE_CONSTRAINTS::TransferDataFromWindow ( )
override

Definition at line 68 of file panel_setup_feature_constraints.cpp.

References UNIT_BINDER::GetValue(), BOARD_DESIGN_SETTINGS::m_BlindBuriedViaAllowed, m_BrdSettings, m_holeToHoleMin, BOARD_DESIGN_SETTINGS::m_MicroViasAllowed, BOARD_DESIGN_SETTINGS::m_MicroViasMinDrill, BOARD_DESIGN_SETTINGS::m_MicroViasMinSize, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptAllowBlindBuriedVias, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptAllowMicroVias, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptOverlappingCourtyards, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptRequireCourtyards, m_trackMinWidth, BOARD_DESIGN_SETTINGS::m_TrackMinWidth, m_uviaMinDrill, m_uviaMinSize, m_viaMinDrill, m_viaMinSize, BOARD_DESIGN_SETTINGS::m_ViasMinDrill, BOARD_DESIGN_SETTINGS::m_ViasMinSize, BOARD_DESIGN_SETTINGS::SetMinHoleSeparation(), BOARD_DESIGN_SETTINGS::SetProhibitOverlappingCourtyards(), and BOARD_DESIGN_SETTINGS::SetRequireCourtyardDefinitions().

Referenced by ~PANEL_SETUP_FEATURE_CONSTRAINTS().

69 {
70  // Update tracks minimum values for DRC
72 
73  // Update vias minimum values for DRC
76 
79 
80  // Update microvias minimum values for DRC
83 
85 
88 
89  return true;
90 }
virtual int GetValue()
Function GetValue Returns the current value in Internal Units.
void SetMinHoleSeparation(int aDistance)
Function SetMinHoleSeparation.
int m_TrackMinWidth
track min value for width ((min copper size value
int m_ViasMinSize
vias (not micro vias) min diameter
int m_ViasMinDrill
vias (not micro vias) min drill diameter
bool m_BlindBuriedViaAllowed
true to allow blind/buried vias
int m_MicroViasMinSize
micro vias (not vias) min diameter
void SetProhibitOverlappingCourtyards(bool aProhibit)
Function SetProhibitOverlappingCourtyards.
bool m_MicroViasAllowed
true to allow micro vias
void SetRequireCourtyardDefinitions(bool aRequire)
Function SetRequireCourtyardDefinitions.
int m_MicroViasMinDrill
micro vias (not vias) min drill diameter
bool PANEL_SETUP_FEATURE_CONSTRAINTS::TransferDataToWindow ( )
override

Definition at line 47 of file panel_setup_feature_constraints.cpp.

References BOARD_DESIGN_SETTINGS::m_BlindBuriedViaAllowed, m_BrdSettings, m_holeToHoleMin, BOARD_DESIGN_SETTINGS::m_HoleToHoleMin, BOARD_DESIGN_SETTINGS::m_MicroViasAllowed, BOARD_DESIGN_SETTINGS::m_MicroViasMinDrill, BOARD_DESIGN_SETTINGS::m_MicroViasMinSize, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptAllowBlindBuriedVias, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptAllowMicroVias, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptOverlappingCourtyards, PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptRequireCourtyards, BOARD_DESIGN_SETTINGS::m_ProhibitOverlappingCourtyards, BOARD_DESIGN_SETTINGS::m_RequireCourtyards, m_trackMinWidth, BOARD_DESIGN_SETTINGS::m_TrackMinWidth, m_uviaMinDrill, m_uviaMinSize, m_viaMinDrill, m_viaMinSize, BOARD_DESIGN_SETTINGS::m_ViasMinDrill, BOARD_DESIGN_SETTINGS::m_ViasMinSize, and UNIT_BINDER::SetValue().

Referenced by ImportSettingsFrom(), and ~PANEL_SETUP_FEATURE_CONSTRAINTS().

48 {
52 
55 
58 
60 
63 
64  return true;
65 }
bool m_ProhibitOverlappingCourtyards
check for overlapping courtyards in DRC
int m_HoleToHoleMin
Min width of peninsula between two drilled holes.
int m_TrackMinWidth
track min value for width ((min copper size value
int m_ViasMinSize
vias (not micro vias) min diameter
int m_ViasMinDrill
vias (not micro vias) min drill diameter
bool m_BlindBuriedViaAllowed
true to allow blind/buried vias
int m_MicroViasMinSize
micro vias (not vias) min diameter
bool m_RequireCourtyards
require courtyard definitions in footprints
virtual void SetValue(int aValue)
Function SetValue Sets new value (in Internal Units) for the text field, taking care of units convers...
bool m_MicroViasAllowed
true to allow micro vias
int m_MicroViasMinDrill
micro vias (not vias) min drill diameter

Member Data Documentation

BOARD_DESIGN_SETTINGS* PANEL_SETUP_FEATURE_CONSTRAINTS::m_BrdSettings
private
PCB_EDIT_FRAME* PANEL_SETUP_FEATURE_CONSTRAINTS::m_Frame
private

Definition at line 40 of file panel_setup_feature_constraints.h.

Referenced by PANEL_SETUP_FEATURE_CONSTRAINTS().

UNIT_BINDER PANEL_SETUP_FEATURE_CONSTRAINTS::m_holeToHoleMin
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_HoleToHoleTitle
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_HoleToHoleUnits
protectedinherited
wxCheckBox* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptAllowBlindBuriedVias
protectedinherited
wxCheckBox* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptAllowMicroVias
protectedinherited
wxCheckBox* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptOverlappingCourtyards
protectedinherited
wxCheckBox* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_OptRequireCourtyards
protectedinherited
wxTextCtrl* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_SetHoleToHoleCtrl
protectedinherited
wxTextCtrl* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_SetViasMinDrillCtrl
protectedinherited
wxTextCtrl* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_SetViasMinSizeCtrl
protectedinherited
wxTextCtrl* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_TrackMinWidthCtrl
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_TrackMinWidthTitle
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_TrackMinWidthUnits
protectedinherited
UNIT_BINDER PANEL_SETUP_FEATURE_CONSTRAINTS::m_uviaMinDrill
wxTextCtrl* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_uviaMinDrillCtrl
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_uviaMinDrillLabel
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_uviaMinDrillUnits
protectedinherited
UNIT_BINDER PANEL_SETUP_FEATURE_CONSTRAINTS::m_uviaMinSize
wxTextCtrl* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_uviaMinSizeCtrl
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_uviaMinSizeLabel
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_uviaMinSizeUnits
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_ViaMinDrillTitle
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_ViaMinDrillUnits
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_ViaMinTitle
protectedinherited
wxStaticText* PANEL_SETUP_FEATURE_CONSTRAINTS_BASE::m_ViaMinUnits
protectedinherited

The documentation for this class was generated from the following files: