15DIALOG_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 this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
20 bSizer8 =
new wxBoxSizer( wxVERTICAL );
22 m_notebook =
new wxNotebook(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
24 wxBoxSizer* bSizerPanel;
25 bSizerPanel =
new wxBoxSizer( wxVERTICAL );
27 wxBoxSizer* bSizerMargins;
28 bSizerMargins =
new wxBoxSizer( wxVERTICAL );
30 m_rbLibraryModel =
new wxRadioButton(
m_modelPanel, wxID_ANY,
_(
"SPICE model from file (*.lib, *.sub or *.ibs)"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
33 wxGridBagSizer* gbSizer1;
34 gbSizer1 =
new wxGridBagSizer( 3, 5 );
35 gbSizer1->SetFlexibleDirection( wxBOTH );
36 gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
40 gbSizer1->Add(
m_pathLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
43 bSizer7 =
new wxBoxSizer( wxHORIZONTAL );
49 bSizer7->Add(
m_browseButton, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
52 gbSizer1->Add( bSizer7, wxGBPosition( 0, 1 ), wxGBSpan( 1, 2 ), wxEXPAND, 5 );
56 gbSizer1->Add(
m_modelNameLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
58 wxArrayString m_modelNameChoiceChoices;
61 gbSizer1->Add(
m_modelNameChoice, wxGBPosition( 1, 1 ), wxGBSpan( 1, 2 ), wxEXPAND|wxRIGHT, 5 );
64 gbSizer1->Add( 0, 0, wxGBPosition( 1, 3 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
68 gbSizer1->Add(
m_pinLabel, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
70 m_pinCombobox =
new wxComboBox(
m_modelPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxTE_PROCESS_ENTER );
71 gbSizer1->Add(
m_pinCombobox, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxBOTTOM, 2 );
74 gbSizer1->Add(
m_differentialCheckbox, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 40 );
78 gbSizer1->Add(
m_pinModelLabel, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
81 gbSizer1->Add(
m_pinModelCombobox, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 1 );
85 gbSizer1->Add(
m_waveformLabel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
87 wxArrayString m_waveformChoiceChoices;
90 gbSizer1->Add(
m_waveformChoice, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 2 );
93 gbSizer1->AddGrowableCol( 1 );
95 bSizerMargins->Add( gbSizer1, 0, wxEXPAND|wxLEFT, 28 );
98 bSizerMargins->Add( 0, 25, 0, wxEXPAND, 5 );
103 wxFlexGridSizer* fgSizer16;
104 fgSizer16 =
new wxFlexGridSizer( 0, 2, 8, 0 );
105 fgSizer16->AddGrowableCol( 1 );
106 fgSizer16->SetFlexibleDirection( wxBOTH );
107 fgSizer16->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
111 fgSizer16->Add(
m_deviceLabel, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
113 wxArrayString m_deviceChoiceChoices;
116 fgSizer16->Add(
m_deviceChoice, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT, 10 );
120 fgSizer16->Add(
m_deviceTypeLabel, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
122 wxArrayString m_deviceTypeChoiceChoices;
125 fgSizer16->Add(
m_deviceTypeChoice, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT, 10 );
128 bSizerMargins->Add( fgSizer16, 0, wxEXPAND|wxLEFT, 24 );
131 bSizerMargins->Add( 0, 15, 0, wxEXPAND, 5 );
137 wxBoxSizer* bSizer12;
138 bSizer12 =
new wxBoxSizer( wxVERTICAL );
140 m_paramGridMgr =
new wxPropertyGridManager(
m_parametersPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxPGMAN_DEFAULT_STYLE|wxPG_SPLITTER_AUTO_CENTER);
141 m_paramGridMgr->SetExtraStyle( wxPG_EX_MODE_BUTTONS|wxPG_EX_NATIVE_DOUBLE_BUFFERING );
155 bSizer5 =
new wxBoxSizer( wxVERTICAL );
173 m_codePreview->SetFoldFlags( wxSTC_FOLDFLAG_LINEBEFORE_CONTRACTED | wxSTC_FOLDFLAG_LINEAFTER_CONTRACTED );
176 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDER, wxSTC_MARK_BOXPLUS );
177 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDER, wxColour( wxT(
"BLACK") ) );
178 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDER, wxColour( wxT(
"WHITE") ) );
179 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_BOXMINUS );
180 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT(
"BLACK") ) );
181 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT(
"WHITE") ) );
182 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY );
183 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_BOXPLUS );
184 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT(
"BLACK") ) );
185 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT(
"WHITE") ) );
186 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_BOXMINUS );
187 m_codePreview->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT(
"BLACK") ) );
188 m_codePreview->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT(
"WHITE") ) );
189 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY );
190 m_codePreview->MarkerDefine( wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY );
191 m_codePreview->SetSelBackground(
true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHT ) );
192 m_codePreview->SetSelForeground(
true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHTTEXT ) );
204 bSizerMargins->Add( 0, 4, 0, wxEXPAND, 5 );
210 bSizerMargins->Add( 0, 2, 0, wxEXPAND, 5 );
213 bSizerPanel->Add( bSizerMargins, 1, wxEXPAND, 5 );
221 wxBoxSizer* bSizer10;
222 bSizer10 =
new wxBoxSizer( wxVERTICAL );
263 m_subckt->SetBackSpaceUnIndents(
true );
265 m_subckt->SetViewWhiteSpace(
false );
267 m_subckt->SetIndentationGuides(
true );
269 m_subckt->SetMarginType( 1, wxSTC_MARGIN_SYMBOL );
270 m_subckt->SetMarginMask( 1, wxSTC_MASK_FOLDERS );
272 m_subckt->SetMarginSensitive( 1,
true );
273 m_subckt->SetProperty( wxT(
"fold"), wxT(
"1") );
274 m_subckt->SetFoldFlags( wxSTC_FOLDFLAG_LINEBEFORE_CONTRACTED | wxSTC_FOLDFLAG_LINEAFTER_CONTRACTED );
275 m_subckt->SetMarginType( 0, wxSTC_MARGIN_NUMBER );
276 m_subckt->SetMarginWidth( 0,
m_subckt->TextWidth( wxSTC_STYLE_LINENUMBER, wxT(
"_99999") ) );
277 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDER, wxSTC_MARK_BOXPLUS );
278 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDER, wxColour( wxT(
"BLACK") ) );
279 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDER, wxColour( wxT(
"WHITE") ) );
280 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_BOXMINUS );
281 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT(
"BLACK") ) );
282 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPEN, wxColour( wxT(
"WHITE") ) );
283 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY );
284 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_BOXPLUS );
285 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT(
"BLACK") ) );
286 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDEREND, wxColour( wxT(
"WHITE") ) );
287 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_BOXMINUS );
288 m_subckt->MarkerSetBackground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT(
"BLACK") ) );
289 m_subckt->MarkerSetForeground( wxSTC_MARKNUM_FOLDEROPENMID, wxColour( wxT(
"WHITE") ) );
290 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY );
291 m_subckt->MarkerDefine( wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY );
292 m_subckt->SetSelBackground(
true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHT ) );
293 m_subckt->SetSelForeground(
true, wxSystemSettings::GetColour( wxSYS_COLOUR_HIGHLIGHTTEXT ) );
294 bSizer10->Add(
m_subckt, 1, wxEXPAND | wxALL, 5 );
302 bSizer8->Add(
m_notebook, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
304 wxBoxSizer* bSizer81;
305 bSizer81 =
new wxBoxSizer( wxHORIZONTAL );
308 bSizer81->Add( 30, 0, 1, wxEXPAND, 5 );
317 bSizer81->Add(
m_sdbSizer1, 0, wxEXPAND|wxALL, 5 );
320 bSizer8->Add( bSizer81, 0, wxEXPAND|wxTOP|wxLEFT, 5 );
323 this->SetSizer( bSizer8 );
325 bSizer8->Fit(
this );
327 this->Centre( wxBOTH );
Dialog helper object to sit in the inheritance tree between wxDialog and any class written by wxFormB...
virtual void onLibraryPathTextEnter(wxCommandEvent &event)
virtual void onDeviceTypeLabelUpdate(wxUpdateUIEvent &event)
virtual void onModelNameChoice(wxCommandEvent &event)
virtual void onPinAssignmentsGridSize(wxSizeEvent &event)
wxNotebook * m_modelNotebook
virtual void onWaveformChoice(wxCommandEvent &event)
wxStaticText * m_subcktLabel
wxChoice * m_modelNameChoice
virtual void onTypeChoice(wxCommandEvent &event)
virtual void onModelNameComboboxKillFocus(wxFocusEvent &event)
virtual void onTypeLabelUpdate(wxUpdateUIEvent &event)
virtual void onDeviceTypeChoiceUpdate(wxUpdateUIEvent &event)
wxStaticText * m_modelNameLabel
wxPropertyGridManager * m_paramGridMgr
wxStaticText * m_pathLabel
wxRadioButton * m_rbBuiltinModel
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)
wxComboBox * m_pinCombobox
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 onIbisModelLabelUpdate(wxUpdateUIEvent &event)
wxStaticText * m_waveformLabel
wxTextCtrl * m_libraryPathText
wxButton * m_sdbSizer1Cancel
virtual void onPageChanging(wxNotebookEvent &event)
wxStaticText * m_pinLabel
virtual void onPinCombobox(wxCommandEvent &event)
virtual void onSizeParamGrid(wxSizeEvent &event)
virtual void onModelNameLabelUpdate(wxUpdateUIEvent &event)
virtual void onDifferentialCheckbox(wxCommandEvent &event)
wxChoice * m_deviceChoice
wxComboBox * m_pinModelCombobox
wxRadioButton * m_rbLibraryModel
virtual void onDeviceTypeChoice(wxCommandEvent &event)
wxChoice * m_waveformChoice
wxStaticText * m_deviceLabel
WX_GRID * m_pinAssignmentsGrid
virtual void onPinModelComboboxTextEnter(wxCommandEvent &event)
wxStaticText * m_pinModelLabel
wxPanel * m_parametersPanel
wxCheckBox * m_saveInValueCheckbox
STD_BITMAP_BUTTON * m_browseButton
wxStyledTextCtrl * m_subckt
wxStaticText * m_deviceTypeLabel
wxPropertyGridPage * m_paramGrid
virtual void onPinComboboxTextEnter(wxCommandEvent &event)
wxPanel * m_pinAssignmentsPanel
wxChoice * m_deviceTypeChoice
wxCheckBox * m_differentialCheckbox
wxStyledTextCtrl * m_codePreview
void SetColLabelSize(int aHeight)
Hide wxGrid's SetColLabelSize() method with one which makes sure the size is tall enough for the syst...