15DIALOG_IMPORT_GRAPHICS_BASE::DIALOG_IMPORT_GRAPHICS_BASE( wxWindow* parent, wxWindowID
id,
const wxString& title,
const wxPoint& pos,
const wxSize& size,
long style ) :
DIALOG_SHIM( parent, id, title, pos, size, style )
17 this->SetSizeHints( wxDefaultSize, wxDefaultSize );
19 wxBoxSizer* bSizerMain;
20 bSizerMain =
new wxBoxSizer( wxVERTICAL );
22 wxBoxSizer* bSizerFile;
23 bSizerFile =
new wxBoxSizer( wxHORIZONTAL );
25 m_staticTextFile =
new wxStaticText(
this, wxID_ANY,
_(
"File:"), wxDefaultPosition, wxDefaultSize, 0 );
27 m_staticTextFile->SetToolTip(
_(
"Only vectors will be imported. Bitmaps and fonts will be ignored.") );
31 m_textCtrlFileName =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
32 m_textCtrlFileName->SetToolTip(
_(
"Only vectors will be imported. Bitmaps and fonts will be ignored.") );
41 bSizerMain->Add( bSizerFile, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 10 );
43 wxFlexGridSizer* fgSizer3;
44 fgSizer3 =
new wxFlexGridSizer( 0, 3, 5, 3 );
45 fgSizer3->AddGrowableCol( 1 );
46 fgSizer3->SetFlexibleDirection( wxBOTH );
47 fgSizer3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
49 m_importScaleLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Import scale:"), wxDefaultPosition, wxDefaultSize, 0 );
53 m_importScaleCtrl =
new wxTextCtrl(
this, wxID_ANY,
_(
"1.0"), wxDefaultPosition, wxSize( 120,-1 ), 0 );
57 fgSizer3->Add( 0, 0, 1, wxEXPAND, 5 );
59 m_lineWidthLabel =
new wxStaticText(
this, wxID_ANY,
_(
"DXF default line width:"), wxDefaultPosition, wxDefaultSize, 0 );
61 m_lineWidthLabel->SetToolTip(
_(
"Used when the DXF items in file have no line thickness set") );
65 m_lineWidthCtrl =
new wxTextCtrl(
this, wxID_ANY,
_(
"0.2"), wxDefaultPosition, wxDefaultSize, 0 );
66 fgSizer3->Add(
m_lineWidthCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
68 m_lineWidthUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
72 m_dxfUnitsLabel =
new wxStaticText(
this, wxID_ANY,
_(
"DXF default units:"), wxDefaultPosition, wxDefaultSize, 0 );
78 wxArrayString m_dxfUnitsChoiceChoices;
79 m_dxfUnitsChoice =
new wxChoice(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_dxfUnitsChoiceChoices, 0 );
84 bSizerMain->Add( fgSizer3, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
87 bSizerMain->Add( 0, 5, 0, wxEXPAND, 5 );
89 m_staticline2 =
new wxStaticLine(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
92 wxBoxSizer* bSizerPlaceAt;
93 bSizerPlaceAt =
new wxBoxSizer( wxHORIZONTAL );
95 m_placeAtCheckbox =
new wxCheckBox(
this, wxID_ANY,
_(
"Place at:"), wxDefaultPosition, wxDefaultSize, 0 );
100 m_xLabel =
new wxStaticText(
this, wxID_ANY,
_(
"X:"), wxDefaultPosition, wxDefaultSize, 0 );
102 bSizerPlaceAt->Add(
m_xLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
104 m_xCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
106 if ( !
m_xCtrl->HasFlag( wxTE_MULTILINE ) )
113 m_xCtrl->SetToolTip(
_(
"DXF origin on PCB Grid, X Coordinate") );
115 bSizerPlaceAt->Add(
m_xCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
117 m_yLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Y:"), wxDefaultPosition, wxDefaultSize, 0 );
119 bSizerPlaceAt->Add(
m_yLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
121 m_yCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
123 if ( !
m_yCtrl->HasFlag( wxTE_MULTILINE ) )
130 m_yCtrl->SetToolTip(
_(
"DXF origin on PCB Grid, Y Coordinate") );
132 bSizerPlaceAt->Add(
m_yCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
134 m_yUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
136 bSizerPlaceAt->Add(
m_yUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
138 m_originLabel =
new wxStaticText(
this, wxID_ANY,
_(
"From:"), wxDefaultPosition, wxDefaultSize, 0 );
140 bSizerPlaceAt->Add(
m_originLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 10 );
142 wxString m_originCtrlChoices[] = {
_(
"Page origin"),
_(
"Drill/place file origin"),
_(
"Grid origin"),
_(
"User defined origin") };
143 int m_originCtrlNChoices =
sizeof( m_originCtrlChoices ) /
sizeof( wxString );
144 m_originCtrl =
new wxChoice(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_originCtrlNChoices, m_originCtrlChoices, 0 );
146 bSizerPlaceAt->Add(
m_originCtrl, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
149 bSizerMain->Add( bSizerPlaceAt, 1, wxEXPAND|wxLEFT, 5 );
151 wxBoxSizer* bSizerTargetLayer;
152 bSizerTargetLayer =
new wxBoxSizer( wxHORIZONTAL );
154 m_radioBtnCurrentLayer =
new wxRadioButton(
this, wxID_ANY,
_(
"Current layer"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
158 m_radioBtnMapLayers =
new wxRadioButton(
this, wxID_ANY,
_(
"Map layers"), wxDefaultPosition, wxDefaultSize, 0 );
161 m_radioBtnSingleLayer =
new wxRadioButton(
this, wxID_ANY,
_(
"Single layer:"), wxDefaultPosition, wxDefaultSize, 0 );
162 bSizerTargetLayer->Add(
m_radioBtnSingleLayer, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
165 bSizerTargetLayer->Add(
m_SelLayerBox, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
168 bSizerMain->Add( bSizerTargetLayer, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 );
170 wxBoxSizer* bSizerGroupOpt;
171 bSizerGroupOpt =
new wxBoxSizer( wxVERTICAL );
173 m_cbGroupItems =
new wxCheckBox(
this, wxID_ANY,
_(
"Group imported items"), wxDefaultPosition, wxDefaultSize, 0 );
175 m_cbGroupItems->SetToolTip(
_(
"Add all imported items to a new group") );
177 bSizerGroupOpt->Add(
m_cbGroupItems, 0, wxTOP|wxBOTTOM|wxLEFT, 5 );
180 bSizerMain->Add( bSizerGroupOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
182 m_staticline3 =
new wxStaticLine(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
185 wxBoxSizer* bSizer11;
186 bSizer11 =
new wxBoxSizer( wxHORIZONTAL );
188 m_rbFixDiscontinuities =
new wxCheckBox(
this, wxID_ANY,
_(
"Fix discontinuities"), wxDefaultPosition, wxDefaultSize, 0 );
190 m_rbFixDiscontinuities->SetToolTip(
_(
"Trim/extend open shapes or add segments to make vertices of shapes coincide") );
194 m_toleranceLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Tolerance:"), wxDefaultPosition, wxDefaultSize, 0 );
198 m_toleranceCtrl =
new wxTextCtrl(
this, wxID_ANY,
_(
"1"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
199 bSizer11->Add(
m_toleranceCtrl, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
201 m_toleranceUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
203 bSizer11->Add(
m_toleranceUnits, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5 );
206 bSizerMain->Add( bSizer11, 0, wxEXPAND|wxRIGHT|wxLEFT, 10 );
209 bSizerMain->Add( 0, 3, 1, wxEXPAND, 5 );
218 bSizerMain->Add(
m_sdbSizer, 0, wxEXPAND|wxALL, 5 );
221 this->SetSizer( bSizerMain );
223 bSizerMain->Fit(
this );
225 this->Centre( wxBOTH );