14DIALOG_UPDATE_FROM_PCB_BASE::DIALOG_UPDATE_FROM_PCB_BASE( wxWindow* parent, wxWindowID 
id, 
const wxString& title, 
const wxPoint& pos, 
const wxSize& size, 
long style ) : 
DIALOG_SHIM( parent, id, title, pos, size, style )
 
   16    this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
 
   18    wxBoxSizer* bMainSizer;
 
   19    bMainSizer = 
new wxBoxSizer( wxVERTICAL );
 
   21    wxBoxSizer* bUpperSizer;
 
   22    bUpperSizer = 
new wxBoxSizer( wxVERTICAL );
 
   24    wxStaticBoxSizer* sbSizerOptions;
 
   25    sbSizerOptions = 
new wxStaticBoxSizer( 
new wxStaticBox( 
this, wxID_ANY, 
_(
"Options") ), wxVERTICAL );
 
   27    wxFlexGridSizer* fgSizer1;
 
   28    fgSizer1 = 
new wxFlexGridSizer( 0, 1, 0, 0 );
 
   29    fgSizer1->SetFlexibleDirection( wxVERTICAL );
 
   30    fgSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
 
   32    m_cbRelinkFootprints = 
new wxCheckBox( sbSizerOptions->GetStaticBox(), wxID_ANY, 
_(
"Re-link footprints to schematic symbols based on their reference designators"), wxDefaultPosition, wxDefaultSize, 0 );
 
   33    m_cbRelinkFootprints->SetToolTip( 
_(
"Normally footprints are linked to their symbols via their Unique IDs.  Select this option only if you want to reset the footprint linkages based on their reference designators.") );
 
   38    sbSizerOptions->Add( fgSizer1, 1, wxEXPAND|wxBOTTOM, 5 );
 
   41    bUpperSizer->Add( sbSizerOptions, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
 
   43    wxStaticBoxSizer* sbSizer2;
 
   44    sbSizer2 = 
new wxStaticBoxSizer( 
new wxStaticBox( 
this, wxID_ANY, 
_(
"Update") ), wxVERTICAL );
 
   46    wxFlexGridSizer* fgSizer2;
 
   47    fgSizer2 = 
new wxFlexGridSizer( 0, 2, 0, 0 );
 
   48    fgSizer2->AddGrowableCol( 0 );
 
   49    fgSizer2->AddGrowableCol( 1 );
 
   50    fgSizer2->SetFlexibleDirection( wxBOTH );
 
   51    fgSizer2->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
 
   53    m_cbUpdateReferences = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Reference designators"), wxDefaultPosition, wxDefaultSize, 0 );
 
   55    m_cbUpdateReferences->SetToolTip( 
_(
"Update references of symbols that have been changed in the PCB editor.") );
 
   59    m_cbUpdateFootprints = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Footprint assignments"), wxDefaultPosition, wxDefaultSize, 0 );
 
   61    m_cbUpdateFootprints->SetToolTip( 
_(
"Update footprint associations of symbols whose footprints have been replaced with different footprints in PCB.") );
 
   65    m_cbUpdateValues = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Values"), wxDefaultPosition, wxDefaultSize, 0 );
 
   67    m_cbUpdateValues->SetToolTip( 
_(
"Update symbols values that have been replaced in the PCB editor.") );
 
   71    m_cbUpdateNetNames = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Net names"), wxDefaultPosition, wxDefaultSize, 0 );
 
   74    m_cbUpdateAttributes = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Attributes"), wxDefaultPosition, wxDefaultSize, 0 );
 
   78    m_cbPreferUnitSwaps = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Prefer symbol unit swaps over label swaps"), wxDefaultPosition, wxDefaultSize, 0 );
 
   80    m_cbPreferUnitSwaps->SetToolTip( 
_(
"When possible, detect footprint gate swaps and apply corresponding symbol unit swaps instead of changing net labels.") );
 
   84    m_cbUpdateOtherFields = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Other fields"), wxDefaultPosition, wxDefaultSize, 0 );
 
   90    m_cbPreferPinSwaps = 
new wxCheckBox( sbSizer2->GetStaticBox(), wxID_ANY, 
_(
"Prefer symbol pin swaps over label swaps"), wxDefaultPosition, wxDefaultSize, 0 );
 
   92    m_cbPreferPinSwaps->SetToolTip( 
_(
"When possible, swap symbol pins to match footprint pad net swaps instead of changing net labels.") );
 
   97    sbSizer2->Add( fgSizer2, 1, wxEXPAND, 5 );
 
  100    bUpperSizer->Add( sbSizer2, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
 
  103    bMainSizer->Add( bUpperSizer, 0, wxALL|wxEXPAND, 5 );
 
  105    wxBoxSizer* bLowerSizer;
 
  106    bLowerSizer = 
new wxBoxSizer( wxVERTICAL );
 
  108    bLowerSizer->SetMinSize( wxSize( 600,260 ) );
 
  113    bMainSizer->Add( bLowerSizer, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
 
  122    bMainSizer->Add( 
m_sdbSizer, 0, wxALL|wxEXPAND, 5 );
 
  125    this->SetSizer( bMainSizer );
 
  127    bMainSizer->Fit( 
this );