KiCad PCB EDA Suite
dialog_spice_model_base.cpp
Go to the documentation of this file.
1 // C++ code generated with wxFormBuilder (version Apr 19 2018)
3 // http://www.wxformbuilder.org/
4 //
5 // PLEASE DO *NOT* EDIT THIS FILE!
7 
9 
11 
12 DIALOG_SPICE_MODEL_BASE::DIALOG_SPICE_MODEL_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style )
13 {
14  this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
15 
16  wxBoxSizer* bSizer1;
17  bSizer1 = new wxBoxSizer( wxVERTICAL );
18 
19  m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
20  m_passive = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
21  wxBoxSizer* bSizer41;
22  bSizer41 = new wxBoxSizer( wxVERTICAL );
23 
24  wxFlexGridSizer* fgSizer1;
25  fgSizer1 = new wxFlexGridSizer( 0, 3, 0, 0 );
26  fgSizer1->AddGrowableCol( 1 );
27  fgSizer1->SetFlexibleDirection( wxBOTH );
28  fgSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
29 
30  m_staticText2 = new wxStaticText( m_passive, wxID_ANY, _("Type:"), wxDefaultPosition, wxDefaultSize, 0 );
31  m_staticText2->Wrap( -1 );
32  fgSizer1->Add( m_staticText2, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
33 
34  m_pasType = new wxComboBox( m_passive, wxID_ANY, _("Resistor"), wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_READONLY );
35  m_pasType->Append( _("Resistor") );
36  m_pasType->Append( _("Capacitor") );
37  m_pasType->Append( _("Inductor") );
38  m_pasType->SetSelection( 0 );
39  fgSizer1->Add( m_pasType, 0, wxALL|wxEXPAND, 5 );
40 
41  m_staticText62 = new wxStaticText( m_passive, wxID_ANY, _("Passive type"), wxDefaultPosition, wxDefaultSize, 0 );
42  m_staticText62->Wrap( -1 );
43  fgSizer1->Add( m_staticText62, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
44 
45  m_staticText3 = new wxStaticText( m_passive, wxID_ANY, _("Value:"), wxDefaultPosition, wxDefaultSize, 0 );
46  m_staticText3->Wrap( -1 );
47  fgSizer1->Add( m_staticText3, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
48 
49  m_pasValue = new wxTextCtrl( m_passive, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
50  m_pasValue->SetMinSize( wxSize( 200,-1 ) );
51 
52  fgSizer1->Add( m_pasValue, 0, wxALL|wxEXPAND, 5 );
53 
54  m_staticText63 = new wxStaticText( m_passive, wxID_ANY, _("Spice value in simulation"), wxDefaultPosition, wxDefaultSize, 0 );
55  m_staticText63->Wrap( -1 );
56  fgSizer1->Add( m_staticText63, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
57 
58 
59  bSizer41->Add( fgSizer1, 0, wxEXPAND|wxALL, 5 );
60 
61  m_staticline1 = new wxStaticLine( m_passive, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
62  bSizer41->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 );
63 
64  wxBoxSizer* bSizer5;
65  bSizer5 = new wxBoxSizer( wxVERTICAL );
66 
67  m_staticText32 = new wxStaticText( m_passive, wxID_ANY, _("In Spice values,the decimal separator is the point.\nValues can use Spice unit symbols."), wxDefaultPosition, wxDefaultSize, 0 );
68  m_staticText32->Wrap( -1 );
69  bSizer5->Add( m_staticText32, 0, wxALL, 5 );
70 
71  m_staticText321 = new wxStaticText( m_passive, wxID_ANY, _("Spice unit symbols in values (case insensitive):"), wxDefaultPosition, wxDefaultSize, 0 );
72  m_staticText321->Wrap( -1 );
73  bSizer5->Add( m_staticText321, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
74 
75  wxFlexGridSizer* fgSizerUnitSymbols;
76  fgSizerUnitSymbols = new wxFlexGridSizer( 0, 3, 0, 0 );
77  fgSizerUnitSymbols->AddGrowableCol( 1 );
78  fgSizerUnitSymbols->SetFlexibleDirection( wxBOTH );
79  fgSizerUnitSymbols->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
80 
81  m_staticText341 = new wxStaticText( m_passive, wxID_ANY, _("f"), wxDefaultPosition, wxDefaultSize, 0 );
82  m_staticText341->Wrap( -1 );
83  fgSizerUnitSymbols->Add( m_staticText341, 0, wxALL, 5 );
84 
85  m_staticText_femto = new wxStaticText( m_passive, wxID_ANY, _("femto"), wxDefaultPosition, wxDefaultSize, 0 );
86  m_staticText_femto->Wrap( -1 );
87  fgSizerUnitSymbols->Add( m_staticText_femto, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
88 
89  m_staticText36 = new wxStaticText( m_passive, wxID_ANY, _("1e-15"), wxDefaultPosition, wxDefaultSize, 0 );
90  m_staticText36->Wrap( -1 );
91  fgSizerUnitSymbols->Add( m_staticText36, 0, wxALL, 5 );
92 
93  m_staticText37 = new wxStaticText( m_passive, wxID_ANY, _("p"), wxDefaultPosition, wxDefaultSize, 0 );
94  m_staticText37->Wrap( -1 );
95  fgSizerUnitSymbols->Add( m_staticText37, 0, wxALL, 5 );
96 
97  m_staticText38 = new wxStaticText( m_passive, wxID_ANY, _("pico"), wxDefaultPosition, wxDefaultSize, 0 );
98  m_staticText38->Wrap( -1 );
99  fgSizerUnitSymbols->Add( m_staticText38, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
100 
101  m_staticText39 = new wxStaticText( m_passive, wxID_ANY, _("1e-12"), wxDefaultPosition, wxDefaultSize, 0 );
102  m_staticText39->Wrap( -1 );
103  fgSizerUnitSymbols->Add( m_staticText39, 0, wxALL, 5 );
104 
105  m_staticText40 = new wxStaticText( m_passive, wxID_ANY, _("n"), wxDefaultPosition, wxDefaultSize, 0 );
106  m_staticText40->Wrap( -1 );
107  fgSizerUnitSymbols->Add( m_staticText40, 0, wxALL, 5 );
108 
109  m_staticText41 = new wxStaticText( m_passive, wxID_ANY, _("nano"), wxDefaultPosition, wxDefaultSize, 0 );
110  m_staticText41->Wrap( -1 );
111  fgSizerUnitSymbols->Add( m_staticText41, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
112 
113  m_staticText42 = new wxStaticText( m_passive, wxID_ANY, _("1e-9"), wxDefaultPosition, wxDefaultSize, 0 );
114  m_staticText42->Wrap( -1 );
115  fgSizerUnitSymbols->Add( m_staticText42, 0, wxALL, 5 );
116 
117  m_staticText43 = new wxStaticText( m_passive, wxID_ANY, _("u"), wxDefaultPosition, wxDefaultSize, 0 );
118  m_staticText43->Wrap( -1 );
119  fgSizerUnitSymbols->Add( m_staticText43, 0, wxALL, 5 );
120 
121  m_staticText44 = new wxStaticText( m_passive, wxID_ANY, _("micro"), wxDefaultPosition, wxDefaultSize, 0 );
122  m_staticText44->Wrap( -1 );
123  fgSizerUnitSymbols->Add( m_staticText44, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
124 
125  m_staticText46 = new wxStaticText( m_passive, wxID_ANY, _("1e-6"), wxDefaultPosition, wxDefaultSize, 0 );
126  m_staticText46->Wrap( -1 );
127  fgSizerUnitSymbols->Add( m_staticText46, 0, wxALL, 5 );
128 
129  m_staticText47 = new wxStaticText( m_passive, wxID_ANY, _("m"), wxDefaultPosition, wxDefaultSize, 0 );
130  m_staticText47->Wrap( -1 );
131  fgSizerUnitSymbols->Add( m_staticText47, 0, wxALL, 5 );
132 
133  m_staticText48 = new wxStaticText( m_passive, wxID_ANY, _("milli"), wxDefaultPosition, wxDefaultSize, 0 );
134  m_staticText48->Wrap( -1 );
135  fgSizerUnitSymbols->Add( m_staticText48, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
136 
137  m_staticText45 = new wxStaticText( m_passive, wxID_ANY, _("1e-3"), wxDefaultPosition, wxDefaultSize, 0 );
138  m_staticText45->Wrap( -1 );
139  fgSizerUnitSymbols->Add( m_staticText45, 0, wxALL, 5 );
140 
141  m_staticText49 = new wxStaticText( m_passive, wxID_ANY, _("k"), wxDefaultPosition, wxDefaultSize, 0 );
142  m_staticText49->Wrap( -1 );
143  fgSizerUnitSymbols->Add( m_staticText49, 0, wxALL, 5 );
144 
145  m_staticText50 = new wxStaticText( m_passive, wxID_ANY, _("kilo"), wxDefaultPosition, wxDefaultSize, 0 );
146  m_staticText50->Wrap( -1 );
147  fgSizerUnitSymbols->Add( m_staticText50, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
148 
149  m_staticText51 = new wxStaticText( m_passive, wxID_ANY, _("1e3"), wxDefaultPosition, wxDefaultSize, 0 );
150  m_staticText51->Wrap( -1 );
151  fgSizerUnitSymbols->Add( m_staticText51, 0, wxALL, 5 );
152 
153  m_staticText52 = new wxStaticText( m_passive, wxID_ANY, _("meg"), wxDefaultPosition, wxDefaultSize, 0 );
154  m_staticText52->Wrap( -1 );
155  fgSizerUnitSymbols->Add( m_staticText52, 0, wxALL, 5 );
156 
157  m_staticText53 = new wxStaticText( m_passive, wxID_ANY, _("mega"), wxDefaultPosition, wxDefaultSize, 0 );
158  m_staticText53->Wrap( -1 );
159  fgSizerUnitSymbols->Add( m_staticText53, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
160 
161  m_staticText54 = new wxStaticText( m_passive, wxID_ANY, _("1e6"), wxDefaultPosition, wxDefaultSize, 0 );
162  m_staticText54->Wrap( -1 );
163  fgSizerUnitSymbols->Add( m_staticText54, 0, wxALL, 5 );
164 
165  m_staticText55 = new wxStaticText( m_passive, wxID_ANY, _("g"), wxDefaultPosition, wxDefaultSize, 0 );
166  m_staticText55->Wrap( -1 );
167  fgSizerUnitSymbols->Add( m_staticText55, 0, wxALL, 5 );
168 
169  m_staticText56 = new wxStaticText( m_passive, wxID_ANY, _("giga"), wxDefaultPosition, wxDefaultSize, 0 );
170  m_staticText56->Wrap( -1 );
171  fgSizerUnitSymbols->Add( m_staticText56, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
172 
173  m_staticText57 = new wxStaticText( m_passive, wxID_ANY, _("1e9"), wxDefaultPosition, wxDefaultSize, 0 );
174  m_staticText57->Wrap( -1 );
175  fgSizerUnitSymbols->Add( m_staticText57, 0, wxALL, 5 );
176 
177  m_staticText58 = new wxStaticText( m_passive, wxID_ANY, _("t"), wxDefaultPosition, wxDefaultSize, 0 );
178  m_staticText58->Wrap( -1 );
179  fgSizerUnitSymbols->Add( m_staticText58, 0, wxALL, 5 );
180 
181  m_staticText59 = new wxStaticText( m_passive, wxID_ANY, _("tera"), wxDefaultPosition, wxDefaultSize, 0 );
182  m_staticText59->Wrap( -1 );
183  fgSizerUnitSymbols->Add( m_staticText59, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
184 
185  m_staticText60 = new wxStaticText( m_passive, wxID_ANY, _("1e12"), wxDefaultPosition, wxDefaultSize, 0 );
186  m_staticText60->Wrap( -1 );
187  fgSizerUnitSymbols->Add( m_staticText60, 0, wxALL, 5 );
188 
189 
190  bSizer5->Add( fgSizerUnitSymbols, 1, wxEXPAND, 5 );
191 
192 
193  bSizer41->Add( bSizer5, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
194 
195 
196  m_passive->SetSizer( bSizer41 );
197  m_passive->Layout();
198  bSizer41->Fit( m_passive );
199  m_notebook->AddPage( m_passive, _("Passive"), true );
200  m_model = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
201  wxBoxSizer* bSizer6;
202  bSizer6 = new wxBoxSizer( wxVERTICAL );
203 
204  wxFlexGridSizer* fgSizer3;
205  fgSizer3 = new wxFlexGridSizer( 0, 2, 0, 0 );
206  fgSizer3->AddGrowableCol( 1 );
207  fgSizer3->SetFlexibleDirection( wxBOTH );
208  fgSizer3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
209 
210  m_staticText7 = new wxStaticText( m_model, wxID_ANY, _("Library:"), wxDefaultPosition, wxDefaultSize, 0 );
211  m_staticText7->Wrap( -1 );
212  fgSizer3->Add( m_staticText7, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
213 
214  wxBoxSizer* bSizer7;
215  bSizer7 = new wxBoxSizer( wxHORIZONTAL );
216 
217  m_modelLibrary = new wxTextCtrl( m_model, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY );
218  bSizer7->Add( m_modelLibrary, 1, wxALIGN_CENTER_VERTICAL|wxALL|wxEXPAND, 5 );
219 
220  m_selectLibrary = new wxButton( m_model, wxID_ANY, _("Select file..."), wxDefaultPosition, wxDefaultSize, 0 );
221  bSizer7->Add( m_selectLibrary, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
222 
223 
224  fgSizer3->Add( bSizer7, 1, wxEXPAND, 5 );
225 
226  m_staticText5 = new wxStaticText( m_model, wxID_ANY, _("Model:"), wxDefaultPosition, wxDefaultSize, 0 );
227  m_staticText5->Wrap( -1 );
228  fgSizer3->Add( m_staticText5, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
229 
230  m_modelName = new wxComboBox( m_model, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_SORT );
231  fgSizer3->Add( m_modelName, 0, wxALL|wxEXPAND, 5 );
232 
233  m_staticText4 = new wxStaticText( m_model, wxID_ANY, _("Type:"), wxDefaultPosition, wxDefaultSize, 0 );
234  m_staticText4->Wrap( -1 );
235  fgSizer3->Add( m_staticText4, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
236 
237  m_modelType = new wxComboBox( m_model, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_READONLY );
238  m_modelType->Append( _("Subcircuit") );
239  m_modelType->Append( _("BJT") );
240  m_modelType->Append( _("MOSFET") );
241  m_modelType->Append( _("Diode") );
242  fgSizer3->Add( m_modelType, 0, wxALL|wxEXPAND, 5 );
243 
244 
245  bSizer6->Add( fgSizer3, 0, wxEXPAND, 5 );
246 
247  m_libraryContents = new wxTextCtrl( m_model, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_DONTWRAP|wxTE_MULTILINE|wxTE_READONLY );
248  m_libraryContents->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_TELETYPE, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
249 
250  bSizer6->Add( m_libraryContents, 1, wxALL|wxEXPAND, 5 );
251 
252 
253  m_model->SetSizer( bSizer6 );
254  m_model->Layout();
255  bSizer6->Fit( m_model );
256  m_notebook->AddPage( m_model, _("Model"), false );
257  m_power = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
258  m_power->SetMinSize( wxSize( 650,-1 ) );
259 
260  wxBoxSizer* bSizer4;
261  bSizer4 = new wxBoxSizer( wxVERTICAL );
262 
263  wxStaticBoxSizer* sbSizer1;
264  sbSizer1 = new wxStaticBoxSizer( new wxStaticBox( m_power, wxID_ANY, _("DC/AC analysis:") ), wxVERTICAL );
265 
266  wxFlexGridSizer* fgSizer6;
267  fgSizer6 = new wxFlexGridSizer( 0, 6, 0, 0 );
268  fgSizer6->AddGrowableCol( 1 );
269  fgSizer6->AddGrowableCol( 3 );
270  fgSizer6->SetFlexibleDirection( wxBOTH );
271  fgSizer6->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
272 
273  m_staticText10 = new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY, _("DC:"), wxDefaultPosition, wxDefaultSize, 0 );
274  m_staticText10->Wrap( -1 );
275  fgSizer6->Add( m_staticText10, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
276 
277  m_genDc = new wxTextCtrl( sbSizer1->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
278  m_genDc->SetMinSize( wxSize( 60,-1 ) );
279 
280  fgSizer6->Add( m_genDc, 0, wxALL|wxEXPAND, 5 );
281 
282  m_staticText113 = new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
283  m_staticText113->Wrap( -1 );
284  fgSizer6->Add( m_staticText113, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
285 
286 
287  fgSizer6->Add( 0, 0, 1, wxEXPAND, 5 );
288 
289 
290  fgSizer6->Add( 0, 0, 1, wxEXPAND, 5 );
291 
292 
293  fgSizer6->Add( 0, 0, 1, wxEXPAND, 5 );
294 
295  m_staticText11 = new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY, _("AC magnitude:"), wxDefaultPosition, wxDefaultSize, 0 );
296  m_staticText11->Wrap( -1 );
297  fgSizer6->Add( m_staticText11, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
298 
299  m_genAcMag = new wxTextCtrl( sbSizer1->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
300  m_genAcMag->SetMinSize( wxSize( 60,-1 ) );
301 
302  fgSizer6->Add( m_genAcMag, 0, wxALL|wxEXPAND, 5 );
303 
304  m_staticText111 = new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
305  m_staticText111->Wrap( -1 );
306  fgSizer6->Add( m_staticText111, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
307 
308  m_staticText12 = new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY, _("AC phase:"), wxDefaultPosition, wxDefaultSize, 0 );
309  m_staticText12->Wrap( -1 );
310  fgSizer6->Add( m_staticText12, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxALL, 5 );
311 
312  m_genAcPhase = new wxTextCtrl( sbSizer1->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
313  m_genAcPhase->SetMinSize( wxSize( 60,-1 ) );
314 
315  fgSizer6->Add( m_genAcPhase, 0, wxALL|wxEXPAND, 5 );
316 
317  m_staticText112 = new wxStaticText( sbSizer1->GetStaticBox(), wxID_ANY, _("radians"), wxDefaultPosition, wxDefaultSize, 0 );
318  m_staticText112->Wrap( -1 );
319  fgSizer6->Add( m_staticText112, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
320 
321 
322  sbSizer1->Add( fgSizer6, 1, wxEXPAND, 5 );
323 
324 
325  bSizer4->Add( sbSizer1, 0, wxALL|wxEXPAND, 5 );
326 
327  wxStaticBoxSizer* sbSizer3;
328  sbSizer3 = new wxStaticBoxSizer( new wxStaticBox( m_power, wxID_ANY, _("Transient analysis:") ), wxVERTICAL );
329 
330  m_powerNotebook = new wxNotebook( sbSizer3->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
331  m_pwrPulse = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
332  wxFlexGridSizer* fgSizer7;
333  fgSizer7 = new wxFlexGridSizer( 0, 3, 0, 0 );
334  fgSizer7->AddGrowableCol( 1 );
335  fgSizer7->SetFlexibleDirection( wxBOTH );
336  fgSizer7->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
337 
338  m_staticText13 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Initial value:"), wxDefaultPosition, wxDefaultSize, 0 );
339  m_staticText13->Wrap( -1 );
340  fgSizer7->Add( m_staticText13, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
341 
342  m_pulseInit = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
343  m_pulseInit->SetMinSize( wxSize( 100,-1 ) );
344 
345  fgSizer7->Add( m_pulseInit, 0, wxALL|wxEXPAND, 5 );
346 
347  m_staticText131 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
348  m_staticText131->Wrap( -1 );
349  fgSizer7->Add( m_staticText131, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
350 
351  m_staticText14 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Pulsed value:"), wxDefaultPosition, wxDefaultSize, 0 );
352  m_staticText14->Wrap( -1 );
353  fgSizer7->Add( m_staticText14, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
354 
355  m_pulseNominal = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
356  fgSizer7->Add( m_pulseNominal, 0, wxALL|wxEXPAND, 5 );
357 
358  m_staticText132 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
359  m_staticText132->Wrap( -1 );
360  fgSizer7->Add( m_staticText132, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
361 
362  m_staticText15 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Delay time:"), wxDefaultPosition, wxDefaultSize, 0 );
363  m_staticText15->Wrap( -1 );
364  fgSizer7->Add( m_staticText15, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
365 
366  m_pulseDelay = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
367  fgSizer7->Add( m_pulseDelay, 0, wxALL|wxEXPAND, 5 );
368 
369  m_staticText133 = new wxStaticText( m_pwrPulse, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
370  m_staticText133->Wrap( -1 );
371  fgSizer7->Add( m_staticText133, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
372 
373  m_staticText16 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Rise time:"), wxDefaultPosition, wxDefaultSize, 0 );
374  m_staticText16->Wrap( -1 );
375  fgSizer7->Add( m_staticText16, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
376 
377  m_pulseRise = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
378  fgSizer7->Add( m_pulseRise, 0, wxALL|wxEXPAND, 5 );
379 
380  m_staticText134 = new wxStaticText( m_pwrPulse, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
381  m_staticText134->Wrap( -1 );
382  fgSizer7->Add( m_staticText134, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
383 
384  m_staticText17 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Fall time:"), wxDefaultPosition, wxDefaultSize, 0 );
385  m_staticText17->Wrap( -1 );
386  fgSizer7->Add( m_staticText17, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
387 
388  m_pulseFall = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
389  fgSizer7->Add( m_pulseFall, 0, wxALL|wxEXPAND, 5 );
390 
391  m_staticText135 = new wxStaticText( m_pwrPulse, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
392  m_staticText135->Wrap( -1 );
393  fgSizer7->Add( m_staticText135, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
394 
395  m_staticText18 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Pulse width:"), wxDefaultPosition, wxDefaultSize, 0 );
396  m_staticText18->Wrap( -1 );
397  fgSizer7->Add( m_staticText18, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
398 
399  m_pulseWidth = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
400  fgSizer7->Add( m_pulseWidth, 0, wxALL|wxEXPAND, 5 );
401 
402  m_staticText136 = new wxStaticText( m_pwrPulse, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
403  m_staticText136->Wrap( -1 );
404  fgSizer7->Add( m_staticText136, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
405 
406  m_staticText20 = new wxStaticText( m_pwrPulse, wxID_ANY, _("Period:"), wxDefaultPosition, wxDefaultSize, 0 );
407  m_staticText20->Wrap( -1 );
408  fgSizer7->Add( m_staticText20, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
409 
410  m_pulsePeriod = new wxTextCtrl( m_pwrPulse, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
411  fgSizer7->Add( m_pulsePeriod, 0, wxALL|wxEXPAND, 5 );
412 
413  m_staticText137 = new wxStaticText( m_pwrPulse, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
414  m_staticText137->Wrap( -1 );
415  fgSizer7->Add( m_staticText137, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
416 
417 
418  m_pwrPulse->SetSizer( fgSizer7 );
419  m_pwrPulse->Layout();
420  fgSizer7->Fit( m_pwrPulse );
421  m_powerNotebook->AddPage( m_pwrPulse, _("Pulse"), true );
422  m_pwrSin = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
423  wxFlexGridSizer* fgSizer8;
424  fgSizer8 = new wxFlexGridSizer( 0, 3, 0, 0 );
425  fgSizer8->AddGrowableCol( 1 );
426  fgSizer8->SetFlexibleDirection( wxBOTH );
427  fgSizer8->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
428 
429  m_staticText21 = new wxStaticText( m_pwrSin, wxID_ANY, _("DC offset:"), wxDefaultPosition, wxDefaultSize, 0 );
430  m_staticText21->Wrap( -1 );
431  fgSizer8->Add( m_staticText21, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
432 
433  m_sinOffset = new wxTextCtrl( m_pwrSin, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
434  m_sinOffset->SetMinSize( wxSize( 100,-1 ) );
435 
436  fgSizer8->Add( m_sinOffset, 0, wxALL|wxEXPAND, 5 );
437 
438  m_staticText211 = new wxStaticText( m_pwrSin, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
439  m_staticText211->Wrap( -1 );
440  fgSizer8->Add( m_staticText211, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
441 
442  m_staticText22 = new wxStaticText( m_pwrSin, wxID_ANY, _("Amplitude:"), wxDefaultPosition, wxDefaultSize, 0 );
443  m_staticText22->Wrap( -1 );
444  fgSizer8->Add( m_staticText22, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
445 
446  m_sinAmplitude = new wxTextCtrl( m_pwrSin, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
447  fgSizer8->Add( m_sinAmplitude, 0, wxALL|wxEXPAND, 5 );
448 
449  m_staticText212 = new wxStaticText( m_pwrSin, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
450  m_staticText212->Wrap( -1 );
451  fgSizer8->Add( m_staticText212, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
452 
453  m_staticText23 = new wxStaticText( m_pwrSin, wxID_ANY, _("Frequency:"), wxDefaultPosition, wxDefaultSize, 0 );
454  m_staticText23->Wrap( -1 );
455  fgSizer8->Add( m_staticText23, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
456 
457  m_sinFreq = new wxTextCtrl( m_pwrSin, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
458  fgSizer8->Add( m_sinFreq, 0, wxALL|wxEXPAND, 5 );
459 
460  m_staticText213 = new wxStaticText( m_pwrSin, wxID_ANY, _("Hz"), wxDefaultPosition, wxDefaultSize, 0 );
461  m_staticText213->Wrap( -1 );
462  fgSizer8->Add( m_staticText213, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
463 
464  m_staticText24 = new wxStaticText( m_pwrSin, wxID_ANY, _("Delay:"), wxDefaultPosition, wxDefaultSize, 0 );
465  m_staticText24->Wrap( -1 );
466  fgSizer8->Add( m_staticText24, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
467 
468  m_sinDelay = new wxTextCtrl( m_pwrSin, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
469  fgSizer8->Add( m_sinDelay, 0, wxALL|wxEXPAND, 5 );
470 
471  m_staticText214 = new wxStaticText( m_pwrSin, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
472  m_staticText214->Wrap( -1 );
473  fgSizer8->Add( m_staticText214, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
474 
475  m_staticText25 = new wxStaticText( m_pwrSin, wxID_ANY, _("Damping factor:"), wxDefaultPosition, wxDefaultSize, 0 );
476  m_staticText25->Wrap( -1 );
477  fgSizer8->Add( m_staticText25, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
478 
479  m_sinDampFactor = new wxTextCtrl( m_pwrSin, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
480  fgSizer8->Add( m_sinDampFactor, 0, wxALL|wxEXPAND, 5 );
481 
482  m_staticText215 = new wxStaticText( m_pwrSin, wxID_ANY, _("1/seconds"), wxDefaultPosition, wxDefaultSize, 0 );
483  m_staticText215->Wrap( -1 );
484  fgSizer8->Add( m_staticText215, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
485 
486 
487  m_pwrSin->SetSizer( fgSizer8 );
488  m_pwrSin->Layout();
489  fgSizer8->Fit( m_pwrSin );
490  m_powerNotebook->AddPage( m_pwrSin, _("Sinusoidal"), false );
491  m_pwrExp = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
492  wxFlexGridSizer* fgSizer9;
493  fgSizer9 = new wxFlexGridSizer( 0, 3, 0, 0 );
494  fgSizer9->AddGrowableCol( 1 );
495  fgSizer9->SetFlexibleDirection( wxBOTH );
496  fgSizer9->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
497 
498  m_staticText26 = new wxStaticText( m_pwrExp, wxID_ANY, _("Initial value:"), wxDefaultPosition, wxDefaultSize, 0 );
499  m_staticText26->Wrap( -1 );
500  fgSizer9->Add( m_staticText26, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
501 
502  m_expInit = new wxTextCtrl( m_pwrExp, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
503  m_expInit->SetMinSize( wxSize( 100,-1 ) );
504 
505  fgSizer9->Add( m_expInit, 0, wxALL|wxEXPAND, 5 );
506 
507  m_staticText261 = new wxStaticText( m_pwrExp, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
508  m_staticText261->Wrap( -1 );
509  fgSizer9->Add( m_staticText261, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
510 
511  m_staticText27 = new wxStaticText( m_pwrExp, wxID_ANY, _("Pulsed value:"), wxDefaultPosition, wxDefaultSize, 0 );
512  m_staticText27->Wrap( -1 );
513  fgSizer9->Add( m_staticText27, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
514 
515  m_expPulsed = new wxTextCtrl( m_pwrExp, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
516  fgSizer9->Add( m_expPulsed, 0, wxALL|wxEXPAND, 5 );
517 
518  m_staticText262 = new wxStaticText( m_pwrExp, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
519  m_staticText262->Wrap( -1 );
520  fgSizer9->Add( m_staticText262, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
521 
522  m_staticText28 = new wxStaticText( m_pwrExp, wxID_ANY, _("Rise delay time:"), wxDefaultPosition, wxDefaultSize, 0 );
523  m_staticText28->Wrap( -1 );
524  fgSizer9->Add( m_staticText28, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
525 
526  m_expRiseDelay = new wxTextCtrl( m_pwrExp, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
527  fgSizer9->Add( m_expRiseDelay, 0, wxALL|wxEXPAND, 5 );
528 
529  m_staticText263 = new wxStaticText( m_pwrExp, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
530  m_staticText263->Wrap( -1 );
531  fgSizer9->Add( m_staticText263, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
532 
533  m_staticText29 = new wxStaticText( m_pwrExp, wxID_ANY, _("Rise time constant:"), wxDefaultPosition, wxDefaultSize, 0 );
534  m_staticText29->Wrap( -1 );
535  fgSizer9->Add( m_staticText29, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
536 
537  m_expRiseConst = new wxTextCtrl( m_pwrExp, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
538  fgSizer9->Add( m_expRiseConst, 0, wxALL|wxEXPAND, 5 );
539 
540  m_staticText264 = new wxStaticText( m_pwrExp, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
541  m_staticText264->Wrap( -1 );
542  fgSizer9->Add( m_staticText264, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
543 
544  m_staticText30 = new wxStaticText( m_pwrExp, wxID_ANY, _("Fall delay time:"), wxDefaultPosition, wxDefaultSize, 0 );
545  m_staticText30->Wrap( -1 );
546  fgSizer9->Add( m_staticText30, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
547 
548  m_expFallDelay = new wxTextCtrl( m_pwrExp, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
549  fgSizer9->Add( m_expFallDelay, 0, wxALL|wxEXPAND, 5 );
550 
551  m_staticText265 = new wxStaticText( m_pwrExp, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
552  m_staticText265->Wrap( -1 );
553  fgSizer9->Add( m_staticText265, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
554 
555  m_staticText31 = new wxStaticText( m_pwrExp, wxID_ANY, _("Fall time constant:"), wxDefaultPosition, wxDefaultSize, 0 );
556  m_staticText31->Wrap( -1 );
557  fgSizer9->Add( m_staticText31, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
558 
559  m_expFallConst = new wxTextCtrl( m_pwrExp, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
560  fgSizer9->Add( m_expFallConst, 0, wxALL|wxEXPAND, 5 );
561 
562  m_staticText266 = new wxStaticText( m_pwrExp, wxID_ANY, _("seconds"), wxDefaultPosition, wxDefaultSize, 0 );
563  m_staticText266->Wrap( -1 );
564  fgSizer9->Add( m_staticText266, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
565 
566 
567  m_pwrExp->SetSizer( fgSizer9 );
568  m_pwrExp->Layout();
569  fgSizer9->Fit( m_pwrExp );
570  m_powerNotebook->AddPage( m_pwrExp, _("Exponential"), false );
571  m_pwrPwl = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
572  m_pwrPwl->SetToolTip( _("Piece-wise linear") );
573 
574  wxFlexGridSizer* fgSizer15;
575  fgSizer15 = new wxFlexGridSizer( 0, 2, 0, 0 );
576  fgSizer15->AddGrowableCol( 0 );
577  fgSizer15->AddGrowableRow( 1 );
578  fgSizer15->SetFlexibleDirection( wxBOTH );
579  fgSizer15->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_ALL );
580 
581  wxFlexGridSizer* fgSizer10;
582  fgSizer10 = new wxFlexGridSizer( 0, 3, 0, 0 );
583  fgSizer10->AddGrowableCol( 1 );
584  fgSizer10->SetFlexibleDirection( wxBOTH );
585  fgSizer10->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
586 
587  m_staticText34 = new wxStaticText( m_pwrPwl, wxID_ANY, _("Time:"), wxDefaultPosition, wxDefaultSize, 0 );
588  m_staticText34->Wrap( -1 );
589  fgSizer10->Add( m_staticText34, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
590 
591  m_pwlTime = new wxTextCtrl( m_pwrPwl, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
592  m_pwlTime->SetMinSize( wxSize( 100,-1 ) );
593 
594  fgSizer10->Add( m_pwlTime, 0, wxALL|wxEXPAND, 5 );
595 
596  m_staticText342 = new wxStaticText( m_pwrPwl, wxID_ANY, _("second"), wxDefaultPosition, wxDefaultSize, 0 );
597  m_staticText342->Wrap( -1 );
598  fgSizer10->Add( m_staticText342, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
599 
600  m_staticText35 = new wxStaticText( m_pwrPwl, wxID_ANY, _("Value:"), wxDefaultPosition, wxDefaultSize, 0 );
601  m_staticText35->Wrap( -1 );
602  fgSizer10->Add( m_staticText35, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
603 
604  m_pwlValue = new wxTextCtrl( m_pwrPwl, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
605  fgSizer10->Add( m_pwlValue, 0, wxALL|wxEXPAND, 5 );
606 
607  m_staticText343 = new wxStaticText( m_pwrPwl, wxID_ANY, _("Volts/Amps"), wxDefaultPosition, wxDefaultSize, 0 );
608  m_staticText343->Wrap( -1 );
609  fgSizer10->Add( m_staticText343, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_LEFT, 5 );
610 
611 
612  fgSizer15->Add( fgSizer10, 1, wxEXPAND, 5 );
613 
614  m_pwlAddButton = new wxButton( m_pwrPwl, wxID_ANY, _("Add"), wxDefaultPosition, wxDefaultSize, 0 );
615  fgSizer15->Add( m_pwlAddButton, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
616 
617  m_pwlValList = new wxListCtrl( m_pwrPwl, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_REPORT|wxLC_SINGLE_SEL );
618  m_pwlValList->SetMinSize( wxSize( 200,-1 ) );
619 
620  fgSizer15->Add( m_pwlValList, 0, wxALL|wxEXPAND, 5 );
621 
622  m_pwlRemoveBtn = new wxButton( m_pwrPwl, wxID_ANY, _("Remove"), wxDefaultPosition, wxDefaultSize, 0 );
623  fgSizer15->Add( m_pwlRemoveBtn, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
624 
625 
626  m_pwrPwl->SetSizer( fgSizer15 );
627  m_pwrPwl->Layout();
628  fgSizer15->Fit( m_pwrPwl );
629  m_powerNotebook->AddPage( m_pwrPwl, _("Piece-wise Linear"), false );
630  m_pwrFm = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
631  m_pwrFm->Hide();
632 
633  m_powerNotebook->AddPage( m_pwrFm, _("FM"), false );
634  m_pwrAm = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
635  m_pwrAm->Hide();
636 
637  m_powerNotebook->AddPage( m_pwrAm, _("AM"), false );
638  m_pwrTransNoise = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
639  m_pwrTransNoise->Hide();
640 
641  m_powerNotebook->AddPage( m_pwrTransNoise, _("Transient noise"), false );
642  m_pwrRandom = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
643  m_pwrRandom->Hide();
644 
645  m_powerNotebook->AddPage( m_pwrRandom, _("Random"), false );
646  m_pwrExtData = new wxPanel( m_powerNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
647  m_pwrExtData->Hide();
648 
649  m_powerNotebook->AddPage( m_pwrExtData, _("External data"), false );
650 
651  sbSizer3->Add( m_powerNotebook, 0, wxEXPAND | wxALL, 5 );
652 
653 
654  bSizer4->Add( sbSizer3, 0, wxALL|wxEXPAND, 5 );
655 
656  wxString m_pwrTypeChoices[] = { _("Voltage"), _("Current") };
657  int m_pwrTypeNChoices = sizeof( m_pwrTypeChoices ) / sizeof( wxString );
658  m_pwrType = new wxRadioBox( m_power, wxID_ANY, _("Source type:"), wxDefaultPosition, wxDefaultSize, m_pwrTypeNChoices, m_pwrTypeChoices, 1, wxRA_SPECIFY_ROWS );
659  m_pwrType->SetSelection( 1 );
660  bSizer4->Add( m_pwrType, 0, wxALL|wxEXPAND, 5 );
661 
662 
663  m_power->SetSizer( bSizer4 );
664  m_power->Layout();
665  bSizer4->Fit( m_power );
666  m_notebook->AddPage( m_power, _("Source"), false );
667 
668  bSizer1->Add( m_notebook, 1, wxEXPAND | wxALL, 5 );
669 
670  m_staticline2 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
671  bSizer1->Add( m_staticline2, 0, wxEXPAND | wxALL, 5 );
672 
673  m_disabled = new wxCheckBox( this, wxID_ANY, _("Disable symbol for simulation"), wxDefaultPosition, wxDefaultSize, 0 );
674  bSizer1->Add( m_disabled, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
675 
676  wxBoxSizer* bSizer2;
677  bSizer2 = new wxBoxSizer( wxHORIZONTAL );
678 
679  m_nodeSeqCheck = new wxCheckBox( this, wxID_ANY, _("Alternate node sequence:"), wxDefaultPosition, wxDefaultSize, 0 );
680  bSizer2->Add( m_nodeSeqCheck, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
681 
682  m_nodeSeqVal = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
683  m_nodeSeqVal->SetMinSize( wxSize( 200,-1 ) );
684 
685  bSizer2->Add( m_nodeSeqVal, 1, wxALL, 5 );
686 
687 
688  bSizer1->Add( bSizer2, 0, wxEXPAND, 5 );
689 
690  m_staticline3 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
691  bSizer1->Add( m_staticline3, 0, wxEXPAND | wxALL, 5 );
692 
693  m_sdbSizer = new wxStdDialogButtonSizer();
694  m_sdbSizerOK = new wxButton( this, wxID_OK );
695  m_sdbSizer->AddButton( m_sdbSizerOK );
696  m_sdbSizerCancel = new wxButton( this, wxID_CANCEL );
697  m_sdbSizer->AddButton( m_sdbSizerCancel );
698  m_sdbSizer->Realize();
699 
700  bSizer1->Add( m_sdbSizer, 0, wxALL|wxEXPAND, 5 );
701 
702 
703  this->SetSizer( bSizer1 );
704  this->Layout();
705  bSizer1->Fit( this );
706 
707  this->Centre( wxBOTH );
708 
709  // Connect Events
710  this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_SPICE_MODEL_BASE::onInitDlg ) );
711  m_selectLibrary->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onSelectLibrary ), NULL, this );
712  m_modelName->Connect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onModelSelected ), NULL, this );
713  m_modelName->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onModelSelected ), NULL, this );
714  m_pwlAddButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onPwlAdd ), NULL, this );
715  m_pwlRemoveBtn->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onPwlRemove ), NULL, this );
716 }
717 
719 {
720  // Disconnect Events
721  this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_SPICE_MODEL_BASE::onInitDlg ) );
722  m_selectLibrary->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onSelectLibrary ), NULL, this );
723  m_modelName->Disconnect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onModelSelected ), NULL, this );
724  m_modelName->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onModelSelected ), NULL, this );
725  m_pwlAddButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onPwlAdd ), NULL, this );
726  m_pwlRemoveBtn->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SPICE_MODEL_BASE::onPwlRemove ), NULL, this );
727 
728 }
virtual void onModelSelected(wxCommandEvent &event)
Class DIALOG_SHIM may sit in the inheritance tree between wxDialog and any class written by wxFormBui...
Definition: dialog_shim.h:70
wxStdDialogButtonSizer * m_sdbSizer
virtual void onInitDlg(wxInitDialogEvent &event)
virtual void onPwlAdd(wxCommandEvent &event)
virtual void onSelectLibrary(wxCommandEvent &event)
DIALOG_SPICE_MODEL_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Spice Model Editor"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
virtual void onPwlRemove(wxCommandEvent &event)