14DIALOG_BARCODE_PROPERTIES_BASE::DIALOG_BARCODE_PROPERTIES_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* m_MainSizer;
 
   19    m_MainSizer = 
new wxBoxSizer( wxVERTICAL );
 
   21    wxBoxSizer* bSizerUpper;
 
   22    bSizerUpper = 
new wxBoxSizer( wxHORIZONTAL );
 
   24    wxBoxSizer* bGeneralSizer;
 
   25    bGeneralSizer = 
new wxBoxSizer( wxVERTICAL );
 
   27    m_staticText28 = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Text:"), wxDefaultPosition, wxDefaultSize, 0 );
 
   32    bGeneralSizer->Add( 0, 3, 0, wxEXPAND, 5 );
 
   34    m_textInput = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
   35    bGeneralSizer->Add( 
m_textInput, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
 
   38    bSizer8 = 
new wxBoxSizer( wxHORIZONTAL );
 
   41    bSizer9 = 
new wxBoxSizer( wxVERTICAL );
 
   43    wxBoxSizer* m_LeftBoxSizer;
 
   44    m_LeftBoxSizer = 
new wxBoxSizer( wxVERTICAL );
 
   46    wxBoxSizer* bSizerCheckboxes;
 
   47    bSizerCheckboxes = 
new wxBoxSizer( wxHORIZONTAL );
 
   49    m_cbLocked = 
new wxCheckBox( 
this, wxID_ANY, 
_(
"Locked"), wxDefaultPosition, wxDefaultSize, 0 );
 
   52    m_cbKnockout = 
new wxCheckBox( 
this, wxID_ANY, 
_(
"Knockout"), wxDefaultPosition, wxDefaultSize, 0 );
 
   53    m_cbKnockout->SetToolTip( 
_(
"If checked, the barcode will be inverted with a margin around it") );
 
   57    m_cbShowText = 
new wxCheckBox( 
this, wxID_ANY, 
_(
"Show text"), wxDefaultPosition, wxDefaultSize, 0 );
 
   61    m_LeftBoxSizer->Add( bSizerCheckboxes, 1, wxALL|wxEXPAND, 5 );
 
   64    bSizer9->Add( m_LeftBoxSizer, 0, wxEXPAND|wxTOP|wxRIGHT, 5 );
 
   68    wxGridBagSizer* gbSizer1;
 
   69    gbSizer1 = 
new wxGridBagSizer( 3, 3 );
 
   70    gbSizer1->SetFlexibleDirection( wxBOTH );
 
   71    gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
 
   72    gbSizer1->SetEmptyCellSize( wxSize( 20,10 ) );
 
   74    m_layerLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Layer:"), wxDefaultPosition, wxDefaultSize, 0 );
 
   76    gbSizer1->Add( 
m_layerLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP, 6 );
 
   79    gbSizer1->Add( 
m_cbLayer, wxGBPosition( 0, 1 ), wxGBSpan( 1, 2 ), wxALIGN_CENTER_VERTICAL|wxEXPAND|wxTOP|wxRIGHT, 6 );
 
   81    m_posXLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Position X:"), wxDefaultPosition, wxDefaultSize, 0 );
 
   83    gbSizer1->Add( 
m_posXLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
   85    m_posXCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
   88    gbSizer1->Add( 
m_posXCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
   90    m_posXUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
   92    gbSizer1->Add( 
m_posXUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
   94    m_posYLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Position Y:"), wxDefaultPosition, wxDefaultSize, 0 );
 
   96    gbSizer1->Add( 
m_posYLabel, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
   98    m_posYCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
   99    gbSizer1->Add( 
m_posYCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  101    m_posYUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
  103    gbSizer1->Add( 
m_posYUnits, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  105    m_sizeXLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  107    gbSizer1->Add( 
m_sizeXLabel, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  109    m_sizeXCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  110    gbSizer1->Add( 
m_sizeXCtrl, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  112    m_sizeXUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
  114    gbSizer1->Add( 
m_sizeXUnits, wxGBPosition( 3, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  116    m_sizeYLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  118    gbSizer1->Add( 
m_sizeYLabel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  120    m_sizeYCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  121    gbSizer1->Add( 
m_sizeYCtrl, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  123    m_sizeYUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
  125    gbSizer1->Add( 
m_sizeYUnits, wxGBPosition( 4, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  127    m_orientationLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Orientation:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  129    gbSizer1->Add( 
m_orientationLabel, wxGBPosition( 6, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  131    m_orientationCtrl = 
new wxComboBox( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
 
  136    gbSizer1->Add( 
m_orientationCtrl, wxGBPosition( 6, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  138    m_orientationUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"deg"), wxDefaultPosition, wxDefaultSize, 0 );
 
  140    gbSizer1->Add( 
m_orientationUnits, wxGBPosition( 6, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  142    m_textSizeLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Text size:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  144    gbSizer1->Add( 
m_textSizeLabel, wxGBPosition( 8, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  146    m_textSizeCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  147    gbSizer1->Add( 
m_textSizeCtrl, wxGBPosition( 8, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  149    m_textSizeUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
  151    gbSizer1->Add( 
m_textSizeUnits, wxGBPosition( 8, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  153    m_marginXLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Min margin X:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  155    gbSizer1->Add( 
m_marginXLabel, wxGBPosition( 10, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  157    m_marginXCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  158    gbSizer1->Add( 
m_marginXCtrl, wxGBPosition( 10, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  160    m_marginXUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
  162    gbSizer1->Add( 
m_marginXUnits, wxGBPosition( 10, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  164    m_marginYLabel = 
new wxStaticText( 
this, wxID_ANY, 
_(
"Min margin Y:"), wxDefaultPosition, wxDefaultSize, 0 );
 
  166    gbSizer1->Add( 
m_marginYLabel, wxGBPosition( 11, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
 
  168    m_marginYCtrl = 
new wxTextCtrl( 
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
 
  169    gbSizer1->Add( 
m_marginYCtrl, wxGBPosition( 11, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
 
  171    m_marginYUnits = 
new wxStaticText( 
this, wxID_ANY, 
_(
"units"), wxDefaultPosition, wxDefaultSize, 0 );
 
  173    gbSizer1->Add( 
m_marginYUnits, wxGBPosition( 11, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
 
  175    wxString m_barcodeChoices[] = { 
_(
"Code 39 (ISO 16388)"), 
_(
"Code 128 (ISO 15417)"), 
_(
"Data Matrix (ECC 200)"), 
_(
"QR Code (ISO 18004)"), 
_(
"Micro QR Code") };
 
  176    int m_barcodeNChoices = 
sizeof( m_barcodeChoices ) / 
sizeof( wxString );
 
  177    m_barcode = 
new wxRadioBox( 
this, wxID_ANY, 
_(
"Code"), wxDefaultPosition, wxDefaultSize, m_barcodeNChoices, m_barcodeChoices, 1, wxRA_SPECIFY_COLS );
 
  179    gbSizer1->Add( 
m_barcode, wxGBPosition( 0, 4 ), wxGBSpan( 6, 1 ), wxALL|wxEXPAND, 5 );
 
  181    wxString m_errorCorrectionChoices[] = { 
_(
"~20% (Level L)"), 
_(
"~37% (Level M)"), 
_(
"~55% (Level Q)"), 
_(
"~65% (Level H)") };
 
  182    int m_errorCorrectionNChoices = 
sizeof( m_errorCorrectionChoices ) / 
sizeof( wxString );
 
  183    m_errorCorrection = 
new wxRadioBox( 
this, wxID_ANY, 
_(
"Error Correction"), wxDefaultPosition, wxDefaultSize, m_errorCorrectionNChoices, m_errorCorrectionChoices, 1, wxRA_SPECIFY_COLS );
 
  185    gbSizer1->Add( 
m_errorCorrection, wxGBPosition( 6, 4 ), wxGBSpan( 6, 1 ), wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
 
  188    gbSizer1->AddGrowableCol( 1 );
 
  196    bSizer8->Add( bSizer9, 0, wxEXPAND, 5 );
 
  198    wxBoxSizer* bSizerDisplayPad;
 
  199    bSizerDisplayPad = 
new wxBoxSizer( wxVERTICAL );
 
  207    bSizer8->Add( bSizerDisplayPad, 1, wxEXPAND|wxLEFT, 10 );
 
  210    bGeneralSizer->Add( bSizer8, 1, wxEXPAND, 5 );
 
  213    bSizerUpper->Add( bGeneralSizer, 1, wxEXPAND|wxRIGHT, 5 );
 
  216    m_MainSizer->Add( bSizerUpper, 1, wxEXPAND|wxTOP|wxLEFT, 5 );
 
  225    m_MainSizer->Add( 
m_sdbSizer, 0, wxEXPAND|wxALL, 5 );
 
  228    this->SetSizer( m_MainSizer );
 
  230    m_MainSizer->Fit( 
this );
 
  232    this->Centre( wxBOTH );