KiCad PCB EDA Suite
DIALOG_TRACK_VIA_PROPERTIES Class Reference

#include <dialog_track_via_properties.h>

Inheritance diagram for DIALOG_TRACK_VIA_PROPERTIES:
DIALOG_TRACK_VIA_PROPERTIES_BASE DIALOG_SHIM KIWAY_HOLDER

Public Member Functions

 DIALOG_TRACK_VIA_PROPERTIES (PCB_BASE_FRAME *aParent, const SELECTION &aItems)
 
bool Apply (COMMIT &aCommit)
 

Applies values from the dialog to the selected items.

More...
 
int ShowQuasiModal ()
 
void EndQuasiModal (int retCode)
 
bool IsQuasiModal ()
 
bool Show (bool show) override
 
bool Enable (bool enable) override
 
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...
 

Protected Member Functions

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 FixOSXCancelButtonIssue ()
 A ugly hack to fix an issue on OSX: when typing ctrl+c in a wxTextCtrl inside a dialog, it is closed instead of copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer, when the dlg is created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority to copy text standard accelerator, and the dlg is closed when trying to copy text this function do nothing on other platforms. More...
 

Protected Attributes

wxBoxSizer * m_MainSizer
 
wxStaticBoxSizer * m_sbCommonSizer
 
wxStaticText * m_staticText24
 
WIDGET_NET_SELECTORm_NetComboBox
 
wxStaticLine * m_staticline3
 
wxCheckBox * m_lockedCbox
 
wxStaticBoxSizer * m_sbTrackSizer
 
wxStaticText * m_TrackStartXLabel
 
wxTextCtrl * m_TrackStartXCtrl
 
wxStaticText * m_TrackStartXUnit
 
wxStaticText * m_TrackStartYLabel
 
wxTextCtrl * m_TrackStartYCtrl
 
wxStaticText * m_TrackStartYUnit
 
wxStaticText * m_TrackEndXLabel
 
wxTextCtrl * m_TrackEndXCtrl
 
wxStaticText * m_TrackEndXUnit
 
wxStaticText * m_TrackEndYLabel
 
wxTextCtrl * m_TrackEndYCtrl
 
wxStaticText * m_TrackEndYUnit
 
wxStaticLine * m_trackStaticLine
 
wxStaticText * m_TrackWidthLabel
 
wxComboBox * m_TrackWidthCtrl
 
wxStaticText * m_TrackWidthUnit
 
wxCheckBox * m_trackNetclass
 
wxStaticText * m_TrackLayerLabel
 
PCB_LAYER_BOX_SELECTORm_TrackLayerCtrl
 
wxStaticBoxSizer * m_sbViaSizer
 
wxStaticText * m_ViaXLabel
 
wxTextCtrl * m_ViaXCtrl
 
wxStaticText * m_ViaXUnit
 
wxStaticText * m_ViaYLabel
 
wxTextCtrl * m_ViaYCtrl
 
wxStaticText * m_ViaYUnit
 
wxStaticLine * m_viaStaticLine
 
wxStaticText * m_DesignRuleVias
 
wxChoice * m_DesignRuleViasCtrl
 
wxStaticText * m_DesignRuleViasUnit
 
wxStaticText * m_ViaDiameterLabel
 
wxTextCtrl * m_ViaDiameterCtrl
 
wxStaticText * m_ViaDiameterUnit
 
wxStaticText * m_ViaDrillLabel
 
wxTextCtrl * m_ViaDrillCtrl
 
wxStaticText * m_ViaDrillUnit
 
wxStaticText * m_ViaTypeLabel
 
wxChoice * m_ViaTypeChoice
 
wxStaticText * m_ViaStartLayerLabel
 
PCB_LAYER_BOX_SELECTORm_ViaStartLayer
 
wxStaticText * m_ViaEndLayerLabel1
 
PCB_LAYER_BOX_SELECTORm_ViaEndLayer
 
wxCheckBox * m_viaNetclass
 
wxStdDialogButtonSizer * m_StdButtons
 
wxButton * m_StdButtonsOK
 
wxButton * m_StdButtonsCancel
 
std::string m_hash_key
 
EVENT_LOOPm_qmodal_loop
 
bool m_qmodal_showing
 
WDO_ENABLE_DISABLEm_qmodal_parent_disabler
 

Private Member Functions

void onClose (wxCloseEvent &aEvent) override
 
void onTrackNetclassCheck (wxCommandEvent &aEvent) override
 
void onViaNetclassCheck (wxCommandEvent &aEvent) override
 
void onCancelClick (wxCommandEvent &aEvent) override
 
void onOkClick (wxCommandEvent &aEvent) override
 
void onViaSelect (wxCommandEvent &aEvent)
 
void onViaEdit (wxCommandEvent &aEvent)
 
void OnInitDlg (wxInitDialogEvent &event) override
 
bool check () const
 

Checks if the dialog values are correct.

More...
 
template<typename T >
void setCommonVal (const OPT< T > &aVal, wxTextEntry *aTxtEntry, UNIT_BINDER &aBinder)
 

Sets wxTextEntry to the value stored in OPT<T> or "<...>" if it is not available.

More...
 

Private Attributes

const SELECTIONm_items
 

Selected items to be modified.

More...
 
UNIT_BINDER m_trackStartX
 
UNIT_BINDER m_trackStartY
 
UNIT_BINDER m_trackEndX
 
UNIT_BINDER m_trackEndY
 
UNIT_BINDER m_trackWidth
 
UNIT_BINDER m_viaX
 
UNIT_BINDER m_viaY
 
UNIT_BINDER m_viaDiameter
 
UNIT_BINDER m_viaDrill
 
bool m_tracks
 

Flag that determines if the dialog displays track properties.

More...
 
bool m_vias
 

Flag that determines if the dialog displays via properties.

More...
 
bool m_haveUniqueNet
 

Fixme

More...
 

Detailed Description

Definition at line 35 of file dialog_track_via_properties.h.

Constructor & Destructor Documentation

DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES ( PCB_BASE_FRAME aParent,
const SELECTION aItems 
)

Definition at line 36 of file dialog_track_via_properties.cpp.

References LSET::AllNonCuMask(), SELECTION::Empty(), g_UserUnit, GetAbbreviatedUnitsLabel(), PCB_BASE_FRAME::GetBoard(), PCB_BASE_FRAME::GetDesignSettings(), VIA::GetDrillValue(), TRACK::GetEnd(), BOARD_ITEM::GetLayer(), VIA::GetPosition(), TRACK::GetStart(), TRACK::GetWidth(), TRACK::IsLocked(), DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasUnit, VIA_DIMENSION::m_Diameter, VIA_DIMENSION::m_Drill, m_haveUniqueNet, m_items, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_lockedCbox, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_MainSizer, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_NetComboBox, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_sbTrackSizer, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_sbViaSizer, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_StdButtonsOK, m_trackEndX, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndXCtrl, m_trackEndY, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndYCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackLayerCtrl, m_tracks, m_trackStartX, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartXCtrl, m_trackStartY, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartYCtrl, m_trackWidth, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthCtrl, BOARD_DESIGN_SETTINGS::m_TrackWidthList, m_viaDiameter, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterCtrl, m_viaDrill, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillCtrl, m_vias, BOARD_DESIGN_SETTINGS::m_ViasDimensionsList, m_viaX, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaXCtrl, m_viaY, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaYCtrl, NULLOPT, onOkClick(), onViaEdit(), onViaSelect(), PCB_TRACE_T, PCB_VIA_T, PCB_LAYER_BOX_SELECTOR::Resync(), WIDGET_NET_SELECTOR::SetBoard(), PCB_LAYER_BOX_SELECTOR::SetBoardFrame(), setCommonVal(), LAYER_BOX_SELECTOR::SetLayerSelection(), PCB_LAYER_BOX_SELECTOR::SetLayerSet(), LAYER_SELECTOR::SetLayersHotkeys(), WIDGET_NET_SELECTOR::SetMultiple(), WIDGET_NET_SELECTOR::SetSelectedNet(), StringFromValue(), wxPoint::x, and wxPoint::y.

