KiCad PCB EDA Suite
DIALOG_PAD_PROPERTIES_BASE Class Reference

Class DIALOG_PAD_PROPERTIES_BASE. More...

#include <dialog_pad_properties_base.h>

Inheritance diagram for DIALOG_PAD_PROPERTIES_BASE:
DIALOG_SHIM KIWAY_HOLDER DIALOG_PAD_PROPERTIES

Public Types

enum  HOLDER_TYPE { DIALOG, FRAME, PANEL, SCREEN }
 

Public Member Functions

 DIALOG_PAD_PROPERTIES_BASE (wxWindow *parent, wxWindowID id=wxID_DIALOG_EDIT_PAD, const wxString &title=_("Pad Properties"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(764, 581), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
 
 ~DIALOG_PAD_PROPERTIES_BASE ()
 
void SetInitialFocus (wxWindow *aWindow)
 Sets the window (usually a wxTextCtrl) that should be focused when the dialog is shown. More...
 
int ShowQuasiModal ()
 
void EndQuasiModal (int retCode)
 
bool IsQuasiModal ()
 
bool Show (bool show) override
 
bool Enable (bool enable) override
 
void OnPaint (wxPaintEvent &event)
 
EDA_UNITS GetUserUnits () const
 
HOLDER_TYPE GetType ()
 
KIWAYKiway () const
 Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in. More...
 
PROJECTPrj () const
 Function Prj returns a reference to the PROJECT "associated with" this KIWAY. More...
 
void SetKiway (wxWindow *aDest, KIWAY *aKiway)
 Function SetKiway. More...
 

Static Public Member Functions

static bool IsCtrl (int aChar, const wxKeyEvent &e)
 
static bool IsShiftCtrl (int aChar, const wxKeyEvent &e)
 

Protected Types

enum  { wxID_DIALOG_EDIT_PAD = 1000, wxID_PADNUMCTRL }
 

Protected Member Functions

virtual void OnInitDialog (wxInitDialogEvent &event)
 
virtual void OnUpdateUI (wxUpdateUIEvent &event)
 
virtual void OnValuesChanged (wxCommandEvent &event)
 
virtual void PadTypeSelected (wxCommandEvent &event)
 
virtual void OnPadShapeSelection (wxCommandEvent &event)
 
virtual void PadOrientEvent (wxCommandEvent &event)
 
virtual void OnSetLayers (wxCommandEvent &event)
 
virtual void onCornerSizePercentChange (wxCommandEvent &event)
 
virtual void onCornerRadiusChange (wxCommandEvent &event)
 
virtual void OnDrillShapeSelected (wxCommandEvent &event)
 
virtual void OnUpdateUINonCopperWarning (wxUpdateUIEvent &event)
 
virtual void onPrimitiveDClick (wxMouseEvent &event)
 
virtual void OnPrimitiveSelection (wxListEvent &event)
 
virtual void onDeletePrimitive (wxCommandEvent &event)
 
virtual void onEditPrimitive (wxCommandEvent &event)
 
virtual void onAddPrimitive (wxCommandEvent &event)
 
virtual void onDuplicatePrimitive (wxCommandEvent &event)
 
virtual void onGeometryTransform (wxCommandEvent &event)
 
virtual void OnPaintShowPanel (wxPaintEvent &event)
 
virtual void onChangePadMode (wxCommandEvent &event)
 
virtual void OnCancel (wxCommandEvent &event)
 
void FinishDialogSettings ()
 In all dialogs, we must call the same functions to fix minimal dlg size, the default position and perhaps some others to fix a few issues depending on Windows Managers this helper function does these calls. More...
 
void SetSizeInDU (int x, int y)
 Set the dialog to the given dimensions in "dialog units". More...
 
int HorizPixelsFromDU (int x)
 Convert an integer number of dialog units to pixels, horizontally. More...
 
int VertPixelsFromDU (int y)
 Convert an integer number of dialog units to pixels, vertically. More...
 
void ResetSize ()
 Clear the existing dialog size and position. More...
 

Protected Attributes

wxNotebook * m_notebook
 
wxPanel * m_panelGeneral
 
wxStaticText * m_PadNumText
 
wxTextCtrl * m_PadNumCtrl
 
wxStaticText * m_PadNameText
 
NET_SELECTORm_PadNetSelector
 
wxStaticText * m_staticText44
 
wxChoice * m_PadType
 
wxStaticText * m_staticText45
 
wxChoice * m_PadShape
 
wxStaticText * m_posXLabel
 
wxTextCtrl * m_posXCtrl
 
wxStaticText * m_posXUnits
 
wxStaticText * m_posYLabel
 
wxTextCtrl * m_posYCtrl
 
wxStaticText * m_posYUnits
 
wxStaticText * m_sizeXLabel
 
wxTextCtrl * m_sizeXCtrl
 
wxStaticText * m_sizeXUnits
 
wxStaticText * m_sizeYLabel
 
wxTextCtrl * m_sizeYCtrl
 
wxStaticText * m_sizeYUnits
 
wxStaticText * m_PadOrientText
 
wxComboBox * m_orientation
 
wxStaticText * m_staticText491
 
wxStaticText * m_offsetXLabel
 
wxTextCtrl * m_offsetXCtrl
 
wxStaticText * m_offsetXUnits
 
wxStaticText * m_offsetYLabel
 
wxTextCtrl * m_offsetYCtrl
 
wxStaticText * m_offsetYUnits
 
wxStaticText * m_trapDeltaLabel
 
wxTextCtrl * m_trapDeltaCtrl
 
wxStaticText * m_trapDeltaUnits
 
wxStaticText * m_trapAxisLabel
 
wxChoice * m_trapAxisCtrl
 
wxStaticText * m_staticTextCornerSizeRatio
 
TEXT_CTRL_EVALm_tcCornerSizeRatio
 
wxStaticText * m_staticTextCornerSizeRatioUnit
 
wxStaticText * m_cornerRadiusLabel
 
wxTextCtrl * m_tcCornerRadius
 
wxStaticText * m_cornerRadiusUnits
 
wxStaticText * m_staticTextChamferRatio
 
TEXT_CTRL_EVALm_tcChamferRatio
 
wxStaticText * m_staticTextChamferRatioUnit
 
wxStaticText * m_staticTextChamferCorner
 
wxCheckBox * m_cbTopLeft
 
wxCheckBox * m_cbTopRight
 
wxCheckBox * m_cbBottomLeft
 
wxCheckBox * m_cbBottomRight
 
wxBoxSizer * m_middleBoxSizer
 
wxStaticText * m_holeShapeLabel
 
wxChoice * m_holeShapeCtrl
 
wxStaticText * m_staticText51
 
wxStaticText * m_holeXLabel
 
wxTextCtrl * m_holeXCtrl
 
wxStaticText * m_holeXUnits
 
wxStaticText * m_holeYLabel
 
wxTextCtrl * m_holeYCtrl
 
wxStaticText * m_holeYUnits
 
wxStaticText * m_padToDieLabel
 
wxTextCtrl * m_padToDieCtrl
 
wxStaticText * m_padToDieUnits
 
wxBoxSizer * m_FlippedWarningSizer
 
wxStaticBitmap * m_FlippedWarningIcon
 
wxStaticText * m_staticText86
 
wxStaticText * m_staticText511
 
wxChoice * m_rbCopperLayersSel
 
wxStaticText * m_techLayersLabel
 
wxCheckBox * m_PadLayerAdhCmp
 
wxCheckBox * m_PadLayerAdhCu
 
wxCheckBox * m_PadLayerPateCmp
 
wxCheckBox * m_PadLayerPateCu
 
wxCheckBox * m_PadLayerSilkCmp
 
wxCheckBox * m_PadLayerSilkCu
 
wxCheckBox * m_PadLayerMaskCmp
 
wxCheckBox * m_PadLayerMaskCu
 
wxCheckBox * m_PadLayerDraft
 
wxCheckBox * m_PadLayerECO1
 
wxCheckBox * m_PadLayerECO2
 
wxStaticText * m_staticTextFabProperty
 
wxChoice * m_choiceFabProperty
 
wxPanel * m_localSettingsPanel
 
wxStaticText * m_staticTextInfoPosValue
 
wxStaticText * m_staticTextInfoNegVal
 
wxStaticText * m_clearanceLabel
 
wxTextCtrl * m_clearanceCtrl
 
wxStaticText * m_clearanceUnits
 
wxStaticText * m_maskClearanceLabel
 
wxTextCtrl * m_maskClearanceCtrl
 
wxStaticText * m_maskClearanceUnits
 
wxStaticText * m_pasteClearanceLabel
 
wxTextCtrl * m_pasteClearanceCtrl
 
wxStaticText * m_pasteClearanceUnits
 
wxStaticText * m_staticTextRatio
 
TEXT_CTRL_EVALm_SolderPasteMarginRatioCtrl
 
wxStaticText * m_SolderPasteRatioMarginUnits
 
wxSimplebook * m_nonCopperWarningBook
 
wxStaticText * m_nonCopperNote
 
wxStaticText * m_staticTextInfoPaste
 
wxStaticBitmap * m_nonCopperWarningIcon
 
wxStaticText * m_nonCopperWarningText
 
wxStaticBoxSizer * m_sbSizerZonesSettings
 
wxStaticText * m_staticText40
 
wxChoice * m_ZoneConnectionChoice
 
wxStaticText * m_spokeWidthLabel
 
wxTextCtrl * m_spokeWidthCtrl
 
wxStaticText * m_spokeWidthUnits
 
wxStaticText * m_thermalGapLabel
 
wxTextCtrl * m_thermalGapCtrl
 
wxStaticText * m_thermalGapUnits
 
wxStaticText * m_staticTextcps
 
wxChoice * m_ZoneCustomPadShape
 
wxPanel * m_panelCustomShapePrimitives
 
wxBoxSizer * m_bSizerPanelPrimitives
 
wxStaticText * m_staticTextPrimitivesList
 
wxStaticText * m_staticTextPrimitiveListWarning
 
wxListView * m_listCtrlPrimitives
 
wxButton * m_buttonDel
 
wxButton * m_buttonEditShape
 
wxButton * m_buttonAddShape
 
wxButton * m_buttonDup
 
wxButton * m_buttonGeometry
 
wxStaticText * m_parentInfoLine1
 
wxStaticText * m_parentInfoLine2
 
wxPanel * m_panelShowPad
 
PCB_DRAW_PANEL_GALm_panelShowPadGal
 
KIGFX::GAL_DISPLAY_OPTIONS m_galOptions
 
wxCheckBox * m_cbShowPadOutline
 
wxStaticLine * m_staticline13
 
wxStdDialogButtonSizer * m_sdbSizer
 
wxButton * m_sdbSizerOK
 
wxButton * m_sdbSizerCancel
 
EDA_UNITS m_units
 
std::string m_hash_key
 
bool m_firstPaintEvent
 
wxWindow * m_initialFocusTarget
 
WX_EVENT_LOOPm_qmodal_loop
 
bool m_qmodal_showing
 
WDO_ENABLE_DISABLEm_qmodal_parent_disabler
 
std::vector< wxWindow * > m_tabOrder
 

Detailed Description

Class DIALOG_PAD_PROPERTIES_BASE.

Definition at line 52 of file dialog_pad_properties_base.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected

◆ HOLDER_TYPE

enum KIWAY_HOLDER::HOLDER_TYPE
inherited
Enumerator
DIALOG 
FRAME 
PANEL 
SCREEN 

Definition at line 42 of file kiway_holder.h.

Constructor & Destructor Documentation

◆ DIALOG_PAD_PROPERTIES_BASE()

DIALOG_PAD_PROPERTIES_BASE::DIALOG_PAD_PROPERTIES_BASE ( wxWindow *  parent,
wxWindowID  id = wxID_DIALOG_EDIT_PAD,
const wxString &  title = _("Pad Properties"),
const wxPoint pos = wxDefaultPosition,
const wxSize &  size = wxSize( 764,581 ),
long  style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER 
)

Definition at line 15 of file dialog_pad_properties_base.cpp.

15  : DIALOG_SHIM( parent, id, title, pos, size, style )
16 {
17  this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
18 
19  wxBoxSizer* m_MainSizer;
20  m_MainSizer = new wxBoxSizer( wxVERTICAL );
21 
22  wxBoxSizer* bSizerUpper;
23  bSizerUpper = new wxBoxSizer( wxHORIZONTAL );
24 
25  m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
26  m_notebook->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
27 
28  m_panelGeneral = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
29  wxBoxSizer* bGeneralSizer;
30  bGeneralSizer = new wxBoxSizer( wxHORIZONTAL );
31 
32  wxBoxSizer* m_LeftBoxSizer;
33  m_LeftBoxSizer = new wxBoxSizer( wxVERTICAL );
34 
35  wxFlexGridSizer* fgSizerShapeType;
36  fgSizerShapeType = new wxFlexGridSizer( 0, 3, 2, 0 );
37  fgSizerShapeType->AddGrowableCol( 1 );
38  fgSizerShapeType->SetFlexibleDirection( wxBOTH );
39  fgSizerShapeType->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
40 
41  m_PadNumText = new wxStaticText( m_panelGeneral, wxID_ANY, _("Pad number:"), wxDefaultPosition, wxDefaultSize, 0 );
42  m_PadNumText->Wrap( -1 );
43  fgSizerShapeType->Add( m_PadNumText, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 3 );
44 
45  m_PadNumCtrl = new wxTextCtrl( m_panelGeneral, wxID_PADNUMCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
46  fgSizerShapeType->Add( m_PadNumCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
47 
48 
49  fgSizerShapeType->Add( 0, 0, 1, wxEXPAND, 5 );
50 
51  m_PadNameText = new wxStaticText( m_panelGeneral, wxID_ANY, _("Net name:"), wxDefaultPosition, wxDefaultSize, 0 );
52  m_PadNameText->Wrap( -1 );
53  fgSizerShapeType->Add( m_PadNameText, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 3 );
54 
55  m_PadNetSelector = new NET_SELECTOR( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
56  fgSizerShapeType->Add( m_PadNetSelector, 0, wxTOP|wxLEFT|wxEXPAND, 3 );
57 
58 
59  fgSizerShapeType->Add( 0, 0, 1, wxEXPAND, 5 );
60 
61  m_staticText44 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Pad type:"), wxDefaultPosition, wxDefaultSize, 0 );
62  m_staticText44->Wrap( -1 );
63  fgSizerShapeType->Add( m_staticText44, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 3 );
64 
65  wxString m_PadTypeChoices[] = { _("Through-hole"), _("SMD"), _("Edge Connector"), _("NPTH, Mechanical"), _("SMD Aperture") };
66  int m_PadTypeNChoices = sizeof( m_PadTypeChoices ) / sizeof( wxString );
67  m_PadType = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadTypeNChoices, m_PadTypeChoices, 0 );
68  m_PadType->SetSelection( 0 );
69  fgSizerShapeType->Add( m_PadType, 0, wxEXPAND|wxALL, 3 );
70 
71 
72  fgSizerShapeType->Add( 0, 0, 1, wxEXPAND, 5 );
73 
74  m_staticText45 = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape:"), wxDefaultPosition, wxDefaultSize, 0 );
75  m_staticText45->Wrap( -1 );
76  fgSizerShapeType->Add( m_staticText45, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 3 );
77 
78  wxString m_PadShapeChoices[] = { _("Circular"), _("Oval"), _("Rectangular"), _("Trapezoidal"), _("Rounded Rectangle"), _("Chamfered Rectangle"), _("Custom (Circ. Anchor)"), _("Custom (Rect. Anchor)") };
79  int m_PadShapeNChoices = sizeof( m_PadShapeChoices ) / sizeof( wxString );
80  m_PadShape = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_PadShapeNChoices, m_PadShapeChoices, 0 );
81  m_PadShape->SetSelection( 0 );
82  fgSizerShapeType->Add( m_PadShape, 0, wxEXPAND|wxALL, 3 );
83 
84 
85  fgSizerShapeType->Add( 0, 0, 1, wxEXPAND, 5 );
86 
87  m_posXLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Position X:"), wxDefaultPosition, wxDefaultSize, 0 );
88  m_posXLabel->Wrap( -1 );
89  fgSizerShapeType->Add( m_posXLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 3 );
90 
91  m_posXCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
92  fgSizerShapeType->Add( m_posXCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
93 
94  m_posXUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
95  m_posXUnits->Wrap( -1 );
96  fgSizerShapeType->Add( m_posXUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
97 
98  m_posYLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Position Y:"), wxDefaultPosition, wxDefaultSize, 0 );
99  m_posYLabel->Wrap( -1 );
100  fgSizerShapeType->Add( m_posYLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 3 );
101 
102  m_posYCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
103  fgSizerShapeType->Add( m_posYCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
104 
105  m_posYUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
106  m_posYUnits->Wrap( -1 );
107  fgSizerShapeType->Add( m_posYUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
108 
109  m_sizeXLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
110  m_sizeXLabel->Wrap( -1 );
111  fgSizerShapeType->Add( m_sizeXLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 3 );
112 
113  m_sizeXCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
114  fgSizerShapeType->Add( m_sizeXCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
115 
116  m_sizeXUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
117  m_sizeXUnits->Wrap( -1 );
118  fgSizerShapeType->Add( m_sizeXUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
119 
120  m_sizeYLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
121  m_sizeYLabel->Wrap( -1 );
122  fgSizerShapeType->Add( m_sizeYLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 3 );
123 
124  m_sizeYCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
125  fgSizerShapeType->Add( m_sizeYCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
126 
127  m_sizeYUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
128  m_sizeYUnits->Wrap( -1 );
129  fgSizerShapeType->Add( m_sizeYUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
130 
131  m_PadOrientText = new wxStaticText( m_panelGeneral, wxID_ANY, _("Orientation:"), wxDefaultPosition, wxDefaultSize, 0 );
132  m_PadOrientText->Wrap( -1 );
133  fgSizerShapeType->Add( m_PadOrientText, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 3 );
134 
135  m_orientation = new wxComboBox( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
136  m_orientation->Append( _("0") );
137  m_orientation->Append( _("90") );
138  m_orientation->Append( _("-90") );
139  m_orientation->Append( _("180") );
140  fgSizerShapeType->Add( m_orientation, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
141 
142  m_staticText491 = new wxStaticText( m_panelGeneral, wxID_ANY, _("deg"), wxDefaultPosition, wxDefaultSize, 0 );
143  m_staticText491->Wrap( -1 );
144  fgSizerShapeType->Add( m_staticText491, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
145 
146  m_offsetXLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape offset X:"), wxDefaultPosition, wxDefaultSize, 0 );
147  m_offsetXLabel->Wrap( -1 );
148  fgSizerShapeType->Add( m_offsetXLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 3 );
149 
150  m_offsetXCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
151  fgSizerShapeType->Add( m_offsetXCtrl, 0, wxEXPAND|wxRIGHT|wxLEFT, 3 );
152 
153  m_offsetXUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
154  m_offsetXUnits->Wrap( -1 );
155  fgSizerShapeType->Add( m_offsetXUnits, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 3 );
156 
157  m_offsetYLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Shape offset Y:"), wxDefaultPosition, wxDefaultSize, 0 );
158  m_offsetYLabel->Wrap( -1 );
159  fgSizerShapeType->Add( m_offsetYLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 3 );
160 
161  m_offsetYCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
162  fgSizerShapeType->Add( m_offsetYCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 3 );
163 
164  m_offsetYUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
165  m_offsetYUnits->Wrap( -1 );
166  fgSizerShapeType->Add( m_offsetYUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
167 
168  m_trapDeltaLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Trapezoid delta:"), wxDefaultPosition, wxDefaultSize, 0 );
169  m_trapDeltaLabel->Wrap( -1 );
170  fgSizerShapeType->Add( m_trapDeltaLabel, 0, wxTOP|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
171 
172  m_trapDeltaCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
173  fgSizerShapeType->Add( m_trapDeltaCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
174 
175  m_trapDeltaUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
176  m_trapDeltaUnits->Wrap( -1 );
177  fgSizerShapeType->Add( m_trapDeltaUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
178 
179  m_trapAxisLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Trapezoid axis:"), wxDefaultPosition, wxDefaultSize, 0 );
180  m_trapAxisLabel->Wrap( -1 );
181  fgSizerShapeType->Add( m_trapAxisLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 3 );
182 
183  wxString m_trapAxisCtrlChoices[] = { _("Horizontal"), _("Vertical") };
184  int m_trapAxisCtrlNChoices = sizeof( m_trapAxisCtrlChoices ) / sizeof( wxString );
185  m_trapAxisCtrl = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_trapAxisCtrlNChoices, m_trapAxisCtrlChoices, 0 );
186  m_trapAxisCtrl->SetSelection( 0 );
187  fgSizerShapeType->Add( m_trapAxisCtrl, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
188 
189 
190  fgSizerShapeType->Add( 0, 0, 1, wxEXPAND|wxTOP, 15 );
191 
192  m_staticTextCornerSizeRatio = new wxStaticText( m_panelGeneral, wxID_ANY, _("Corner size:"), wxDefaultPosition, wxDefaultSize, 0 );
193  m_staticTextCornerSizeRatio->Wrap( -1 );
194  m_staticTextCornerSizeRatio->SetToolTip( _("Corner radius in percent of the pad width.\nThe width is the smaller value between size X and size Y.\nThe max value is 50 percent.") );
195 
196  fgSizerShapeType->Add( m_staticTextCornerSizeRatio, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 3 );
197 
198  m_tcCornerSizeRatio = new TEXT_CTRL_EVAL( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
199  fgSizerShapeType->Add( m_tcCornerSizeRatio, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 3 );
200 
201  m_staticTextCornerSizeRatioUnit = new wxStaticText( m_panelGeneral, wxID_ANY, _("%"), wxDefaultPosition, wxDefaultSize, 0 );
203  fgSizerShapeType->Add( m_staticTextCornerSizeRatioUnit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
204 
205  m_cornerRadiusLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Corner radius:"), wxDefaultPosition, wxDefaultSize, 0 );
206  m_cornerRadiusLabel->Wrap( -1 );
207  m_cornerRadiusLabel->SetToolTip( _("Corner radius.\nCan be no more than half pad width.\nThe width is the smaller value between size X and size Y.\nNote: IPC norm gives a max value = 0.25mm.") );
208 
209  fgSizerShapeType->Add( m_cornerRadiusLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 3 );
210 
211  m_tcCornerRadius = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
212  fgSizerShapeType->Add( m_tcCornerRadius, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 3 );
213 
214  m_cornerRadiusUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("unit"), wxDefaultPosition, wxDefaultSize, 0 );
215  m_cornerRadiusUnits->Wrap( -1 );
216  fgSizerShapeType->Add( m_cornerRadiusUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
217 
218  m_staticTextChamferRatio = new wxStaticText( m_panelGeneral, wxID_ANY, _("Chamfer size:"), wxDefaultPosition, wxDefaultSize, 0 );
219  m_staticTextChamferRatio->Wrap( -1 );
220  m_staticTextChamferRatio->SetToolTip( _("Chamfer size in percent of the pad width.\nThe width is the smaller value between size X and size Y.\nThe max value is 50 percent.") );
221 
222  fgSizerShapeType->Add( m_staticTextChamferRatio, 0, wxALIGN_CENTER_VERTICAL|wxALL, 3 );
223 
224  m_tcChamferRatio = new TEXT_CTRL_EVAL( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
225  fgSizerShapeType->Add( m_tcChamferRatio, 0, wxEXPAND|wxALL|wxALIGN_CENTER_VERTICAL, 3 );
226 
227  m_staticTextChamferRatioUnit = new wxStaticText( m_panelGeneral, wxID_ANY, _("%"), wxDefaultPosition, wxDefaultSize, 0 );
228  m_staticTextChamferRatioUnit->Wrap( -1 );
229  fgSizerShapeType->Add( m_staticTextChamferRatioUnit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
230 
231  m_staticTextChamferCorner = new wxStaticText( m_panelGeneral, wxID_ANY, _("Chamfers:"), wxDefaultPosition, wxDefaultSize, 0 );
232  m_staticTextChamferCorner->Wrap( -1 );
233  m_staticTextChamferCorner->SetToolTip( _("Chamfered corners. The position is relative to a pad orientation 0 degree.") );
234 
235  fgSizerShapeType->Add( m_staticTextChamferCorner, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 3 );
236 
237  wxGridSizer* gSizer1;
238  gSizer1 = new wxGridSizer( 0, 2, 3, 6 );
239 
240  m_cbTopLeft = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Top left"), wxDefaultPosition, wxDefaultSize, 0 );
241  m_cbTopLeft->SetValue(true);
242  gSizer1->Add( m_cbTopLeft, 0, 0, 5 );
243 
244  m_cbTopRight = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Top right"), wxDefaultPosition, wxDefaultSize, 0 );
245  gSizer1->Add( m_cbTopRight, 0, 0, 5 );
246 
247  m_cbBottomLeft = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Bottom left"), wxDefaultPosition, wxDefaultSize, 0 );
248  gSizer1->Add( m_cbBottomLeft, 0, 0, 5 );
249 
250  m_cbBottomRight = new wxCheckBox( m_panelGeneral, wxID_ANY, _("Bottom right"), wxDefaultPosition, wxDefaultSize, 0 );
251  gSizer1->Add( m_cbBottomRight, 0, 0, 5 );
252 
253 
254  fgSizerShapeType->Add( gSizer1, 1, wxEXPAND|wxTOP|wxLEFT, 3 );
255 
256 
257  m_LeftBoxSizer->Add( fgSizerShapeType, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
258 
259 
260  bGeneralSizer->Add( m_LeftBoxSizer, 0, wxALL|wxEXPAND, 5 );
261 
262  m_middleBoxSizer = new wxBoxSizer( wxVERTICAL );
263 
264  wxFlexGridSizer* fgSizerGeometry;
265  fgSizerGeometry = new wxFlexGridSizer( 14, 3, 0, 0 );
266  fgSizerGeometry->AddGrowableCol( 1 );
267  fgSizerGeometry->SetFlexibleDirection( wxBOTH );
268  fgSizerGeometry->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
269 
270  m_holeShapeLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Hole shape:"), wxDefaultPosition, wxDefaultSize, 0 );
271  m_holeShapeLabel->Wrap( -1 );
272  fgSizerGeometry->Add( m_holeShapeLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
273 
274  wxString m_holeShapeCtrlChoices[] = { _("Circular"), _("Oval") };
275  int m_holeShapeCtrlNChoices = sizeof( m_holeShapeCtrlChoices ) / sizeof( wxString );
276  m_holeShapeCtrl = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_holeShapeCtrlNChoices, m_holeShapeCtrlChoices, 0 );
277  m_holeShapeCtrl->SetSelection( 0 );
278  fgSizerGeometry->Add( m_holeShapeCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxLEFT|wxTOP, 5 );
279 
280  m_staticText51 = new wxStaticText( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
281  m_staticText51->Wrap( -1 );
282  fgSizerGeometry->Add( m_staticText51, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
283 
284  m_holeXLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Hole size X:"), wxDefaultPosition, wxDefaultSize, 0 );
285  m_holeXLabel->Wrap( -1 );
286  fgSizerGeometry->Add( m_holeXLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 5 );
287 
288  m_holeXCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
289  fgSizerGeometry->Add( m_holeXCtrl, 0, wxEXPAND|wxLEFT|wxTOP, 5 );
290 
291  m_holeXUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
292  m_holeXUnits->Wrap( -1 );
293  fgSizerGeometry->Add( m_holeXUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
294 
295  m_holeYLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Hole size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
296  m_holeYLabel->Wrap( -1 );
297  fgSizerGeometry->Add( m_holeYLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
298 
299  m_holeYCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
300  fgSizerGeometry->Add( m_holeYCtrl, 0, wxEXPAND|wxTOP|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
301 
302  m_holeYUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
303  m_holeYUnits->Wrap( -1 );
304  fgSizerGeometry->Add( m_holeYUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
305 
306  m_padToDieLabel = new wxStaticText( m_panelGeneral, wxID_ANY, _("Pad to die:"), wxDefaultPosition, wxDefaultSize, 0 );
307  m_padToDieLabel->Wrap( -1 );
308  m_padToDieLabel->SetToolTip( _("Wire length from pad to die on chip ( used to calculate actual track length)") );
309 
310  fgSizerGeometry->Add( m_padToDieLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
311 
312  m_padToDieCtrl = new wxTextCtrl( m_panelGeneral, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
313  fgSizerGeometry->Add( m_padToDieCtrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
314 
315  m_padToDieUnits = new wxStaticText( m_panelGeneral, wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
316  m_padToDieUnits->Wrap( -1 );
317  fgSizerGeometry->Add( m_padToDieUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 3 );
318 
319 
320  m_middleBoxSizer->Add( fgSizerGeometry, 0, wxEXPAND, 5 );
321 
322  wxStaticBoxSizer* m_LayersSizer;
323  m_LayersSizer = new wxStaticBoxSizer( new wxStaticBox( m_panelGeneral, wxID_ANY, wxEmptyString ), wxVERTICAL );
324 
325  m_FlippedWarningSizer = new wxBoxSizer( wxHORIZONTAL );
326 
327  m_FlippedWarningIcon = new wxStaticBitmap( m_LayersSizer->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( 48,48 ), 0 );
328  m_FlippedWarningIcon->SetMinSize( wxSize( 48,48 ) );
329 
330  m_FlippedWarningSizer->Add( m_FlippedWarningIcon, 0, wxALIGN_TOP|wxBOTTOM|wxTOP, 4 );
331 
332  m_staticText86 = new wxStaticText( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Parent footprint on board is flipped.\nLayers will be reversed."), wxDefaultPosition, wxDefaultSize, 0 );
333  m_staticText86->Wrap( 150 );
334  m_FlippedWarningSizer->Add( m_staticText86, 1, wxALIGN_TOP|wxBOTTOM|wxLEFT|wxRIGHT, 8 );
335 
336 
337  m_LayersSizer->Add( m_FlippedWarningSizer, 0, wxEXPAND|wxBOTTOM, 5 );
338 
339  wxBoxSizer* bSizer11;
340  bSizer11 = new wxBoxSizer( wxHORIZONTAL );
341 
342  m_staticText511 = new wxStaticText( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Copper:"), wxDefaultPosition, wxDefaultSize, 0 );
343  m_staticText511->Wrap( -1 );
344  bSizer11->Add( m_staticText511, 0, wxALIGN_CENTER_VERTICAL|wxALL|wxTOP, 4 );
345 
346  wxString m_rbCopperLayersSelChoices[] = { _("Front layer"), _("Back layer"), _("All copper layers"), _("None") };
347  int m_rbCopperLayersSelNChoices = sizeof( m_rbCopperLayersSelChoices ) / sizeof( wxString );
348  m_rbCopperLayersSel = new wxChoice( m_LayersSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_rbCopperLayersSelNChoices, m_rbCopperLayersSelChoices, 0 );
349  m_rbCopperLayersSel->SetSelection( 0 );
350  bSizer11->Add( m_rbCopperLayersSel, 1, wxALL|wxEXPAND|wxTOP, 4 );
351 
352 
353  m_LayersSizer->Add( bSizer11, 0, wxEXPAND, 5 );
354 
355  m_techLayersLabel = new wxStaticText( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Technical layers:"), wxDefaultPosition, wxDefaultSize, 0 );
356  m_techLayersLabel->Wrap( -1 );
357  m_techLayersLabel->SetFont( wxFont( 11, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
358 
359  m_LayersSizer->Add( m_techLayersLabel, 0, wxALL, 5 );
360 
361  m_PadLayerAdhCmp = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Front adhesive"), wxDefaultPosition, wxDefaultSize, 0 );
362  m_LayersSizer->Add( m_PadLayerAdhCmp, 0, wxLEFT|wxRIGHT, 4 );
363 
364  m_PadLayerAdhCu = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Back adhesive"), wxDefaultPosition, wxDefaultSize, 0 );
365  m_LayersSizer->Add( m_PadLayerAdhCu, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
366 
367  m_PadLayerPateCmp = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Front solder paste"), wxDefaultPosition, wxDefaultSize, 0 );
368  m_LayersSizer->Add( m_PadLayerPateCmp, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
369 
370  m_PadLayerPateCu = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Back solder paste"), wxDefaultPosition, wxDefaultSize, 0 );
371  m_LayersSizer->Add( m_PadLayerPateCu, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
372 
373  m_PadLayerSilkCmp = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Front silk screen"), wxDefaultPosition, wxDefaultSize, 0 );
374  m_LayersSizer->Add( m_PadLayerSilkCmp, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
375 
376  m_PadLayerSilkCu = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Back silk screen"), wxDefaultPosition, wxDefaultSize, 0 );
377  m_LayersSizer->Add( m_PadLayerSilkCu, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
378 
379  m_PadLayerMaskCmp = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Front solder mask"), wxDefaultPosition, wxDefaultSize, 0 );
380  m_LayersSizer->Add( m_PadLayerMaskCmp, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
381 
382  m_PadLayerMaskCu = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Back solder mask"), wxDefaultPosition, wxDefaultSize, 0 );
383  m_LayersSizer->Add( m_PadLayerMaskCu, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
384 
385  m_PadLayerDraft = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("Drafting notes"), wxDefaultPosition, wxDefaultSize, 0 );
386  m_LayersSizer->Add( m_PadLayerDraft, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
387 
388  m_PadLayerECO1 = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("E.C.O.1"), wxDefaultPosition, wxDefaultSize, 0 );
389  m_LayersSizer->Add( m_PadLayerECO1, 0, wxTOP|wxRIGHT|wxLEFT, 4 );
390 
391  m_PadLayerECO2 = new wxCheckBox( m_LayersSizer->GetStaticBox(), wxID_ANY, _("E.C.O.2"), wxDefaultPosition, wxDefaultSize, 0 );
392  m_LayersSizer->Add( m_PadLayerECO2, 0, wxALL, 4 );
393 
394 
395  m_middleBoxSizer->Add( m_LayersSizer, 0, wxLEFT|wxRIGHT|wxTOP|wxEXPAND, 5 );
396 
397  m_staticTextFabProperty = new wxStaticText( m_panelGeneral, wxID_ANY, _("Fabrication Property:"), wxDefaultPosition, wxDefaultSize, 0 );
398  m_staticTextFabProperty->Wrap( -1 );
399  m_staticTextFabProperty->SetToolTip( _("Optional property to specify a special purpose or constraint in fabrication files:\nBGA attribute is for pads in BGA footprints\nFiducial local is a fiducial for the parent footprint\nFiducial global is a fiducial for the whole board\nTest pad is useful to specify test points in Gerber files\nHeatsink pad specify a thermal pad\nCastellated specify castellated through hole pads on a board edge\nThis property is specified in Gerber X2 files.") );
400 
401  m_middleBoxSizer->Add( m_staticTextFabProperty, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
402 
403  wxString m_choiceFabPropertyChoices[] = { _("None"), _("BGA pad"), _("Fiducial, local to footprint"), _("Fiducial, global to board"), _("Test Point Pad"), _("Heatsink pad"), _("Castellated pad (through hole only)") };
404  int m_choiceFabPropertyNChoices = sizeof( m_choiceFabPropertyChoices ) / sizeof( wxString );
405  m_choiceFabProperty = new wxChoice( m_panelGeneral, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceFabPropertyNChoices, m_choiceFabPropertyChoices, 0 );
406  m_choiceFabProperty->SetSelection( 0 );
407  m_middleBoxSizer->Add( m_choiceFabProperty, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
408 
409 
410  bGeneralSizer->Add( m_middleBoxSizer, 0, wxEXPAND|wxALL, 3 );
411 
412 
413  m_panelGeneral->SetSizer( bGeneralSizer );
414  m_panelGeneral->Layout();
415  bGeneralSizer->Fit( m_panelGeneral );
416  m_notebook->AddPage( m_panelGeneral, _("General"), true );
417  m_localSettingsPanel = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
418  wxBoxSizer* bSizerPanelClearance;
419  bSizerPanelClearance = new wxBoxSizer( wxVERTICAL );
420 
421  wxBoxSizer* bSizerClearance;
422  bSizerClearance = new wxBoxSizer( wxVERTICAL );
423 
424  wxStaticBoxSizer* sbClearancesSizer;
425  sbClearancesSizer = new wxStaticBoxSizer( new wxStaticBox( m_localSettingsPanel, wxID_ANY, _("Clearances") ), wxVERTICAL );
426 
427  wxStaticText* m_staticTextHint;
428  m_staticTextHint = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Set values to 0 to use parent footprint or netclass values."), wxDefaultPosition, wxDefaultSize, 0 );
429  m_staticTextHint->Wrap( -1 );
430  m_staticTextHint->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
431 
432  sbClearancesSizer->Add( m_staticTextHint, 0, wxRIGHT, 10 );
433 
434  m_staticTextInfoPosValue = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Positive clearance means area bigger than the pad (usual for mask clearance)."), wxDefaultPosition, wxDefaultSize, 0 );
435  m_staticTextInfoPosValue->Wrap( -1 );
436  m_staticTextInfoPosValue->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
437 
438  sbClearancesSizer->Add( m_staticTextInfoPosValue, 0, wxTOP|wxRIGHT, 10 );
439 
440  m_staticTextInfoNegVal = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Negative clearance means area smaller than the pad (usual for paste clearance)."), wxDefaultPosition, wxDefaultSize, 0 );
441  m_staticTextInfoNegVal->Wrap( -1 );
442  m_staticTextInfoNegVal->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
443 
444  sbClearancesSizer->Add( m_staticTextInfoNegVal, 0, wxBOTTOM|wxRIGHT, 10 );
445 
446  wxFlexGridSizer* fgClearancesGridSizer;
447  fgClearancesGridSizer = new wxFlexGridSizer( 4, 3, 0, 0 );
448  fgClearancesGridSizer->AddGrowableCol( 1 );
449  fgClearancesGridSizer->SetFlexibleDirection( wxBOTH );
450  fgClearancesGridSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
451 
452  m_clearanceLabel = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Pad clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
453  m_clearanceLabel->Wrap( -1 );
454  m_clearanceLabel->SetToolTip( _("This is the local net clearance for this pad.\nIf 0, the footprint local value or the Netclass value is used.") );
455 
456  fgClearancesGridSizer->Add( m_clearanceLabel, 0, wxALIGN_CENTER_VERTICAL, 5 );
457 
458  m_clearanceCtrl = new wxTextCtrl( sbClearancesSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
459  fgClearancesGridSizer->Add( m_clearanceCtrl, 0, wxEXPAND|wxTOP|wxLEFT, 5 );
460 
461  m_clearanceUnits = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
462  m_clearanceUnits->Wrap( -1 );
463  fgClearancesGridSizer->Add( m_clearanceUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 );
464 
465  m_maskClearanceLabel = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Solder mask clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
466  m_maskClearanceLabel->Wrap( -1 );
467  m_maskClearanceLabel->SetToolTip( _("This is the local clearance between this pad and the solder mask.\nIf 0, the footprint local value or the global value is used.") );
468 
469  fgClearancesGridSizer->Add( m_maskClearanceLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP, 5 );
470 
471  m_maskClearanceCtrl = new wxTextCtrl( sbClearancesSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
472  fgClearancesGridSizer->Add( m_maskClearanceCtrl, 0, wxEXPAND|wxLEFT|wxTOP, 5 );
473 
474  m_maskClearanceUnits = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
475  m_maskClearanceUnits->Wrap( -1 );
476  fgClearancesGridSizer->Add( m_maskClearanceUnits, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
477 
478  m_pasteClearanceLabel = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Solder paste absolute clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
479  m_pasteClearanceLabel->Wrap( -1 );
480  m_pasteClearanceLabel->SetToolTip( _("This is the local clearance between this pad and the solder paste.\nIf 0, the footprint value or the global value is used.\nThe final clearance value is the sum of this value and the clearance value ratio.\nA negative value means a smaller mask size than pad size.") );
481 
482  fgClearancesGridSizer->Add( m_pasteClearanceLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP, 5 );
483 
484  m_pasteClearanceCtrl = new wxTextCtrl( sbClearancesSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
485  fgClearancesGridSizer->Add( m_pasteClearanceCtrl, 0, wxEXPAND|wxLEFT|wxTOP, 5 );
486 
487  m_pasteClearanceUnits = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
488  m_pasteClearanceUnits->Wrap( -1 );
489  fgClearancesGridSizer->Add( m_pasteClearanceUnits, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
490 
491  m_staticTextRatio = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("Solder paste relative clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
492  m_staticTextRatio->Wrap( -1 );
493  m_staticTextRatio->SetToolTip( _("This is the local clearance ratio in percent between this pad and the solder paste.\nA value of 10 means the clearance value is 10 percent of the pad size.\nIf 0, the footprint value or the global value is used.\nThe final clearance value is the sum of this value and the clearance value.\nA negative value means a smaller mask size than pad size.") );
494 
495  fgClearancesGridSizer->Add( m_staticTextRatio, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
496 
497  m_SolderPasteMarginRatioCtrl = new TEXT_CTRL_EVAL( sbClearancesSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
498  fgClearancesGridSizer->Add( m_SolderPasteMarginRatioCtrl, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxTOP, 5 );
499 
500  m_SolderPasteRatioMarginUnits = new wxStaticText( sbClearancesSizer->GetStaticBox(), wxID_ANY, _("%"), wxDefaultPosition, wxDefaultSize, 0 );
501  m_SolderPasteRatioMarginUnits->Wrap( -1 );
502  fgClearancesGridSizer->Add( m_SolderPasteRatioMarginUnits, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
503 
504 
505  sbClearancesSizer->Add( fgClearancesGridSizer, 0, wxEXPAND, 5 );
506 
507  m_nonCopperWarningBook = new wxSimplebook( sbClearancesSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
508  wxPanel* notePanel;
509  notePanel = new wxPanel( m_nonCopperWarningBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
510  wxBoxSizer* bNoteSizer;
511  bNoteSizer = new wxBoxSizer( wxVERTICAL );
512 
513  m_nonCopperNote = new wxStaticText( notePanel, wxID_ANY, _("Note: solder mask and paste values are used only for pads on copper layers."), wxDefaultPosition, wxDefaultSize, 0 );
514  m_nonCopperNote->Wrap( -1 );
515  m_nonCopperNote->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
516 
517  bNoteSizer->Add( m_nonCopperNote, 0, wxTOP|wxRIGHT, 5 );
518 
519  m_staticTextInfoPaste = new wxStaticText( notePanel, wxID_ANY, _("Note: solder paste clearances (absolute and relative) are added to determine the final clearance."), wxDefaultPosition, wxDefaultSize, 0 );
520  m_staticTextInfoPaste->Wrap( -1 );
521  m_staticTextInfoPaste->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
522 
523  bNoteSizer->Add( m_staticTextInfoPaste, 0, wxBOTTOM|wxRIGHT, 5 );
524 
525 
526  notePanel->SetSizer( bNoteSizer );
527  notePanel->Layout();
528  bNoteSizer->Fit( notePanel );
529  m_nonCopperWarningBook->AddPage( notePanel, _("a page"), false );
530  wxPanel* warningPanel;
531  warningPanel = new wxPanel( m_nonCopperWarningBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
532  wxBoxSizer* bWarningSizer;
533  bWarningSizer = new wxBoxSizer( wxHORIZONTAL );
534 
535  bWarningSizer->SetMinSize( wxSize( -1,50 ) );
536  m_nonCopperWarningIcon = new wxStaticBitmap( warningPanel, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( 48,48 ), 0 );
537  m_nonCopperWarningIcon->SetMinSize( wxSize( 48,48 ) );
538 
539  bWarningSizer->Add( m_nonCopperWarningIcon, 0, wxALL, 5 );
540 
541  m_nonCopperWarningText = new wxStaticText( warningPanel, wxID_ANY, _("Note: solder mask and paste values are used only for pads on copper layers."), wxDefaultPosition, wxDefaultSize, 0 );
542  m_nonCopperWarningText->Wrap( -1 );
543  m_nonCopperWarningText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
544 
545  bWarningSizer->Add( m_nonCopperWarningText, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
546 
547 
548  warningPanel->SetSizer( bWarningSizer );
549  warningPanel->Layout();
550  bWarningSizer->Fit( warningPanel );
551  m_nonCopperWarningBook->AddPage( warningPanel, _("a page"), false );
552 
553  sbClearancesSizer->Add( m_nonCopperWarningBook, 1, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 );
554 
555 
556  bSizerClearance->Add( sbClearancesSizer, 0, wxALL|wxEXPAND, 5 );
557 
558  m_sbSizerZonesSettings = new wxStaticBoxSizer( new wxStaticBox( m_localSettingsPanel, wxID_ANY, _("Connection to Copper Zones") ), wxVERTICAL );
559 
560  wxFlexGridSizer* fgSizerCopperZonesOpts;
561  fgSizerCopperZonesOpts = new wxFlexGridSizer( 0, 3, 0, 0 );
562  fgSizerCopperZonesOpts->AddGrowableCol( 1 );
563  fgSizerCopperZonesOpts->SetFlexibleDirection( wxBOTH );
564  fgSizerCopperZonesOpts->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
565 
566  m_staticText40 = new wxStaticText( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, _("Pad connection:"), wxDefaultPosition, wxDefaultSize, 0 );
567  m_staticText40->Wrap( -1 );
568  fgSizerCopperZonesOpts->Add( m_staticText40, 0, wxALIGN_CENTER_VERTICAL, 5 );
569 
570  wxString m_ZoneConnectionChoiceChoices[] = { _("From parent footprint"), _("Solid"), _("Thermal relief"), _("None") };
571  int m_ZoneConnectionChoiceNChoices = sizeof( m_ZoneConnectionChoiceChoices ) / sizeof( wxString );
572  m_ZoneConnectionChoice = new wxChoice( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_ZoneConnectionChoiceNChoices, m_ZoneConnectionChoiceChoices, 0 );
573  m_ZoneConnectionChoice->SetSelection( 0 );
574  fgSizerCopperZonesOpts->Add( m_ZoneConnectionChoice, 0, wxEXPAND|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
575 
576 
577  fgSizerCopperZonesOpts->Add( 0, 0, 1, wxEXPAND, 5 );
578 
579  m_spokeWidthLabel = new wxStaticText( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, _("Thermal relief spoke width:"), wxDefaultPosition, wxDefaultSize, 0 );
580  m_spokeWidthLabel->Wrap( -1 );
581  fgSizerCopperZonesOpts->Add( m_spokeWidthLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP, 5 );
582 
583  m_spokeWidthCtrl = new wxTextCtrl( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
584  fgSizerCopperZonesOpts->Add( m_spokeWidthCtrl, 0, wxEXPAND|wxLEFT|wxTOP|wxALIGN_CENTER_VERTICAL, 5 );
585 
586  m_spokeWidthUnits = new wxStaticText( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
587  m_spokeWidthUnits->Wrap( -1 );
588  fgSizerCopperZonesOpts->Add( m_spokeWidthUnits, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5 );
589 
590  m_thermalGapLabel = new wxStaticText( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, _("Thermal relief gap:"), wxDefaultPosition, wxDefaultSize, 0 );
591  m_thermalGapLabel->Wrap( -1 );
592  fgSizerCopperZonesOpts->Add( m_thermalGapLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP, 5 );
593 
594  m_thermalGapCtrl = new wxTextCtrl( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
595  fgSizerCopperZonesOpts->Add( m_thermalGapCtrl, 0, wxEXPAND|wxTOP|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
596 
597  m_thermalGapUnits = new wxStaticText( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, _("Inch"), wxDefaultPosition, wxDefaultSize, 0 );
598  m_thermalGapUnits->Wrap( -1 );
599  fgSizerCopperZonesOpts->Add( m_thermalGapUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT|wxLEFT, 5 );
600 
601  m_staticTextcps = new wxStaticText( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, _("Custom pad shape in zone:"), wxDefaultPosition, wxDefaultSize, 0 );
602  m_staticTextcps->Wrap( -1 );
603  fgSizerCopperZonesOpts->Add( m_staticTextcps, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
604 
605  wxString m_ZoneCustomPadShapeChoices[] = { _("Use pad shape"), _("Use pad convex hull") };
606  int m_ZoneCustomPadShapeNChoices = sizeof( m_ZoneCustomPadShapeChoices ) / sizeof( wxString );
607  m_ZoneCustomPadShape = new wxChoice( m_sbSizerZonesSettings->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_ZoneCustomPadShapeNChoices, m_ZoneCustomPadShapeChoices, 0 );
608  m_ZoneCustomPadShape->SetSelection( 0 );
609  fgSizerCopperZonesOpts->Add( m_ZoneCustomPadShape, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
610 
611 
612  m_sbSizerZonesSettings->Add( fgSizerCopperZonesOpts, 0, wxEXPAND, 5 );
613 
614 
615  bSizerClearance->Add( m_sbSizerZonesSettings, 0, wxALL|wxEXPAND, 5 );
616 
617 
618  bSizerPanelClearance->Add( bSizerClearance, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
619 
620 
621  m_localSettingsPanel->SetSizer( bSizerPanelClearance );
622  m_localSettingsPanel->Layout();
623  bSizerPanelClearance->Fit( m_localSettingsPanel );
624  m_notebook->AddPage( m_localSettingsPanel, _("Local Clearance and Settings"), false );
625  m_panelCustomShapePrimitives = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
626  m_bSizerPanelPrimitives = new wxBoxSizer( wxVERTICAL );
627 
628  m_staticTextPrimitivesList = new wxStaticText( m_panelCustomShapePrimitives, wxID_ANY, _("Primitives list"), wxDefaultPosition, wxDefaultSize, 0 );
629  m_staticTextPrimitivesList->Wrap( -1 );
630  m_staticTextPrimitivesList->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
631 
632  m_bSizerPanelPrimitives->Add( m_staticTextPrimitivesList, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
633 
634  m_staticTextPrimitiveListWarning = new wxStaticText( m_panelCustomShapePrimitives, wxID_ANY, _("Coordinates are relative to anchor pad, orientation 0"), wxDefaultPosition, wxDefaultSize, 0 );
636  m_staticTextPrimitiveListWarning->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
637 
638  m_bSizerPanelPrimitives->Add( m_staticTextPrimitiveListWarning, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
639 
640  m_listCtrlPrimitives = new wxListView( m_panelCustomShapePrimitives, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_HRULES|wxLC_NO_HEADER|wxLC_REPORT );
641  m_bSizerPanelPrimitives->Add( m_listCtrlPrimitives, 1, wxALL|wxEXPAND, 5 );
642 
643  wxBoxSizer* bSizerButtons;
644  bSizerButtons = new wxBoxSizer( wxVERTICAL );
645 
646  wxBoxSizer* bSizerButtonsUpper;
647  bSizerButtonsUpper = new wxBoxSizer( wxHORIZONTAL );
648 
649  m_buttonDel = new wxButton( m_panelCustomShapePrimitives, wxID_ANY, _("Delete Primitive"), wxDefaultPosition, wxDefaultSize, 0 );
650  bSizerButtonsUpper->Add( m_buttonDel, 0, wxALL, 5 );
651 
652  m_buttonEditShape = new wxButton( m_panelCustomShapePrimitives, wxID_ANY, _("Edit Primitive"), wxDefaultPosition, wxDefaultSize, 0 );
653  bSizerButtonsUpper->Add( m_buttonEditShape, 0, wxALL, 5 );
654 
655  m_buttonAddShape = new wxButton( m_panelCustomShapePrimitives, wxID_ANY, _("Add Primitive"), wxDefaultPosition, wxDefaultSize, 0 );
656  bSizerButtonsUpper->Add( m_buttonAddShape, 0, wxALL, 5 );
657 
658  m_buttonDup = new wxButton( m_panelCustomShapePrimitives, wxID_ANY, _("Duplicate Primitive"), wxDefaultPosition, wxDefaultSize, 0 );
659  bSizerButtonsUpper->Add( m_buttonDup, 0, wxALL, 5 );
660 
661  m_buttonGeometry = new wxButton( m_panelCustomShapePrimitives, wxID_ANY, _("Transform Primitive"), wxDefaultPosition, wxDefaultSize, 0 );
662  bSizerButtonsUpper->Add( m_buttonGeometry, 0, wxALL, 5 );
663 
664 
665  bSizerButtons->Add( bSizerButtonsUpper, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
666 
667 
668  m_bSizerPanelPrimitives->Add( bSizerButtons, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
669 
670 
674  m_notebook->AddPage( m_panelCustomShapePrimitives, _("Custom Shape Primitives"), false );
675 
676  bSizerUpper->Add( m_notebook, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
677 
678  wxBoxSizer* bSizerDisplayPad;
679  bSizerDisplayPad = new wxBoxSizer( wxVERTICAL );
680 
681 
682  bSizerDisplayPad->Add( 0, 0, 0, wxBOTTOM|wxEXPAND|wxTOP, 3 );
683 
684  m_parentInfoLine1 = new wxStaticText( this, wxID_ANY, _("Footprint name"), wxDefaultPosition, wxDefaultSize, 0 );
685  m_parentInfoLine1->Wrap( -1 );
686  m_parentInfoLine1->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
687 
688  bSizerDisplayPad->Add( m_parentInfoLine1, 0, wxTOP, 8 );
689 
690  m_parentInfoLine2 = new wxStaticText( this, wxID_ANY, _("side and rotation"), wxDefaultPosition, wxDefaultSize, 0 );
691  m_parentInfoLine2->Wrap( -1 );
692  m_parentInfoLine2->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
693 
694  bSizerDisplayPad->Add( m_parentInfoLine2, 0, wxRIGHT, 3 );
695 
696 
697  bSizerDisplayPad->Add( 0, 0, 1, wxEXPAND, 5 );
698 
699  m_panelShowPad = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxFULL_REPAINT_ON_RESIZE|wxBORDER_SIMPLE );
700  m_panelShowPad->SetBackgroundColour( wxColour( 0, 0, 0 ) );
701  m_panelShowPad->SetMinSize( wxSize( 280,-1 ) );
702 
703  bSizerDisplayPad->Add( m_panelShowPad, 12, wxEXPAND|wxALL, 5 );
704 
706  m_panelShowPadGal->SetMinSize( wxSize( 280,-1 ) );
707 
708  bSizerDisplayPad->Add( m_panelShowPadGal, 12, wxEXPAND|wxALL, 5 );
709 
710  m_cbShowPadOutline = new wxCheckBox( this, wxID_ANY, _("Show pad in outline mode"), wxDefaultPosition, wxDefaultSize, 0 );
711  bSizerDisplayPad->Add( m_cbShowPadOutline, 0, wxBOTTOM|wxRIGHT|wxTOP, 5 );
712 
713 
714  bSizerDisplayPad->Add( 0, 0, 1, wxEXPAND, 5 );
715 
716  m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
717  bSizerDisplayPad->Add( m_staticline13, 0, wxEXPAND|wxTOP|wxBOTTOM, 10 );
718 
719 
720  bSizerUpper->Add( bSizerDisplayPad, 1, wxEXPAND|wxTOP|wxRIGHT, 10 );
721 
722 
723  m_MainSizer->Add( bSizerUpper, 1, wxEXPAND, 5 );
724 
725  m_sdbSizer = new wxStdDialogButtonSizer();
726  m_sdbSizerOK = new wxButton( this, wxID_OK );
727  m_sdbSizer->AddButton( m_sdbSizerOK );
728  m_sdbSizerCancel = new wxButton( this, wxID_CANCEL );
729  m_sdbSizer->AddButton( m_sdbSizerCancel );
730  m_sdbSizer->Realize();
731 
732  m_MainSizer->Add( m_sdbSizer, 0, wxEXPAND|wxALL, 5 );
733 
734 
735  this->SetSizer( m_MainSizer );
736  this->Layout();
737 
738  this->Centre( wxBOTH );
739 
740  // Connect Events
741  this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnInitDialog ) );
742  m_panelGeneral->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnUpdateUI ), NULL, this );
743  m_PadNumCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
744  m_PadType->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadTypeSelected ), NULL, this );
745  m_PadShape->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPadShapeSelection ), NULL, this );
746  m_sizeXCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
747  m_sizeYCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
748  m_orientation->Connect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadOrientEvent ), NULL, this );
749  m_orientation->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadOrientEvent ), NULL, this );
750  m_offsetXCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
751  m_offsetYCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
752  m_trapDeltaCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
753  m_trapAxisCtrl->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
754  m_tcCornerSizeRatio->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onCornerSizePercentChange ), NULL, this );
755  m_tcCornerRadius->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onCornerRadiusChange ), NULL, this );
756  m_tcChamferRatio->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onCornerSizePercentChange ), NULL, this );
757  m_cbTopLeft->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
758  m_cbTopRight->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
759  m_cbBottomLeft->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
760  m_cbBottomRight->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
761  m_holeShapeCtrl->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnDrillShapeSelected ), NULL, this );
762  m_holeXCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
763  m_holeYCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
764  m_rbCopperLayersSel->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
765  m_PadLayerAdhCmp->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
766  m_PadLayerAdhCu->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
767  m_PadLayerPateCmp->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
768  m_PadLayerPateCu->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
769  m_PadLayerSilkCmp->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
770  m_PadLayerSilkCu->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
771  m_PadLayerMaskCmp->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
772  m_PadLayerMaskCu->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
773  m_PadLayerDraft->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
774  m_PadLayerECO1->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
775  m_PadLayerECO2->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
776  m_clearanceCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
777  m_nonCopperWarningBook->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnUpdateUINonCopperWarning ), NULL, this );
778  m_listCtrlPrimitives->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_PAD_PROPERTIES_BASE::onPrimitiveDClick ), NULL, this );
779  m_listCtrlPrimitives->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPrimitiveSelection ), NULL, this );
780  m_listCtrlPrimitives->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPrimitiveSelection ), NULL, this );
781  m_buttonDel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onDeletePrimitive ), NULL, this );
782  m_buttonEditShape->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onEditPrimitive ), NULL, this );
783  m_buttonAddShape->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onAddPrimitive ), NULL, this );
784  m_buttonDup->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onDuplicatePrimitive ), NULL, this );
785  m_buttonGeometry->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onGeometryTransform ), NULL, this );
786  m_panelShowPad->Connect( wxEVT_PAINT, wxPaintEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ), NULL, this );
787  m_cbShowPadOutline->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onChangePadMode ), NULL, this );
788  m_sdbSizerCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnCancel ), NULL, this );
789 }
virtual void onPrimitiveDClick(wxMouseEvent &event)
KIGFX::GAL_DISPLAY_OPTIONS m_galOptions
virtual void onAddPrimitive(wxCommandEvent &event)
virtual void OnPaintShowPanel(wxPaintEvent &event)
virtual void OnValuesChanged(wxCommandEvent &event)
virtual void OnPrimitiveSelection(wxListEvent &event)
virtual void OnInitDialog(wxInitDialogEvent &event)
DIALOG_SHIM(wxWindow *aParent, wxWindowID id, const wxString &title, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxDEFAULT_FRAME_STYLE|wxRESIZE_BORDER, const wxString &name=wxDialogNameStr)
Definition: dialog_shim.cpp:68
virtual void OnDrillShapeSelected(wxCommandEvent &event)
virtual void PadTypeSelected(wxCommandEvent &event)
virtual void onCornerRadiusChange(wxCommandEvent &event)
virtual void onDeletePrimitive(wxCommandEvent &event)
virtual void onCornerSizePercentChange(wxCommandEvent &event)
#define NULL
virtual void OnPadShapeSelection(wxCommandEvent &event)
virtual void PadOrientEvent(wxCommandEvent &event)
wxStdDialogButtonSizer * m_sdbSizer
virtual void OnUpdateUI(wxUpdateUIEvent &event)
virtual void onDuplicatePrimitive(wxCommandEvent &event)
wxTextCtrl wrapper to handle math expression evaluation.
virtual void OnUpdateUINonCopperWarning(wxUpdateUIEvent &event)
virtual void OnSetLayers(wxCommandEvent &event)
virtual void onEditPrimitive(wxCommandEvent &event)
#define _(s)
Definition: 3d_actions.cpp:33
virtual void onGeometryTransform(wxCommandEvent &event)
virtual void onChangePadMode(wxCommandEvent &event)
virtual void OnCancel(wxCommandEvent &event)

References _, EDA_DRAW_PANEL_GAL::GAL_TYPE_CAIRO, m_bSizerPanelPrimitives, m_buttonAddShape, m_buttonDel, m_buttonDup, m_buttonEditShape, m_buttonGeometry, m_cbBottomLeft, m_cbBottomRight, m_cbShowPadOutline, m_cbTopLeft, m_cbTopRight, m_choiceFabProperty, m_clearanceCtrl, m_clearanceLabel, m_clearanceUnits, m_cornerRadiusLabel, m_cornerRadiusUnits, m_FlippedWarningIcon, m_FlippedWarningSizer, m_galOptions, m_holeShapeCtrl, m_holeShapeLabel, m_holeXCtrl, m_holeXLabel, m_holeXUnits, m_holeYCtrl, m_holeYLabel, m_holeYUnits, m_listCtrlPrimitives, m_localSettingsPanel, m_maskClearanceCtrl, m_maskClearanceLabel, m_maskClearanceUnits, m_middleBoxSizer, m_nonCopperNote, m_nonCopperWarningBook, m_nonCopperWarningIcon, m_nonCopperWarningText, m_notebook, m_offsetXCtrl, m_offsetXLabel, m_offsetXUnits, m_offsetYCtrl, m_offsetYLabel, m_offsetYUnits, m_orientation, m_PadLayerAdhCmp, m_PadLayerAdhCu, m_PadLayerDraft, m_PadLayerECO1, m_PadLayerECO2, m_PadLayerMaskCmp, m_PadLayerMaskCu, m_PadLayerPateCmp, m_PadLayerPateCu, m_PadLayerSilkCmp, m_PadLayerSilkCu, m_PadNameText, m_PadNetSelector, m_PadNumCtrl, m_PadNumText, m_PadOrientText, m_PadShape, m_padToDieCtrl, m_padToDieLabel, m_padToDieUnits, m_PadType, m_panelCustomShapePrimitives, m_panelGeneral, m_panelShowPad, m_panelShowPadGal, m_parentInfoLine1, m_parentInfoLine2, m_pasteClearanceCtrl, m_pasteClearanceLabel, m_pasteClearanceUnits, m_posXCtrl, m_posXLabel, m_posXUnits, m_posYCtrl, m_posYLabel, m_posYUnits, m_rbCopperLayersSel, m_sbSizerZonesSettings, m_sdbSizer, m_sdbSizerCancel, m_sdbSizerOK, m_sizeXCtrl, m_sizeXLabel, m_sizeXUnits, m_sizeYCtrl, m_sizeYLabel, m_sizeYUnits, m_SolderPasteMarginRatioCtrl, m_SolderPasteRatioMarginUnits, m_spokeWidthCtrl, m_spokeWidthLabel, m_spokeWidthUnits, m_staticline13, m_staticText40, m_staticText44, m_staticText45, m_staticText491, m_staticText51, m_staticText511, m_staticText86, m_staticTextChamferCorner, m_staticTextChamferRatio, m_staticTextChamferRatioUnit, m_staticTextCornerSizeRatio, m_staticTextCornerSizeRatioUnit, m_staticTextcps, m_staticTextFabProperty, m_staticTextInfoNegVal, m_staticTextInfoPaste, m_staticTextInfoPosValue, m_staticTextPrimitiveListWarning, m_staticTextPrimitivesList, m_staticTextRatio, m_tcChamferRatio, m_tcCornerRadius, m_tcCornerSizeRatio, m_techLayersLabel, m_thermalGapCtrl, m_thermalGapLabel, m_thermalGapUnits, m_trapAxisCtrl, m_trapAxisLabel, m_trapDeltaCtrl, m_trapDeltaLabel, m_trapDeltaUnits, m_ZoneConnectionChoice, m_ZoneCustomPadShape, NULL, onAddPrimitive(), OnCancel(), onChangePadMode(), onCornerRadiusChange(), onCornerSizePercentChange(), onDeletePrimitive(), OnDrillShapeSelected(), onDuplicatePrimitive(), onEditPrimitive(), onGeometryTransform(), OnInitDialog(), OnPadShapeSelection(), OnPaintShowPanel(), onPrimitiveDClick(), OnPrimitiveSelection(), OnSetLayers(), OnUpdateUI(), OnUpdateUINonCopperWarning(), OnValuesChanged(), PadOrientEvent(), PadTypeSelected(), and wxID_PADNUMCTRL.

◆ ~DIALOG_PAD_PROPERTIES_BASE()

DIALOG_PAD_PROPERTIES_BASE::~DIALOG_PAD_PROPERTIES_BASE ( )

Definition at line 791 of file dialog_pad_properties_base.cpp.

792 {
793  // Disconnect Events
794  this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnInitDialog ) );
795  m_panelGeneral->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnUpdateUI ), NULL, this );
796  m_PadNumCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
797  m_PadType->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadTypeSelected ), NULL, this );
798  m_PadShape->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPadShapeSelection ), NULL, this );
799  m_sizeXCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
800  m_sizeYCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
801  m_orientation->Disconnect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadOrientEvent ), NULL, this );
802  m_orientation->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::PadOrientEvent ), NULL, this );
803  m_offsetXCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
804  m_offsetYCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
805  m_trapDeltaCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
806  m_trapAxisCtrl->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
807  m_tcCornerSizeRatio->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onCornerSizePercentChange ), NULL, this );
808  m_tcCornerRadius->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onCornerRadiusChange ), NULL, this );
809  m_tcChamferRatio->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onCornerSizePercentChange ), NULL, this );
810  m_cbTopLeft->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
811  m_cbTopRight->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
812  m_cbBottomLeft->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
813  m_cbBottomRight->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
814  m_holeShapeCtrl->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnDrillShapeSelected ), NULL, this );
815  m_holeXCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
816  m_holeYCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
817  m_rbCopperLayersSel->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
818  m_PadLayerAdhCmp->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
819  m_PadLayerAdhCu->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
820  m_PadLayerPateCmp->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
821  m_PadLayerPateCu->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
822  m_PadLayerSilkCmp->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
823  m_PadLayerSilkCu->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
824  m_PadLayerMaskCmp->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
825  m_PadLayerMaskCu->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
826  m_PadLayerDraft->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
827  m_PadLayerECO1->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
828  m_PadLayerECO2->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ), NULL, this );
829  m_clearanceCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ), NULL, this );
830  m_nonCopperWarningBook->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnUpdateUINonCopperWarning ), NULL, this );
831  m_listCtrlPrimitives->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( DIALOG_PAD_PROPERTIES_BASE::onPrimitiveDClick ), NULL, this );
832  m_listCtrlPrimitives->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPrimitiveSelection ), NULL, this );
833  m_listCtrlPrimitives->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPrimitiveSelection ), NULL, this );
834  m_buttonDel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onDeletePrimitive ), NULL, this );
835  m_buttonEditShape->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onEditPrimitive ), NULL, this );
836  m_buttonAddShape->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onAddPrimitive ), NULL, this );
837  m_buttonDup->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onDuplicatePrimitive ), NULL, this );
838  m_buttonGeometry->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onGeometryTransform ), NULL, this );
839  m_panelShowPad->Disconnect( wxEVT_PAINT, wxPaintEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ), NULL, this );
840  m_cbShowPadOutline->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::onChangePadMode ), NULL, this );
841  m_sdbSizerCancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PAD_PROPERTIES_BASE::OnCancel ), NULL, this );
842 
843 }
virtual void onPrimitiveDClick(wxMouseEvent &event)
virtual void onAddPrimitive(wxCommandEvent &event)
virtual void OnPaintShowPanel(wxPaintEvent &event)
virtual void OnValuesChanged(wxCommandEvent &event)
virtual void OnPrimitiveSelection(wxListEvent &event)
virtual void OnInitDialog(wxInitDialogEvent &event)
virtual void OnDrillShapeSelected(wxCommandEvent &event)
virtual void PadTypeSelected(wxCommandEvent &event)
virtual void onCornerRadiusChange(wxCommandEvent &event)
virtual void onDeletePrimitive(wxCommandEvent &event)
virtual void onCornerSizePercentChange(wxCommandEvent &event)
#define NULL
virtual void OnPadShapeSelection(wxCommandEvent &event)
virtual void PadOrientEvent(wxCommandEvent &event)
virtual void OnUpdateUI(wxUpdateUIEvent &event)
virtual void onDuplicatePrimitive(wxCommandEvent &event)
virtual void OnUpdateUINonCopperWarning(wxUpdateUIEvent &event)
virtual void OnSetLayers(wxCommandEvent &event)
virtual void onEditPrimitive(wxCommandEvent &event)
virtual void onGeometryTransform(wxCommandEvent &event)
virtual void onChangePadMode(wxCommandEvent &event)
virtual void OnCancel(wxCommandEvent &event)

