KiCad PCB EDA Suite
Loading...
Searching...
No Matches
dialog_sim_model_base.cpp
Go to the documentation of this file.
1
2// C++ code generated with wxFormBuilder (version 4.2.1-0-g80c4cb6a-dirty)
3// http://www.wxformbuilder.org/
4//
5// PLEASE DO *NOT* EDIT THIS FILE!
7
9#include "widgets/wx_grid.h"
10#include "widgets/wx_infobar.h"
11
13
15
16DIALOG_SIM_MODEL_BASE::DIALOG_SIM_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 )
17{
18 this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
19
20 wxBoxSizer* bSizerMain;
21 bSizerMain = new wxBoxSizer( wxVERTICAL );
22
23 m_infoBar = new WX_INFOBAR( this );
24 m_infoBar->SetShowHideEffects( wxSHOW_EFFECT_NONE, wxSHOW_EFFECT_NONE );
25 m_infoBar->SetEffectDuration( 500 );
26 m_infoBar->Hide();
27
28 bSizerMain->Add( m_infoBar, 0, wxEXPAND, 5 );
29
30 m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
31 m_modelPanel = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
32 wxBoxSizer* bSizerPanel;
33 bSizerPanel = new wxBoxSizer( wxVERTICAL );
34
35 wxBoxSizer* bSizerMargins;
36 bSizerMargins = new wxBoxSizer( wxVERTICAL );
37
38 m_rbLibraryModel = new wxRadioButton( m_modelPanel, wxID_ANY, _("SPICE model from file (*.lib, *.sub or *.ibs)"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
39 bSizerMargins->Add( m_rbLibraryModel, 0, wxLEFT, 5 );
40
41
42 bSizerMargins->Add( 0, 2, 0, 0, 5 );
43
44 wxGridBagSizer* gbSizer1;
45 gbSizer1 = new wxGridBagSizer( 3, 5 );
46 gbSizer1->SetFlexibleDirection( wxBOTH );
47 gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
48
49 m_pathLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("File:"), wxDefaultPosition, wxDefaultSize, 0 );
50 m_pathLabel->Wrap( -1 );
51 gbSizer1->Add( m_pathLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
52
53 wxBoxSizer* bSizer7;
54 bSizer7 = new wxBoxSizer( wxHORIZONTAL );
55
56 m_libraryPathText = new wxTextCtrl( m_modelPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
57 bSizer7->Add( m_libraryPathText, 1, wxALIGN_CENTER_VERTICAL, 3 );
58
59 m_browseButton = new STD_BITMAP_BUTTON( m_modelPanel, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
60 bSizer7->Add( m_browseButton, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
61
62
63 gbSizer1->Add( bSizer7, wxGBPosition( 0, 1 ), wxGBSpan( 1, 2 ), wxEXPAND, 5 );
64
65 m_modelNameLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("Model:"), wxDefaultPosition, wxDefaultSize, 0 );
66 m_modelNameLabel->Wrap( -1 );
67 gbSizer1->Add( m_modelNameLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxTOP, 4 );
68
69 wxBoxSizer* bSizer9;
70 bSizer9 = new wxBoxSizer( wxVERTICAL );
71
72 m_modelFilter = new wxSearchCtrl( m_modelPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
73 #ifndef __WXMAC__
74 m_modelFilter->ShowSearchButton( true );
75 #endif
76 m_modelFilter->ShowCancelButton( false );
77 bSizer9->Add( m_modelFilter, 0, wxEXPAND|wxRIGHT, 5 );
78
79 m_modelListBox = new wxListBox( m_modelPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
80 bSizer9->Add( m_modelListBox, 1, wxEXPAND|wxRIGHT, 5 );
81
82
83 gbSizer1->Add( bSizer9, wxGBPosition( 1, 1 ), wxGBSpan( 1, 2 ), wxEXPAND, 5 );
84
85
86 gbSizer1->Add( 0, 0, wxGBPosition( 1, 3 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
87
88 m_pinLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("Pin:"), wxDefaultPosition, wxDefaultSize, 0 );
89 m_pinLabel->Wrap( -1 );
90 gbSizer1->Add( m_pinLabel, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
91
92 m_pinCombobox = new wxComboBox( m_modelPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxTE_PROCESS_ENTER );
93 gbSizer1->Add( m_pinCombobox, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxBOTTOM, 2 );
94
95 m_differentialCheckbox = new wxCheckBox( m_modelPanel, wxID_ANY, _("Differential"), wxDefaultPosition, wxDefaultSize, 0 );
96 gbSizer1->Add( m_differentialCheckbox, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 40 );
97
98 m_pinModelLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("Pin model:"), wxDefaultPosition, wxDefaultSize, 0 );
99 m_pinModelLabel->Wrap( -1 );
100 gbSizer1->Add( m_pinModelLabel, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
101
102 m_pinModelCombobox = new wxComboBox( m_modelPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxTE_PROCESS_ENTER );
103 gbSizer1->Add( m_pinModelCombobox, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 1 );
104
105 m_waveformLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("Waveform:"), wxDefaultPosition, wxDefaultSize, 0 );
106 m_waveformLabel->Wrap( -1 );
107 gbSizer1->Add( m_waveformLabel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
108
109 wxArrayString m_waveformChoiceChoices;
110 m_waveformChoice = new wxChoice( m_modelPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_waveformChoiceChoices, 0 );
111 m_waveformChoice->SetSelection( 0 );
112 gbSizer1->Add( m_waveformChoice, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 2 );
113
114
115 gbSizer1->AddGrowableCol( 1 );
116 gbSizer1->AddGrowableRow( 1 );
117
118 bSizerMargins->Add( gbSizer1, 1, wxEXPAND|wxLEFT, 28 );
119
120
121 bSizerMargins->Add( 0, 18, 0, wxEXPAND, 5 );
122
123 m_rbBuiltinModel = new wxRadioButton( m_modelPanel, wxID_ANY, _("Built-in SPICE model"), wxDefaultPosition, wxDefaultSize, 0 );
124 bSizerMargins->Add( m_rbBuiltinModel, 0, wxBOTTOM|wxLEFT, 5 );
125
126 wxFlexGridSizer* fgSizer16;
127 fgSizer16 = new wxFlexGridSizer( 0, 2, 8, 0 );
128 fgSizer16->AddGrowableCol( 1 );
129 fgSizer16->SetFlexibleDirection( wxBOTH );
130 fgSizer16->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
131
132 m_deviceLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("Device:"), wxDefaultPosition, wxDefaultSize, 0 );
133 m_deviceLabel->Wrap( -1 );
134 fgSizer16->Add( m_deviceLabel, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
135
136 wxArrayString m_deviceChoiceChoices;
137 m_deviceChoice = new wxChoice( m_modelPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_deviceChoiceChoices, 0 );
138 m_deviceChoice->SetSelection( 0 );
139 fgSizer16->Add( m_deviceChoice, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT, 10 );
140
141 m_deviceSubtypeLabel = new wxStaticText( m_modelPanel, wxID_ANY, _("Device type:"), wxDefaultPosition, wxDefaultSize, 0 );
142 m_deviceSubtypeLabel->Wrap( -1 );
143 fgSizer16->Add( m_deviceSubtypeLabel, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
144
145 wxArrayString m_deviceSubtypeChoiceChoices;
146 m_deviceSubtypeChoice = new wxChoice( m_modelPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_deviceSubtypeChoiceChoices, 0 );
147 m_deviceSubtypeChoice->SetSelection( 0 );
148 fgSizer16->Add( m_deviceSubtypeChoice, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT, 10 );
149
150
151 bSizerMargins->Add( fgSizer16, 0, wxEXPAND|wxLEFT|wxRESERVE_SPACE_EVEN_IF_HIDDEN, 24 );
152
153
154 bSizerMargins->Add( 0, 10, 0, wxEXPAND, 5 );
155
156 m_modelNotebook = new wxNotebook( m_modelPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
157 m_parametersPanel = new wxPanel( m_modelNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
158 m_parametersPanel->SetMinSize( wxSize( 500,-1 ) );
159
160 wxBoxSizer* bSizer12;
161 bSizer12 = new wxBoxSizer( wxVERTICAL );
162
163 m_paramGridMgr = new wxPropertyGridManager(m_parametersPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxPGMAN_DEFAULT_STYLE|wxPG_SPLITTER_AUTO_CENTER);
164 m_paramGridMgr->SetExtraStyle( wxPG_EX_MODE_BUTTONS|wxPG_EX_NATIVE_DOUBLE_BUFFERING );
165 m_paramGridMgr->SetMinSize( wxSize( 500,-1 ) );
166
167
168 m_paramGrid = m_paramGridMgr->AddPage( _("Page"), wxNullBitmap );
169 bSizer12->Add( m_paramGridMgr, 1, wxALL|wxEXPAND, 5 );
170
171
172 m_parametersPanel->SetSizer( bSizer12 );
173 m_parametersPanel->Layout();
174 bSizer12->Fit( m_parametersPanel );
175 m_modelNotebook->AddPage( m_parametersPanel, _("Parameters"), true );
176 m_codePanel = new wxPanel( m_modelNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
177 wxBoxSizer* bSizer5;
178 bSizer5 = new wxBoxSizer( wxVERTICAL );
179
180 m_codePreview = new wxStyledTextCtrl( m_codePanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
181 m_codePreview->SetUseTabs( true );
182 m_codePreview->SetTabWidth( 4 );
183 m_codePreview->SetIndent( 4 );
184 m_codePreview->SetTabIndents( true );
185 m_codePreview->SetBackSpaceUnIndents( true );
186 m_codePreview->SetViewEOL( false );
187 m_codePreview->SetViewWhiteSpace( false );
188 m_codePreview->SetMarginWidth( 2, 0 );
189 m_codePreview->SetIndentationGuides( true );
190 m_codePreview->SetReadOnly( false );
191 m_codePreview->SetMarginType( 1, wxSTC_MARGIN_SYMBOL );
192 m_codePreview->SetMarginMask( 1, wxSTC_MASK_FOLDERS );
193 m_codePreview->SetMarginWidth( 1, 16);
194 m_codePreview->SetMarginSensitive( 1, true );
195 m_codePreview->SetProperty( wxT("fold"), wxT("1") );
196 m_codePreview->SetFoldFlags( wxSTC_FOLDFLAG_LINEBEFORE_CONTRACTED | wxSTC_FOLDFLAG_LINEAFTER_CONTRACTED );
197 m_codePreview->SetMarginType( 0, wxSTC_MARGIN_NUMBER );
198 m_codePreview->SetMarginWidth( 0, m_codePreview->TextWidth( wxSTC_STYLE_LINENUMBER, wxT("_99999") ) );
199 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDER, wxSTC_MARK_BOXPLUS );
200 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDER, wxColour( wxT("BLACK") ) );
201 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDER, wxColour( wxT("WHITE") ) );
202 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_BOXMINUS );
203 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT("BLACK") ) );
204 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT("WHITE") ) );
205 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY );
206 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_BOXPLUS );
207 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT("BLACK") ) );
208 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT("WHITE") ) );
209 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_BOXMINUS );
210 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT("BLACK") ) );
211 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT("WHITE") ) );
212 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY );
213 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY );
214 m_codePreview->SetSelBackground( true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHT ) );
215 m_codePreview->SetSelForeground( true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHTTEXT ) );
216 bSizer5->Add( m_codePreview, 1, wxEXPAND | wxALL, 5 );
217
218
219 m_codePanel->SetSizer( bSizer5 );
220 m_codePanel->Layout();
221 bSizer5->Fit( m_codePanel );
222 m_modelNotebook->AddPage( m_codePanel, _("Code"), false );
223
224 bSizerMargins->Add( m_modelNotebook, 1, wxEXPAND|wxALL, 5 );
225
226 m_saveInValueCheckbox = new wxCheckBox( m_modelPanel, wxID_ANY, _("Save {} in Value field as \"{}\""), wxDefaultPosition, wxDefaultSize, 0 );
227 bSizerMargins->Add( m_saveInValueCheckbox, 0, wxALL, 6 );
228
229
230 bSizerMargins->Add( 0, 2, 0, wxEXPAND, 5 );
231
232
233 bSizerPanel->Add( bSizerMargins, 1, wxEXPAND, 5 );
234
235
236 m_modelPanel->SetSizer( bSizerPanel );
237 m_modelPanel->Layout();
238 bSizerPanel->Fit( m_modelPanel );
239 m_notebook->AddPage( m_modelPanel, _("Model"), true );
240 m_pinAssignmentsPanel = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
241 wxBoxSizer* bSizer10;
242 bSizer10 = new wxBoxSizer( wxVERTICAL );
243
244 wxBoxSizer* bSizerDecomposition;
245 bSizerDecomposition = new wxBoxSizer( wxHORIZONTAL );
246
247 m_decompositionLabel = new wxStaticText( m_pinAssignmentsPanel, wxID_ANY, _("Decomposition:"), wxDefaultPosition, wxDefaultSize, 0 );
248 m_decompositionLabel->Wrap( -1 );
249 bSizerDecomposition->Add( m_decompositionLabel, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
250
251 wxString m_decompositionChoiceChoices[] = { _("Whole device"), _("Repeat per unit") };
252 int m_decompositionChoiceNChoices = sizeof( m_decompositionChoiceChoices ) / sizeof( wxString );
253 m_decompositionChoice = new wxChoice( m_pinAssignmentsPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_decompositionChoiceNChoices, m_decompositionChoiceChoices, 0 );
254 m_decompositionChoice->SetSelection( 0 );
255 bSizerDecomposition->Add( m_decompositionChoice, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
256
257 m_sharedPinsLabel = new wxStaticText( m_pinAssignmentsPanel, wxID_ANY, _("Shared model pins:"), wxDefaultPosition, wxDefaultSize, 0 );
258 m_sharedPinsLabel->Wrap( -1 );
259 bSizerDecomposition->Add( m_sharedPinsLabel, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
260
261 m_sharedPinsText = new wxTextCtrl( m_pinAssignmentsPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
262 bSizerDecomposition->Add( m_sharedPinsText, 1, wxALIGN_CENTER_VERTICAL|wxALL|wxEXPAND, 5 );
263
264
265 bSizer10->Add( bSizerDecomposition, 0, wxEXPAND, 5 );
266
267 m_pinAssignmentsGrid = new WX_GRID( m_pinAssignmentsPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
268
269 // Grid
270 m_pinAssignmentsGrid->CreateGrid( 0, 2 );
271 m_pinAssignmentsGrid->EnableEditing( true );
272 m_pinAssignmentsGrid->EnableGridLines( true );
273 m_pinAssignmentsGrid->EnableDragGridSize( false );
274 m_pinAssignmentsGrid->SetMargins( 0, 0 );
275
276 // Columns
277 m_pinAssignmentsGrid->SetColSize( 0, 160 );
278 m_pinAssignmentsGrid->SetColSize( 1, 160 );
279 m_pinAssignmentsGrid->EnableDragColMove( false );
280 m_pinAssignmentsGrid->EnableDragColSize( true );
281 m_pinAssignmentsGrid->SetColLabelValue( 0, _("Symbol Pin") );
282 m_pinAssignmentsGrid->SetColLabelValue( 1, _("Model Pin") );
283 m_pinAssignmentsGrid->SetColLabelSize( 22 );
284 m_pinAssignmentsGrid->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
285
286 // Rows
287 m_pinAssignmentsGrid->EnableDragRowSize( false );
288 m_pinAssignmentsGrid->SetRowLabelSize( 0 );
289 m_pinAssignmentsGrid->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
290
291 // Label Appearance
292
293 // Cell Defaults
294 m_pinAssignmentsGrid->SetDefaultCellAlignment( wxALIGN_LEFT, wxALIGN_CENTER );
295 bSizer10->Add( m_pinAssignmentsGrid, 1, wxALL|wxEXPAND, 5 );
296
297 m_subcktLabel = new wxStaticText( m_pinAssignmentsPanel, wxID_ANY, _("Reference"), wxDefaultPosition, wxDefaultSize, 0 );
298 m_subcktLabel->Wrap( -1 );
299 bSizer10->Add( m_subcktLabel, 0, wxTOP|wxRIGHT|wxLEFT, 8 );
300
301 m_subckt = new wxStyledTextCtrl( m_pinAssignmentsPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, wxEmptyString );
302 m_subckt->SetUseTabs( true );
303 m_subckt->SetTabWidth( 4 );
304 m_subckt->SetIndent( 4 );
305 m_subckt->SetTabIndents( true );
306 m_subckt->SetBackSpaceUnIndents( true );
307 m_subckt->SetViewEOL( false );
308 m_subckt->SetViewWhiteSpace( false );
309 m_subckt->SetMarginWidth( 2, 0 );
310 m_subckt->SetIndentationGuides( true );
311 m_subckt->SetReadOnly( false );
312 m_subckt->SetMarginType( 1, wxSTC_MARGIN_SYMBOL );
313 m_subckt->SetMarginMask( 1, wxSTC_MASK_FOLDERS );
314 m_subckt->SetMarginWidth( 1, 16);
315 m_subckt->SetMarginSensitive( 1, true );
316 m_subckt->SetProperty( wxT("fold"), wxT("1") );
317 m_subckt->SetFoldFlags( wxSTC_FOLDFLAG_LINEBEFORE_CONTRACTED | wxSTC_FOLDFLAG_LINEAFTER_CONTRACTED );
318 m_subckt->SetMarginType( 0, wxSTC_MARGIN_NUMBER );
319 m_subckt->SetMarginWidth( 0, m_subckt->TextWidth( wxSTC_STYLE_LINENUMBER, wxT("_99999") ) );
320 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDER, wxSTC_MARK_BOXPLUS );
321 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDER, wxColour( wxT("BLACK") ) );
322 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDER, wxColour( wxT("WHITE") ) );
323 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_BOXMINUS );
324 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT("BLACK") ) );
325 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT("WHITE") ) );
326 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY );
327 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_BOXPLUS );
328 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT("BLACK") ) );
329 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT("WHITE") ) );
330 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_BOXMINUS );
331 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT("BLACK") ) );
332 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT("WHITE") ) );
333 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY );
334 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY );
335 m_subckt->SetSelBackground( true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHT ) );
336 m_subckt->SetSelForeground( true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHTTEXT ) );
337 bSizer10->Add( m_subckt, 1, wxEXPAND | wxALL, 5 );
338
339
340 m_pinAssignmentsPanel->SetSizer( bSizer10 );
341 m_pinAssignmentsPanel->Layout();
342 bSizer10->Fit( m_pinAssignmentsPanel );
343 m_notebook->AddPage( m_pinAssignmentsPanel, _("Pin Assignments"), false );
344
345 bSizerMain->Add( m_notebook, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
346
347 wxBoxSizer* bSizerBottom;
348 bSizerBottom = new wxBoxSizer( wxHORIZONTAL );
349
350
351 bSizerBottom->Add( 30, 0, 1, wxEXPAND, 5 );
352
353 m_sdbSizer1 = new wxStdDialogButtonSizer();
354 m_sdbSizer1OK = new wxButton( this, wxID_OK );
355 m_sdbSizer1->AddButton( m_sdbSizer1OK );
356 m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL );
357 m_sdbSizer1->AddButton( m_sdbSizer1Cancel );
358 m_sdbSizer1->Realize();
359
360 bSizerBottom->Add( m_sdbSizer1, 0, wxEXPAND|wxALL, 5 );
361
362
363 bSizerMain->Add( bSizerBottom, 0, wxEXPAND|wxTOP|wxLEFT, 5 );
364
365
366 this->SetSizer( bSizerMain );
367 this->Layout();
368 bSizerMain->Fit( this );
369
370 this->Centre( wxBOTH );
371
372 // Connect Events
373 m_rbLibraryModel->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onRadioButton ), NULL, this );
374 m_pathLabel->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathLabelUpdate ), NULL, this );
375 m_libraryPathText->Connect( wxEVT_KILL_FOCUS, wxFocusEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathTextKillFocus ), NULL, this );
376 m_libraryPathText->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathText ), NULL, this );
377 m_libraryPathText->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathTextEnter ), NULL, this );
378 m_browseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onBrowseButtonClick ), NULL, this );
379 m_browseButton->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onBrowseButtonUpdate ), NULL, this );
380 m_modelNameLabel->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameLabelUpdate ), NULL, this );
381 m_modelFilter->Connect( wxEVT_CHAR_HOOK, wxKeyEventHandler( DIALOG_SIM_MODEL_BASE::onFilterCharHook ), NULL, this );
382 m_modelFilter->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onModelFilter ), NULL, this );
383 m_modelListBox->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameChoice ), NULL, this );
384 m_pinLabel->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onIbisPinLabelUpdate ), NULL, this );
385 m_pinCombobox->Connect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinCombobox ), NULL, this );
386 m_pinCombobox->Connect( wxEVT_KILL_FOCUS, wxFocusEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxKillFocus ), NULL, this );
387 m_pinCombobox->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinComboboxTextEnter ), NULL, this );
388 m_pinCombobox->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxUpdate ), NULL, this );
389 m_differentialCheckbox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onDifferentialCheckbox ), NULL, this );
390 m_differentialCheckbox->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onOverrideCheckboxUpdate ), NULL, this );
391 m_pinModelLabel->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onIbisModelLabelUpdate ), NULL, this );
392 m_pinModelCombobox->Connect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinModelCombobox ), NULL, this );
393 m_pinModelCombobox->Connect( wxEVT_KILL_FOCUS, wxFocusEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxKillFocus ), NULL, this );
394 m_pinModelCombobox->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinModelComboboxTextEnter ), NULL, this );
395 m_pinModelCombobox->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxUpdate ), NULL, this );
396 m_waveformChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onWaveformChoice ), NULL, this );
397 m_rbBuiltinModel->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onRadioButton ), NULL, this );
398 m_deviceLabel->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onDeviceTypeLabelUpdate ), NULL, this );
399 m_deviceChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onDeviceTypeChoice ), NULL, this );
400 m_deviceChoice->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onDeviceTypeChoiceUpdate ), NULL, this );
401 m_deviceSubtypeLabel->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onTypeLabelUpdate ), NULL, this );
402 m_deviceSubtypeChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onTypeChoice ), NULL, this );
403 m_modelNotebook->Connect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, wxNotebookEventHandler( DIALOG_SIM_MODEL_BASE::onPageChanging ), NULL, this );
404 m_paramGridMgr->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_SIM_MODEL_BASE::onSizeParamGrid ), NULL, this );
405 m_decompositionChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onDecompositionModeChoice ), NULL, this );
406 m_pinAssignmentsGrid->Connect( wxEVT_GRID_CELL_CHANGED, wxGridEventHandler( DIALOG_SIM_MODEL_BASE::onPinAssignmentsGridCellChange ), NULL, this );
407 m_pinAssignmentsGrid->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_SIM_MODEL_BASE::onPinAssignmentsGridSize ), NULL, this );
408}
409
411{
412 // Disconnect Events
413 m_rbLibraryModel->Disconnect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onRadioButton ), NULL, this );
414 m_pathLabel->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathLabelUpdate ), NULL, this );
415 m_libraryPathText->Disconnect( wxEVT_KILL_FOCUS, wxFocusEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathTextKillFocus ), NULL, this );
416 m_libraryPathText->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathText ), NULL, this );
417 m_libraryPathText->Disconnect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onLibraryPathTextEnter ), NULL, this );
418 m_browseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onBrowseButtonClick ), NULL, this );
419 m_browseButton->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onBrowseButtonUpdate ), NULL, this );
420 m_modelNameLabel->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameLabelUpdate ), NULL, this );
421 m_modelFilter->Disconnect( wxEVT_CHAR_HOOK, wxKeyEventHandler( DIALOG_SIM_MODEL_BASE::onFilterCharHook ), NULL, this );
422 m_modelFilter->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onModelFilter ), NULL, this );
423 m_modelListBox->Disconnect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameChoice ), NULL, this );
424 m_pinLabel->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onIbisPinLabelUpdate ), NULL, this );
425 m_pinCombobox->Disconnect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinCombobox ), NULL, this );
426 m_pinCombobox->Disconnect( wxEVT_KILL_FOCUS, wxFocusEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxKillFocus ), NULL, this );
427 m_pinCombobox->Disconnect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinComboboxTextEnter ), NULL, this );
428 m_pinCombobox->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxUpdate ), NULL, this );
429 m_differentialCheckbox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onDifferentialCheckbox ), NULL, this );
430 m_differentialCheckbox->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onOverrideCheckboxUpdate ), NULL, this );
431 m_pinModelLabel->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onIbisModelLabelUpdate ), NULL, this );
432 m_pinModelCombobox->Disconnect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinModelCombobox ), NULL, this );
433 m_pinModelCombobox->Disconnect( wxEVT_KILL_FOCUS, wxFocusEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxKillFocus ), NULL, this );
434 m_pinModelCombobox->Disconnect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onPinModelComboboxTextEnter ), NULL, this );
435 m_pinModelCombobox->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onModelNameComboboxUpdate ), NULL, this );
436 m_waveformChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onWaveformChoice ), NULL, this );
437 m_rbBuiltinModel->Disconnect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onRadioButton ), NULL, this );
438 m_deviceLabel->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onDeviceTypeLabelUpdate ), NULL, this );
439 m_deviceChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onDeviceTypeChoice ), NULL, this );
440 m_deviceChoice->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onDeviceTypeChoiceUpdate ), NULL, this );
441 m_deviceSubtypeLabel->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( DIALOG_SIM_MODEL_BASE::onTypeLabelUpdate ), NULL, this );
442 m_deviceSubtypeChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onTypeChoice ), NULL, this );
443 m_modelNotebook->Disconnect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING, wxNotebookEventHandler( DIALOG_SIM_MODEL_BASE::onPageChanging ), NULL, this );
444 m_paramGridMgr->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_SIM_MODEL_BASE::onSizeParamGrid ), NULL, this );
445 m_decompositionChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_SIM_MODEL_BASE::onDecompositionModeChoice ), NULL, this );
446 m_pinAssignmentsGrid->Disconnect( wxEVT_GRID_CELL_CHANGED, wxGridEventHandler( DIALOG_SIM_MODEL_BASE::onPinAssignmentsGridCellChange ), NULL, this );
447 m_pinAssignmentsGrid->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_SIM_MODEL_BASE::onPinAssignmentsGridSize ), NULL, this );
448
449}
DIALOG_SHIM(wxWindow *aParent, wxWindowID id, const wxString &title, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxDEFAULT_FRAME_STYLE|wxRESIZE_BORDER, const wxString &name=wxDialogNameStr)
virtual void onLibraryPathTextEnter(wxCommandEvent &event)
virtual void onDeviceTypeLabelUpdate(wxUpdateUIEvent &event)
virtual void onModelNameChoice(wxCommandEvent &event)
virtual void onPinAssignmentsGridSize(wxSizeEvent &event)
virtual void onWaveformChoice(wxCommandEvent &event)
virtual void onTypeChoice(wxCommandEvent &event)
virtual void onModelNameComboboxKillFocus(wxFocusEvent &event)
virtual void onTypeLabelUpdate(wxUpdateUIEvent &event)
virtual void onDeviceTypeChoiceUpdate(wxUpdateUIEvent &event)
wxPropertyGridManager * m_paramGridMgr
virtual void onRadioButton(wxCommandEvent &event)
wxStdDialogButtonSizer * m_sdbSizer1
virtual void onOverrideCheckboxUpdate(wxUpdateUIEvent &event)
virtual void onLibraryPathTextKillFocus(wxFocusEvent &event)
virtual void onModelNameComboboxUpdate(wxUpdateUIEvent &event)
virtual void onIbisPinLabelUpdate(wxUpdateUIEvent &event)
virtual void onBrowseButtonUpdate(wxUpdateUIEvent &event)
virtual void onBrowseButtonClick(wxCommandEvent &event)
virtual void onPinModelCombobox(wxCommandEvent &event)
virtual void onLibraryPathLabelUpdate(wxUpdateUIEvent &event)
virtual void onPinAssignmentsGridCellChange(wxGridEvent &event)
DIALOG_SIM_MODEL_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Simulation Model Editor"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
virtual void onFilterCharHook(wxKeyEvent &event)
virtual void onIbisModelLabelUpdate(wxUpdateUIEvent &event)
virtual void onLibraryPathText(wxCommandEvent &event)
virtual void onPageChanging(wxNotebookEvent &event)
virtual void onPinCombobox(wxCommandEvent &event)
virtual void onSizeParamGrid(wxSizeEvent &event)
virtual void onModelNameLabelUpdate(wxUpdateUIEvent &event)
virtual void onDifferentialCheckbox(wxCommandEvent &event)
virtual void onDeviceTypeChoice(wxCommandEvent &event)
virtual void onModelFilter(wxCommandEvent &event)
virtual void onDecompositionModeChoice(wxCommandEvent &event)
wxStaticText * m_decompositionLabel
virtual void onPinModelComboboxTextEnter(wxCommandEvent &event)
wxStaticText * m_deviceSubtypeLabel
STD_BITMAP_BUTTON * m_browseButton
wxStyledTextCtrl * m_subckt
wxPropertyGridPage * m_paramGrid
virtual void onPinComboboxTextEnter(wxCommandEvent &event)
wxStyledTextCtrl * m_codePreview
A bitmap button widget that behaves like a standard dialog button except with an icon.
A modified version of the wxInfoBar class that allows us to:
Definition wx_infobar.h:77
#define _(s)