36  :
37  DIALOG_TRACK_VIA_PROPERTIES_BASE( aParent ), m_items( aItems ),
43  m_viaX( aParent, m_ViaXCtrl, m_ViaXUnit ), m_viaY( aParent, m_ViaYCtrl, m_ViaYUnit ),
46  m_tracks( false ), m_vias( false )
47 {
48  wxASSERT( !m_items.Empty() );
49 
50  // This is a way to trick gcc into considering these variables as initialized
51  OPT<int> trackStartX = NULLOPT;
52  OPT<int> trackStartY = NULLOPT;
53  OPT<int> trackEndX = NULLOPT;
54  OPT<int> trackEndY = NULLOPT;
55  OPT<int> trackWidth = NULLOPT;
56  OPT<PCB_LAYER_ID> trackLayer = NULLOPT;
57  OPT<int> viaX = NULLOPT;
58  OPT<int> viaY = NULLOPT;
59  OPT<int> viaDiameter = NULLOPT;
60  OPT<int> viaDrill = NULLOPT;
61 
62  m_haveUniqueNet = true;
63  int prevNet = -1;
64 
65  m_NetComboBox->SetBoard( aParent->GetBoard() );
66  m_NetComboBox->Enable( true );
67 
68  bool hasLocked = false;
69  bool hasUnlocked = false;
70 
71  for( auto& item : m_items )
72  {
73  int net = static_cast<BOARD_CONNECTED_ITEM*>(item)->GetNetCode();
74 
75  if( prevNet >= 0 && net != prevNet )
76  {
77  printf("prev %d net %d\n", net, prevNet );
78  m_haveUniqueNet = false;
79  break;
80  }
81 
82  prevNet = net;
83  }
84 
85  if ( m_haveUniqueNet )
86  {
87  m_NetComboBox->SetSelectedNet( prevNet );
88  }
89  else
90  {
91  m_NetComboBox->SetMultiple( true );
92  }
93 
94  // Look for values that are common for every item that is selected
95  for( auto& item : m_items )
96  {
97  switch( item->Type() )
98  {
99  case PCB_TRACE_T:
100  {
101  const TRACK* t = static_cast<const TRACK*>( item );
102 
103  if( !m_tracks ) // first track in the list
104  {
105  trackStartX = t->GetStart().x;
106  trackStartY = t->GetStart().y;
107  trackEndX = t->GetEnd().x;
108  trackEndY = t->GetEnd().y;
109  trackWidth = t->GetWidth();
110  trackLayer = t->GetLayer();
111  m_tracks = true;
112  }
113  else // check if values are the same for every selected track
114  {
115  if( trackStartX && ( *trackStartX != t->GetStart().x ) )
116  trackStartX = NULLOPT;
117 
118  if( trackStartY && ( *trackStartY != t->GetStart().y ) )
119  trackStartY = NULLOPT;
120 
121  if( trackEndX && ( *trackEndX != t->GetEnd().x ) )
122  trackEndX = NULLOPT;
123 
124  if( trackEndY && ( *trackEndY != t->GetEnd().y ) )
125  trackEndY = NULLOPT;
126 
127  if( trackWidth && ( *trackWidth != t->GetWidth() ) )
128  trackWidth = NULLOPT;
129 
130  if( trackLayer && ( *trackLayer != t->GetLayer() ) )
131  trackLayer = NULLOPT;
132  }
133 
134  if( t->IsLocked() )
135  hasLocked = true;
136  else
137  hasUnlocked = true;
138 
139  break;
140  }
141 
142  case PCB_VIA_T:
143  {
144  const VIA* v = static_cast<const VIA*>( item );
145 
146  if( !m_vias ) // first via in the list
147  {
148  viaX = v->GetPosition().x;
149  viaY = v->GetPosition().y;
150  viaDiameter = v->GetWidth();
151  viaDrill = v->GetDrillValue();
152  m_vias = true;
153  }
154  else // check if values are the same for every selected via
155  {
156  if( viaX && ( *viaX != v->GetPosition().x ) )
157  viaX = NULLOPT;
158 
159  if( viaY && ( *viaY != v->GetPosition().y ) )
160  viaY = NULLOPT;
161 
162  if( viaDiameter && ( *viaDiameter != v->GetWidth() ) )
163  viaDiameter = NULLOPT;
164 
165  if( viaDrill && ( *viaDrill != v->GetDrillValue() ) )
166  viaDrill = NULLOPT;
167  }
168 
169  if( v->IsLocked() )
170  hasLocked = true;
171  else
172  hasUnlocked = true;
173 
174  break;
175  }
176 
177  default:
178  wxASSERT( false );
179  break;
180  }
181  }
182 
183  wxASSERT( m_tracks || m_vias );
184 
185  if( m_vias )
186  {
187  setCommonVal( viaX, m_ViaXCtrl, m_viaX );
188  setCommonVal( viaY, m_ViaYCtrl, m_viaY );
190  setCommonVal( viaDrill, m_ViaDrillCtrl, m_viaDrill );
192 
193  int viaSelection = wxNOT_FOUND;
194 
195  for( unsigned ii = 0; ii < aParent->GetDesignSettings().m_ViasDimensionsList.size(); ii++ )
196  {
197  VIA_DIMENSION* viaDimension = &aParent->GetDesignSettings().m_ViasDimensionsList[ii];
198  wxString msg = StringFromValue( g_UserUnit, viaDimension->m_Diameter, false )
199  + " / " + StringFromValue( g_UserUnit, viaDimension->m_Drill, false );
200  m_DesignRuleViasCtrl->Append( msg, viaDimension );
201 
202  if( viaSelection == wxNOT_FOUND && viaDiameter == viaDimension->m_Diameter
203  && viaDrill == viaDimension->m_Drill )
204  {
205  viaSelection = ii;
206  }
207  }
208 
209  m_DesignRuleViasCtrl->SetSelection( viaSelection );
210 
211  m_DesignRuleViasCtrl->Connect( wxEVT_CHOICE, wxCommandEventHandler( DIALOG_TRACK_VIA_PROPERTIES::onViaSelect ), NULL, this );
212  m_ViaDiameterCtrl->Connect( wxEVT_TEXT, wxCommandEventHandler( DIALOG_TRACK_VIA_PROPERTIES::onViaEdit ), NULL, this );
213  m_ViaDrillCtrl->Connect( wxEVT_TEXT, wxCommandEventHandler( DIALOG_TRACK_VIA_PROPERTIES::onViaEdit ), NULL, this );
214 
215  m_ViaDiameterCtrl->SetFocus();
216  }
217  else
218  {
219  m_MainSizer->Hide( m_sbViaSizer, true );
220  }
221 
222  if( m_tracks )
223  {
229 
230  for( unsigned ii = 0; ii < aParent->GetDesignSettings().m_TrackWidthList.size(); ii++ )
231  {
232  int width = aParent->GetDesignSettings().m_TrackWidthList[ii];
233  wxString msg = StringFromValue( g_UserUnit, width, false );
234  m_TrackWidthCtrl->Append( msg );
235  }
236 
239  m_TrackLayerCtrl->SetBoardFrame( aParent );
241 
242  if( trackLayer )
243  m_TrackLayerCtrl->SetLayerSelection( *trackLayer );
244 
245  m_TrackWidthCtrl->SetFocus();
246  }
247  else
248  {
249  m_MainSizer->Hide( m_sbTrackSizer, true );
250  }
251 
252  if( hasLocked && hasUnlocked )
253  {
254  m_lockedCbox->Set3StateValue( wxCHK_UNDETERMINED );
255  }
256  else if( hasLocked )
257  {
258  m_lockedCbox->Set3StateValue( wxCHK_CHECKED );
259  }
260  else
261  {
262  m_lockedCbox->Set3StateValue( wxCHK_UNCHECKED );
263  }
264 
265  m_StdButtonsOK->SetDefault();
266 
267  // Pressing ENTER when any of the text input fields is active applies changes
268  Connect( wxEVT_TEXT_ENTER, wxCommandEventHandler( DIALOG_TRACK_VIA_PROPERTIES::onOkClick ),
269  NULL, this );
270 }
bool IsLocked() const override
Function IsLocked.
Definition: class_track.h:138
Struct VIA_DIMENSION is a small helper container to handle a stock of specific vias each with unique ...
bool Empty() const
Checks if there is anything selected.
Definition: selection.h:106
std::vector< int > m_TrackWidthList
Track width list.
virtual PCB_LAYER_ID GetLayer() const
Function GetLayer returns the primary layer this item is on.
const SELECTION & m_items
Selected items to be modified.
bool m_tracks
Flag that determines if the dialog displays track properties.
wxString StringFromValue(EDA_UNITS_T aUnit, int aValue, bool aAddUnitSymbol)
Function StringFromValue returns the string from aValue according to units (inch, mm ...
Definition: base_units.cpp:204
static LSET AllNonCuMask()
Function AllNonCuMask returns a mask holding all layer minus CU layers.
Definition: lset.cpp:669
bool m_vias
Flag that determines if the dialog displays via properties.
BOARD * GetBoard() const
void SetBoardFrame(PCB_BASE_FRAME *aFrame)
Class BOARD_CONNECTED_ITEM is a base class derived from BOARD_ITEM for items that can be connected an...
const wxPoint & GetEnd() const
Definition: class_track.h:120
class TRACK, a track segment (segment on a copper layer)
Definition: typeinfo.h:95
const auto NULLOPT
Definition: optional.h:9
const wxPoint & GetStart() const
Definition: class_track.h:123
wxString GetAbbreviatedUnitsLabel(EDA_UNITS_T aUnit)
Definition: base_units.cpp:484
int SetLayerSelection(LAYER_NUM layer)
virtual BOARD_DESIGN_SETTINGS & GetDesignSettings() const
Function GetDesignSettings returns the BOARD_DESIGN_SETTINGS for the BOARD owned by this frame...
void SetBoard(BOARD *m_board)
bool SetLayersHotkeys(bool value)
void onViaSelect(wxCommandEvent &aEvent)
DIALOG_TRACK_VIA_PROPERTIES_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Track & Via Properties"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(573, 437), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSYSTEM_MENU)
void SetSelectedNet(int aNetcode)
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
void onViaEdit(wxCommandEvent &aEvent)
void onOkClick(wxCommandEvent &aEvent) override
int GetDrillValue() const
Function GetDrillValue "calculates" the drill value for vias (m-Drill if > 0, or default drill value ...
void SetMultiple(bool aMultiple=true)
int GetWidth() const
Definition: class_track.h:117
const wxPoint & GetPosition() const override
Definition: class_track.h:415
void setCommonVal(const OPT< T > &aVal, wxTextEntry *aTxtEntry, UNIT_BINDER &aBinder)
Sets wxTextEntry to the value stored in OPT or "<...>" if it is not available. ...
std::vector< VIA_DIMENSION > m_ViasDimensionsList
Vias size and drill list.
boost::optional< T > OPT
Definition: optional.h:7
class VIA, a via (like a track segment on a copper layer)
Definition: typeinfo.h:96

Member Function Documentation

bool DIALOG_TRACK_VIA_PROPERTIES::Apply ( COMMIT aCommit)

Applies values from the dialog to the selected items.

Definition at line 273 of file dialog_track_via_properties.cpp.

References check(), TRACK::GetEnd(), LAYER_BOX_SELECTOR::GetLayerSelection(), BOARD_CONNECTED_ITEM::GetNetClass(), VIA::GetPosition(), WIDGET_NET_SELECTOR::GetSelectedNet(), TRACK::GetStart(), UNIT_BINDER::GetValue(), VIA::GetViaType(), WIDGET_NET_SELECTOR::IsUniqueNetSelected(), m_items, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_lockedCbox, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_NetComboBox, m_trackEndX, m_trackEndY, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackLayerCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_trackNetclass, m_tracks, m_trackStartX, m_trackStartY, m_trackWidth, m_viaDiameter, m_viaDrill, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_viaNetclass, m_vias, m_viaX, m_viaY, COMMIT::Modify(), PCB_TRACE_T, PCB_VIA_T, VIA::SetDrill(), TRACK::SetEnd(), BOARD_ITEM::SetLayer(), TRACK::SetLocked(), BOARD_CONNECTED_ITEM::SetNetCode(), VIA::SetPosition(), TRACK::SetStart(), TRACK::SetWidth(), UNDEFINED_LAYER, UNIT_BINDER::Valid(), VIA_BLIND_BURIED, VIA_MICROVIA, VIA_THROUGH, wxPoint::x, and wxPoint::y.

Referenced by EDIT_TOOL::Properties().

274 {
275  if( !check() )
276  return false;
277 
278  bool changeLock = m_lockedCbox->Get3StateValue() != wxCHK_UNDETERMINED;
279  bool setLock = m_lockedCbox->Get3StateValue() == wxCHK_CHECKED;
280 
281  for( auto item : m_items )
282  {
283  aCommit.Modify( item );
284 
285  switch( item->Type() )
286  {
287  case PCB_TRACE_T:
288  {
289  wxASSERT( m_tracks );
290  TRACK* t = static_cast<TRACK*>( item );
291 
293  {
294  wxPoint start = t->GetStart();
295 
296  if( m_trackStartX.Valid() )
297  start.x = m_trackStartX.GetValue();
298 
299  if( m_trackStartY.Valid() )
300  start.y = m_trackStartY.GetValue();
301 
302  t->SetStart( start );
303  }
304 
305  if( m_trackEndX.Valid() || m_trackEndY.Valid() )
306  {
307  wxPoint end = t->GetEnd();
308 
309  if( m_trackEndX.Valid() )
310  end.x = m_trackEndX.GetValue();
311 
312  if( m_trackEndY.Valid() )
313  end.y = m_trackEndY.GetValue();
314 
315  t->SetEnd( end );
316  }
317 
318  if( m_trackNetclass->IsChecked() )
319  {
320  t->SetWidth( t->GetNetClass()->GetTrackWidth() );
321  }
322  else if( m_trackWidth.Valid() )
323  {
325  }
326 
328 
329  if( layer != UNDEFINED_LAYER )
330  t->SetLayer( (PCB_LAYER_ID) layer );
331 
332  if( changeLock )
333  t->SetLocked( setLock );
334 
336  {
337  printf("snc %d\n", m_NetComboBox->GetSelectedNet());
339  }
340 
341 
342  break;
343  }
344 
345  case PCB_VIA_T:
346  {
347  wxASSERT( m_vias );
348 
349  VIA* v = static_cast<VIA*>( item );
350 
351  if( m_viaX.Valid() || m_viaY.Valid() )
352  {
353  wxPoint pos = v->GetPosition();
354 
355  if( m_viaX.Valid() )
356  pos.x = m_viaX.GetValue();
357 
358  if( m_viaY.Valid() )
359  pos.y = m_viaY.GetValue();
360 
361  v->SetPosition( pos );
362  }
363 
364  if( m_viaNetclass->IsChecked() )
365  {
366  switch( v->GetViaType() )
367  {
368  default:
369  wxFAIL_MSG("Unhandled via type");
370  // fall through
371 
372  case VIA_THROUGH:
373  case VIA_BLIND_BURIED:
374  v->SetWidth( v->GetNetClass()->GetViaDiameter() );
375  v->SetDrill( v->GetNetClass()->GetViaDrill() );
376  break;
377 
378  case VIA_MICROVIA:
379  v->SetWidth( v->GetNetClass()->GetuViaDiameter() );
380  v->SetDrill( v->GetNetClass()->GetuViaDrill() );
381  break;
382  }
383  }
384  else
385  {
386  if( m_viaDiameter.Valid() )
388 
389  if( m_viaDrill.Valid() )
390  v->SetDrill( m_viaDrill.GetValue() );
391 
392  }
393 
395  {
396  printf("snc %d\n", m_NetComboBox->GetSelectedNet());
398  }
399 
400  if( changeLock )
401  v->SetLocked( setLock );
402 
403  break;
404  }
405 
406  default:
407  wxASSERT( false );
408  break;
409  }
410  }
411 
412  return true;
413 }
COMMIT & Modify(EDA_ITEM *aItem)
Modifies a given item in the model.
Definition: commit.h:103
bool check() const
Checks if the dialog values are correct.
void SetPosition(const wxPoint &aPoint) override
Definition: class_track.h:416
virtual void SetLayer(PCB_LAYER_ID aLayer)
Function SetLayer sets the layer this item is on.
void SetEnd(const wxPoint &aEnd)
Definition: class_track.h:119
const SELECTION & m_items
Selected items to be modified.
bool m_tracks
Flag that determines if the dialog displays track properties.
bool m_vias
Flag that determines if the dialog displays via properties.
virtual int GetValue() const
Function GetValue Returns the current value in Internal Units.
Definition: unit_binder.cpp:64
const wxPoint & GetEnd() const
Definition: class_track.h:120
class TRACK, a track segment (segment on a copper layer)
Definition: typeinfo.h:95
void SetWidth(int aWidth)
Definition: class_track.h:116
bool IsUniqueNetSelected() const
void SetLocked(bool aLocked) override
Function SetLocked modifies 'lock' status for of the item.
Definition: class_track.h:143
PCB_LAYER_ID
A quick note on layer IDs:
VIATYPE_T GetViaType() const
Definition: class_track.h:443
std::shared_ptr< NETCLASS > GetNetClass() const
Function GetNetClass returns the NETCLASS for this item.
const wxPoint & GetStart() const
Definition: class_track.h:123
bool SetNetCode(int aNetCode, bool aNoAssert=false)
Function SetNetCode sets net using a net code.
int LAYER_NUM
Type LAYER_NUM can be replaced with int and removed.
LAYER_NUM GetLayerSelection() const
void SetDrill(int aDrill)
Function SetDrill sets the drill value for vias.
Definition: class_track.h:451
const wxPoint & GetPosition() const override
Definition: class_track.h:415
void SetStart(const wxPoint &aStart)
Definition: class_track.h:122
class VIA, a via (like a track segment on a copper layer)
Definition: typeinfo.h:96
bool Valid() const
Function Valid Returns true if the text control contains a real number.
Definition: unit_binder.cpp:72
bool DIALOG_TRACK_VIA_PROPERTIES::check ( ) const
private

Checks if the dialog values are correct.

Definition at line 481 of file dialog_track_via_properties.cpp.

References DisplayError(), UNIT_BINDER::GetValue(), DIALOG_TRACK_VIA_PROPERTIES_BASE::m_trackNetclass, m_tracks, m_trackWidth, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthCtrl, m_viaDiameter, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterCtrl, m_viaDrill, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillCtrl, m_vias, and UNIT_BINDER::Valid().

Referenced by Apply(), and onOkClick().

482 {
483  bool trackNetclass = m_trackNetclass->IsChecked();
484  bool viaNetclass = m_trackNetclass->IsChecked();
485 
486  if( m_tracks && !trackNetclass && m_trackWidth.Valid() && m_trackWidth.GetValue() <= 0 )
487  {
488  DisplayError( GetParent(), _( "Invalid track width" ) );
489  m_TrackWidthCtrl->SetFocus();
490  return false;
491  }
492 
493  if( m_vias && !viaNetclass )
494  {
495  if( m_viaDiameter.Valid() && m_viaDiameter.GetValue() <= 0 )
496  {
497  DisplayError( GetParent(), _( "Invalid via diameter" ) );
498  m_ViaDiameterCtrl->SetFocus();
499  return false;
500  }
501 
502  if( m_viaDrill.Valid() && m_viaDrill.GetValue() <= 0 )
503  {
504  DisplayError( GetParent(), _( "Invalid via drill size" ) );
505  m_ViaDrillCtrl->SetFocus();
506  return false;
507  }
508 
510  {
511  DisplayError( GetParent(), _( "Via drill size has to be smaller than via diameter" ) );
512  m_ViaDrillCtrl->SetFocus();
513  return false;
514  }
515  }
516 
517  return true;
518 }
bool m_tracks
Flag that determines if the dialog displays track properties.
bool m_vias
Flag that determines if the dialog displays via properties.
virtual int GetValue() const
Function GetValue Returns the current value in Internal Units.
Definition: unit_binder.cpp:64
bool Valid() const
Function Valid Returns true if the text control contains a real number.
Definition: unit_binder.cpp:72
void DisplayError(wxWindow *parent, const wxString &text, int displaytime)
Function DisplayError displays an error or warning message box with aMessage.
Definition: confirm.cpp:73
bool DIALOG_SHIM::Enable ( bool  enable)
overrideinherited

Definition at line 184 of file dialog_shim.cpp.

Referenced by DIALOG_PRINT_USING_PRINTER::InitValues().

185 {
186  // so we can do logging of this state change:
187 
188 #if defined(DEBUG)
189  const char* type_id = typeid( *this ).name();
190  printf( "wxDialog %s: %s\n", type_id, enable ? "enabled" : "disabled" );
191 #endif
192 
193  return wxDialog::Enable( enable );
194 }
void DIALOG_SHIM::EndQuasiModal ( int  retCode)
inherited

Definition at line 542 of file dialog_shim.cpp.

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

Referenced by HK_PROMPT_DIALOG::EndFlexible(), DIALOG_SHIM::OnButton(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnCancelButtonClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnCancelButtonClick(), DIALOG_EDIT_ONE_FIELD::OnCancelClick(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnCloseDialog(), DIALOG_EDIT_ONE_FIELD::OnCloseDialog(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnCloseDialog(), DIALOG_CHOOSE_COMPONENT::OnCloseTimer(), DIALOG_SHIM::OnCloseWindow(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnOKButtonClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnOKButtonClick(), DIALOG_EDIT_ONE_FIELD::OnOkClick(), DIALOG_EXCHANGE_MODULE::OnQuit(), DIALOG_CHOOSE_COMPONENT::OnSchViewDClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::SetInitCmp(), and DIALOG_SHIM::~DIALOG_SHIM().

543 {
544  // Hook up validator and transfer data from controls handling so quasi-modal dialogs
545  // handle validation in the same way as other dialogs.
546  if( ( retCode == wxID_OK ) && ( !Validate() || !TransferDataFromWindow() ) )
547  return;
548 
549  SetReturnCode( retCode );
550 
551  if( !IsQuasiModal() )
552  {
553  wxFAIL_MSG( wxT( "either DIALOG_SHIM::EndQuasiModal called twice or ShowQuasiModal wasn't called" ) );
554  return;
555  }
556 
557  m_qmodal_showing = false;
558 
559  if( m_qmodal_loop )
560  {
561  if( m_qmodal_loop->IsRunning() )
562  m_qmodal_loop->Exit( 0 );
563  else
564  m_qmodal_loop->ScheduleExit( 0 );
565 
566  m_qmodal_loop = NULL;
567  }
568 
571 
572  Show( false );
573 }
bool m_qmodal_showing
Definition: dialog_shim.h:132
EVENT_LOOP * m_qmodal_loop
Definition: dialog_shim.h:131
bool IsQuasiModal()
Definition: dialog_shim.h:93
bool Show(bool show) override
WDO_ENABLE_DISABLE * m_qmodal_parent_disabler
Definition: dialog_shim.h:133
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 104 of file dialog_shim.cpp.

References PCAD2KICAD::Center.

Referenced by COLOR4D_PICKER_DLG::COLOR4D_PICKER_DLG(), DIALOG_BOM::DIALOG_BOM(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_DESIGN_RULES::DIALOG_DESIGN_RULES(), DIALOG_DIMENSION_EDITOR::DIALOG_DIMENSION_EDITOR(), DIALOG_DISPLAY_OPTIONS::DIALOG_DISPLAY_OPTIONS(), DIALOG_DRC_CONTROL::DIALOG_DRC_CONTROL(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::DIALOG_EDIT_COMPONENT_IN_LIBRARY(), DIALOG_EDIT_COMPONENTS_LIBID::DIALOG_EDIT_COMPONENTS_LIBID(), DIALOG_EDIT_LINE_STYLE::DIALOG_EDIT_LINE_STYLE(), DIALOG_EESCHEMA_OPTIONS::DIALOG_EESCHEMA_OPTIONS(), DIALOG_ENUM_PADS::DIALOG_ENUM_PADS(), DIALOG_EXPORT_3DFILE::DIALOG_EXPORT_3DFILE(), DIALOG_EXPORT_IDF3::DIALOG_EXPORT_IDF3(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_FOOTPRINT_WIZARD_LIST::DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_GLOBAL_SYM_LIB_TABLE_CONFIG::DIALOG_GLOBAL_SYM_LIB_TABLE_CONFIG(), 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_TEXT::DIALOG_LIB_EDIT_TEXT(), DIALOG_LIB_NEW_COMPONENT::DIALOG_LIB_NEW_COMPONENT(), DIALOG_LIBEDIT_OPTIONS::DIALOG_LIBEDIT_OPTIONS(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_SCH_EDIT_SHEET_PIN::DIALOG_SCH_EDIT_SHEET_PIN(), DIALOG_SCH_SHEET_PROPS::DIALOG_SCH_SHEET_PROPS(), DIALOG_SELECT_PRETTY_LIB::DIALOG_SELECT_PRETTY_LIB(), DIALOG_TRACK_VIA_SIZE::DIALOG_TRACK_VIA_SIZE(), DIALOG_EDIT_ONE_FIELD::init(), NETLIST_DIALOG::NETLIST_DIALOG(), DIALOG_LIB_EDIT_PIN::OnInitDialog(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnInitDialog(), OnInitDlg(), DIALOG_GRAPHIC_ITEMS_OPTIONS::OnInitDlg(), DialogEditModuleText::OnInitDlg(), DIALOG_SET_GRID::OnInitDlg(), DIALOG_PCB_TEXT_PROPERTIES::OnInitDlg(), DIALOG_PRINT_FOR_MODEDIT::OnInitDlg(), DIALOG_GRAPHIC_ITEM_PROPERTIES::OnInitDlg(), DIALOG_MODULE_MODULE_EDITOR::OnInitDlg(), DIALOG_SIM_SETTINGS::onInitDlg(), DIALOG_SPICE_MODEL::onInitDlg(), DIALOG_MODULE_BOARD_EDITOR::OnInitDlg(), DIALOG_PRINT_USING_PRINTER::OnInitDlg(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnInitDlg(), TARGET_PROPERTIES_DIALOG_EDITOR::TARGET_PROPERTIES_DIALOG_EDITOR(), and DIALOG_SIGNAL_LIST::TransferDataToWindow().

105 {
106  // must be called from the constructor of derived classes,
107  // when all widgets are initialized, and therefore their size fixed
108 
109  // SetSizeHints fixes the minimal size of sizers in the dialog
110  // (SetSizeHints calls Fit(), so no need to call it)
111  GetSizer()->SetSizeHints( this );
112 
113  // the default position, when calling the first time the dlg
114  Center();
115 }
void DIALOG_SHIM::FixOSXCancelButtonIssue ( )
protectedinherited

A ugly hack to fix an issue on OSX: when typing ctrl+c in a wxTextCtrl inside a dialog, it is closed instead of copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer, when the dlg is created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority to copy text standard accelerator, and the dlg is closed when trying to copy text this function do nothing on other platforms.

Definition at line 117 of file dialog_shim.cpp.

Referenced by DIALOG_SHIM::Show().

118 {
119 #ifdef __WXMAC__
120  // A ugly hack to fix an issue on OSX: ctrl+c closes the dialog instead of
121  // copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer
122  // created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority
123  // to copy text standard accelerator, and the dlg is closed when trying to copy text
124  wxButton* button = dynamic_cast< wxButton* > ( wxWindow::FindWindowById( wxID_CANCEL, this ) );
125 
126  if( button )
127  button->SetLabel( _( "Cancel" ) );
128 #endif
129 }
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 60 of file kiway_player.h.

References KIWAY_HOLDER::m_kiway.

Referenced by SCH_EDIT_FRAME::AppendSchematic(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), DIALOG_CHOOSE_COMPONENT::ConstructRightPanel(), CVPCB_MAINFRAME::CreateScreenCmp(), CVPCB_MAINFRAME::CVPCB_MAINFRAME(), DIALOG_SHIM::DIALOG_SHIM(), EDIT_TOOL::editFootprintInFpEditor(), SCH_EDIT_FRAME::EditSheet(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), LIB_MANAGER::GetBufferedPart(), LIB_MANAGER::getLibraryBuffer(), FOOTPRINT_EDIT_FRAME::GetPlotSettings(), SCH_EDIT_FRAME::ImportFile(), PCB_EDIT_FRAME::ImportFile(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::initBuffers(), PCB_EDIT_FRAME::InstallModuleOptionsFrame(), KIWAY_PLAYER::language_change(), CVPCB_MAINFRAME::LoadFootprintFiles(), KIWAY_PLAYER::OnChangeIconsOptions(), CVPCB_MAINFRAME::OnEditFootprintLibraryTable(), SCH_BASE_FRAME::OnEditSymbolLibTable(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), SCH_EDIT_FRAME::OnLeftClick(), SCH_BASE_FRAME::OnOpenLibraryViewer(), SCH_EDIT_FRAME::OnSimulate(), DIALOG_EDIT_ONE_FIELD::OnTextValueSelectButtonClick(), FOOTPRINT_EDIT_FRAME::OnUpdateInsertModuleInBoard(), FOOTPRINT_EDIT_FRAME::OnUpdateLoadModuleFromBoard(), FOOTPRINT_EDIT_FRAME::OnUpdateReplaceModuleInBoard(), SCH_EDIT_FRAME::OpenProjectFiles(), KIWAY_HOLDER::Prj(), PCB_EDIT_FRAME::Process_Config(), PCB_EDIT_FRAME::Process_Special_Functions(), FOOTPRINT_EDIT_FRAME::ProcessPreferences(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), LIB_EDIT_FRAME::refreshSchematic(), SCH_EDIT_FRAME::rescueProject(), SCH_EDIT_FRAME::SaveEEFile(), CVPCB_MAINFRAME::SaveFootprintAssociation(), SCH_BASE_FRAME::SelectComponentFromLibBrowser(), CVPCB_MAINFRAME::SendMessageToEESCHEMA(), PCB_EDIT_FRAME::SendMessageToEESCHEMA(), SCH_EDIT_FRAME::SendMessageToPCBNEW(), SCH_EDIT_FRAME::sendNetlist(), FOOTPRINT_EDIT_FRAME::SetPlotSettings(), DISPLAY_FOOTPRINTS_FRAME::Show3D_Frame(), FOOTPRINT_VIEWER_FRAME::Show3D_Frame(), FOOTPRINT_EDIT_FRAME::Show3D_Frame(), FOOTPRINT_WIZARD_FRAME::Show3D_Frame(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::showButtonHandler(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::showButtonHandler(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), LIB_MANAGER::UpdatePart(), and DIALOG_EXCHANGE_MODULE::ViewAndSelectFootprint().

61  {
62  wxASSERT( m_kiway ); // smoke out bugs in Debug build, then Release runs fine.
63  return *m_kiway;
64  }
KIWAY * m_kiway
Definition: kiway_player.h:85
void DIALOG_TRACK_VIA_PROPERTIES::onCancelClick ( wxCommandEvent &  aEvent)
overrideprivatevirtual

Reimplemented from DIALOG_TRACK_VIA_PROPERTIES_BASE.

Definition at line 450 of file dialog_track_via_properties.cpp.

451 {
452  EndModal( 0 );
453 }
void DIALOG_TRACK_VIA_PROPERTIES::onClose ( wxCloseEvent &  aEvent)
overrideprivatevirtual

Reimplemented from DIALOG_TRACK_VIA_PROPERTIES_BASE.

Definition at line 416 of file dialog_track_via_properties.cpp.

417 {
418  EndModal( 0 );
419 }
void DIALOG_TRACK_VIA_PROPERTIES::OnInitDlg ( wxInitDialogEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from DIALOG_TRACK_VIA_PROPERTIES_BASE.

Definition at line 52 of file dialog_track_via_properties.h.

References DIALOG_SHIM::FinishDialogSettings().

53  {
54  // Call the default wxDialog handler of a wxInitDialogEvent
55  TransferDataToWindow();
56 
57  // Now all widgets have the size fixed, call FinishDialogSettings
59  }
void FinishDialogSettings()
In all dialogs, we must call the same functions to fix minimal dlg size, the default position and per...
void DIALOG_TRACK_VIA_PROPERTIES::onOkClick ( wxCommandEvent &  aEvent)
overrideprivatevirtual

Reimplemented from DIALOG_TRACK_VIA_PROPERTIES_BASE.

Definition at line 456 of file dialog_track_via_properties.cpp.

References check().

Referenced by DIALOG_TRACK_VIA_PROPERTIES().

457 {
458  if( check() )
459  EndModal( 1 );
460 }
bool check() const
Checks if the dialog values are correct.
void DIALOG_TRACK_VIA_PROPERTIES::onTrackNetclassCheck ( wxCommandEvent &  aEvent)
overrideprivatevirtual

Reimplemented from DIALOG_TRACK_VIA_PROPERTIES_BASE.

Definition at line 422 of file dialog_track_via_properties.cpp.

References DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthLabel, and DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthUnit.

423 {
424  bool enableNC = aEvent.IsChecked();
425 
426  m_TrackWidthLabel->Enable( !enableNC );
427  m_TrackWidthCtrl->Enable( !enableNC );
428  m_TrackWidthUnit->Enable( !enableNC );
429 }
void DIALOG_TRACK_VIA_PROPERTIES::onViaEdit ( wxCommandEvent &  aEvent)
private

Definition at line 475 of file dialog_track_via_properties.cpp.

References DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasCtrl.

Referenced by DIALOG_TRACK_VIA_PROPERTIES().

476 {
477  m_DesignRuleViasCtrl->SetSelection( wxNOT_FOUND );
478 }
void DIALOG_TRACK_VIA_PROPERTIES::onViaNetclassCheck ( wxCommandEvent &  aEvent)
overrideprivatevirtual

Reimplemented from DIALOG_TRACK_VIA_PROPERTIES_BASE.

Definition at line 432 of file dialog_track_via_properties.cpp.

References DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleVias, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasUnit, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterLabel, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterUnit, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillLabel, and DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillUnit.

433 {
434  bool enableNC = aEvent.IsChecked();
435 
436  m_DesignRuleVias->Enable( !enableNC );
437  m_DesignRuleViasCtrl->Enable( !enableNC );
438  m_DesignRuleViasUnit->Enable( !enableNC );
439 
440  m_ViaDiameterLabel->Enable( !enableNC );
441  m_ViaDiameterCtrl->Enable( !enableNC );
442  m_ViaDiameterUnit->Enable( !enableNC );
443 
444  m_ViaDrillLabel->Enable( !enableNC );
445  m_ViaDrillCtrl->Enable( !enableNC );
446  m_ViaDrillUnit->Enable( !enableNC );
447 }
void DIALOG_TRACK_VIA_PROPERTIES::onViaSelect ( wxCommandEvent &  aEvent)
private

Definition at line 463 of file dialog_track_via_properties.cpp.

References g_UserUnit, VIA_DIMENSION::m_Diameter, VIA_DIMENSION::m_Drill, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterCtrl, DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillCtrl, and StringFromValue().

Referenced by DIALOG_TRACK_VIA_PROPERTIES().

464 {
465  VIA_DIMENSION* viaDimension = static_cast<VIA_DIMENSION*> ( aEvent.GetClientData() );
466 
467  wxString msg = StringFromValue( g_UserUnit, viaDimension->m_Diameter, false );
468  m_ViaDiameterCtrl->ChangeValue( msg );
469 
470  msg = StringFromValue( g_UserUnit, viaDimension->m_Drill, false );
471  m_ViaDrillCtrl->ChangeValue( msg );
472 }
Struct VIA_DIMENSION is a small helper container to handle a stock of specific vias each with unique ...
wxString StringFromValue(EDA_UNITS_T aUnit, int aValue, bool aAddUnitSymbol)
Function StringFromValue returns the string from aValue according to units (inch, mm ...
Definition: base_units.cpp:204
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
PROJECT & KIWAY_HOLDER::Prj ( ) const
inherited

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

Definition at line 34 of file kiway_holder.cpp.

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

Referenced by DIALOG_EDIT_COMPONENT_IN_LIBRARY::AddAliasOfPart(), SCH_EDIT_FRAME::AppendSchematic(), PCB_EDIT_FRAME::ArchiveModulesOnBoard(), DIALOG_SYMBOL_REMAP::backupProject(), LIB_VIEW_FRAME::BestZoom(), DIALOG_MODULE_MODULE_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_MODULE_BOARD_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile(), DIALOG_EXCHANGE_MODULE::BrowseAndSelectFootprint(), DIALOG_SYMBOL_LIB_TABLE::browseLibrariesHandler(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), DIALOG_MODULE_MODULE_EDITOR::Cfg3DPath(), DIALOG_MODULE_BOARD_EDITOR::Cfg3DPath(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions(), PCB_BASE_EDIT_FRAME::CreateNewLibrary(), DIALOG_PLOT_SCHEMATIC::createPlotFileName(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), FOOTPRINT_EDIT_FRAME::DeleteModuleFromCurrentLibrary(), DIALOG_CHOOSE_COMPONENT::DIALOG_CHOOSE_COMPONENT(), DIALOG_CONFIG_EQUFILES::DIALOG_CONFIG_EQUFILES(), DIALOG_FP_LIB_TABLE::DIALOG_FP_LIB_TABLE(), DIALOG_MODULE_BOARD_EDITOR::DIALOG_MODULE_BOARD_EDITOR(), DIALOG_MODULE_MODULE_EDITOR::DIALOG_MODULE_MODULE_EDITOR(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_SYMBOL_LIB_TABLE::DIALOG_SYMBOL_LIB_TABLE(), LIB_VIEW_FRAME::DisplayLibInfos(), LIB_EDIT_FRAME::DisplayLibInfos(), SCH_BASE_FRAME::DisplayListComponentsInLib(), PCB_EDIT_FRAME::doAutoSave(), DIALOG_MODULE_MODULE_EDITOR::Edit3DShapeFileName(), DIALOG_MODULE_BOARD_EDITOR::Edit3DShapeFileName(), SCH_EDIT_FRAME::EditSheet(), PCB_EDIT_FRAME::Export_IDF3(), PCB_EDIT_FRAME::ExportVRML_File(), PCB_EDIT_FRAME::Files_io_from_id(), PCB_EDIT_FRAME::GenD356File(), NETLIST_DIALOG::GenNetlist(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), FOOTPRINT_VIEWER_FRAME::getCurFootprintName(), LIB_EDIT_FRAME::GetCurLib(), FOOTPRINT_VIEWER_FRAME::getCurNickname(), FOOTPRINT_EDIT_FRAME::GetCurrentLib(), SCH_BASE_FRAME::GetLibAlias(), SCH_BASE_FRAME::GetLibPart(), FOOTPRINT_EDIT_FRAME::getLibPath(), LIB_EDIT_FRAME::getLibraryFileName(), DIALOG_SYMBOL_REMAP::getLibsNotInGlobalSymbolLibTable(), DIALOG_BOM::getPluginFileName(), LIB_VIEW_FRAME::getSelectedAlias(), FP_THREAD_IFACE::GetTable(), SCH_EDIT_FRAME::ImportFile(), PCB_EDIT_FRAME::ImportFile(), DIALOG_MODULE_MODULE_EDITOR::initModeditProperties(), DIALOG_MODULE_BOARD_EDITOR::InitModeditProperties(), PCB_EDIT_FRAME::InstallNetlistFrame(), SCH_EDIT_FRAME::IsSearchCacheObsolete(), SCH_EDIT_FRAME::Load_Component(), SCH_EDIT_FRAME::LoadCmpToFootprintLinkFile(), LIB_EDIT_FRAME::LoadComponentFromCurrentLib(), CVPCB_MAINFRAME::LoadFootprintFiles(), DIALOG_SPICE_MODEL::loadLibrary(), LIB_EDIT_FRAME::LoadOneSymbol(), CVPCB_MAINFRAME::LoadProjectFile(), SCH_EDIT_FRAME::LoadProjectFile(), PCB_EDIT_FRAME::LoadProjectSettings(), DIALOG_DRC_CONTROL::makeValidFileNameReport(), FOOTPRINT_VIEWER_FRAME::OnActivate(), DIALOG_GENCAD_EXPORT_OPTIONS::onBrowse(), DIALOG_DRC_CONTROL::OnButtonBrowseRptFileClick(), DIALOG_EDIT_COMPONENTS_LIBID::onClickOrphansButton(), CVPCB_MAINFRAME::OnEditFootprintLibraryTable(), SCH_BASE_FRAME::OnEditSymbolLibTable(), DIALOG_GENDRILL::OnGenReportFile(), SCH_EDIT_FRAME::OnImportProject(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), PCB_EDIT_FRAME::OnLeftClick(), DIALOG_NETLIST::OnOpenNetlistClick(), DIALOG_PLOT::OnOutputDirectoryBrowseClicked(), DIALOG_SVG_PRINT::OnOutputDirectoryBrowseClicked(), DIALOG_GENDRILL::OnOutputDirectoryBrowseClicked(), DIALOG_PLOT_SCHEMATIC::OnOutputDirectoryBrowseClicked(), DIALOG_GEN_MODULE_POSITION::OnOutputDirectoryBrowseClicked(), LIB_EDIT_FRAME::OnPlotCurrentComponent(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), SCH_EDIT_FRAME::OnRightClick(), DIALOG_BOM::OnRunPlugin(), DIALOG_NETLIST::OnSaveMessagesToFile(), SCH_EDIT_FRAME::OnSaveProject(), DIALOG_CHOOSE_COMPONENT::OnSchViewPaint(), DIALOG_SPICE_MODEL::onSelectLibrary(), LIB_VIEW_FRAME::OnSelectSymbol(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnTestChipName(), FOOTPRINT_EDIT_FRAME::OnUpdateSelectCurrentLib(), LIB_EDIT_FRAME::OnViewEntryDoc(), LIB_VIEW_FRAME::onViewSymbolDocument(), SCH_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::OpenProjectFiles(), SCH_EDIT_FRAME::PasteListOfItems(), PCB_EDITOR_CONTROL::PlaceModule(), DIALOG_CHOOSE_COMPONENT::PopulateFootprintSelector(), SCH_EDIT_FRAME::Process_Config(), PCB_EDIT_FRAME::Process_Config(), FOOTPRINT_EDIT_FRAME::ProcessPreferences(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), PCB_EDIT_FRAME::RecreateCmpFileFromBoard(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), LIB_VIEW_FRAME::ReCreateHToolbar(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), LIB_VIEW_FRAME::ReCreateListCmp(), LIB_VIEW_FRAME::ReCreateListLib(), LIB_VIEW_FRAME::RedrawActiveWindow(), 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::SaveFootprintInLibrary(), LIB_EDIT_FRAME::saveLibrary(), LIB_EDIT_FRAME::SaveOneSymbol(), CVPCB_MAINFRAME::SaveProjectFile(), SCH_EDIT_FRAME::SaveProjectSettings(), PCB_EDIT_FRAME::SaveProjectSettings(), SCH_BASE_FRAME::saveSymbolLibTables(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), SCH_BASE_FRAME::SelectComponentFromLibrary(), FOOTPRINT_VIEWER_FRAME::SelectCurrentFootprint(), PCB_BASE_FRAME::SelectLibrary(), SCH_BASE_FRAME::SelectLibraryFromList(), LIB_EDIT_FRAME::selectSymLibTable(), SCH_EDIT_FRAME::sendNetlist(), FOOTPRINT_VIEWER_FRAME::setCurFootprintName(), LIB_EDIT_FRAME::SetCurLib(), FOOTPRINT_VIEWER_FRAME::setCurNickname(), LIB_EDIT_FRAME::SetCurPart(), DIALOG_CHOOSE_COMPONENT::ShowFootprintFor(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), EDA_3D_VIEWER::takeScreenshot(), SIM_PLOT_FRAME::updateNetlistExporter(), SCH_SCREEN::UpdateSymbolLinks(), FOOTPRINT_VIEWER_FRAME::UpdateTitle(), CVPCB_MAINFRAME::UpdateTitle(), FOOTPRINT_EDIT_FRAME::updateTitle(), SCH_EDIT_FRAME::WriteNetListFile(), DIALOG_MODULE_BOARD_EDITOR::~DIALOG_MODULE_BOARD_EDITOR(), and DIALOG_MODULE_MODULE_EDITOR::~DIALOG_MODULE_MODULE_EDITOR().

35 {
36  return Kiway().Prj();
37 }
KIWAY & Kiway() const
Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in...
Definition: kiway_player.h:60
VTBL_ENTRY PROJECT & Prj() const
Function Prj returns the PROJECT associated with this KIWAY.
Definition: kiway.cpp:144
template<typename T >
void DIALOG_TRACK_VIA_PROPERTIES::setCommonVal ( const OPT< T > &  aVal,
wxTextEntry *  aTxtEntry,
UNIT_BINDER aBinder 
)
inlineprivate

Sets wxTextEntry to the value stored in OPT<T> or "<...>" if it is not available.

Definition at line 66 of file dialog_track_via_properties.h.

References UNIT_BINDER::SetValue().

Referenced by DIALOG_TRACK_VIA_PROPERTIES().

67  {
68  if( aVal )
69  aBinder.SetValue( *aVal );
70  else
71  aTxtEntry->SetValue( "<...>" );
72  }
virtual void SetValue(int aValue)
Function SetValue Sets new value (in Internal Units) for the text field, taking care of units convers...
Definition: unit_binder.cpp:54
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 41 of file kiway_holder.cpp.

References KIWAY_HOLDER::m_kiway, and name.

Referenced by DIALOG_SHIM::DIALOG_SHIM(), and SIM_PLOT_FRAME::SIM_PLOT_FRAME().

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

Definition at line 139 of file dialog_shim.cpp.

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

Referenced by DisplayHotkeyList(), DIALOG_SHIM::EndQuasiModal(), InvokeDialogERC(), DIALOG_ANNOTATE::OnApplyClick(), DIALOG_SCH_FIND::OnCancel(), DIALOG_ANNOTATE::OnCancelClick(), DIALOG_DRC_CONTROL::OnLeftDClickClearance(), DIALOG_DRC_CONTROL::OnLeftDClickUnconnected(), DIALOG_DRC_CONTROL::OnPopupMenu(), DIALOG_EXCHANGE_MODULE::OnQuit(), POSITION_RELATIVE_TOOL::PositionRelative(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), DRC::ShowDRCDialog(), and DIALOG_SHIM::ShowQuasiModal().

140 {
141  bool ret;
142  const char* hash_key;
143 
144  if( m_hash_key.size() )
145  {
146  // a special case like EDA_LIST_DIALOG, which has multiple uses.
147  hash_key = m_hash_key.c_str();
148  }
149  else
150  {
151  hash_key = typeid(*this).name();
152  }
153 
154  // Show or hide the window. If hiding, save current position and size.
155  // If showing, use previous position and size.
156  if( show )
157  {
158 #ifndef __WINDOWS__
159  wxDialog::Raise(); // Needed on OS X and some other window managers (i.e. Unity)
160 #endif
161  ret = wxDialog::Show( show );
162 
163  // classname is key, returns a zeroed out default EDA_RECT if none existed before.
164  EDA_RECT r = class_map[ hash_key ];
165 
166  if( r.GetSize().x != 0 && r.GetSize().y != 0 )
167  SetSize( r.GetPosition().x, r.GetPosition().y, r.GetSize().x, r.GetSize().y, 0 );
168  }
169  else
170  {
171  // Save the dialog's position & size before hiding, using classname as key
172  EDA_RECT r( wxDialog::GetPosition(), wxDialog::GetSize() );
173  class_map[ hash_key ] = r;
174 
175  ret = wxDialog::Show( show );
176  }
177 
179 
180  return ret;
181 }
const wxSize GetSize() const
std::string m_hash_key
Definition: dialog_shim.h:128
void FixOSXCancelButtonIssue()
A ugly hack to fix an issue on OSX: when typing ctrl+c in a wxTextCtrl inside a dialog, it is closed instead of copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer, when the dlg is created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority to copy text standard accelerator, and the dlg is closed when trying to copy text this function do nothing on other platforms.
static RECT_MAP class_map
const wxPoint GetPosition() const
Class EDA_RECT handles the component boundary box.
int DIALOG_SHIM::ShowQuasiModal ( )
inherited

Definition at line 497 of file dialog_shim.cpp.

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

Referenced by SCH_EDIT_FRAME::EditComponent(), SCH_EDIT_FRAME::EditComponentFieldText(), LIB_EDIT_FRAME::EditField(), EDIT_TOOL::ExchangeFootprints(), PCB_EDIT_FRAME::InstallExchangeModuleFrame(), LIB_EDIT_FRAME::InstallFieldsEditorDialog(), SCH_EDIT_FRAME::InstallHierarchyFrame(), InvokeDialogCreateBOMEditor(), InvokeDialogUpdateFields(), SCH_EDIT_FRAME::OnRemapSymbols(), LIB_VIEW_FRAME::OnSelectSymbol(), SCH_EDIT_FRAME::OpenProjectFiles(), and SCH_BASE_FRAME::SelectComponentFromLibrary().

498 {
499  // This is an exception safe way to zero a pointer before returning.
500  // Yes, even though DismissModal() clears this first normally, this is
501  // here in case there's an exception before the dialog is dismissed.
502  struct NULLER
503  {
504  void*& m_what;
505  NULLER( void*& aPtr ) : m_what( aPtr ) {}
506  ~NULLER() { m_what = 0; } // indeed, set it to NULL on destruction
507  } clear_this( (void*&) m_qmodal_loop );
508 
509  // release the mouse if it's currently captured as the window having it
510  // will be disabled when this dialog is shown -- but will still keep the
511  // capture making it impossible to do anything in the modal dialog itself
512  wxWindow* win = wxWindow::GetCapture();
513  if( win )
514  win->ReleaseMouse();
515 
516  // Get the optimal parent
517  wxWindow* parent = GetParentForModalDialog( GetParent(), GetWindowStyle() );
518 
519  // Show the optimal parent
520  DBG( if( parent ) printf( "%s: optimal parent: %s\n", __func__, typeid(*parent).name() );)
521 
522  wxASSERT_MSG( !m_qmodal_parent_disabler,
523  wxT( "Caller using ShowQuasiModal() twice on same window?" ) );
524 
525  // quasi-modal: disable only my "optimal" parent
527 
528  Show( true );
529 
530  m_qmodal_showing = true;
531 
532  EVENT_LOOP event_loop;
533 
534  m_qmodal_loop = &event_loop;
535 
536  event_loop.Run();
537 
538  return GetReturnCode();
539 }
bool m_qmodal_showing
Definition: dialog_shim.h:132
EVENT_LOOP * m_qmodal_loop
Definition: dialog_shim.h:131
bool Show(bool show) override
WDO_ENABLE_DISABLE * m_qmodal_parent_disabler
Definition: dialog_shim.h:133
Toggle a window's "enable" status to disabled, then enabled on destruction.
Definition: dialog_shim.cpp:33
#define DBG(x)
Definition: fctsys.h:33

Member Data Documentation

wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleVias
protectedinherited
wxChoice* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_DesignRuleViasUnit
protectedinherited
std::string DIALOG_SHIM::m_hash_key
protectedinherited
bool DIALOG_TRACK_VIA_PROPERTIES::m_haveUniqueNet
private

Fixme

Definition at line 91 of file dialog_track_via_properties.h.

Referenced by DIALOG_TRACK_VIA_PROPERTIES().

const SELECTION& DIALOG_TRACK_VIA_PROPERTIES::m_items
private

Selected items to be modified.

Definition at line 75 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxCheckBox* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_lockedCbox
protectedinherited
wxBoxSizer* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_MainSizer
protectedinherited
WIDGET_NET_SELECTOR* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_NetComboBox
protectedinherited
EVENT_LOOP* DIALOG_SHIM::m_qmodal_loop
protectedinherited

Definition at line 131 of file dialog_shim.h.

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

WDO_ENABLE_DISABLE* DIALOG_SHIM::m_qmodal_parent_disabler
protectedinherited
bool DIALOG_SHIM::m_qmodal_showing
protectedinherited
wxStaticBoxSizer* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_sbCommonSizer
protectedinherited
wxStaticBoxSizer* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_sbTrackSizer
protectedinherited
wxStaticBoxSizer* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_sbViaSizer
protectedinherited
wxStaticLine* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_staticline3
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_staticText24
protectedinherited
wxStdDialogButtonSizer* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_StdButtons
protectedinherited
wxButton* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_StdButtonsCancel
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_trackEndX
private

Definition at line 78 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndXCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndXLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndXUnit
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_trackEndY
private

Definition at line 78 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndYCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndYLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackEndYUnit
protectedinherited
PCB_LAYER_BOX_SELECTOR* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackLayerCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackLayerLabel
protectedinherited
wxCheckBox* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_trackNetclass
protectedinherited
bool DIALOG_TRACK_VIA_PROPERTIES::m_tracks
private

Flag that determines if the dialog displays track properties.

Definition at line 85 of file dialog_track_via_properties.h.

Referenced by Apply(), check(), and DIALOG_TRACK_VIA_PROPERTIES().

UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_trackStartX
private

Definition at line 77 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartXCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartXLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartXUnit
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_trackStartY
private

Definition at line 77 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartYCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartYLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackStartYUnit
protectedinherited
wxStaticLine* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_trackStaticLine
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_trackWidth
private

Definition at line 79 of file dialog_track_via_properties.h.

Referenced by Apply(), check(), and DIALOG_TRACK_VIA_PROPERTIES().

wxComboBox* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_TrackWidthUnit
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_viaDiameter
private

Definition at line 82 of file dialog_track_via_properties.h.

Referenced by Apply(), check(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDiameterUnit
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_viaDrill
private

Definition at line 82 of file dialog_track_via_properties.h.

Referenced by Apply(), check(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaDrillUnit
protectedinherited
PCB_LAYER_BOX_SELECTOR* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaEndLayer
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaEndLayerLabel1
protectedinherited
wxCheckBox* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_viaNetclass
protectedinherited
bool DIALOG_TRACK_VIA_PROPERTIES::m_vias
private

Flag that determines if the dialog displays via properties.

Definition at line 88 of file dialog_track_via_properties.h.

Referenced by Apply(), check(), and DIALOG_TRACK_VIA_PROPERTIES().

PCB_LAYER_BOX_SELECTOR* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaStartLayer
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaStartLayerLabel
protectedinherited
wxStaticLine* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_viaStaticLine
protectedinherited
wxChoice* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaTypeChoice
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaTypeLabel
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_viaX
private

Definition at line 81 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaXCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaXLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaXUnit
protectedinherited
UNIT_BINDER DIALOG_TRACK_VIA_PROPERTIES::m_viaY
private

Definition at line 81 of file dialog_track_via_properties.h.

Referenced by Apply(), and DIALOG_TRACK_VIA_PROPERTIES().

wxTextCtrl* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaYCtrl
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaYLabel
protectedinherited
wxStaticText* DIALOG_TRACK_VIA_PROPERTIES_BASE::m_ViaYUnit
protectedinherited

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