References m_buttonAddShape, m_buttonDel, m_buttonDup, m_buttonEditShape, m_buttonGeometry, m_cbBottomLeft, m_cbBottomRight, m_cbShowPadOutline, m_cbTopLeft, m_cbTopRight, m_clearanceCtrl, m_holeShapeCtrl, m_holeXCtrl, m_holeYCtrl, m_listCtrlPrimitives, m_nonCopperWarningBook, m_offsetXCtrl, m_offsetYCtrl, m_orientation, m_PadLayerAdhCmp, m_PadLayerAdhCu, m_PadLayerDraft, m_PadLayerECO1, m_PadLayerECO2, m_PadLayerMaskCmp, m_PadLayerMaskCu, m_PadLayerPateCmp, m_PadLayerPateCu, m_PadLayerSilkCmp, m_PadLayerSilkCu, m_PadNumCtrl, m_PadShape, m_PadType, m_panelGeneral, m_panelShowPad, m_rbCopperLayersSel, m_sdbSizerCancel, m_sizeXCtrl, m_sizeYCtrl, m_tcChamferRatio, m_tcCornerRadius, m_tcCornerSizeRatio, m_trapAxisCtrl, m_trapDeltaCtrl, NULL, onAddPrimitive(), OnCancel(), onChangePadMode(), onCornerRadiusChange(), onCornerSizePercentChange(), onDeletePrimitive(), OnDrillShapeSelected(), onDuplicatePrimitive(), onEditPrimitive(), onGeometryTransform(), OnInitDialog(), OnPadShapeSelection(), OnPaintShowPanel(), onPrimitiveDClick(), OnPrimitiveSelection(), OnSetLayers(), OnUpdateUI(), OnUpdateUINonCopperWarning(), OnValuesChanged(), PadOrientEvent(), and PadTypeSelected().

