15DIALOG_IMPORT_GFX_BASE::DIALOG_IMPORT_GFX_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, wxALL|wxEXPAND, 10 );
43 wxStaticBoxSizer* sbSizer2;
44 sbSizer2 =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Placement") ), wxVERTICAL );
46 wxBoxSizer* bSizerOptions;
47 bSizerOptions =
new wxBoxSizer( wxVERTICAL );
49 m_rbInteractivePlacement =
new wxRadioButton( sbSizer2->GetStaticBox(), wxID_ANY,
_(
"Interactive placement"), wxDefaultPosition, wxDefaultSize, 0 );
53 wxBoxSizer* bSizerUserPos;
54 bSizerUserPos =
new wxBoxSizer( wxHORIZONTAL );
56 m_rbAbsolutePlacement =
new wxRadioButton( sbSizer2->GetStaticBox(), wxID_ANY,
_(
"At"), wxDefaultPosition, wxDefaultSize, 0 );
59 wxBoxSizer* bSizerPosSettings;
60 bSizerPosSettings =
new wxBoxSizer( wxHORIZONTAL );
62 m_xLabel =
new wxStaticText( sbSizer2->GetStaticBox(), wxID_ANY,
_(
"X:"), wxDefaultPosition, wxDefaultSize, 0 );
64 bSizerPosSettings->Add(
m_xLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5 );
66 m_xCtrl =
new wxTextCtrl( sbSizer2->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
68 if ( !
m_xCtrl->HasFlag( wxTE_MULTILINE ) )
75 m_xCtrl->SetToolTip(
_(
"DXF origin on PCB Grid, X Coordinate") );
77 bSizerPosSettings->Add(
m_xCtrl, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
79 m_xUnits =
new wxStaticText( sbSizer2->GetStaticBox(), wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
81 bSizerPosSettings->Add(
m_xUnits, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxTOP, 5 );
83 m_yLabel =
new wxStaticText( sbSizer2->GetStaticBox(), wxID_ANY,
_(
"Y:"), wxDefaultPosition, wxDefaultSize, 0 );
85 bSizerPosSettings->Add(
m_yLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5 );
87 m_yCtrl =
new wxTextCtrl( sbSizer2->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
89 if ( !
m_yCtrl->HasFlag( wxTE_MULTILINE ) )
96 m_yCtrl->SetToolTip(
_(
"DXF origin on PCB Grid, Y Coordinate") );
98 bSizerPosSettings->Add(
m_yCtrl, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
100 m_yUnits =
new wxStaticText( sbSizer2->GetStaticBox(), wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
102 bSizerPosSettings->Add(
m_yUnits, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
105 bSizerUserPos->Add( bSizerPosSettings, 1, wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP, 5 );
108 bSizerOptions->Add( bSizerUserPos, 0, wxEXPAND, 5 );
111 sbSizer2->Add( bSizerOptions, 0, wxEXPAND, 5 );
114 bSizerMain->Add( sbSizer2, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 10 );
116 wxStaticBoxSizer* sbSizer1;
117 sbSizer1 =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Import Parameters") ), wxVERTICAL );
120 bSizer7 =
new wxBoxSizer( wxHORIZONTAL );
122 wxFlexGridSizer* fgSizerImportSettings;
123 fgSizerImportSettings =
new wxFlexGridSizer( 0, 3, 5, 5 );
124 fgSizerImportSettings->AddGrowableCol( 1 );
125 fgSizerImportSettings->SetFlexibleDirection( wxBOTH );
126 fgSizerImportSettings->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
128 m_staticTextBrdlayer =
new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY,
_(
"Graphic layer:"), wxDefaultPosition, wxDefaultSize, 0 );
133 fgSizerImportSettings->Add(
m_SelLayerBox, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
136 fgSizerImportSettings->Add( 0, 0, 0, 0, 5 );
138 m_importScaleLabel =
new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY,
_(
"Import scale:"), wxDefaultPosition, wxDefaultSize, 0 );
142 m_importScaleCtrl =
new wxTextCtrl( sbSizer1->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
143 fgSizerImportSettings->Add(
m_importScaleCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
146 fgSizerImportSettings->Add( 0, 0, 0, 0, 5 );
149 bSizer7->Add( fgSizerImportSettings, 1, wxEXPAND|wxBOTTOM|wxRIGHT, 5 );
152 sbSizer1->Add( bSizer7, 1, wxEXPAND, 5 );
154 m_staticline1 =
new wxStaticLine( sbSizer1->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
155 sbSizer1->Add(
m_staticline1, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
158 bSizer8 =
new wxBoxSizer( wxVERTICAL );
160 m_groupItems =
new wxCheckBox( sbSizer1->GetStaticBox(), wxID_ANY,
_(
"Group items"), wxDefaultPosition, wxDefaultSize, 0 );
161 m_groupItems->SetToolTip(
_(
"Add all imported items into a new group") );
166 sbSizer1->Add( bSizer8, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
169 bSizerMain->Add( sbSizer1, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 10 );
171 wxStaticBoxSizer* sbSizer3;
172 sbSizer3 =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"DXF Parameters") ), wxVERTICAL );
174 wxBoxSizer* bSizer81;
175 bSizer81 =
new wxBoxSizer( wxHORIZONTAL );
177 wxFlexGridSizer* fgDxfImportSettings;
178 fgDxfImportSettings =
new wxFlexGridSizer( 0, 3, 5, 5 );
179 fgDxfImportSettings->AddGrowableCol( 1 );
180 fgDxfImportSettings->SetFlexibleDirection( wxBOTH );
181 fgDxfImportSettings->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
183 m_lineWidthLabel =
new wxStaticText( sbSizer3->GetStaticBox(), wxID_ANY,
_(
"Default line width:"), wxDefaultPosition, wxDefaultSize, 0 );
185 fgDxfImportSettings->Add(
m_lineWidthLabel, 0, wxALIGN_CENTER_VERTICAL, 5 );
187 m_lineWidthCtrl =
new wxTextCtrl( sbSizer3->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
188 fgDxfImportSettings->Add(
m_lineWidthCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
190 m_lineWidthUnits =
new wxStaticText( sbSizer3->GetStaticBox(), wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
192 fgDxfImportSettings->Add(
m_lineWidthUnits, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxTOP, 5 );
194 m_staticTextLineWidth1 =
new wxStaticText( sbSizer3->GetStaticBox(), wxID_ANY,
_(
"Default units:"), wxDefaultPosition, wxDefaultSize, 0 );
198 wxArrayString m_choiceDxfUnitsChoices;
199 m_choiceDxfUnits =
new wxChoice( sbSizer3->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceDxfUnitsChoices, 0 );
204 fgDxfImportSettings->Add( 0, 0, 1, wxEXPAND, 5 );
207 bSizer81->Add( fgDxfImportSettings, 1, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
210 sbSizer3->Add( bSizer81, 1, wxEXPAND, 5 );
213 bSizerMain->Add( sbSizer3, 1, wxEXPAND|wxRIGHT|wxLEFT, 10 );
222 bSizerMain->Add(
m_sdbSizer, 0, wxEXPAND|wxALL, 5 );
225 this->SetSizer( bSizerMain );
227 bSizerMain->Fit(
this );
229 this->Centre( wxBOTH );
virtual void onAbsolutePlacement(wxCommandEvent &event)
PCB_LAYER_BOX_SELECTOR * m_SelLayerBox
wxRadioButton * m_rbInteractivePlacement
virtual void onBrowseFiles(wxCommandEvent &event)
wxStaticLine * m_staticline1
wxStaticText * m_staticTextFile
DIALOG_IMPORT_GFX_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Import Vector Graphics File"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
wxButton * m_sdbSizerCancel
wxTextCtrl * m_textCtrlFileName
wxTextCtrl * m_lineWidthCtrl
virtual void onInteractivePlacement(wxCommandEvent &event)
virtual void onGroupItems(wxCommandEvent &event)
wxStaticText * m_lineWidthLabel
~DIALOG_IMPORT_GFX_BASE()
wxCheckBox * m_groupItems
wxTextCtrl * m_importScaleCtrl
wxStdDialogButtonSizer * m_sdbSizer
virtual void originOptionOnUpdateUI(wxUpdateUIEvent &event)
wxChoice * m_choiceDxfUnits
wxStaticText * m_staticTextBrdlayer
wxRadioButton * m_rbAbsolutePlacement
wxStaticText * m_staticTextLineWidth1
wxStaticText * m_lineWidthUnits
wxStaticText * m_importScaleLabel
STD_BITMAP_BUTTON * m_browseButton
Dialog helper object to sit in the inheritance tree between wxDialog and any class written by wxFormB...
Class to display a pcb layer list in a wxBitmapComboBox.