Member Function Documentation

◆ Enable()

bool DIALOG_SHIM::Enable ( bool  enable)
overrideinherited

Definition at line 262 of file dialog_shim.cpp.

263 {
264  // so we can do logging of this state change:
265 
266 #if 0 && defined(DEBUG)
267  const char* type_id = typeid( *this ).name();
268  printf( "DIALOG_SHIM %s: %s\n", type_id, enable ? "enabled" : "disabled" );
269  fflush(0); //Needed on msys2 to immediately print the message
270 #endif
271 
272  return wxDialog::Enable( enable );
273 }

◆ EndQuasiModal()

void DIALOG_SHIM::EndQuasiModal ( int  retCode)
inherited

Definition at line 419 of file dialog_shim.cpp.

420 {
421  // Hook up validator and transfer data from controls handling so quasi-modal dialogs
422  // handle validation in the same way as other dialogs.
423  if( ( retCode == wxID_OK ) && ( !Validate() || !TransferDataFromWindow() ) )
424  return;
425 
426  SetReturnCode( retCode );
427 
428  if( !IsQuasiModal() )
429  {
430  wxFAIL_MSG( "either DIALOG_SHIM::EndQuasiModal called twice or ShowQuasiModal"
431  "wasn't called" );
432  return;
433  }
434 
435  if( m_qmodal_loop )
436  {
437  if( m_qmodal_loop->IsRunning() )
438  m_qmodal_loop->Exit( 0 );
439  else
440  m_qmodal_loop->ScheduleExit( 0 );
441 
443  }
444 
447 
448  Show( false );
449 }
WX_EVENT_LOOP * m_qmodal_loop
Definition: dialog_shim.h:205
#define NULL
bool IsQuasiModal()
Definition: dialog_shim.h:124
bool Show(bool show) override
WDO_ENABLE_DISABLE * m_qmodal_parent_disabler
Definition: dialog_shim.h:208

References DIALOG_SHIM::IsQuasiModal(), DIALOG_SHIM::m_qmodal_loop, DIALOG_SHIM::m_qmodal_parent_disabler, NULL, and DIALOG_SHIM::Show().

Referenced by HK_PROMPT_DIALOG::EndFlexible(), DIALOG_SHIM::OnButton(), DIALOG_EDIT_COMPONENTS_LIBID::onCancel(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnCancelButtonClick(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::OnCancelButtonClick(), DIALOG_LIB_EDIT_PIN_TABLE::OnClose(), DIALOG_PRINT_GENERIC::onCloseButton(), DIALOG_CHOOSE_FOOTPRINT::OnCloseTimer(), DIALOG_CHOOSE_COMPONENT::OnCloseTimer(), DIALOG_SHIM::OnCloseWindow(), HTML_MESSAGE_BOX::OnOKButtonClick(), DIALOG_CHOOSE_FOOTPRINT::OnUseBrowser(), DIALOG_CHOOSE_COMPONENT::OnUseBrowser(), and DIALOG_SHIM::~DIALOG_SHIM().

◆ FinishDialogSettings()

void DIALOG_SHIM::FinishDialogSettings ( )
protectedinherited

In all dialogs, we must call the same functions to fix minimal dlg size, the default position and perhaps some others to fix a few issues depending on Windows Managers this helper function does these calls.

FinishDialogSettings must be called from derived classes, when all widgets are initialized, and therefore their size fixed. If TransferDataToWindow() is used to initialize widgets, at end of TransferDataToWindow, or better at end of a wxInitDialogEvent handler

In any case, the best way is to call it in a wxInitDialogEvent handler after calling TransfertDataToWindow(), which is the default wxInitDialogEvent handler wxDialog

Definition at line 137 of file dialog_shim.cpp.

138 {
139  // must be called from the constructor of derived classes,
140  // when all widgets are initialized, and therefore their size fixed
141 
142  // SetSizeHints fixes the minimal size of sizers in the dialog
143  // (SetSizeHints calls Fit(), so no need to call it)
144  GetSizer()->SetSizeHints( this );
145 
146  // the default position, when calling the first time the dlg
147  Center();
148 }

References PCAD2KICAD::Center.

Referenced by DIALOG_3D_VIEW_OPTIONS::DIALOG_3D_VIEW_OPTIONS(), DIALOG_ANNOTATE::DIALOG_ANNOTATE(), DIALOG_BOARD_SETUP::DIALOG_BOARD_SETUP(), DIALOG_BOM::DIALOG_BOM(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_DRC::DIALOG_DRC(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::DIALOG_EDIT_COMPONENT_IN_LIBRARY(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::DIALOG_EDIT_COMPONENT_IN_SCHEMATIC(), DIALOG_EDIT_COMPONENTS_LIBID::DIALOG_EDIT_COMPONENTS_LIBID(), DIALOG_EDIT_LINE_STYLE::DIALOG_EDIT_LINE_STYLE(), DIALOG_EDIT_SHEET_PIN::DIALOG_EDIT_SHEET_PIN(), DIALOG_EDITOR_DATA::DIALOG_EDITOR_DATA(), DIALOG_ENUM_PADS::DIALOG_ENUM_PADS(), DIALOG_ERC::DIALOG_ERC(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), DIALOG_EXPORT_3DFILE::DIALOG_EXPORT_3DFILE(), DIALOG_EXPORT_IDF3::DIALOG_EXPORT_IDF3(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_EXPORT_SVG::DIALOG_EXPORT_SVG(), DIALOG_FIELDS_EDITOR_GLOBAL::DIALOG_FIELDS_EDITOR_GLOBAL(), DIALOG_FOOTPRINT_BOARD_EDITOR::DIALOG_FOOTPRINT_BOARD_EDITOR(), DIALOG_FOOTPRINT_FP_EDITOR::DIALOG_FOOTPRINT_FP_EDITOR(), DIALOG_FOOTPRINT_WIZARD_LIST::DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_FOOTPRINTS_DISPLAY_OPTIONS::DIALOG_FOOTPRINTS_DISPLAY_OPTIONS(), DIALOG_FP_BROWSER_DISPLAY_OPTIONS::DIALOG_FP_BROWSER_DISPLAY_OPTIONS(), DIALOG_GENCAD_EXPORT_OPTIONS::DIALOG_GENCAD_EXPORT_OPTIONS(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS(), DIALOG_GLOBAL_LIB_TABLE_CONFIG::DIALOG_GLOBAL_LIB_TABLE_CONFIG(), DIALOG_IMAGE_EDITOR::DIALOG_IMAGE_EDITOR(), DIALOG_KEEPOUT_AREA_PROPERTIES::DIALOG_KEEPOUT_AREA_PROPERTIES(), DIALOG_LABEL_EDITOR::DIALOG_LABEL_EDITOR(), DIALOG_LIB_EDIT_DRAW_ITEM::DIALOG_LIB_EDIT_DRAW_ITEM(), DIALOG_LIB_EDIT_PIN::DIALOG_LIB_EDIT_PIN(), DIALOG_LIB_EDIT_TEXT::DIALOG_LIB_EDIT_TEXT(), DIALOG_LIB_NEW_COMPONENT::DIALOG_LIB_NEW_COMPONENT(), DIALOG_LIST_HOTKEYS::DIALOG_LIST_HOTKEYS(), DIALOG_MOVE_EXACT::DIALOG_MOVE_EXACT(), DIALOG_NETLIST::DIALOG_NETLIST(), DIALOG_NON_COPPER_ZONES_EDITOR::DIALOG_NON_COPPER_ZONES_EDITOR(), DIALOG_PAD_PRIMITIVE_POLY_PROPS::DIALOG_PAD_PRIMITIVE_POLY_PROPS(), DIALOG_PAD_PRIMITIVES_PROPERTIES::DIALOG_PAD_PRIMITIVES_PROPERTIES(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PASTE_SPECIAL::DIALOG_PASTE_SPECIAL(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_POSITION_RELATIVE::DIALOG_POSITION_RELATIVE(), DIALOG_PRINT_GENERIC::DIALOG_PRINT_GENERIC(), DIALOG_PRINT_USING_PRINTER::DIALOG_PRINT_USING_PRINTER(), DIALOG_PUSH_PAD_PROPERTIES::DIALOG_PUSH_PAD_PROPERTIES(), DIALOG_SCH_SHEET_PROPS::DIALOG_SCH_SHEET_PROPS(), DIALOG_SCHEMATIC_SETUP::DIALOG_SCHEMATIC_SETUP(), DIALOG_SELECT_NET_FROM_LIST::DIALOG_SELECT_NET_FROM_LIST(), DIALOG_SET_GRID::DIALOG_SET_GRID(), DIALOG_SWAP_LAYERS::DIALOG_SWAP_LAYERS(), DIALOG_TARGET_PROPERTIES::DIALOG_TARGET_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), DIALOG_TRACK_VIA_SIZE::DIALOG_TRACK_VIA_SIZE(), DIALOG_UPDATE_FROM_PCB::DIALOG_UPDATE_FROM_PCB(), DIALOG_UPDATE_PCB::DIALOG_UPDATE_PCB(), PAGED_DIALOG::finishInitialization(), DIALOG_EDIT_ONE_FIELD::init(), DIALOG_EDIT_LIBRARY_TABLES::InstallPanel(), NETLIST_DIALOG::NETLIST_DIALOG(), DIALOG_GRAPHIC_ITEM_PROPERTIES::OnInitDlg(), DIALOG_SCH_SHEET_PROPS::OnInitDlg(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnInitDlg(), DIALOG_SIM_SETTINGS::onInitDlg(), DIALOG_SPICE_MODEL::onInitDlg(), DIALOG_SIGNAL_LIST::TransferDataToWindow(), DIALOG_UPDATE_FIELDS::TransferDataToWindow(), DIALOG_COLOR_PICKER::TransferDataToWindow(), and DIALOG_BOARD_STATISTICS::TransferDataToWindow().

◆ GetType()

HOLDER_TYPE KIWAY_HOLDER::GetType ( )
inlineinherited

Definition at line 49 of file kiway_holder.h.

49 { return m_type; }
HOLDER_TYPE m_type
Definition: kiway_holder.h:82

References KIWAY_HOLDER::m_type.

Referenced by DIALOG_SHIM::DIALOG_SHIM().

◆ GetUserUnits()

◆ HorizPixelsFromDU()

int DIALOG_SHIM::HorizPixelsFromDU ( int  x)
protectedinherited

Convert an integer number of dialog units to pixels, horizontally.

See SetSizeInDU or wxDialog documentation for more information.

Definition at line 158 of file dialog_shim.cpp.

159 {
160  wxSize sz( x, 0 );
161  return ConvertDialogToPixels( sz ).x;
162 }

Referenced by DIALOG_CHOOSE_COMPONENT::DIALOG_CHOOSE_COMPONENT(), and DIALOG_CHOOSE_FOOTPRINT::DIALOG_CHOOSE_FOOTPRINT().

◆ IsCtrl()

static bool DIALOG_SHIM::IsCtrl ( int  aChar,
const wxKeyEvent &  e 
)
inlinestaticinherited

Definition at line 137 of file dialog_shim.h.

138  {
139  return e.GetKeyCode() == aChar && e.ControlDown() && !e.AltDown() &&
140  !e.ShiftDown() && !e.MetaDown();
141  }

Referenced by DIALOG_TEXT_PROPERTIES::OnCharHook(), and DIALOG_LABEL_EDITOR::OnCharHook().

◆ IsQuasiModal()

◆ IsShiftCtrl()

static bool DIALOG_SHIM::IsShiftCtrl ( int  aChar,
const wxKeyEvent &  e 
)
inlinestaticinherited

Definition at line 143 of file dialog_shim.h.

144  {
145  return e.GetKeyCode() == aChar && e.ControlDown() && !e.AltDown() &&
146  e.ShiftDown() && !e.MetaDown();
147  }

Referenced by DIALOG_TEXT_PROPERTIES::OnCharHook(), and DIALOG_LABEL_EDITOR::OnCharHook().

◆ Kiway()

KIWAY& KIWAY_HOLDER::Kiway ( ) const
inlineinherited

Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in.

A KIWAY_HOLDER is not necessarily a KIWAY_PLAYER.

Definition at line 56 of file kiway_holder.h.

57  {
58  wxASSERT( m_kiway ); // smoke out bugs in Debug build, then Release runs fine.
59  return *m_kiway;
60  }
KIWAY * m_kiway
Definition: kiway_holder.h:81

References KIWAY_HOLDER::m_kiway.

Referenced by TREEPROJECT_ITEM::Activate(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PCB_BASE_EDIT_FRAME::AddLibrary(), LIB_CONTROL::AddSymbolToSchematic(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), COMMON_CONTROL::ConfigurePaths(), DIALOG_CHOOSE_FOOTPRINT::ConstructRightPanel(), DIALOG_CHOOSE_COMPONENT::ConstructRightPanel(), PCB_BASE_FRAME::CreateAndShow3D_Frame(), SCH_EDIT_FRAME::CreateScreens(), CVPCB_MAINFRAME::CVPCB_MAINFRAME(), DIALOG_RESCUE_EACH::DIALOG_RESCUE_EACH(), DIALOG_SHIM::DIALOG_SHIM(), CVPCB_MAINFRAME::DisplayStatus(), FIELDS_GRID_TRICKS::doPopupSelection(), FIELDS_EDITOR_GRID_TRICKS::doPopupSelection(), EDIT_TOOL::EditFpInFpEditor(), SCH_EDITOR_CONTROL::EditWithLibEdit(), BACK_ANNOTATE::FetchNetlistFromPCB(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), LIB_MANAGER::GetBufferedPart(), LIB_MANAGER::getLibraryBuffer(), FOOTPRINT_EDIT_FRAME::GetPlotSettings(), PCB_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::InitSheet(), KICAD_MANAGER_FRAME::language_change(), KIWAY_PLAYER::language_change(), LIB_TREE_MODEL_ADAPTER::LIB_TREE_MODEL_ADAPTER(), CVPCB_MAINFRAME::LoadFootprintFiles(), KICAD_MANAGER_FRAME::LoadProject(), SCH_EDIT_FRAME::LoadSheetFromFile(), TEXT_BUTTON_SYMBOL_CHOOSER::OnButtonClick(), TEXT_BUTTON_FP_CHOOSER::OnButtonClick(), KICAD_MANAGER_FRAME::OnCloseWindow(), SCH_EDIT_FRAME::OnCloseWindow(), SCH_EDIT_FRAME::OnExit(), FOOTPRINT_EDIT_FRAME::OnExitKiCad(), FOOTPRINT_VIEWER_FRAME::OnExitKiCad(), LIB_EDIT_FRAME::OnExitKiCad(), SAVE_AS_TRAVERSER::OnFile(), KICAD_MANAGER_FRAME::OnImportEagleFiles(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), SCH_EDIT_FRAME::OnOpenCvpcb(), SCH_EDIT_FRAME::OnOpenPcbnew(), EDA_BASE_FRAME::OnPreferences(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), DIALOG_EDIT_ONE_FIELD::OnTextValueSelectButtonClick(), FOOTPRINT_EDIT_FRAME::OnUpdateInsertModuleInBoard(), FOOTPRINT_EDIT_FRAME::OnUpdateLoadModuleFromBoard(), SCH_EDIT_FRAME::OnUpdatePCB(), SCH_EDIT_FRAME::OpenProjectFiles(), SCH_EDITOR_CONTROL::Paste(), KIWAY_HOLDER::Prj(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), LIB_EDIT_FRAME::refreshSchematic(), SCH_EDIT_FRAME::rescueProject(), EE_INSPECTION_TOOL::RunSimulation(), SCH_EDIT_FRAME::SaveEEFile(), CVPCB_MAINFRAME::SaveFootprintAssociation(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), LIB_TREE_MODEL_ADAPTER::SavePinnedItems(), SCH_BASE_FRAME::SelectComponentFromLibBrowser(), SCH_EDIT_FRAME::SendCrossProbeClearHighlight(), SCH_EDIT_FRAME::SendCrossProbeNetName(), PCB_EDIT_FRAME::SendCrossProbeNetName(), CVPCB_MAINFRAME::SendMessageToEESCHEMA(), PCB_EDIT_FRAME::SendMessageToEESCHEMA(), SCH_EDIT_FRAME::SendMessageToPCBNEW(), SCH_EDIT_FRAME::sendNetlistToCvpcb(), FOOTPRINT_EDIT_FRAME::SetPlotSettings(), CVPCB_CONTROL::ShowFootprintViewer(), COMMON_CONTROL::ShowLibraryTable(), COMMON_CONTROL::ShowPlayer(), KICAD_MANAGER_CONTROL::ShowPlayer(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), DIALOG_SCH_SHEET_PROPS::TransferDataFromWindow(), LIB_MANAGER::UpdatePart(), PCB_EDITOR_CONTROL::UpdateSchematicFromPCB(), and DIALOG_EXCHANGE_FOOTPRINTS::ViewAndSelectFootprint().

◆ onAddPrimitive()

virtual void DIALOG_PAD_PROPERTIES_BASE::onAddPrimitive ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 213 of file dialog_pad_properties_base.h.

213 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnCancel()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnCancel ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 218 of file dialog_pad_properties_base.h.

218 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onChangePadMode()

virtual void DIALOG_PAD_PROPERTIES_BASE::onChangePadMode ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 217 of file dialog_pad_properties_base.h.

217 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onCornerRadiusChange()

virtual void DIALOG_PAD_PROPERTIES_BASE::onCornerRadiusChange ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 206 of file dialog_pad_properties_base.h.

206 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onCornerSizePercentChange()

virtual void DIALOG_PAD_PROPERTIES_BASE::onCornerSizePercentChange ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 205 of file dialog_pad_properties_base.h.

205 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onDeletePrimitive()

virtual void DIALOG_PAD_PROPERTIES_BASE::onDeletePrimitive ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 211 of file dialog_pad_properties_base.h.

211 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnDrillShapeSelected()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnDrillShapeSelected ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 207 of file dialog_pad_properties_base.h.

207 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onDuplicatePrimitive()

virtual void DIALOG_PAD_PROPERTIES_BASE::onDuplicatePrimitive ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 214 of file dialog_pad_properties_base.h.

214 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onEditPrimitive()

virtual void DIALOG_PAD_PROPERTIES_BASE::onEditPrimitive ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 212 of file dialog_pad_properties_base.h.

212 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onGeometryTransform()

virtual void DIALOG_PAD_PROPERTIES_BASE::onGeometryTransform ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 215 of file dialog_pad_properties_base.h.

215 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnInitDialog()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnInitDialog ( wxInitDialogEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 198 of file dialog_pad_properties_base.h.

198 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnPadShapeSelection()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnPadShapeSelection ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 202 of file dialog_pad_properties_base.h.

202 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnPaint()

void DIALOG_SHIM::OnPaint ( wxPaintEvent &  event)
inherited

Definition at line 320 of file dialog_shim.cpp.

321 {
322  if( m_firstPaintEvent )
323  {
324 #ifdef __WXMAC__
325  fixOSXCancelButtonIssue( this );
326 #endif
327 
328  selectAllInTextCtrls( GetChildren() );
329 
331  m_initialFocusTarget->SetFocus();
332  else
333  SetFocus(); // Focus the dialog itself
334 
335  m_firstPaintEvent = false;
336  }
337 
338  event.Skip();
339 }
wxWindow * m_initialFocusTarget
Definition: dialog_shim.h:203
bool m_firstPaintEvent
Definition: dialog_shim.h:202
static void selectAllInTextCtrls(wxWindowList &children)

References DIALOG_SHIM::m_firstPaintEvent, DIALOG_SHIM::m_initialFocusTarget, and selectAllInTextCtrls().

Referenced by DIALOG_SHIM::DIALOG_SHIM().

◆ OnPaintShowPanel()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnPaintShowPanel ( wxPaintEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 216 of file dialog_pad_properties_base.h.

216 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ onPrimitiveDClick()

virtual void DIALOG_PAD_PROPERTIES_BASE::onPrimitiveDClick ( wxMouseEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 209 of file dialog_pad_properties_base.h.

209 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnPrimitiveSelection()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnPrimitiveSelection ( wxListEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 210 of file dialog_pad_properties_base.h.

210 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnSetLayers()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnSetLayers ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 204 of file dialog_pad_properties_base.h.

204 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnUpdateUI()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnUpdateUI ( wxUpdateUIEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 199 of file dialog_pad_properties_base.h.

199 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnUpdateUINonCopperWarning()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnUpdateUINonCopperWarning ( wxUpdateUIEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 208 of file dialog_pad_properties_base.h.

208 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ OnValuesChanged()

virtual void DIALOG_PAD_PROPERTIES_BASE::OnValuesChanged ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 200 of file dialog_pad_properties_base.h.

200 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ PadOrientEvent()

virtual void DIALOG_PAD_PROPERTIES_BASE::PadOrientEvent ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 203 of file dialog_pad_properties_base.h.

203 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ PadTypeSelected()

virtual void DIALOG_PAD_PROPERTIES_BASE::PadTypeSelected ( wxCommandEvent &  event)
inlineprotectedvirtual

Reimplemented in DIALOG_PAD_PROPERTIES.

Definition at line 201 of file dialog_pad_properties_base.h.

201 { event.Skip(); }

Referenced by DIALOG_PAD_PROPERTIES_BASE(), and ~DIALOG_PAD_PROPERTIES_BASE().

◆ Prj()

PROJECT & KIWAY_HOLDER::Prj ( ) const
inherited

Function Prj returns a reference to the PROJECT "associated with" this KIWAY.

Definition at line 35 of file kiway_holder.cpp.

36 {
37  return Kiway().Prj();
38 }
KIWAY & Kiway() const
Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in...
Definition: kiway_holder.h:56
VTBL_ENTRY PROJECT & Prj() const
Function Prj returns the PROJECT associated with this KIWAY.
Definition: kiway.cpp:171

References KIWAY_HOLDER::Kiway(), and KIWAY::Prj().

Referenced by PCB_BASE_EDIT_FRAME::AddLibrary(), LIB_MANAGER::addLibrary(), LIB_CONTROL::AddSymbolToSchematic(), SCH_EDIT_FRAME::AppendSchematic(), PCB_EDIT_FRAME::ArchiveModulesOnBoard(), DIALOG_SYMBOL_REMAP::backupProject(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), DIALOG_FOOTPRINT_FP_EDITOR::Cfg3DPath(), DIALOG_FOOTPRINT_BOARD_EDITOR::Cfg3DPath(), PCB_BASE_EDIT_FRAME::CreateNewLibrary(), KICAD_MANAGER_FRAME::CreateNewProject(), DIALOG_PLOT_SCHEMATIC::createPlotFileName(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), FOOTPRINT_EDIT_FRAME::DeleteModuleFromLibrary(), DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS(), DIALOG_CHOOSE_COMPONENT::DIALOG_CHOOSE_COMPONENT(), DIALOG_CHOOSE_FOOTPRINT::DIALOG_CHOOSE_FOOTPRINT(), DIALOG_CONFIG_EQUFILES::DIALOG_CONFIG_EQUFILES(), DIALOG_FOOTPRINT_BOARD_EDITOR::DIALOG_FOOTPRINT_BOARD_EDITOR(), DIALOG_FOOTPRINT_FP_EDITOR::DIALOG_FOOTPRINT_FP_EDITOR(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_SYMBOL_REMAP::DIALOG_SYMBOL_REMAP(), LIB_VIEW_FRAME::DisplayLibInfos(), CVPCB_MAINFRAME::DisplayStatus(), PCB_EDIT_FRAME::doAutoSave(), KICAD_MANAGER_CONTROL::Execute(), PCB_EDIT_FRAME::Export_IDF3(), LIB_CONTROL::ExportSymbolAsSVG(), LIB_CONTROL::ExportView(), PCB_EDIT_FRAME::ExportVRML_File(), PCB_EDIT_FRAME::Files_io_from_id(), PCB_EDIT_FRAME::GenD356File(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), FOOTPRINT_VIEWER_FRAME::getCurFootprintName(), LIB_EDIT_FRAME::GetCurLib(), FOOTPRINT_VIEWER_FRAME::getCurNickname(), SCH_BASE_FRAME::GetLibPart(), DIALOG_SYMBOL_REMAP::getLibsNotInGlobalSymbolLibTable(), KICAD_MANAGER_FRAME::GetProjectFileName(), LIB_VIEW_FRAME::GetSelectedSymbol(), FP_THREAD_IFACE::GetTable(), PCB_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::importFile(), SCH_EDITOR_CONTROL::ImportFPAssignments(), FOOTPRINT_EDIT_FRAME::initLibraryTree(), LIB_EDIT_FRAME::KiwayMailIn(), EDA_DRAW_FRAME::LibraryFileBrowser(), LIB_EDIT_FRAME::LoadComponentFromCurrentLib(), CVPCB_MAINFRAME::LoadFootprintFiles(), DIALOG_SPICE_MODEL::loadLibrary(), LIB_EDIT_FRAME::LoadOneSymbol(), KICAD_MANAGER_FRAME::LoadProject(), SCH_EDIT_FRAME::LoadProject(), SCH_EDIT_FRAME::LoadProjectFile(), CVPCB_MAINFRAME::LoadProjectFile(), PCB_EDIT_FRAME::LoadProjectSettings(), SCH_EDIT_FRAME::LoadSheetFromFile(), DIALOG_FOOTPRINT_FP_EDITOR::On3DModelCellChanged(), DIALOG_FOOTPRINT_BOARD_EDITOR::On3DModelCellChanged(), FOOTPRINT_VIEWER_FRAME::OnActivate(), DIALOG_FOOTPRINT_FP_EDITOR::OnAdd3DModel(), DIALOG_FOOTPRINT_BOARD_EDITOR::OnAdd3DModel(), KICAD_MANAGER_FRAME::OnBrowseInFileExplorer(), DIALOG_EDIT_COMPONENTS_LIBID::onClickOrphansButton(), SCH_EDIT_FRAME::OnCloseWindow(), DIALOG_GENDRILL::OnGenReportFile(), SCH_EDIT_FRAME::OnImportProject(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), SCH_EDIT_FRAME::OnOpenCvpcb(), KICAD_MANAGER_FRAME::OnOpenFileInTextEditor(), DIALOG_NETLIST::OnOpenNetlistClick(), SCH_EDIT_FRAME::OnOpenPcbnew(), DIALOG_EXPORT_SVG::OnOutputDirectoryBrowseClicked(), DIALOG_PLOT::OnOutputDirectoryBrowseClicked(), DIALOG_PLOT_SCHEMATIC::OnOutputDirectoryBrowseClicked(), DIALOG_GEN_FOOTPRINT_POSITION::OnOutputDirectoryBrowseClicked(), DIALOG_GENDRILL::OnOutputDirectoryBrowseClicked(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), DIALOG_BOM::OnRunGenerator(), FOOTPRINT_EDIT_FRAME::OnSaveFootprintAsPng(), DIALOG_ERC::OnSaveReport(), DIALOG_DRC::OnSaveReport(), DIALOG_SPICE_MODEL::onSelectLibrary(), LIB_VIEW_FRAME::OnSelectSymbol(), KICAD_MANAGER_FRAME::OnUnarchiveFiles(), SCH_EDIT_FRAME::OnUpdatePCB(), SCH_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::OpenProjectFiles(), PANEL_PREV_3D::PANEL_PREV_3D(), SCH_EDITOR_CONTROL::Paste(), MODULE_EDITOR_TOOLS::PasteFootprint(), PCB_BASE_EDIT_FRAME::PCB_BASE_EDIT_FRAME(), SCH_DRAWING_TOOLS::PlaceComponent(), DIALOG_CHOOSE_COMPONENT::PopulateFootprintSelector(), SCH_EDIT_FRAME::Print(), SCH_EDIT_FRAME::PrintPage(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), PCB_EDIT_FRAME::RecreateCmpFileFromBoard(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), LIB_VIEW_FRAME::ReCreateListCmp(), LIB_VIEW_FRAME::ReCreateListLib(), EDA_3D_VIEWER::ReloadRequest(), DIALOG_SYMBOL_REMAP::remapSymbolToLibTable(), SCH_EDIT_FRAME::RescueLegacyProject(), SCH_EDIT_FRAME::RescueSymbolLibTableProject(), FOOTPRINT_EDIT_FRAME::restoreLastFootprint(), FOOTPRINT_EDIT_FRAME::retainLastFootprint(), SCH_EDIT_FRAME::SaveEEFile(), FOOTPRINT_EDIT_FRAME::SaveFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), FOOTPRINT_EDIT_FRAME::SaveFootprintInLibrary(), LIB_EDIT_FRAME::saveLibrary(), LIB_EDIT_FRAME::SaveOneSymbol(), LIB_EDIT_FRAME::savePartAs(), SCH_EDIT_FRAME::SaveProject(), CVPCB_MAINFRAME::SaveProjectFile(), SCH_EDIT_FRAME::SaveProjectSettings(), PCB_EDIT_FRAME::SaveProjectSettings(), DIALOG_BOARD_STATISTICS::saveReportClicked(), SCH_BASE_FRAME::saveSymbolLibTables(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), SCH_BASE_FRAME::SelectCompFromLibTree(), PCB_BASE_FRAME::SelectLibrary(), LIB_EDIT_FRAME::SelectLibraryFromList(), LIB_EDIT_FRAME::selectSymLibTable(), FOOTPRINT_VIEWER_FRAME::setCurFootprintName(), LIB_EDIT_FRAME::SetCurLib(), FOOTPRINT_VIEWER_FRAME::setCurNickname(), LIB_EDIT_FRAME::SetCurPart(), KICAD_MANAGER_FRAME::SetProjectFileName(), EE_INSPECTION_TOOL::ShowDatasheet(), DIALOG_CHOOSE_COMPONENT::ShowFootprintFor(), LIB_VIEW_FRAME::ShowModal(), FOOTPRINT_VIEWER_FRAME::ShowModal(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), LIB_MANAGER::symTable(), SYMBOL_TREE_SYNCHRONIZING_ADAPTER::Sync(), FOOTPRINT_EDIT_FRAME::SyncLibraryTree(), EDA_3D_VIEWER::takeScreenshot(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::TransferDataFromWindow(), NETLIST_DIALOG::TransferDataFromWindow(), DIALOG_FOOTPRINT_FP_EDITOR::TransferDataToWindow(), DIALOG_FOOTPRINT_BOARD_EDITOR::TransferDataToWindow(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::UpdateFieldsFromLibrary(), SIM_PLOT_FRAME::updateNetlistExporter(), SCH_SCREEN::UpdateSymbolLinks(), FOOTPRINT_VIEWER_FRAME::UpdateTitle(), FOOTPRINT_EDIT_FRAME::updateTitle(), SCH_EDIT_FRAME::UpdateTitle(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::Validate(), SCH_EDIT_FRAME::WriteNetListFile(), DIALOG_FOOTPRINT_BOARD_EDITOR::~DIALOG_FOOTPRINT_BOARD_EDITOR(), DIALOG_FOOTPRINT_FP_EDITOR::~DIALOG_FOOTPRINT_FP_EDITOR(), and PCB_BASE_EDIT_FRAME::~PCB_BASE_EDIT_FRAME().

◆ ResetSize()

void DIALOG_SHIM::ResetSize ( )
protectedinherited

Clear the existing dialog size and position.

This will cause the dialog size to be clear so the next time the dialog is shown the sizers will layout the dialog accordingly. This useful when there are dialog windows that size changes due to layout dependency hidden controls.

Definition at line 237 of file dialog_shim.cpp.

238 {
239  const char* hash_key;
240 
241  if( m_hash_key.size() )
242  {
243  // a special case like EDA_LIST_DIALOG, which has multiple uses.
244  hash_key = m_hash_key.c_str();
245  }
246  else
247  {
248  hash_key = typeid(*this).name();
249  }
250 
251  RECT_MAP::iterator it = class_map.find( hash_key );
252 
253  if( it == class_map.end() )
254  return;
255 
256  EDA_RECT rect = it->second;
257  rect.SetSize( 0, 0 );
258  class_map[ hash_key ] = rect;
259 }
std::string m_hash_key
Definition: dialog_shim.h:197
static RECT_MAP class_map
void SetSize(const wxSize &size)
Definition: eda_rect.h:144
EDA_RECT handles the component boundary box.
Definition: eda_rect.h:44

References class_map, DIALOG_SHIM::m_hash_key, and EDA_RECT::SetSize().

Referenced by DIALOG_EDIT_COMPONENT_IN_LIBRARY::DIALOG_EDIT_COMPONENT_IN_LIBRARY().

◆ SetInitialFocus()

void DIALOG_SHIM::SetInitialFocus ( wxWindow *  aWindow)
inlineinherited

Sets the window (usually a wxTextCtrl) that should be focused when the dialog is shown.

Definition at line 115 of file dialog_shim.h.

116  {
117  m_initialFocusTarget = aWindow;
118  }
wxWindow * m_initialFocusTarget
Definition: dialog_shim.h:203

References DIALOG_SHIM::m_initialFocusTarget.

Referenced by DIALOG_BOM::DIALOG_BOM(), DIALOG_CHOOSE_COMPONENT::DIALOG_CHOOSE_COMPONENT(), DIALOG_CHOOSE_FOOTPRINT::DIALOG_CHOOSE_FOOTPRINT(), DIALOG_CONFIGURE_PATHS::DIALOG_CONFIGURE_PATHS(), DIALOG_EDIT_LINE_STYLE::DIALOG_EDIT_LINE_STYLE(), DIALOG_EDIT_SHEET_PIN::DIALOG_EDIT_SHEET_PIN(), DIALOG_FIELDS_EDITOR_GLOBAL::DIALOG_FIELDS_EDITOR_GLOBAL(), DIALOG_FIND::DIALOG_FIND(), DIALOG_FOOTPRINT_BOARD_EDITOR::DIALOG_FOOTPRINT_BOARD_EDITOR(), DIALOG_FOOTPRINT_FP_EDITOR::DIALOG_FOOTPRINT_FP_EDITOR(), DIALOG_FP_PLUGIN_OPTIONS::DIALOG_FP_PLUGIN_OPTIONS(), DIALOG_GRAPHIC_ITEM_PROPERTIES::DIALOG_GRAPHIC_ITEM_PROPERTIES(), DIALOG_IMPORT_GFX::DIALOG_IMPORT_GFX(), DIALOG_LABEL_EDITOR::DIALOG_LABEL_EDITOR(), DIALOG_LIB_EDIT_DRAW_ITEM::DIALOG_LIB_EDIT_DRAW_ITEM(), DIALOG_LIB_EDIT_PIN::DIALOG_LIB_EDIT_PIN(), DIALOG_LIB_EDIT_TEXT::DIALOG_LIB_EDIT_TEXT(), DIALOG_PAD_PRIMITIVES_PROPERTIES::DIALOG_PAD_PRIMITIVES_PROPERTIES(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_POSITION_RELATIVE::DIALOG_POSITION_RELATIVE(), DIALOG_SCH_FIND::DIALOG_SCH_FIND(), DIALOG_SET_GRID::DIALOG_SET_GRID(), DIALOG_TARGET_PROPERTIES::DIALOG_TARGET_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), DIALOG_EDIT_ONE_FIELD::init(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchAllClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchIDClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchRefClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchSelectedClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchValueClicked(), PANEL_FP_LIB_TABLE::PANEL_FP_LIB_TABLE(), PANEL_SYM_LIB_TABLE::PANEL_SYM_LIB_TABLE(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), LIB_EDIT_FRAME::savePartAs(), DIALOG_NON_COPPER_ZONES_EDITOR::TransferDataToWindow(), DIALOG_KEEPOUT_AREA_PROPERTIES::TransferDataToWindow(), and DIALOG_COPPER_ZONE::TransferDataToWindow().

◆ SetKiway()

void KIWAY_HOLDER::SetKiway ( wxWindow *  aDest,
KIWAY aKiway 
)
inherited

Function SetKiway.

Parameters
aDestis the recipient of aKiway pointer. It is only used for debugging, since "this" is not a wxWindow*. "this" is a KIWAY_HOLDER mix-in.
aKiwayis often from a parent window, or from KIFACE::CreateWindow().

Definition at line 42 of file kiway_holder.cpp.

43 {
44 #if defined(DEBUG)
45  // offer a trap point for debugging most any window
46  wxASSERT( aDest );
47  if( !strcmp( typeid(aDest).name(), "DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB" ) )
48  {
49  int breakhere=1;
50  (void) breakhere;
51  }
52 #endif
53 
54  (void) aDest;
55 
56  m_kiway = aKiway;
57 }
KIWAY * m_kiway
Definition: kiway_holder.h:81
const char * name
Definition: DXF_plotter.cpp:60

References KIWAY_HOLDER::m_kiway, and name.

Referenced by BM2CMP_FRAME::BM2CMP_FRAME(), InvokePcbLibTableEditor(), PCB_CALCULATOR_FRAME::PCB_CALCULATOR_FRAME(), and SIM_PLOT_FRAME::SIM_PLOT_FRAME().

◆ SetSizeInDU()

void DIALOG_SHIM::SetSizeInDU ( int  x,
int  y 
)
protectedinherited

Set the dialog to the given dimensions in "dialog units".

These are units equivalent to 4* the average character width and 8* the average character height, allowing a dialog to be sized in a way that scales it with the system font.

Definition at line 151 of file dialog_shim.cpp.

152 {
153  wxSize sz( x, y );
154  SetSize( ConvertDialogToPixels( sz ) );
155 }

Referenced by DIALOG_RESCUE_EACH::DIALOG_RESCUE_EACH(), HTML_MESSAGE_BOX::HTML_MESSAGE_BOX(), and HTML_MESSAGE_BOX::SetDialogSizeInDU().

◆ Show()

bool DIALOG_SHIM::Show ( bool  show)
overrideinherited

Definition at line 178 of file dialog_shim.cpp.

179 {
180  bool ret;
181  const char* hash_key;
182 
183  if( m_hash_key.size() )
184  {
185  // a special case like EDA_LIST_DIALOG, which has multiple uses.
186  hash_key = m_hash_key.c_str();
187  }
188  else
189  {
190  hash_key = typeid(*this).name();
191  }
192 
193  // Show or hide the window. If hiding, save current position and size.
194  // If showing, use previous position and size.
195  if( show )
196  {
197 #ifndef __WINDOWS__
198  wxDialog::Raise(); // Needed on OS X and some other window managers (i.e. Unity)
199 #endif
200  ret = wxDialog::Show( show );
201 
202  // classname is key, returns a zeroed out default EDA_RECT if none existed before.
203  EDA_RECT savedDialogRect = class_map[ hash_key ];
204 
205  if( savedDialogRect.GetSize().x != 0 && savedDialogRect.GetSize().y != 0 )
206  {
207  SetSize( savedDialogRect.GetPosition().x,
208  savedDialogRect.GetPosition().y,
209  std::max( wxDialog::GetSize().x, savedDialogRect.GetSize().x ),
210  std::max( wxDialog::GetSize().y, savedDialogRect.GetSize().y ),
211  0 );
212  }
213 
214  // Be sure that the dialog appears in a visible area
215  // (the dialog position might have been stored at the time when it was
216  // shown on another display)
217  if( wxDisplay::GetFromWindow( this ) == wxNOT_FOUND )
218  Centre();
219  }
220  else
221  {
222  // Save the dialog's position & size before hiding, using classname as key
223  class_map[ hash_key ] = EDA_RECT( wxDialog::GetPosition(), wxDialog::GetSize() );
224 
225 #ifdef __WXMAC__
226  if ( m_eventLoop )
227  m_eventLoop->Exit( GetReturnCode() ); // Needed for APP-MODAL dlgs on OSX
228 #endif
229 
230  ret = wxDialog::Show( show );
231  }
232 
233  return ret;
234 }
std::string m_hash_key
Definition: dialog_shim.h:197
static RECT_MAP class_map
const wxPoint GetPosition() const
Definition: eda_rect.h:115
EDA_RECT handles the component boundary box.
Definition: eda_rect.h:44
const wxSize GetSize() const
Definition: eda_rect.h:103

References class_map, EDA_RECT::GetPosition(), EDA_RECT::GetSize(), DIALOG_SHIM::m_hash_key, wxPoint::x, and wxPoint::y.

Referenced by DIALOG_SHIM::EndQuasiModal(), InvokeDialogERC(), SCH_EDIT_FRAME::OnAnnotate(), DIALOG_DRC::OnDRCItemDClick(), DIALOG_ERC::OnERCItemDClick(), DIALOG_CLEANUP_TRACKS_AND_VIAS::OnLeftDClickItem(), POSITION_RELATIVE_TOOL::PositionRelative(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), DRC::ShowDRCDialog(), SCH_EDIT_FRAME::ShowFindReplaceDialog(), DIALOG_SHIM::ShowQuasiModal(), DIALOG_POSITION_RELATIVE::UpdateAnchor(), and SCH_EDIT_FRAME::UpdateHierarchyNavigator().

◆ ShowQuasiModal()

int DIALOG_SHIM::ShowQuasiModal ( )
inherited

Definition at line 365 of file dialog_shim.cpp.

366 {
367  // This is an exception safe way to zero a pointer before returning.
368  // Yes, even though DismissModal() clears this first normally, this is
369  // here in case there's an exception before the dialog is dismissed.
370  struct NULLER
371  {
372  void*& m_what;
373  NULLER( void*& aPtr ) : m_what( aPtr ) {}
374  ~NULLER() { m_what = 0; } // indeed, set it to NULL on destruction
375  } clear_this( (void*&) m_qmodal_loop );
376 
377  // release the mouse if it's currently captured as the window having it
378  // will be disabled when this dialog is shown -- but will still keep the
379  // capture making it impossible to do anything in the modal dialog itself
380  wxWindow* win = wxWindow::GetCapture();
381  if( win )
382  win->ReleaseMouse();
383 
384  // Get the optimal parent
385  wxWindow* parent = GetParentForModalDialog( GetParent(), GetWindowStyle() );
386 
387  // Show the optimal parent
388  DBG( if( parent ) printf( "%s: optimal parent: %s\n", __func__, typeid(*parent).name() );)
389 
390  wxASSERT_MSG( !m_qmodal_parent_disabler,
391  wxT( "Caller using ShowQuasiModal() twice on same window?" ) );
392 
393  // quasi-modal: disable only my "optimal" parent
395 
396 #ifdef __WXMAC__
397  // Apple in its infinite wisdom will raise a disabled window before even passing
398  // us the event, so we have no way to stop it. Instead, we must set an order on
399  // the windows so that the quasi-modal will be pushed in front of the disabled
400  // window when it is raised.
401  ReparentQuasiModal();
402 #endif
403  Show( true );
404 
405  m_qmodal_showing = true;
406 
407  WX_EVENT_LOOP event_loop;
408 
409  m_qmodal_loop = &event_loop;
410 
411  event_loop.Run();
412 
413  m_qmodal_showing = false;
414 
415  return GetReturnCode();
416 }
bool m_qmodal_showing
Definition: dialog_shim.h:207
#define WX_EVENT_LOOP
Definition: kiway_player.h:41
WX_EVENT_LOOP * m_qmodal_loop
Definition: dialog_shim.h:205
bool Show(bool show) override
WDO_ENABLE_DISABLE * m_qmodal_parent_disabler
Definition: dialog_shim.h:208
Toggle a window's "enable" status to disabled, then enabled on destruction.
Definition: dialog_shim.cpp:35
#define DBG(x)
Definition: fctsys.h:33

References DBG, DIALOG_SHIM::m_qmodal_loop, DIALOG_SHIM::m_qmodal_parent_disabler, DIALOG_SHIM::m_qmodal_showing, DIALOG_SHIM::Show(), and WX_EVENT_LOOP.

Referenced by PCB_EDIT_FRAME::DoShowBoardSetupDialog(), SCH_EDIT_FRAME::DoShowSchematicSetupDialog(), LIB_EDIT_TOOL::editFieldProperties(), SCH_EDITOR_CONTROL::EditSymbolFields(), LIB_EDIT_TOOL::editSymbolProperties(), GLOBAL_EDIT_TOOL::EditTracksAndVias(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), PCB_EDIT_FRAME::InstallExchangeModuleFrame(), PCB_BASE_FRAME::InstallPadOptionsFrame(), InvokeDialogEditComponentsLibId(), InvokeDialogRescueEach(), InvokeDialogUpdateFields(), SCH_EDIT_FRAME::OnRemapSymbols(), LIB_VIEW_FRAME::OnSelectSymbol(), SCH_EDIT_FRAME::OpenProjectFiles(), SCH_EDIT_TOOL::Properties(), EDIT_TOOL::Properties(), SCH_BASE_FRAME::SelectCompFromLibTree(), and PCB_BASE_FRAME::SelectFootprintFromLibTree().

◆ VertPixelsFromDU()

int DIALOG_SHIM::VertPixelsFromDU ( int  y)
protectedinherited

Convert an integer number of dialog units to pixels, vertically.

See SetSizeInDU or wxDialog documentation for more information.

Definition at line 165 of file dialog_shim.cpp.

166 {
167  wxSize sz( 0, y );
168  return ConvertDialogToPixels( sz ).y;
169 }

Referenced by DIALOG_CHOOSE_COMPONENT::DIALOG_CHOOSE_COMPONENT().

Member Data Documentation

◆ m_bSizerPanelPrimitives

wxBoxSizer* DIALOG_PAD_PROPERTIES_BASE::m_bSizerPanelPrimitives
protected

Definition at line 177 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_buttonAddShape

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_buttonAddShape
protected

◆ m_buttonDel

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_buttonDel
protected

◆ m_buttonDup

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_buttonDup
protected

◆ m_buttonEditShape

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_buttonEditShape
protected

◆ m_buttonGeometry

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_buttonGeometry
protected

◆ m_cbBottomLeft

◆ m_cbBottomRight

◆ m_cbShowPadOutline

◆ m_cbTopLeft

◆ m_cbTopRight

◆ m_choiceFabProperty

◆ m_clearanceCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_clearanceCtrl
protected

◆ m_clearanceLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_clearanceLabel
protected

Definition at line 148 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_clearanceUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_clearanceUnits
protected

Definition at line 150 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_cornerRadiusLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_cornerRadiusLabel
protected

Definition at line 102 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_cornerRadiusUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_cornerRadiusUnits
protected

Definition at line 104 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_firstPaintEvent

bool DIALOG_SHIM::m_firstPaintEvent
protectedinherited

Definition at line 202 of file dialog_shim.h.

Referenced by DIALOG_SHIM::OnPaint().

◆ m_FlippedWarningIcon

wxStaticBitmap* DIALOG_PAD_PROPERTIES_BASE::m_FlippedWarningIcon
protected

◆ m_FlippedWarningSizer

wxBoxSizer* DIALOG_PAD_PROPERTIES_BASE::m_FlippedWarningSizer
protected

◆ m_galOptions

KIGFX::GAL_DISPLAY_OPTIONS DIALOG_PAD_PROPERTIES_BASE::m_galOptions
protected

Definition at line 190 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_hash_key

◆ m_holeShapeCtrl

◆ m_holeShapeLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_holeShapeLabel
protected

◆ m_holeXCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_holeXCtrl
protected

◆ m_holeXLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_holeXLabel
protected

Definition at line 117 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_holeXUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_holeXUnits
protected

Definition at line 119 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_holeYCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_holeYCtrl
protected

◆ m_holeYLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_holeYLabel
protected

Definition at line 120 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_holeYUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_holeYUnits
protected

Definition at line 122 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_initialFocusTarget

wxWindow* DIALOG_SHIM::m_initialFocusTarget
protectedinherited

Definition at line 203 of file dialog_shim.h.

Referenced by DIALOG_SHIM::OnPaint(), and DIALOG_SHIM::SetInitialFocus().

◆ m_listCtrlPrimitives

◆ m_localSettingsPanel

◆ m_maskClearanceCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_maskClearanceCtrl
protected

Definition at line 152 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_maskClearanceLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_maskClearanceLabel
protected

Definition at line 151 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_maskClearanceUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_maskClearanceUnits
protected

Definition at line 153 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_middleBoxSizer

wxBoxSizer* DIALOG_PAD_PROPERTIES_BASE::m_middleBoxSizer
protected

Definition at line 113 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_nonCopperNote

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_nonCopperNote
protected

◆ m_nonCopperWarningBook

wxSimplebook* DIALOG_PAD_PROPERTIES_BASE::m_nonCopperWarningBook
protected

◆ m_nonCopperWarningIcon

wxStaticBitmap* DIALOG_PAD_PROPERTIES_BASE::m_nonCopperWarningIcon
protected

◆ m_nonCopperWarningText

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_nonCopperWarningText
protected

Definition at line 164 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_notebook

wxNotebook* DIALOG_PAD_PROPERTIES_BASE::m_notebook
protected

Definition at line 63 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_offsetXCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_offsetXCtrl
protected

◆ m_offsetXLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_offsetXLabel
protected

Definition at line 88 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_offsetXUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_offsetXUnits
protected

Definition at line 90 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_offsetYCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_offsetYCtrl
protected

◆ m_offsetYLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_offsetYLabel
protected

Definition at line 91 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_offsetYUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_offsetYUnits
protected

Definition at line 93 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_orientation

wxComboBox* DIALOG_PAD_PROPERTIES_BASE::m_orientation
protected

◆ m_PadLayerAdhCmp

◆ m_PadLayerAdhCu

◆ m_PadLayerDraft

◆ m_PadLayerECO1

◆ m_PadLayerECO2

◆ m_PadLayerMaskCmp

◆ m_PadLayerMaskCu

◆ m_PadLayerPateCmp

◆ m_PadLayerPateCu

◆ m_PadLayerSilkCmp

◆ m_PadLayerSilkCu

◆ m_PadNameText

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_PadNameText
protected

◆ m_PadNetSelector

◆ m_PadNumCtrl

◆ m_PadNumText

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_PadNumText
protected

◆ m_PadOrientText

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_PadOrientText
protected

Definition at line 85 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_PadShape

◆ m_padToDieCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_padToDieCtrl
protected

Definition at line 124 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_padToDieLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_padToDieLabel
protected

Definition at line 123 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_padToDieUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_padToDieUnits
protected

Definition at line 125 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_PadType

◆ m_panelCustomShapePrimitives

wxPanel* DIALOG_PAD_PROPERTIES_BASE::m_panelCustomShapePrimitives
protected

Definition at line 176 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_panelGeneral

◆ m_panelShowPad

wxPanel* DIALOG_PAD_PROPERTIES_BASE::m_panelShowPad
protected

◆ m_panelShowPadGal

◆ m_parentInfoLine1

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_parentInfoLine1
protected

◆ m_parentInfoLine2

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_parentInfoLine2
protected

◆ m_pasteClearanceCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_pasteClearanceCtrl
protected

◆ m_pasteClearanceLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_pasteClearanceLabel
protected

Definition at line 154 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_pasteClearanceUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_pasteClearanceUnits
protected

Definition at line 156 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_posXCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_posXCtrl
protected

Definition at line 74 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_posXLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_posXLabel
protected

Definition at line 73 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_posXUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_posXUnits
protected

Definition at line 75 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_posYCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_posYCtrl
protected

Definition at line 77 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_posYLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_posYLabel
protected

Definition at line 76 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_posYUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_posYUnits
protected

Definition at line 78 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_qmodal_loop

WX_EVENT_LOOP* DIALOG_SHIM::m_qmodal_loop
protectedinherited

Definition at line 205 of file dialog_shim.h.

Referenced by DIALOG_SHIM::EndQuasiModal(), and DIALOG_SHIM::ShowQuasiModal().

◆ m_qmodal_parent_disabler

WDO_ENABLE_DISABLE* DIALOG_SHIM::m_qmodal_parent_disabler
protectedinherited

◆ m_qmodal_showing

bool DIALOG_SHIM::m_qmodal_showing
protectedinherited

Definition at line 207 of file dialog_shim.h.

Referenced by DIALOG_SHIM::IsQuasiModal(), and DIALOG_SHIM::ShowQuasiModal().

◆ m_rbCopperLayersSel

◆ m_sbSizerZonesSettings

wxStaticBoxSizer* DIALOG_PAD_PROPERTIES_BASE::m_sbSizerZonesSettings
protected

Definition at line 165 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_sdbSizer

wxStdDialogButtonSizer* DIALOG_PAD_PROPERTIES_BASE::m_sdbSizer
protected

Definition at line 193 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_sdbSizerCancel

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_sdbSizerCancel
protected

◆ m_sdbSizerOK

wxButton* DIALOG_PAD_PROPERTIES_BASE::m_sdbSizerOK
protected

◆ m_sizeXCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_sizeXCtrl
protected

◆ m_sizeXLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_sizeXLabel
protected

Definition at line 79 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_sizeXUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_sizeXUnits
protected

Definition at line 81 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_sizeYCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_sizeYCtrl
protected

◆ m_sizeYLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_sizeYLabel
protected

Definition at line 82 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_sizeYUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_sizeYUnits
protected

Definition at line 84 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_SolderPasteMarginRatioCtrl

TEXT_CTRL_EVAL* DIALOG_PAD_PROPERTIES_BASE::m_SolderPasteMarginRatioCtrl
protected

◆ m_SolderPasteRatioMarginUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_SolderPasteRatioMarginUnits
protected

Definition at line 159 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_spokeWidthCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_spokeWidthCtrl
protected

Definition at line 169 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_spokeWidthLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_spokeWidthLabel
protected

Definition at line 168 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_spokeWidthUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_spokeWidthUnits
protected

Definition at line 170 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticline13

wxStaticLine* DIALOG_PAD_PROPERTIES_BASE::m_staticline13
protected

Definition at line 192 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText40

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText40
protected

Definition at line 166 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText44

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText44
protected

Definition at line 69 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText45

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText45
protected

Definition at line 71 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText491

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText491
protected

Definition at line 87 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText51

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText51
protected

Definition at line 116 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText511

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText511
protected

Definition at line 129 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticText86

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticText86
protected

Definition at line 128 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticTextChamferCorner

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextChamferCorner
protected

Definition at line 108 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticTextChamferRatio

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextChamferRatio
protected

Definition at line 105 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticTextChamferRatioUnit

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextChamferRatioUnit
protected

Definition at line 107 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticTextCornerSizeRatio

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextCornerSizeRatio
protected

◆ m_staticTextCornerSizeRatioUnit

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextCornerSizeRatioUnit
protected

◆ m_staticTextcps

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextcps
protected

◆ m_staticTextFabProperty

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextFabProperty
protected

◆ m_staticTextInfoNegVal

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextInfoNegVal
protected

◆ m_staticTextInfoPaste

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextInfoPaste
protected

◆ m_staticTextInfoPosValue

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextInfoPosValue
protected

◆ m_staticTextPrimitiveListWarning

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextPrimitiveListWarning
protected

Definition at line 179 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticTextPrimitivesList

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextPrimitivesList
protected

Definition at line 178 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_staticTextRatio

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_staticTextRatio
protected

Definition at line 157 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_tabOrder

◆ m_tcChamferRatio

◆ m_tcCornerRadius

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_tcCornerRadius
protected

◆ m_tcCornerSizeRatio

◆ m_techLayersLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_techLayersLabel
protected

◆ m_thermalGapCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_thermalGapCtrl
protected

Definition at line 172 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_thermalGapLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_thermalGapLabel
protected

Definition at line 171 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_thermalGapUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_thermalGapUnits
protected

Definition at line 173 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_trapAxisCtrl

◆ m_trapAxisLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_trapAxisLabel
protected

◆ m_trapDeltaCtrl

wxTextCtrl* DIALOG_PAD_PROPERTIES_BASE::m_trapDeltaCtrl
protected

◆ m_trapDeltaLabel

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_trapDeltaLabel
protected

Definition at line 94 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_trapDeltaUnits

wxStaticText* DIALOG_PAD_PROPERTIES_BASE::m_trapDeltaUnits
protected

Definition at line 96 of file dialog_pad_properties_base.h.

Referenced by DIALOG_PAD_PROPERTIES_BASE().

◆ m_units

◆ m_ZoneConnectionChoice

wxChoice* DIALOG_PAD_PROPERTIES_BASE::m_ZoneConnectionChoice
protected

◆ m_ZoneCustomPadShape

wxChoice* DIALOG_PAD_PROPERTIES_BASE::m_ZoneCustomPadShape
protected

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