Commit d475f4d669246ee5894cd778d27ca360b6c91bb7

Authored by Steve Greedy
1 parent 8e35dd7d

SW1 Update to v1.0.1

Update to version 1.0.1:
Added dialogue to Spice model export to list files exported.
Minor bug fixes for internal assessment.
Correct few typographical errors.
GUI/SW1/SRC/BUNDLEBLDR.cpp
... ... @@ -78,6 +78,20 @@ const long BUNDLEBLDR::ID_TEXTCTRL4 = wxNewId();
78 78 const long BUNDLEBLDR::ID_STATICTEXT8 = wxNewId();
79 79 const long BUNDLEBLDR::ID_TEXTCTRL5 = wxNewId();
80 80 const long BUNDLEBLDR::ID_PANEL5 = wxNewId();
  81 +const long BUNDLEBLDR::ID_STATICTEXT11 = wxNewId();
  82 +const long BUNDLEBLDR::ID_CHECKBOX4 = wxNewId();
  83 +const long BUNDLEBLDR::ID_STATICTEXT3 = wxNewId();
  84 +const long BUNDLEBLDR::ID_TEXTCTRL2 = wxNewId();
  85 +const long BUNDLEBLDR::ID_STATICTEXT4 = wxNewId();
  86 +const long BUNDLEBLDR::ID_RADIOBUTTON1 = wxNewId();
  87 +const long BUNDLEBLDR::ID_RADIOBUTTON2 = wxNewId();
  88 +const long BUNDLEBLDR::ID_STATICTEXT5 = wxNewId();
  89 +const long BUNDLEBLDR::ID_TEXTCTRL3 = wxNewId();
  90 +const long BUNDLEBLDR::ID_STATICTEXT9 = wxNewId();
  91 +const long BUNDLEBLDR::ID_TEXTCTRL6 = wxNewId();
  92 +const long BUNDLEBLDR::ID_STATICTEXT10 = wxNewId();
  93 +const long BUNDLEBLDR::ID_TEXTCTRL7 = wxNewId();
  94 +const long BUNDLEBLDR::ID_PANEL6 = wxNewId();
81 95 const long BUNDLEBLDR::ID_NOTEBOOK1 = wxNewId();
82 96 const long BUNDLEBLDR::ID_BUTTON1 = wxNewId();
83 97 const long BUNDLEBLDR::ID_BUTTON2 = wxNewId();
... ... @@ -100,9 +114,14 @@ BUNDLEBLDR::BUNDLEBLDR(wxWindow* parent,wxWindowID id,const wxPoint& pos,const w
100 114 wxStaticBoxSizer* StaticBoxSizer4;
101 115 wxFlexGridSizer* FlexGridSizer3;
102 116 wxFlexGridSizer* FlexGridSizer5;
  117 + wxFlexGridSizer* FlexGridSizer9;
  118 + wxFlexGridSizer* FlexGridSizer2;
103 119 wxBoxSizer* BoxSizer2;
  120 + wxFlexGridSizer* FlexGridSizer7;
104 121 wxStaticBoxSizer* StaticBoxSizer3;
  122 + wxFlexGridSizer* FlexGridSizer8;
105 123 wxBoxSizer* BoxSizer1;
  124 + wxFlexGridSizer* FlexGridSizer6;
106 125 wxStaticBoxSizer* StaticBoxSizer1;
107 126 wxFlexGridSizer* FlexGridSizer1;
108 127 wxBoxSizer* BoxSizer3;
... ... @@ -172,9 +191,54 @@ BUNDLEBLDR::BUNDLEBLDR(wxWindow* parent,wxWindowID id,const wxPoint& pos,const w
172 191 Panel5->SetSizer(FlexGridSizer5);
173 192 FlexGridSizer5->Fit(Panel5);
174 193 FlexGridSizer5->SetSizeHints(Panel5);
  194 + Panel6 = new wxPanel(Notebook1, ID_PANEL6, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ID_PANEL6"));
  195 + FlexGridSizer2 = new wxFlexGridSizer(0, 1, 0, 0);
  196 + FlexGridSizer9 = new wxFlexGridSizer(0, 3, 0, 0);
  197 + StaticText11 = new wxStaticText(Panel6, ID_STATICTEXT11, _("Use Filter Fitting Parameters"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT11"));
  198 + FlexGridSizer9->Add(StaticText11, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  199 + CheckBox4 = new wxCheckBox(Panel6, ID_CHECKBOX4, _("Label"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX4"));
  200 + CheckBox4->SetValue(false);
  201 + FlexGridSizer9->Add(CheckBox4, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  202 + FlexGridSizer2->Add(FlexGridSizer9, 1, wxALL|wxEXPAND, 5);
  203 + FlexGridSizer6 = new wxFlexGridSizer(0, 2, 0, 0);
  204 + StaticText3 = new wxStaticText(Panel6, ID_STATICTEXT3, _("Order for Filter Fitting "), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT3"));
  205 + FlexGridSizer6->Add(StaticText3, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  206 + TextCtrl2 = new wxTextCtrl(Panel6, ID_TEXTCTRL2, _("-10"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL2"));
  207 + TextCtrl2->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  208 + FlexGridSizer6->Add(TextCtrl2, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  209 + FlexGridSizer2->Add(FlexGridSizer6, 1, wxALL|wxEXPAND, 5);
  210 + FlexGridSizer7 = new wxFlexGridSizer(0, 3, 0, 0);
  211 + StaticText4 = new wxStaticText(Panel6, ID_STATICTEXT4, _("Range Type"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT4"));
  212 + FlexGridSizer7->Add(StaticText4, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  213 + RadioButton1 = new wxRadioButton(Panel6, ID_RADIOBUTTON1, _("Lin"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON1"));
  214 + FlexGridSizer7->Add(RadioButton1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  215 + RadioButton2 = new wxRadioButton(Panel6, ID_RADIOBUTTON2, _("Log"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON2"));
  216 + FlexGridSizer7->Add(RadioButton2, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  217 + FlexGridSizer2->Add(FlexGridSizer7, 1, wxALL|wxEXPAND, 5);
  218 + FlexGridSizer8 = new wxFlexGridSizer(0, 2, 0, 0);
  219 + StaticText5 = new wxStaticText(Panel6, ID_STATICTEXT5, _("Frequency min (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT5"));
  220 + FlexGridSizer8->Add(StaticText5, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  221 + TextCtrl3 = new wxTextCtrl(Panel6, ID_TEXTCTRL3, _("1e3"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL3"));
  222 + TextCtrl3->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  223 + FlexGridSizer8->Add(TextCtrl3, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  224 + StaticText9 = new wxStaticText(Panel6, ID_STATICTEXT9, _("Frequecy max (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT9"));
  225 + FlexGridSizer8->Add(StaticText9, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  226 + TextCtrl6 = new wxTextCtrl(Panel6, ID_TEXTCTRL6, _("1e9"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL6"));
  227 + TextCtrl6->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  228 + FlexGridSizer8->Add(TextCtrl6, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  229 + StaticText10 = new wxStaticText(Panel6, ID_STATICTEXT10, _("Number of Frequencies"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT10"));
  230 + FlexGridSizer8->Add(StaticText10, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  231 + TextCtrl7 = new wxTextCtrl(Panel6, ID_TEXTCTRL7, _("12"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL7"));
  232 + TextCtrl7->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  233 + FlexGridSizer8->Add(TextCtrl7, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  234 + FlexGridSizer2->Add(FlexGridSizer8, 1, wxALL|wxEXPAND, 5);
  235 + Panel6->SetSizer(FlexGridSizer2);
  236 + FlexGridSizer2->Fit(Panel6);
  237 + FlexGridSizer2->SetSizeHints(Panel6);
175 238 Notebook1->AddPage(Panel3, _("Bundle"), false);
176 239 Notebook1->AddPage(Panel4, _("Ground Plane"), false);
177 240 Notebook1->AddPage(Panel5, _("Laplace Solver"), false);
  241 + Notebook1->AddPage(Panel6, _("Filter Fitting"), false);
178 242 BoxSizer5->Add(Notebook1, 1, wxALL|wxEXPAND, 5);
179 243 FlexGridSizer3->Add(BoxSizer5, 1, wxALL|wxEXPAND, 5);
180 244 StaticBoxSizer4->Add(FlexGridSizer3, 8, wxALL|wxEXPAND, 5);
... ... @@ -1154,6 +1218,22 @@ void BUNDLEBLDR::OnButton1Click(wxCommandEvent& event)
1154 1218 cableFile <<"no_ground_plane\n";
1155 1219 }
1156 1220  
  1221 +
  1222 + if (CheckBox4->GetValue())
  1223 + {
  1224 + cableFile << TextCtrl2->GetValue() <<"\t # order for filter fitting\n";
  1225 + if (RadioButton1)
  1226 + {
  1227 + cableFile << "lin # frequency range type for filter fitting type (lin or dB)";
  1228 + }
  1229 + else
  1230 + {
  1231 + cableFile << "log # frequency range type for filter fitting type (lin or dB)";
  1232 + }
  1233 + cableFile << TextCtrl3->GetValue() <<" "<< TextCtrl6->GetValue() <<" "<< TextCtrl7->GetValue() <<"\t # fmin fmax number_of_frequencies for filter fitting";
  1234 +
  1235 + }
  1236 +
1157 1237 if (CheckBox2->GetValue())
1158 1238 {
1159 1239 cableFile << "use_laplace\n";
... ... @@ -1203,7 +1283,7 @@ void BUNDLEBLDR::OnButton2Click(wxCommandEvent&amp; event)
1203 1283 if (CheckBox2->GetValue())
1204 1284 {
1205 1285 // Identify all mesh files for viewing
1206   - //struct _finddata_t fileinfo;
  1286 + struct _finddata_t fileinfo;
1207 1287 long hFile;
1208 1288 wxString meshFileName = "*.msh.vtk";
1209 1289  
... ...
GUI/SW1/SRC/BUNDLEBLDR.h
... ... @@ -48,6 +48,7 @@
48 48 #include <wx/textctrl.h>
49 49 #include <wx/checkbox.h>
50 50 #include <wx/listbox.h>
  51 +#include <wx/radiobut.h>
51 52 #include <wx/panel.h>
52 53 #include <wx/button.h>
53 54 #include <wx/dialog.h>
... ... @@ -145,27 +146,41 @@ class BUNDLEBLDR: public wxDialog
145 146  
146 147  
147 148 //(*Declarations(BUNDLEBLDR)
  149 + wxStaticText* StaticText10;
  150 + wxStaticText* StaticText9;
148 151 wxTextCtrl* TextCtrl4;
  152 + wxRadioButton* RadioButton1;
149 153 wxPanel* Panel5;
150 154 wxNotebook* Notebook1;
151 155 wxStaticText* StaticText2;
152 156 wxPanel* Panel4;
  157 + wxRadioButton* RadioButton2;
153 158 wxButton* Button1;
154 159 wxStaticText* StaticText6;
  160 + wxTextCtrl* TextCtrl6;
155 161 wxStaticText* StaticText8;
  162 + wxStaticText* StaticText11;
156 163 wxCheckBox* CheckBox3;
157 164 wxCheckBox* CheckBox2;
158 165 wxPanel* Panel1;
159 166 wxStaticText* StaticText1;
  167 + wxStaticText* StaticText3;
160 168 wxButton* Button2;
  169 + wxPanel* Panel6;
161 170 wxCheckBox* CheckBox1;
162 171 wxPanel* Panel3;
163 172 wxButton* Button3;
  173 + wxStaticText* StaticText5;
164 174 wxStaticText* StaticText7;
  175 + wxTextCtrl* TextCtrl2;
  176 + wxCheckBox* CheckBox4;
165 177 wxComboBox* ComboBox1;
  178 + wxTextCtrl* TextCtrl7;
166 179 wxTextCtrl* TextCtrl1;
167 180 wxPanel* Panel2;
168 181 wxTextCtrl* TextCtrl5;
  182 + wxStaticText* StaticText4;
  183 + wxTextCtrl* TextCtrl3;
169 184 wxListBox* ListBox1;
170 185 //*)
171 186  
... ... @@ -189,6 +204,20 @@ class BUNDLEBLDR: public wxDialog
189 204 static const long ID_STATICTEXT8;
190 205 static const long ID_TEXTCTRL5;
191 206 static const long ID_PANEL5;
  207 + static const long ID_STATICTEXT11;
  208 + static const long ID_CHECKBOX4;
  209 + static const long ID_STATICTEXT3;
  210 + static const long ID_TEXTCTRL2;
  211 + static const long ID_STATICTEXT4;
  212 + static const long ID_RADIOBUTTON1;
  213 + static const long ID_RADIOBUTTON2;
  214 + static const long ID_STATICTEXT5;
  215 + static const long ID_TEXTCTRL3;
  216 + static const long ID_STATICTEXT9;
  217 + static const long ID_TEXTCTRL6;
  218 + static const long ID_STATICTEXT10;
  219 + static const long ID_TEXTCTRL7;
  220 + static const long ID_PANEL6;
192 221 static const long ID_NOTEBOOK1;
193 222 static const long ID_BUTTON1;
194 223 static const long ID_BUTTON2;
... ...
GUI/SW1/SRC/COAXIAL.cpp
... ... @@ -418,6 +418,8 @@ void COAXIAL::OnCheckBox1Click(wxCommandEvent&amp; event)
418 418  
419 419 FD_ESR *winFD_ESR = new FD_ESR(this);
420 420  
  421 + winFD_ESR->formtype = 2;
  422 +
421 423 if ( winFD_ESR->ShowModal() == wxID_OK )
422 424 {
423 425 FD_ESR1 = winFD_ESR->TextCtrl1->GetValue();
... ...
GUI/SW1/SRC/COAXIAL.h
... ... @@ -111,6 +111,8 @@ class COAXIAL: public wxDialog
111 111 void coaxialSchematic();
112 112 void OnHighlightSchematic(wxCommandEvent & event);
113 113  
  114 +
  115 +
114 116 coaxialSchematicPane *drawPane;
115 117  
116 118 //(*Declarations(COAXIAL)
... ...
GUI/SW1/SRC/CYLINDRICAL.cpp
... ... @@ -62,20 +62,6 @@ const long CYLINDRICAL::ID_STATICTEXT6 = wxNewId();
62 62 const long CYLINDRICAL::ID_STATICTEXT7 = wxNewId();
63 63 const long CYLINDRICAL::ID_STATICTEXT8 = wxNewId();
64 64 const long CYLINDRICAL::ID_CHECKBOX1 = wxNewId();
65   -const long CYLINDRICAL::ID_STATICTEXT9 = wxNewId();
66   -const long CYLINDRICAL::ID_TEXTCTRL6 = wxNewId();
67   -const long CYLINDRICAL::ID_STATICLINE1 = wxNewId();
68   -const long CYLINDRICAL::ID_STATICLINE2 = wxNewId();
69   -const long CYLINDRICAL::ID_STATICTEXT10 = wxNewId();
70   -const long CYLINDRICAL::ID_TEXTCTRL7 = wxNewId();
71   -const long CYLINDRICAL::ID_STATICTEXT11 = wxNewId();
72   -const long CYLINDRICAL::ID_TEXTCTRL8 = wxNewId();
73   -const long CYLINDRICAL::ID_STATICLINE3 = wxNewId();
74   -const long CYLINDRICAL::ID_STATICLINE4 = wxNewId();
75   -const long CYLINDRICAL::ID_STATICTEXT12 = wxNewId();
76   -const long CYLINDRICAL::ID_TEXTCTRL9 = wxNewId();
77   -const long CYLINDRICAL::ID_STATICTEXT13 = wxNewId();
78   -const long CYLINDRICAL::ID_TEXTCTRL10 = wxNewId();
79 65 const long CYLINDRICAL::ID_BUTTON1 = wxNewId();
80 66 const long CYLINDRICAL::ID_BUTTON2 = wxNewId();
81 67 const long CYLINDRICAL::ID_BUTTON3 = wxNewId();
... ... @@ -94,14 +80,12 @@ CYLINDRICAL::CYLINDRICAL(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const
94 80 wxFlexGridSizer* FlexGridSizer4;
95 81 wxStaticBoxSizer* StaticBoxSizer4;
96 82 wxFlexGridSizer* FlexGridSizer3;
97   - wxFlexGridSizer* FlexGridSizer5;
98 83 wxFlexGridSizer* FlexGridSizer2;
99 84 wxBoxSizer* BoxSizer2;
100 85 wxStaticBoxSizer* StaticBoxSizer3;
101 86 wxBoxSizer* BoxSizer1;
102 87 wxStaticBoxSizer* StaticBoxSizer1;
103 88 wxFlexGridSizer* FlexGridSizer1;
104   - wxStaticBoxSizer* StaticBoxSizer5;
105 89  
106 90 Create(parent, wxID_ANY, _("SACAMOS: Cylindrical Cable Model"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxMINIMIZE_BOX, _T("wxID_ANY"));
107 91 FlexGridSizer1 = new wxFlexGridSizer(2, 2, 0, 5);
... ... @@ -150,44 +134,6 @@ CYLINDRICAL::CYLINDRICAL(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const
150 134 FlexGridSizer4->Add(CheckBox1, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
151 135 StaticBoxSizer4->Add(FlexGridSizer4, 1, wxALL|wxEXPAND, 5);
152 136 FlexGridSizer2->Add(StaticBoxSizer4, 1, wxALL|wxEXPAND, 5);
153   - StaticBoxSizer5 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Frequency Dependent Permittivity"));
154   - FlexGridSizer5 = new wxFlexGridSizer(0, 2, 0, 0);
155   - FlexGridSizer5->AddGrowableCol(0);
156   - StaticText9 = new wxStaticText(this, ID_STATICTEXT9, _("Normalisation Constant"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT9"));
157   - FlexGridSizer5->Add(StaticText9, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
158   - TextCtrl6 = new wxTextCtrl(this, ID_TEXTCTRL6, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL6"));
159   - TextCtrl6->Disable();
160   - FlexGridSizer5->Add(TextCtrl6, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
161   - StaticLine1 = new wxStaticLine(this, ID_STATICLINE1, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE1"));
162   - FlexGridSizer5->Add(StaticLine1, 1, wxALL|wxEXPAND, 0);
163   - StaticLine2 = new wxStaticLine(this, ID_STATICLINE2, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE2"));
164   - FlexGridSizer5->Add(StaticLine2, 1, wxALL|wxEXPAND, 0);
165   - StaticText10 = new wxStaticText(this, ID_STATICTEXT10, _("a order"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT10"));
166   - FlexGridSizer5->Add(StaticText10, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
167   - TextCtrl7 = new wxTextCtrl(this, ID_TEXTCTRL7, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL7"));
168   - TextCtrl7->Disable();
169   - FlexGridSizer5->Add(TextCtrl7, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
170   - StaticText11 = new wxStaticText(this, ID_STATICTEXT11, _("a constants"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT11"));
171   - FlexGridSizer5->Add(StaticText11, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
172   - TextCtrl8 = new wxTextCtrl(this, ID_TEXTCTRL8, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL8"));
173   - TextCtrl8->Disable();
174   - FlexGridSizer5->Add(TextCtrl8, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
175   - StaticLine3 = new wxStaticLine(this, ID_STATICLINE3, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE3"));
176   - FlexGridSizer5->Add(StaticLine3, 1, wxALL|wxEXPAND, 0);
177   - StaticLine4 = new wxStaticLine(this, ID_STATICLINE4, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE4"));
178   - FlexGridSizer5->Add(StaticLine4, 1, wxALL|wxEXPAND, 0);
179   - StaticText12 = new wxStaticText(this, ID_STATICTEXT12, _("b order"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT12"));
180   - FlexGridSizer5->Add(StaticText12, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
181   - TextCtrl9 = new wxTextCtrl(this, ID_TEXTCTRL9, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL9"));
182   - TextCtrl9->Disable();
183   - FlexGridSizer5->Add(TextCtrl9, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
184   - StaticText13 = new wxStaticText(this, ID_STATICTEXT13, _("b constants"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT13"));
185   - FlexGridSizer5->Add(StaticText13, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
186   - TextCtrl10 = new wxTextCtrl(this, ID_TEXTCTRL10, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL10"));
187   - TextCtrl10->Disable();
188   - FlexGridSizer5->Add(TextCtrl10, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
189   - StaticBoxSizer5->Add(FlexGridSizer5, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
190   - FlexGridSizer2->Add(StaticBoxSizer5, 1, wxALL|wxEXPAND, 5);
191 137 BoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
192 138 Button1 = new wxButton(this, ID_BUTTON1, _("SAVE"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON1"));
193 139 BoxSizer2->Add(Button1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
... ... @@ -214,11 +160,6 @@ CYLINDRICAL::CYLINDRICAL(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const
214 160 Connect(ID_TEXTCTRL4,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl4Text);
215 161 Connect(ID_TEXTCTRL5,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl5Text);
216 162 Connect(ID_CHECKBOX1,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&CYLINDRICAL::OnCheckBox1Click);
217   - Connect(ID_TEXTCTRL6,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl6Text);
218   - Connect(ID_TEXTCTRL7,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl7Text);
219   - Connect(ID_TEXTCTRL8,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl8Text);
220   - Connect(ID_TEXTCTRL9,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl9Text);
221   - Connect(ID_TEXTCTRL10,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&CYLINDRICAL::OnTextCtrl10Text);
222 163 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&CYLINDRICAL::OnButton1Click);
223 164 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&CYLINDRICAL::OnButton2Click);
224 165 Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&CYLINDRICAL::OnButton3Click);
... ... @@ -267,11 +208,11 @@ void CYLINDRICAL::OnButton1Click(wxCommandEvent&amp; event)
267 208 check_is_empty(TextCtrl4, &IsError);
268 209  
269 210 if (CheckBox1->GetValue()){
270   - check_is_empty(TextCtrl6, &IsError);
271   - check_is_empty(TextCtrl7, &IsError);
272   - check_is_empty(TextCtrl8, &IsError);
273   - check_is_empty(TextCtrl9, &IsError);
274   - check_is_empty(TextCtrl10, &IsError);
  211 +// check_is_empty(TextCtrl6, &IsError);
  212 +// check_is_empty(TextCtrl7, &IsError);
  213 +// check_is_empty(TextCtrl8, &IsError);
  214 +// check_is_empty(TextCtrl9, &IsError);
  215 +// check_is_empty(TextCtrl10, &IsError);
275 216 }
276 217 else
277 218 {
... ... @@ -355,57 +296,75 @@ void CYLINDRICAL::OnTextCtrl5Text(wxCommandEvent&amp; event)
355 296 check_is_positive (TextCtrl5, &IsError);
356 297 }
357 298  
358   -void CYLINDRICAL::OnTextCtrl6Text(wxCommandEvent& event)
359   -{
360   - int IsError = 0;
361   - check_is_numeric(TextCtrl6, &IsError);
362   - check_is_positive (TextCtrl6, &IsError);
363   -}
364   -
365   -void CYLINDRICAL::OnTextCtrl7Text(wxCommandEvent& event)
366   -{
367   - int IsError = 0;
368   - check_is_numeric(TextCtrl7, &IsError);
369   -}
370   -
371   -void CYLINDRICAL::OnTextCtrl8Text(wxCommandEvent& event)
372   -{
373   - int IsError = 0;
374   - check_is_numeric_list(TextCtrl8, &IsError);
375   -}
376   -
377   -void CYLINDRICAL::OnTextCtrl9Text(wxCommandEvent& event)
378   -{
379   - int IsError = 0;
380   - check_is_numeric(TextCtrl9, &IsError);
381   -}
382   -
383   -void CYLINDRICAL::OnTextCtrl10Text(wxCommandEvent& event)
384   -{
385   - int IsError = 0;
386   - check_is_numeric_list(TextCtrl10, &IsError);
387   -}
  299 +//void CYLINDRICAL::OnTextCtrl6Text(wxCommandEvent& event)
  300 +//{
  301 +// int IsError = 0;
  302 +// check_is_numeric(TextCtrl6, &IsError);
  303 +// check_is_positive (TextCtrl6, &IsError);
  304 +//}
  305 +//
  306 +//void CYLINDRICAL::OnTextCtrl7Text(wxCommandEvent& event)
  307 +//{
  308 +// int IsError = 0;
  309 +// check_is_numeric(TextCtrl7, &IsError);
  310 +//}
  311 +//
  312 +//void CYLINDRICAL::OnTextCtrl8Text(wxCommandEvent& event)
  313 +//{
  314 +// int IsError = 0;
  315 +// check_is_numeric_list(TextCtrl8, &IsError);
  316 +//}
  317 +//
  318 +//void CYLINDRICAL::OnTextCtrl9Text(wxCommandEvent& event)
  319 +//{
  320 +// int IsError = 0;
  321 +// check_is_numeric(TextCtrl9, &IsError);
  322 +//}
  323 +//
  324 +//void CYLINDRICAL::OnTextCtrl10Text(wxCommandEvent& event)
  325 +//{
  326 +// int IsError = 0;
  327 +// check_is_numeric_list(TextCtrl10, &IsError);
  328 +//}
388 329  
389 330 void CYLINDRICAL::OnCheckBox1Click(wxCommandEvent& event)
390 331 {
391 332 if (CheckBox1->GetValue())
392 333 {
393 334 TextCtrl5->Disable();
394   - TextCtrl6->Enable();
395   - TextCtrl7->Enable();
396   - TextCtrl8->Enable();
397   - TextCtrl9->Enable();
398   - TextCtrl10->Enable();
399   - }
400   - else
401   - {
402   - TextCtrl5->Enable();
403   - TextCtrl6->Disable();
404   - TextCtrl7->Disable();
405   - TextCtrl8->Disable();
406   - TextCtrl9->Disable();
407   - TextCtrl10->Disable();
  335 +
  336 + FD_ESR *winFD_ESR = new FD_ESR(this);
  337 +
  338 + winFD_ESR->formtype = 1;
  339 +
  340 + if ( winFD_ESR->ShowModal() == wxID_OK )
  341 + {
  342 + FD_ESR6 = winFD_ESR->TextCtrl6->GetValue();
  343 + FD_ESR7 = winFD_ESR->TextCtrl7->GetValue();
  344 + FD_ESR8 = winFD_ESR->TextCtrl8->GetValue();
  345 + FD_ESR9 = winFD_ESR->TextCtrl9->GetValue();
  346 + FD_ESR10= winFD_ESR->TextCtrl10->GetValue();
  347 + }
  348 + winFD_ESR->Destroy();
408 349 }
  350 +// if (CheckBox1->GetValue())
  351 +// {
  352 +// TextCtrl5->Disable();
  353 +// TextCtrl6->Enable();
  354 +// TextCtrl7->Enable();
  355 +// TextCtrl8->Enable();
  356 +// TextCtrl9->Enable();
  357 +// TextCtrl10->Enable();
  358 +// }
  359 +// else
  360 +// {
  361 +// TextCtrl5->Enable();
  362 +// TextCtrl6->Disable();
  363 +// TextCtrl7->Disable();
  364 +// TextCtrl8->Disable();
  365 +// TextCtrl9->Disable();
  366 +// TextCtrl10->Disable();
  367 +// }
409 368 }
410 369  
411 370 void CYLINDRICAL::WriteCableFile (wxString fileName)
... ... @@ -431,12 +390,18 @@ void CYLINDRICAL::WriteCableFile (wxString fileName)
431 390 cableFile <<"1 \t\t\t# number of frequency dependent parameters\n";
432 391  
433 392 if (CheckBox1->GetValue()){
  393 +// cableFile << "# Dielectric relative permittivity model follows\n";
  394 +// cableFile << TextCtrl6->GetValue() <<" # w normalisation constant\n";
  395 +// cableFile << TextCtrl7->GetValue() <<" # a order, a coefficients follow below\n";
  396 +// cableFile << TextCtrl8->GetValue() <<" \n";
  397 +// cableFile << TextCtrl9->GetValue() <<" # b order, b coefficients follow below\n";
  398 +// cableFile << TextCtrl10->GetValue() <<" \n";
434 399 cableFile << "# Dielectric relative permittivity model follows\n";
435   - cableFile << TextCtrl6->GetValue() <<" # w normalisation constant\n";
436   - cableFile << TextCtrl7->GetValue() <<" # a order, a coefficients follow below\n";
437   - cableFile << TextCtrl8->GetValue() <<" \n";
438   - cableFile << TextCtrl9->GetValue() <<" # b order, b coefficients follow below\n";
439   - cableFile << TextCtrl10->GetValue() <<" \n";
  400 + cableFile << FD_ESR6 <<"\t # w normalisation constant\n";
  401 + cableFile << FD_ESR7 <<"\t # a order, a coefficients follow below\n";
  402 + cableFile << FD_ESR8 <<"\n";
  403 + cableFile << FD_ESR9 <<"\t # b order, b coefficients follow below\n";
  404 + cableFile << FD_ESR10 <<"\n";
440 405 }
441 406  
442 407 else{
... ...
GUI/SW1/SRC/CYLINDRICAL.h
... ... @@ -46,7 +46,6 @@
46 46 #include <wx/stattext.h>
47 47 #include <wx/textctrl.h>
48 48 #include <wx/checkbox.h>
49   -#include <wx/statline.h>
50 49 #include <wx/panel.h>
51 50 #include <wx/button.h>
52 51 #include <wx/dialog.h>
... ... @@ -57,6 +56,7 @@
57 56 #include <wx/dcclient.h>
58 57  
59 58 // Application Includes
  59 +#include "FD_ESR.h"
60 60 #include "UTILITIES.h"
61 61 #include "RUN_STATUS.h"
62 62  
... ... @@ -83,41 +83,45 @@ class CYLINDRICAL: public wxDialog
83 83 void cylindricalSchematic();
84 84 void OnHighlightSchematic(wxCommandEvent & event);
85 85  
  86 + wxString FD_ESR1;
  87 + wxString FD_ESR2;
  88 + wxString FD_ESR3;
  89 + wxString FD_ESR4;
  90 + wxString FD_ESR5;
  91 + wxString FD_ESR6;
  92 + wxString FD_ESR7;
  93 + wxString FD_ESR8;
  94 + wxString FD_ESR9;
  95 + wxString FD_ESR10;
  96 +
  97 + wxString FD_ORDER;
  98 + bool FD_LINLOG;
  99 +
  100 + wxString FD_FMIN;
  101 + wxString FD_FMAX;
  102 + wxString FD_NUMF;
  103 +
86 104 //double a0;
87 105  
88 106 //(*Declarations(CYLINDRICAL)
89   - wxStaticText* StaticText10;
90   - wxStaticText* StaticText9;
91 107 wxTextCtrl* TextCtrl4;
92   - wxStaticText* StaticText13;
93 108 wxStaticText* StaticText2;
94 109 wxButton* Button1;
95 110 wxStaticText* StaticText6;
96   - wxTextCtrl* TextCtrl6;
97 111 wxStaticText* StaticText8;
98   - wxStaticText* StaticText11;
99 112 wxPanel* Panel1;
100 113 wxStaticText* StaticText1;
101 114 wxStaticText* StaticText3;
102 115 wxButton* Button2;
103   - wxStaticLine* StaticLine4;
104 116 wxCheckBox* CheckBox1;
105   - wxStaticLine* StaticLine2;
106 117 wxButton* Button3;
107 118 wxStaticText* StaticText5;
108 119 wxStaticText* StaticText7;
109   - wxStaticLine* StaticLine3;
110   - wxTextCtrl* TextCtrl8;
111   - wxStaticLine* StaticLine1;
112 120 wxTextCtrl* TextCtrl2;
113   - wxTextCtrl* TextCtrl7;
114 121 wxTextCtrl* TextCtrl1;
115   - wxStaticText* StaticText12;
116   - wxTextCtrl* TextCtrl9;
117 122 wxTextCtrl* TextCtrl5;
118 123 wxStaticText* StaticText4;
119 124 wxTextCtrl* TextCtrl3;
120   - wxTextCtrl* TextCtrl10;
121 125 //*)
122 126  
123 127 protected:
... ... @@ -137,20 +141,6 @@ class CYLINDRICAL: public wxDialog
137 141 static const long ID_STATICTEXT7;
138 142 static const long ID_STATICTEXT8;
139 143 static const long ID_CHECKBOX1;
140   - static const long ID_STATICTEXT9;
141   - static const long ID_TEXTCTRL6;
142   - static const long ID_STATICLINE1;
143   - static const long ID_STATICLINE2;
144   - static const long ID_STATICTEXT10;
145   - static const long ID_TEXTCTRL7;
146   - static const long ID_STATICTEXT11;
147   - static const long ID_TEXTCTRL8;
148   - static const long ID_STATICLINE3;
149   - static const long ID_STATICLINE4;
150   - static const long ID_STATICTEXT12;
151   - static const long ID_TEXTCTRL9;
152   - static const long ID_STATICTEXT13;
153   - static const long ID_TEXTCTRL10;
154 144 static const long ID_BUTTON1;
155 145 static const long ID_BUTTON2;
156 146 static const long ID_BUTTON3;
... ...
GUI/SW1/SRC/DCONN.cpp
... ... @@ -249,7 +249,7 @@ void DCONN::OnButton2Click(wxCommandEvent&amp; event)
249 249 if (CheckBox1->GetValue())
250 250 {
251 251 // Identify all mesh files for viewing
252   - //struct _finddata_t fileinfo;
  252 + struct _finddata_t fileinfo;
253 253 long hFile;
254 254 //wxString meshFileName = "*.msh.vtk";
255 255 wxString pattern((".msh.vtk"));
... ...
GUI/SW1/SRC/EXPORT_SPICE.cpp
... ... @@ -51,6 +51,7 @@ const long EXPORT_SPICE::ID_DIRPICKERCTRL1 = wxNewId();
51 51 const long EXPORT_SPICE::ID_DIRPICKERCTRL2 = wxNewId();
52 52 const long EXPORT_SPICE::ID_BUTTON1 = wxNewId();
53 53 const long EXPORT_SPICE::ID_BUTTON2 = wxNewId();
  54 +const long EXPORT_SPICE::ID_TEXTCTRL1 = wxNewId();
54 55 //*)
55 56  
56 57 BEGIN_EVENT_TABLE(EXPORT_SPICE,wxDialog)
... ... @@ -84,6 +85,8 @@ EXPORT_SPICE::EXPORT_SPICE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,con
84 85 Button2 = new wxButton(this, ID_BUTTON2, _("CLOSE"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON2"));
85 86 BoxSizer2->Add(Button2, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
86 87 BoxSizer1->Add(BoxSizer2, 1, wxALL|wxEXPAND, 5);
  88 + TextCtrl1 = new wxTextCtrl(this, ID_TEXTCTRL1, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_AUTO_SCROLL|wxTE_MULTILINE|wxTE_READONLY|wxTE_DONTWRAP|wxVSCROLL|wxHSCROLL|wxALWAYS_SHOW_SB, wxDefaultValidator, _T("ID_TEXTCTRL1"));
  89 + BoxSizer1->Add(TextCtrl1, 2, wxALL|wxEXPAND, 5);
87 90 FlexGridSizer1->Add(BoxSizer1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
88 91 SetSizer(FlexGridSizer1);
89 92 FlexGridSizer1->Fit(this);
... ... @@ -132,7 +135,7 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
132 135 wxString sacamos_sym_dir = "..\\" + MODname + "\\SPICE\\SYMBOL\\";
133 136 wxSetWorkingDirectory(sacamos_sym_dir);
134 137  
135   - wxString file, pattern;
  138 + wxString file, pattern, export_notification;
136 139  
137 140 if (DirPickerCtrl1->GetPath() != "")
138 141 {
... ... @@ -144,6 +147,9 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
144 147  
145 148 file = wxFindFirstFile(pattern);
146 149  
  150 + TextCtrl1->AppendText("Exporting Ngspice Symbols\n");
  151 + TextCtrl1->AppendText("=========================\n\n");
  152 +
147 153 while ( !file.empty())
148 154 {
149 155 wxString file_no_path = wxFileNameFromPath(file);
... ... @@ -155,6 +161,10 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
155 161 ng_sym_to = ng_sym_dir + "\\" + file_no_path;
156 162  
157 163 wxCopyFile(ng_sym_from, ng_sym_to);
  164 +
  165 + export_notification = "Exported: " + file_no_path + "\n";
  166 + TextCtrl1->AppendText(export_notification);
  167 +
158 168 wxTextFile file_to_edit(ng_sym_to);
159 169  
160 170 if (file_to_edit.Open())
... ... @@ -166,18 +176,19 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
166 176 {
167 177 file_to_edit[i] = "file=" + pathToMOD + "\\SPICE\\" + file_name + "_NGspice.lib";
168 178 }
169   - file_to_edit.Write();
  179 + file_to_edit.Write();
170 180 }
171 181 file_to_edit.Close();
172 182 }
173   -
174 183 file = wxFindNextFile();
175 184 }
  185 + TextCtrl1->AppendText("\n");
176 186 }
177 187  
178 188  
179 189 if (DirPickerCtrl2->GetPath() != "")
180 190 {
  191 +
181 192 wxString lt_sym_from, lt_sym_to;
182 193  
183 194 wxString lt_sym_dir = DirPickerCtrl2->GetPath();
... ... @@ -186,6 +197,9 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
186 197  
187 198 file = wxFindFirstFile(pattern);
188 199  
  200 + TextCtrl1->AppendText("Exporting LTspice Symbols\n");
  201 + TextCtrl1->AppendText("=========================\n\n");
  202 +
189 203 while ( !file.empty())
190 204 {
191 205 wxString file_no_path = wxFileNameFromPath(file);
... ... @@ -197,6 +211,10 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
197 211 lt_sym_to = lt_sym_dir + "\\" + file_no_path;
198 212  
199 213 wxCopyFile(lt_sym_from, lt_sym_to);
  214 +
  215 + export_notification = "Exported:\n" + file_no_path + "\n";
  216 + TextCtrl1->AppendText(export_notification);
  217 +
200 218 wxTextFile file_to_edit(lt_sym_to);
201 219  
202 220 if (file_to_edit.Open())
... ... @@ -217,5 +235,7 @@ void EXPORT_SPICE::OnButton1Click(wxCommandEvent&amp; event)
217 235 }
218 236 }
219 237  
  238 + TextCtrl1->AppendText("\nExport Complete");
  239 +
220 240 wxSetWorkingDirectory(pathToMOD);
221 241 }
... ...
GUI/SW1/SRC/EXPORT_SPICE.h
... ... @@ -44,6 +44,7 @@
44 44  
45 45 //(*Headers(EXPORT_SPICE)
46 46 #include <wx/sizer.h>
  47 +#include <wx/textctrl.h>
47 48 #include <wx/filepicker.h>
48 49 #include <wx/button.h>
49 50 #include <wx/dialog.h>
... ... @@ -76,6 +77,7 @@ class EXPORT_SPICE: public wxDialog
76 77 wxButton* Button1;
77 78 wxDirPickerCtrl* DirPickerCtrl2;
78 79 wxButton* Button2;
  80 + wxTextCtrl* TextCtrl1;
79 81 //*)
80 82  
81 83 protected:
... ... @@ -85,6 +87,7 @@ class EXPORT_SPICE: public wxDialog
85 87 static const long ID_DIRPICKERCTRL2;
86 88 static const long ID_BUTTON1;
87 89 static const long ID_BUTTON2;
  90 + static const long ID_TEXTCTRL1;
88 91 //*)
89 92  
90 93 private:
... ...
GUI/SW1/SRC/FD_ESR.cpp
... ... @@ -41,6 +41,7 @@
41 41 #include "FD_ESR.h"
42 42  
43 43 //(*InternalHeaders(FD_ESR)
  44 +#include <wx/settings.h>
44 45 #include <wx/intl.h>
45 46 #include <wx/string.h>
46 47 //*)
... ... @@ -74,6 +75,17 @@ const long FD_ESR::ID_STATICTEXT9 = wxNewId();
74 75 const long FD_ESR::ID_TEXTCTRL9 = wxNewId();
75 76 const long FD_ESR::ID_STATICTEXT10 = wxNewId();
76 77 const long FD_ESR::ID_TEXTCTRL10 = wxNewId();
  78 +const long FD_ESR::ID_STATICTEXT11 = wxNewId();
  79 +const long FD_ESR::ID_TEXTCTRL11 = wxNewId();
  80 +const long FD_ESR::ID_STATICTEXT12 = wxNewId();
  81 +const long FD_ESR::ID_RADIOBUTTON1 = wxNewId();
  82 +const long FD_ESR::ID_RADIOBUTTON2 = wxNewId();
  83 +const long FD_ESR::ID_STATICTEXT13 = wxNewId();
  84 +const long FD_ESR::ID_TEXTCTRL12 = wxNewId();
  85 +const long FD_ESR::ID_STATICTEXT14 = wxNewId();
  86 +const long FD_ESR::ID_TEXTCTRL13 = wxNewId();
  87 +const long FD_ESR::ID_STATICTEXT15 = wxNewId();
  88 +const long FD_ESR::ID_TEXTCTRL14 = wxNewId();
77 89 const long FD_ESR::ID_BUTTON1 = wxNewId();
78 90 const long FD_ESR::ID_BUTTON2 = wxNewId();
79 91 //*)
... ... @@ -89,14 +101,21 @@ FD_ESR::FD_ESR(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; s
89 101 wxStaticBoxSizer* StaticBoxSizer2;
90 102 wxFlexGridSizer* FlexGridSizer4;
91 103 wxFlexGridSizer* FlexGridSizer3;
  104 + wxFlexGridSizer* FlexGridSizer5;
92 105 wxFlexGridSizer* FlexGridSizer2;
  106 + wxFlexGridSizer* FlexGridSizer7;
  107 + wxStaticBoxSizer* StaticBoxSizer3;
  108 + wxGridSizer* GridSizer3;
  109 + wxFlexGridSizer* FlexGridSizer6;
93 110 wxStaticBoxSizer* StaticBoxSizer1;
94 111 wxFlexGridSizer* FlexGridSizer1;
  112 + wxGridSizer* GridSizer2;
95 113  
96 114 Create(parent, wxID_ANY, _("Frequency Dependent Dielectric"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, _T("wxID_ANY"));
97 115 FlexGridSizer1 = new wxFlexGridSizer(0, 1, 0, 0);
98 116 FlexGridSizer1->AddGrowableCol(0);
99 117 FlexGridSizer1->AddGrowableRow(0);
  118 + FlexGridSizer5 = new wxFlexGridSizer(0, 2, 0, 0);
100 119 StaticBoxSizer1 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Inner Dielectric"));
101 120 FlexGridSizer2 = new wxFlexGridSizer(0, 2, 0, 0);
102 121 StaticText1 = new wxStaticText(this, ID_STATICTEXT1, _("Normalisation Constant"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT1"));
... ... @@ -133,7 +152,7 @@ FD_ESR::FD_ESR(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; s
133 152 TextCtrl5->SetToolTip(_("b coefficient - space seperated list"));
134 153 FlexGridSizer2->Add(TextCtrl5, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
135 154 StaticBoxSizer1->Add(FlexGridSizer2, 1, wxALL, 5);
136   - FlexGridSizer1->Add(StaticBoxSizer1, 1, wxALL|wxEXPAND, 5);
  155 + FlexGridSizer5->Add(StaticBoxSizer1, 1, wxALL|wxEXPAND, 5);
137 156 StaticBoxSizer2 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Outer Dielectric"));
138 157 FlexGridSizer3 = new wxFlexGridSizer(0, 2, 0, 0);
139 158 StaticText6 = new wxStaticText(this, ID_STATICTEXT6, _("Normalisation Constant"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT6"));
... ... @@ -170,15 +189,53 @@ FD_ESR::FD_ESR(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; s
170 189 TextCtrl10->SetToolTip(_("b coefficient - space seperated list"));
171 190 FlexGridSizer3->Add(TextCtrl10, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
172 191 StaticBoxSizer2->Add(FlexGridSizer3, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
173   - FlexGridSizer1->Add(StaticBoxSizer2, 1, wxALL|wxEXPAND, 5);
174   - FlexGridSizer4 = new wxFlexGridSizer(0, 2, 0, 0);
  192 + FlexGridSizer5->Add(StaticBoxSizer2, 1, wxALL|wxEXPAND, 5);
  193 + FlexGridSizer1->Add(FlexGridSizer5, 1, wxALL|wxEXPAND, 5);
  194 + StaticBoxSizer3 = new wxStaticBoxSizer(wxVERTICAL, this, _("Filter Fitting Parameters"));
  195 + FlexGridSizer6 = new wxFlexGridSizer(0, 1, 0, 0);
  196 + FlexGridSizer7 = new wxFlexGridSizer(0, 2, 0, 0);
  197 + StaticText11 = new wxStaticText(this, ID_STATICTEXT11, _("Order for Filter Fitting "), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT11"));
  198 + FlexGridSizer7->Add(StaticText11, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  199 + TextCtrl11 = new wxTextCtrl(this, ID_TEXTCTRL11, _("-10"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL11"));
  200 + TextCtrl11->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  201 + FlexGridSizer7->Add(TextCtrl11, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  202 + FlexGridSizer6->Add(FlexGridSizer7, 1, wxALL|wxEXPAND, 5);
  203 + GridSizer2 = new wxGridSizer(0, 3, 0, 0);
  204 + StaticText12 = new wxStaticText(this, ID_STATICTEXT12, _("Range Type"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT12"));
  205 + GridSizer2->Add(StaticText12, 2, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  206 + RadioButton1 = new wxRadioButton(this, ID_RADIOBUTTON1, _("Lin"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON1"));
  207 + RadioButton1->SetValue(true);
  208 + GridSizer2->Add(RadioButton1, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
  209 + RadioButton2 = new wxRadioButton(this, ID_RADIOBUTTON2, _("Log"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON2"));
  210 + GridSizer2->Add(RadioButton2, 1, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5);
  211 + FlexGridSizer6->Add(GridSizer2, 1, wxALL|wxEXPAND, 5);
  212 + GridSizer3 = new wxGridSizer(0, 2, 0, 0);
  213 + StaticText13 = new wxStaticText(this, ID_STATICTEXT13, _("Frequency min (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT13"));
  214 + GridSizer3->Add(StaticText13, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  215 + TextCtrl12 = new wxTextCtrl(this, ID_TEXTCTRL12, _("1e3"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL12"));
  216 + TextCtrl12->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  217 + GridSizer3->Add(TextCtrl12, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  218 + StaticText14 = new wxStaticText(this, ID_STATICTEXT14, _("Frequecy max (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT14"));
  219 + GridSizer3->Add(StaticText14, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  220 + TextCtrl13 = new wxTextCtrl(this, ID_TEXTCTRL13, _("1e9"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL13"));
  221 + TextCtrl13->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  222 + GridSizer3->Add(TextCtrl13, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  223 + StaticText15 = new wxStaticText(this, ID_STATICTEXT15, _("Number of Frequencies"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT15"));
  224 + GridSizer3->Add(StaticText15, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  225 + TextCtrl14 = new wxTextCtrl(this, ID_TEXTCTRL14, _("12"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL14"));
  226 + TextCtrl14->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  227 + GridSizer3->Add(TextCtrl14, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  228 + FlexGridSizer6->Add(GridSizer3, 1, wxALL|wxEXPAND, 5);
  229 + StaticBoxSizer3->Add(FlexGridSizer6, 1, wxALL|wxEXPAND, 5);
  230 + FlexGridSizer1->Add(StaticBoxSizer3, 1, wxALL|wxEXPAND, 5);
  231 + FlexGridSizer4 = new wxFlexGridSizer(0, 5, 0, 0);
175 232 FlexGridSizer4->AddGrowableCol(0);
176 233 FlexGridSizer4->AddGrowableCol(1);
177 234 Button1 = new wxButton(this, ID_BUTTON1, _("OK"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON1"));
178   - FlexGridSizer4->Add(Button1, 1, wxALL|wxALIGN_RIGHT, 5);
  235 + FlexGridSizer4->Add(Button1, 1, wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM, 5);
179 236 Button2 = new wxButton(this, ID_BUTTON2, _("CLOSE"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON2"));
180   - FlexGridSizer4->Add(Button2, 1, wxALL, 5);
181   - FlexGridSizer1->Add(FlexGridSizer4, 1, wxALL|wxEXPAND, 5);
  237 + FlexGridSizer4->Add(Button2, 1, wxALL|wxALIGN_LEFT|wxALIGN_BOTTOM, 5);
  238 + FlexGridSizer1->Add(FlexGridSizer4, 5, wxALL|wxALIGN_RIGHT, 5);
182 239 SetSizer(FlexGridSizer1);
183 240 FlexGridSizer1->Fit(this);
184 241 FlexGridSizer1->SetSizeHints(this);
... ... @@ -193,6 +250,7 @@ FD_ESR::FD_ESR(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; s
193 250 Connect(ID_TEXTCTRL8,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FD_ESR::OnTextCtrl8Text);
194 251 Connect(ID_TEXTCTRL9,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FD_ESR::OnTextCtrl9Text);
195 252 Connect(ID_TEXTCTRL10,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FD_ESR::OnTextCtrl10Text);
  253 + Connect(ID_TEXTCTRL13,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FD_ESR::OnTextCtrl13Text);
196 254 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FD_ESR::OnButton1Click1);
197 255 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FD_ESR::OnButton2Click1);
198 256 Connect(wxID_ANY,wxEVT_INIT_DIALOG,(wxObjectEventFunction)&FD_ESR::OnInit);
... ... @@ -280,5 +338,38 @@ void FD_ESR::OnTextCtrl10Text(wxCommandEvent&amp; event)
280 338  
281 339 void FD_ESR::OnInit(wxInitDialogEvent& event)
282 340 {
  341 + if (formtype == 1)
  342 + {
  343 + TextCtrl1->Enable(false);
  344 + TextCtrl2->Enable(false);
  345 + TextCtrl3->Enable(false);
  346 + TextCtrl4->Enable(false);
  347 + TextCtrl5->Enable(false);
283 348  
  349 + TextCtrl11->Enable(false);
  350 + RadioButton1->Enable(false);
  351 + RadioButton2->Enable(false);
  352 + TextCtrl12->Enable(false);
  353 + TextCtrl13->Enable(false);
  354 + TextCtrl14->Enable(false);
  355 + }
  356 +
  357 + if (formtype == 2)
  358 + {
  359 + TextCtrl11->Enable(false);
  360 + RadioButton1->Enable(false);
  361 + RadioButton2->Enable(false);
  362 + TextCtrl12->Enable(false);
  363 + TextCtrl13->Enable(false);
  364 + TextCtrl14->Enable(false);
  365 + }
  366 +
  367 +}
  368 +
  369 +void FD_ESR::OnTextCtrl14Text(wxCommandEvent& event)
  370 +{
  371 +}
  372 +
  373 +void FD_ESR::OnTextCtrl13Text(wxCommandEvent& event)
  374 +{
284 375 }
... ...
GUI/SW1/SRC/FD_ESR.h
... ... @@ -46,6 +46,7 @@
46 46 #include <wx/stattext.h>
47 47 #include <wx/textctrl.h>
48 48 #include <wx/statline.h>
  49 +#include <wx/radiobut.h>
49 50 #include <wx/button.h>
50 51 #include <wx/dialog.h>
51 52 //*)
... ... @@ -64,37 +65,48 @@ class FD_ESR: public wxDialog
64 65 wxStaticText* StaticText10;
65 66 wxStaticText* StaticText9;
66 67 wxTextCtrl* TextCtrl4;
  68 + wxRadioButton* RadioButton1;
67 69 wxStaticLine* StaticLine8;
  70 + wxStaticText* StaticText13;
68 71 wxStaticText* StaticText2;
69 72 wxStaticLine* StaticLine6;
  73 + wxStaticText* StaticText14;
  74 + wxRadioButton* RadioButton2;
70 75 wxButton* Button1;
71 76 wxStaticText* StaticText6;
72 77 wxTextCtrl* TextCtrl6;
73 78 wxStaticText* StaticText8;
  79 + wxStaticText* StaticText11;
74 80 wxStaticText* StaticText1;
75 81 wxStaticText* StaticText3;
76 82 wxStaticLine* StaticLine7;
77 83 wxButton* Button2;
78 84 wxStaticLine* StaticLine4;
79 85 wxStaticLine* StaticLine2;
  86 + wxTextCtrl* TextCtrl14;
80 87 wxStaticText* StaticText5;
81 88 wxStaticText* StaticText7;
  89 + wxTextCtrl* TextCtrl13;
82 90 wxStaticLine* StaticLine3;
83 91 wxTextCtrl* TextCtrl8;
84 92 wxStaticLine* StaticLine1;
85 93 wxTextCtrl* TextCtrl2;
86 94 wxTextCtrl* TextCtrl7;
87 95 wxTextCtrl* TextCtrl1;
  96 + wxStaticText* StaticText15;
  97 + wxStaticText* StaticText12;
88 98 wxTextCtrl* TextCtrl9;
89 99 wxTextCtrl* TextCtrl5;
90 100 wxStaticText* StaticText4;
91 101 wxTextCtrl* TextCtrl3;
92 102 wxTextCtrl* TextCtrl10;
  103 + wxTextCtrl* TextCtrl12;
  104 + wxTextCtrl* TextCtrl11;
93 105 wxStaticLine* StaticLine5;
94 106 //*)
95 107 wxString a,b,c,d,e; //SG
96 108  
97   -
  109 + int formtype;
98 110  
99 111 protected:
100 112  
... ... @@ -127,6 +139,17 @@ class FD_ESR: public wxDialog
127 139 static const long ID_TEXTCTRL9;
128 140 static const long ID_STATICTEXT10;
129 141 static const long ID_TEXTCTRL10;
  142 + static const long ID_STATICTEXT11;
  143 + static const long ID_TEXTCTRL11;
  144 + static const long ID_STATICTEXT12;
  145 + static const long ID_RADIOBUTTON1;
  146 + static const long ID_RADIOBUTTON2;
  147 + static const long ID_STATICTEXT13;
  148 + static const long ID_TEXTCTRL12;
  149 + static const long ID_STATICTEXT14;
  150 + static const long ID_TEXTCTRL13;
  151 + static const long ID_STATICTEXT15;
  152 + static const long ID_TEXTCTRL14;
130 153 static const long ID_BUTTON1;
131 154 static const long ID_BUTTON2;
132 155 //*)
... ... @@ -149,6 +172,8 @@ class FD_ESR: public wxDialog
149 172 void OnTextCtrl9Text(wxCommandEvent& event);
150 173 void OnTextCtrl10Text(wxCommandEvent& event);
151 174 void OnInit(wxInitDialogEvent& event);
  175 + void OnTextCtrl14Text(wxCommandEvent& event);
  176 + void OnTextCtrl13Text(wxCommandEvent& event);
152 177 //*)
153 178  
154 179 DECLARE_EVENT_TABLE()
... ...
GUI/SW1/SRC/FD_ESR_SW.cpp
... ... @@ -42,6 +42,7 @@
42 42 #include "UTILITIES.h"
43 43  
44 44 //(*InternalHeaders(FD_ESR_SW)
  45 +#include <wx/settings.h>
45 46 #include <wx/intl.h>
46 47 #include <wx/string.h>
47 48 //*)
... ... @@ -89,6 +90,17 @@ const long FD_ESR_SW::ID_STATICTEXT14 = wxNewId();
89 90 const long FD_ESR_SW::ID_TEXTCTRL14 = wxNewId();
90 91 const long FD_ESR_SW::ID_STATICTEXT15 = wxNewId();
91 92 const long FD_ESR_SW::ID_TEXTCTRL15 = wxNewId();
  93 +const long FD_ESR_SW::ID_STATICTEXT16 = wxNewId();
  94 +const long FD_ESR_SW::ID_TEXTCTRL16 = wxNewId();
  95 +const long FD_ESR_SW::ID_STATICTEXT17 = wxNewId();
  96 +const long FD_ESR_SW::ID_RADIOBUTTON1 = wxNewId();
  97 +const long FD_ESR_SW::ID_RADIOBUTTON2 = wxNewId();
  98 +const long FD_ESR_SW::ID_STATICTEXT18 = wxNewId();
  99 +const long FD_ESR_SW::ID_TEXTCTRL17 = wxNewId();
  100 +const long FD_ESR_SW::ID_STATICTEXT19 = wxNewId();
  101 +const long FD_ESR_SW::ID_TEXTCTRL18 = wxNewId();
  102 +const long FD_ESR_SW::ID_STATICTEXT20 = wxNewId();
  103 +const long FD_ESR_SW::ID_TEXTCTRL19 = wxNewId();
92 104 const long FD_ESR_SW::ID_BUTTON1 = wxNewId();
93 105 const long FD_ESR_SW::ID_BUTTON2 = wxNewId();
94 106 //*)
... ... @@ -103,15 +115,20 @@ FD_ESR_SW::FD_ESR_SW(wxWindow* parent,wxWindowID id)
103 115 //(*Initialize(FD_ESR_SW)
104 116 wxStaticBoxSizer* StaticBoxSizer2;
105 117 wxFlexGridSizer* FlexGridSizer4;
  118 + wxStaticBoxSizer* StaticBoxSizer4;
106 119 wxFlexGridSizer* FlexGridSizer3;
107 120 wxFlexGridSizer* FlexGridSizer5;
  121 + wxFlexGridSizer* FlexGridSizer9;
108 122 wxFlexGridSizer* FlexGridSizer2;
  123 + wxFlexGridSizer* FlexGridSizer7;
109 124 wxStaticBoxSizer* StaticBoxSizer3;
  125 + wxFlexGridSizer* FlexGridSizer8;
  126 + wxFlexGridSizer* FlexGridSizer6;
110 127 wxStaticBoxSizer* StaticBoxSizer1;
111 128 wxFlexGridSizer* FlexGridSizer1;
112 129  
113 130 Create(parent, wxID_ANY, _("Frequency Dependent Dielectric"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, _T("wxID_ANY"));
114   - FlexGridSizer1 = new wxFlexGridSizer(0, 1, 0, 0);
  131 + FlexGridSizer1 = new wxFlexGridSizer(0, 2, 0, 0);
115 132 StaticBoxSizer1 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Inner Dielectric"));
116 133 FlexGridSizer3 = new wxFlexGridSizer(0, 2, 0, 0);
117 134 StaticText1 = new wxStaticText(this, ID_STATICTEXT1, _("Normalisation Constant"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT1"));
... ... @@ -208,6 +225,42 @@ FD_ESR_SW::FD_ESR_SW(wxWindow* parent,wxWindowID id)
208 225 FlexGridSizer5->Add(TextCtrl15, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
209 226 StaticBoxSizer3->Add(FlexGridSizer5, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
210 227 FlexGridSizer1->Add(StaticBoxSizer3, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  228 + StaticBoxSizer4 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Filter Fitting Parameters"));
  229 + FlexGridSizer6 = new wxFlexGridSizer(0, 1, 0, 0);
  230 + FlexGridSizer7 = new wxFlexGridSizer(0, 2, 0, 0);
  231 + StaticText16 = new wxStaticText(this, ID_STATICTEXT16, _("Order for filter fitting "), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT16"));
  232 + FlexGridSizer7->Add(StaticText16, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  233 + TextCtrl16 = new wxTextCtrl(this, ID_TEXTCTRL16, _("-10"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL16"));
  234 + TextCtrl16->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  235 + FlexGridSizer7->Add(TextCtrl16, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  236 + FlexGridSizer6->Add(FlexGridSizer7, 1, wxALL|wxEXPAND, 5);
  237 + FlexGridSizer8 = new wxFlexGridSizer(0, 3, 0, 0);
  238 + StaticText17 = new wxStaticText(this, ID_STATICTEXT17, _("Range Type"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT17"));
  239 + FlexGridSizer8->Add(StaticText17, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  240 + RadioButton1 = new wxRadioButton(this, ID_RADIOBUTTON1, _("Lin"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON1"));
  241 + FlexGridSizer8->Add(RadioButton1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  242 + RadioButton2 = new wxRadioButton(this, ID_RADIOBUTTON2, _("Log"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON2"));
  243 + FlexGridSizer8->Add(RadioButton2, 1, wxALL, 5);
  244 + FlexGridSizer6->Add(FlexGridSizer8, 1, wxALL|wxEXPAND, 5);
  245 + FlexGridSizer9 = new wxFlexGridSizer(0, 2, 0, 0);
  246 + StaticText18 = new wxStaticText(this, ID_STATICTEXT18, _("Frequency min (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT18"));
  247 + FlexGridSizer9->Add(StaticText18, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  248 + TextCtrl17 = new wxTextCtrl(this, ID_TEXTCTRL17, _("1e3"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL17"));
  249 + TextCtrl17->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  250 + FlexGridSizer9->Add(TextCtrl17, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  251 + StaticText19 = new wxStaticText(this, ID_STATICTEXT19, _("Frequecy max (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT19"));
  252 + FlexGridSizer9->Add(StaticText19, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  253 + TextCtrl18 = new wxTextCtrl(this, ID_TEXTCTRL18, _("1e9"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL18"));
  254 + TextCtrl18->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  255 + FlexGridSizer9->Add(TextCtrl18, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  256 + StaticText20 = new wxStaticText(this, ID_STATICTEXT20, _("Number of Frequencies"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT20"));
  257 + FlexGridSizer9->Add(StaticText20, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  258 + TextCtrl19 = new wxTextCtrl(this, ID_TEXTCTRL19, _("12"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL19"));
  259 + TextCtrl19->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  260 + FlexGridSizer9->Add(TextCtrl19, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  261 + FlexGridSizer6->Add(FlexGridSizer9, 1, wxALL|wxEXPAND, 5);
  262 + StaticBoxSizer4->Add(FlexGridSizer6, 1, wxALL|wxEXPAND, 5);
  263 + FlexGridSizer1->Add(StaticBoxSizer4, 1, wxALL|wxEXPAND, 5);
211 264 FlexGridSizer2 = new wxFlexGridSizer(0, 2, 0, 0);
212 265 Button1 = new wxButton(this, ID_BUTTON1, _("OK"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON1"));
213 266 FlexGridSizer2->Add(Button1, 1, wxALL, 5);
... ...
GUI/SW1/SRC/FD_ESR_SW.h
... ... @@ -46,6 +46,7 @@
46 46 #include <wx/stattext.h>
47 47 #include <wx/textctrl.h>
48 48 #include <wx/statline.h>
  49 +#include <wx/radiobut.h>
49 50 #include <wx/button.h>
50 51 #include <wx/dialog.h>
51 52 //*)
... ... @@ -60,26 +61,35 @@ class FD_ESR_SW: public wxDialog
60 61 //(*Declarations(FD_ESR_SW)
61 62 wxStaticText* StaticText10;
62 63 wxStaticText* StaticText9;
  64 + wxStaticText* StaticText20;
63 65 wxTextCtrl* TextCtrl4;
  66 + wxRadioButton* RadioButton1;
64 67 wxStaticLine* StaticLine8;
65 68 wxStaticLine* StaticLine10;
66 69 wxStaticText* StaticText13;
67 70 wxStaticText* StaticText2;
68 71 wxStaticLine* StaticLine6;
69 72 wxStaticText* StaticText14;
  73 + wxRadioButton* RadioButton2;
70 74 wxButton* Button1;
  75 + wxTextCtrl* TextCtrl16;
71 76 wxStaticText* StaticText6;
72 77 wxStaticLine* StaticLine9;
73 78 wxTextCtrl* TextCtrl6;
  79 + wxStaticText* StaticText19;
74 80 wxStaticText* StaticText8;
75 81 wxStaticText* StaticText11;
  82 + wxStaticText* StaticText18;
  83 + wxTextCtrl* TextCtrl19;
76 84 wxStaticText* StaticText1;
77 85 wxStaticText* StaticText3;
78 86 wxStaticLine* StaticLine7;
79 87 wxButton* Button2;
  88 + wxTextCtrl* TextCtrl18;
80 89 wxStaticLine* StaticLine4;
81 90 wxStaticLine* StaticLine2;
82 91 wxStaticLine* StaticLine12;
  92 + wxTextCtrl* TextCtrl17;
83 93 wxTextCtrl* TextCtrl14;
84 94 wxTextCtrl* TextCtrl15;
85 95 wxStaticText* StaticText5;
... ... @@ -96,11 +106,13 @@ class FD_ESR_SW: public wxDialog
96 106 wxTextCtrl* TextCtrl9;
97 107 wxTextCtrl* TextCtrl5;
98 108 wxStaticLine* StaticLine11;
  109 + wxStaticText* StaticText17;
99 110 wxStaticText* StaticText4;
100 111 wxTextCtrl* TextCtrl3;
101 112 wxTextCtrl* TextCtrl10;
102 113 wxTextCtrl* TextCtrl12;
103 114 wxTextCtrl* TextCtrl11;
  115 + wxStaticText* StaticText16;
104 116 wxStaticLine* StaticLine5;
105 117 //*)
106 118  
... ... @@ -149,6 +161,17 @@ class FD_ESR_SW: public wxDialog
149 161 static const long ID_TEXTCTRL14;
150 162 static const long ID_STATICTEXT15;
151 163 static const long ID_TEXTCTRL15;
  164 + static const long ID_STATICTEXT16;
  165 + static const long ID_TEXTCTRL16;
  166 + static const long ID_STATICTEXT17;
  167 + static const long ID_RADIOBUTTON1;
  168 + static const long ID_RADIOBUTTON2;
  169 + static const long ID_STATICTEXT18;
  170 + static const long ID_TEXTCTRL17;
  171 + static const long ID_STATICTEXT19;
  172 + static const long ID_TEXTCTRL18;
  173 + static const long ID_STATICTEXT20;
  174 + static const long ID_TEXTCTRL19;
152 175 static const long ID_BUTTON1;
153 176 static const long ID_BUTTON2;
154 177 //*)
... ... @@ -173,6 +196,7 @@ class FD_ESR_SW: public wxDialog
173 196 void OnTextCtrl13Text(wxCommandEvent& event);
174 197 void OnTextCtrl14Text(wxCommandEvent& event);
175 198 void OnTextCtrl15Text(wxCommandEvent& event);
  199 + void OnTextCtrl16Text(wxCommandEvent& event);
176 200 //*)
177 201  
178 202 DECLARE_EVENT_TABLE()
... ...
GUI/SW1/SRC/FLEXCABLE.cpp
... ... @@ -70,20 +70,6 @@ const long FLEXCABLE::ID_STATICTEXT13 = wxNewId();
70 70 const long FLEXCABLE::ID_STATICTEXT14 = wxNewId();
71 71 const long FLEXCABLE::ID_STATICTEXT15 = wxNewId();
72 72 const long FLEXCABLE::ID_CHECKBOX1 = wxNewId();
73   -const long FLEXCABLE::ID_STATICTEXT7 = wxNewId();
74   -const long FLEXCABLE::ID_TEXTCTRL7 = wxNewId();
75   -const long FLEXCABLE::ID_STATICLINE1 = wxNewId();
76   -const long FLEXCABLE::ID_STATICLINE2 = wxNewId();
77   -const long FLEXCABLE::ID_STATICTEXT8 = wxNewId();
78   -const long FLEXCABLE::ID_TEXTCTRL8 = wxNewId();
79   -const long FLEXCABLE::ID_STATICTEXT9 = wxNewId();
80   -const long FLEXCABLE::ID_TEXTCTRL9 = wxNewId();
81   -const long FLEXCABLE::ID_STATICLINE3 = wxNewId();
82   -const long FLEXCABLE::ID_STATICLINE4 = wxNewId();
83   -const long FLEXCABLE::ID_STATICTEXT10 = wxNewId();
84   -const long FLEXCABLE::ID_TEXTCTRL10 = wxNewId();
85   -const long FLEXCABLE::ID_STATICTEXT11 = wxNewId();
86   -const long FLEXCABLE::ID_TEXTCTRL11 = wxNewId();
87 73 const long FLEXCABLE::ID_PANEL3 = wxNewId();
88 74 const long FLEXCABLE::ID_NOTEBOOK1 = wxNewId();
89 75 const long FLEXCABLE::ID_BUTTON1 = wxNewId();
... ... @@ -102,7 +88,6 @@ FLEXCABLE::FLEXCABLE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
102 88 //(*Initialize(FLEXCABLE)
103 89 wxBoxSizer* BoxSizer4;
104 90 wxStaticBoxSizer* StaticBoxSizer2;
105   - wxFlexGridSizer* FlexGridSizer4;
106 91 wxFlexGridSizer* FlexGridSizer3;
107 92 wxFlexGridSizer* FlexGridSizer5;
108 93 wxFlexGridSizer* FlexGridSizer2;
... ... @@ -174,41 +159,6 @@ FLEXCABLE::FLEXCABLE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
174 159 CheckBox1->SetValue(false);
175 160 FlexGridSizer5->Add(CheckBox1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
176 161 BoxSizer4->Add(FlexGridSizer5, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
177   - FlexGridSizer4 = new wxFlexGridSizer(0, 2, 0, 0);
178   - StaticText7 = new wxStaticText(Panel3, ID_STATICTEXT7, _("Normalisation Constant"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT7"));
179   - FlexGridSizer4->Add(StaticText7, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
180   - TextCtrl7 = new wxTextCtrl(Panel3, ID_TEXTCTRL7, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL7"));
181   - TextCtrl7->Disable();
182   - FlexGridSizer4->Add(TextCtrl7, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
183   - StaticLine1 = new wxStaticLine(Panel3, ID_STATICLINE1, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE1"));
184   - FlexGridSizer4->Add(StaticLine1, 1, wxALL|wxEXPAND, 5);
185   - StaticLine2 = new wxStaticLine(Panel3, ID_STATICLINE2, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE2"));
186   - FlexGridSizer4->Add(StaticLine2, 1, wxALL|wxEXPAND, 5);
187   - StaticText8 = new wxStaticText(Panel3, ID_STATICTEXT8, _("a order"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT8"));
188   - FlexGridSizer4->Add(StaticText8, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
189   - TextCtrl8 = new wxTextCtrl(Panel3, ID_TEXTCTRL8, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL8"));
190   - TextCtrl8->Disable();
191   - FlexGridSizer4->Add(TextCtrl8, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
192   - StaticText9 = new wxStaticText(Panel3, ID_STATICTEXT9, _("a coefficents"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT9"));
193   - FlexGridSizer4->Add(StaticText9, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
194   - TextCtrl9 = new wxTextCtrl(Panel3, ID_TEXTCTRL9, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL9"));
195   - TextCtrl9->Disable();
196   - FlexGridSizer4->Add(TextCtrl9, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
197   - StaticLine3 = new wxStaticLine(Panel3, ID_STATICLINE3, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE3"));
198   - FlexGridSizer4->Add(StaticLine3, 1, wxALL|wxEXPAND, 5);
199   - StaticLine4 = new wxStaticLine(Panel3, ID_STATICLINE4, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE4"));
200   - FlexGridSizer4->Add(StaticLine4, 1, wxALL|wxEXPAND, 5);
201   - StaticText10 = new wxStaticText(Panel3, ID_STATICTEXT10, _("b order"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT10"));
202   - FlexGridSizer4->Add(StaticText10, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
203   - TextCtrl10 = new wxTextCtrl(Panel3, ID_TEXTCTRL10, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL10"));
204   - TextCtrl10->Disable();
205   - FlexGridSizer4->Add(TextCtrl10, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
206   - StaticText11 = new wxStaticText(Panel3, ID_STATICTEXT11, _("b coefficients"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT11"));
207   - FlexGridSizer4->Add(StaticText11, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
208   - TextCtrl11 = new wxTextCtrl(Panel3, ID_TEXTCTRL11, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL11"));
209   - TextCtrl11->Disable();
210   - FlexGridSizer4->Add(TextCtrl11, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
211   - BoxSizer4->Add(FlexGridSizer4, 3, wxALL|wxEXPAND, 5);
212 162 Panel3->SetSizer(BoxSizer4);
213 163 BoxSizer4->Fit(Panel3);
214 164 BoxSizer4->SetSizeHints(Panel3);
... ... @@ -244,11 +194,6 @@ FLEXCABLE::FLEXCABLE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
244 194 Connect(ID_TEXTCTRL6,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl6Text);
245 195 Connect(ID_TEXTCTRL12,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl12Text);
246 196 Connect(ID_CHECKBOX1,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&FLEXCABLE::OnCheckBox1Click);
247   - Connect(ID_TEXTCTRL7,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl7Text);
248   - Connect(ID_TEXTCTRL8,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl8Text);
249   - Connect(ID_TEXTCTRL9,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl9Text);
250   - Connect(ID_TEXTCTRL10,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl10Text);
251   - Connect(ID_TEXTCTRL11,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&FLEXCABLE::OnTextCtrl11Text);
252 197 Connect(ID_NOTEBOOK1,wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING,(wxObjectEventFunction)&FLEXCABLE::OnNotebook1PageChanging);
253 198 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FLEXCABLE::OnButton1Click);
254 199 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&FLEXCABLE::OnButton2Click);
... ... @@ -306,11 +251,11 @@ void FLEXCABLE::OnButton1Click(wxCommandEvent&amp; event)
306 251  
307 252 if (CheckBox1->GetValue())
308 253 {
309   - check_is_empty(TextCtrl7, &IsError);
310   - check_is_empty(TextCtrl8, &IsError);
311   - check_is_empty(TextCtrl9, &IsError);
312   - check_is_empty(TextCtrl10, &IsError);
313   - check_is_empty(TextCtrl11, &IsError);
  254 +// check_is_empty(TextCtrl7, &IsError);
  255 +// check_is_empty(TextCtrl8, &IsError);
  256 +// check_is_empty(TextCtrl9, &IsError);
  257 +// check_is_empty(TextCtrl10, &IsError);
  258 +// check_is_empty(TextCtrl11, &IsError);
314 259 }
315 260  
316 261 else
... ... @@ -331,11 +276,29 @@ void FLEXCABLE::OnButton1Click(wxCommandEvent&amp; event)
331 276  
332 277 void FLEXCABLE::OnCheckBox1Click(wxCommandEvent& event)
333 278 {
334   - TextCtrl7->Enable();
335   - TextCtrl8->Enable();
336   - TextCtrl9->Enable();
337   - TextCtrl10->Enable();
338   - TextCtrl11->Enable();
  279 +
  280 + TextCtrl12->Disable();
  281 +
  282 + FD_ESR *winFD_ESR = new FD_ESR(this);
  283 +
  284 + winFD_ESR->formtype = 1;
  285 +
  286 + if ( winFD_ESR->ShowModal() == wxID_OK )
  287 + {
  288 + FD_ESR6 = winFD_ESR->TextCtrl6->GetValue();
  289 + FD_ESR7 = winFD_ESR->TextCtrl7->GetValue();
  290 + FD_ESR8 = winFD_ESR->TextCtrl8->GetValue();
  291 + FD_ESR9 = winFD_ESR->TextCtrl9->GetValue();
  292 + FD_ESR10= winFD_ESR->TextCtrl10->GetValue();
  293 + }
  294 + winFD_ESR->Destroy();
  295 +
  296 +
  297 +// TextCtrl7->Enable();
  298 +// TextCtrl8->Enable();
  299 +// TextCtrl9->Enable();
  300 +// TextCtrl10->Enable();
  301 +// TextCtrl11->Enable();
339 302  
340 303 }
341 304  
... ... @@ -409,38 +372,38 @@ void FLEXCABLE::OnTextCtrl12Text(wxCommandEvent&amp; event)
409 372 check_is_positive(TextCtrl2, &IsError);
410 373 }
411 374  
412   -void FLEXCABLE::OnTextCtrl7Text(wxCommandEvent& event)
413   -{
414   - int IsError = 0;
415   - check_is_numeric(TextCtrl7, &IsError);
416   - check_is_positive(TextCtrl7, &IsError);
417   -}
418   -
419   -void FLEXCABLE::OnTextCtrl8Text(wxCommandEvent& event)
420   -{
421   - int IsError = 0;
422   - check_is_numeric(TextCtrl8, &IsError);
423   - check_is_positive(TextCtrl8, &IsError);
424   -}
425   -
426   -void FLEXCABLE::OnTextCtrl9Text(wxCommandEvent& event)
427   -{
428   - int IsError = 0;
429   - check_is_numeric_list(TextCtrl9, &IsError);
430   -}
431   -
432   -void FLEXCABLE::OnTextCtrl10Text(wxCommandEvent& event)
433   -{
434   - int IsError = 0;
435   - check_is_numeric(TextCtrl10, &IsError);
436   - check_is_positive(TextCtrl10, &IsError);
437   -}
438   -
439   -void FLEXCABLE::OnTextCtrl11Text(wxCommandEvent& event)
440   -{
441   - int IsError = 0;
442   - check_is_numeric_list(TextCtrl11, &IsError);
443   -}
  375 +//void FLEXCABLE::OnTextCtrl7Text(wxCommandEvent& event)
  376 +//{
  377 +// int IsError = 0;
  378 +// check_is_numeric(TextCtrl7, &IsError);
  379 +// check_is_positive(TextCtrl7, &IsError);
  380 +//}
  381 +//
  382 +//void FLEXCABLE::OnTextCtrl8Text(wxCommandEvent& event)
  383 +//{
  384 +// int IsError = 0;
  385 +// check_is_numeric(TextCtrl8, &IsError);
  386 +// check_is_positive(TextCtrl8, &IsError);
  387 +//}
  388 +//
  389 +//void FLEXCABLE::OnTextCtrl9Text(wxCommandEvent& event)
  390 +//{
  391 +// int IsError = 0;
  392 +// check_is_numeric_list(TextCtrl9, &IsError);
  393 +//}
  394 +//
  395 +//void FLEXCABLE::OnTextCtrl10Text(wxCommandEvent& event)
  396 +//{
  397 +// int IsError = 0;
  398 +// check_is_numeric(TextCtrl10, &IsError);
  399 +// check_is_positive(TextCtrl10, &IsError);
  400 +//}
  401 +
  402 +//void FLEXCABLE::OnTextCtrl11Text(wxCommandEvent& event)
  403 +//{
  404 +// int IsError = 0;
  405 +// check_is_numeric_list(TextCtrl11, &IsError);
  406 +//}
444 407  
445 408 void FLEXCABLE::OnTextCtrl13Text(wxCommandEvent& event)
446 409 {
... ... @@ -489,11 +452,11 @@ void FLEXCABLE::WriteCableFile (wxString fileName)
489 452  
490 453 if (CheckBox1->GetValue()){
491 454 cableFile << "# Dielectric relative permittivity model follows\n";
492   - cableFile << TextCtrl7->GetValue() <<" # w normalisation constant\n";
493   - cableFile << TextCtrl8->GetValue() <<" # a order, a coefficients follow below\n";
494   - cableFile << TextCtrl9->GetValue() <<" \n";
495   - cableFile << TextCtrl10->GetValue() <<" # b order, b coefficients follow below\n";
496   - cableFile << TextCtrl11->GetValue() <<" \n";
  455 + cableFile << FD_ESR6 <<" # w normalisation constant\n";
  456 + cableFile << FD_ESR7 <<" # a order, a coefficients follow below\n";
  457 + cableFile << FD_ESR8 <<" \n";
  458 + cableFile << FD_ESR9 <<" # b order, b coefficients follow below\n";
  459 + cableFile << FD_ESR10 <<" \n";
497 460 }
498 461  
499 462 else{
... ...
GUI/SW1/SRC/FLEXCABLE.h
... ... @@ -47,7 +47,6 @@
47 47 #include <wx/stattext.h>
48 48 #include <wx/textctrl.h>
49 49 #include <wx/checkbox.h>
50   -#include <wx/statline.h>
51 50 #include <wx/panel.h>
52 51 #include <wx/button.h>
53 52 #include <wx/dialog.h>
... ... @@ -62,6 +61,7 @@
62 61 #include "MESH_LAPLACE.h"
63 62 #include "MESH_PARAM.h"
64 63 #include "RUN_STATUS.h"
  64 +#include "FD_ESR.h"
65 65  
66 66 // Standard Library Header Files
67 67 #include <iostream>
... ... @@ -116,12 +116,16 @@ class FLEXCABLE: public wxDialog
116 116  
117 117 flexcableSchematicPane *drawPane;
118 118  
  119 + wxString FD_ESR6;
  120 + wxString FD_ESR7;
  121 + wxString FD_ESR8;
  122 + wxString FD_ESR9;
  123 + wxString FD_ESR10;
  124 +
119 125 wxString MESH_PARAM1;
120 126 wxString MESH_PARAM2;
121 127  
122 128 //(*Declarations(FLEXCABLE)
123   - wxStaticText* StaticText10;
124   - wxStaticText* StaticText9;
125 129 wxTextCtrl* TextCtrl4;
126 130 wxNotebook* Notebook1;
127 131 wxStaticText* StaticText13;
... ... @@ -130,38 +134,26 @@ class FLEXCABLE: public wxDialog
130 134 wxButton* Button1;
131 135 wxStaticText* StaticText6;
132 136 wxTextCtrl* TextCtrl6;
133   - wxStaticText* StaticText8;
134   - wxStaticText* StaticText11;
135 137 wxPanel* Panel1;
136 138 wxStaticText* StaticText1;
137 139 wxStaticText* StaticText3;
138 140 wxButton* Button2;
139 141 wxPanel* Panel3;
140   - wxStaticLine* StaticLine4;
141 142 wxCheckBox* CheckBox1;
142   - wxStaticLine* StaticLine2;
143 143 wxButton* Button3;
144 144 wxTextCtrl* TextCtrl14;
145 145 wxStaticText* StaticText5;
146   - wxStaticText* StaticText7;
147 146 wxTextCtrl* TextCtrl13;
148   - wxStaticLine* StaticLine3;
149   - wxTextCtrl* TextCtrl8;
150   - wxStaticLine* StaticLine1;
151 147 wxTextCtrl* TextCtrl2;
152   - wxTextCtrl* TextCtrl7;
153 148 wxTextCtrl* TextCtrl1;
154 149 wxStaticText* StaticText15;
155 150 wxStaticText* StaticText12;
156   - wxTextCtrl* TextCtrl9;
157 151 wxPanel* Panel2;
158 152 wxTextCtrl* TextCtrl5;
159 153 wxStaticText* StaticText17;
160 154 wxStaticText* StaticText4;
161 155 wxTextCtrl* TextCtrl3;
162   - wxTextCtrl* TextCtrl10;
163 156 wxTextCtrl* TextCtrl12;
164   - wxTextCtrl* TextCtrl11;
165 157 wxStaticText* StaticText16;
166 158 //*)
167 159  
... ... @@ -191,20 +183,6 @@ class FLEXCABLE: public wxDialog
191 183 static const long ID_STATICTEXT14;
192 184 static const long ID_STATICTEXT15;
193 185 static const long ID_CHECKBOX1;
194   - static const long ID_STATICTEXT7;
195   - static const long ID_TEXTCTRL7;
196   - static const long ID_STATICLINE1;
197   - static const long ID_STATICLINE2;
198   - static const long ID_STATICTEXT8;
199   - static const long ID_TEXTCTRL8;
200   - static const long ID_STATICTEXT9;
201   - static const long ID_TEXTCTRL9;
202   - static const long ID_STATICLINE3;
203   - static const long ID_STATICLINE4;
204   - static const long ID_STATICTEXT10;
205   - static const long ID_TEXTCTRL10;
206   - static const long ID_STATICTEXT11;
207   - static const long ID_TEXTCTRL11;
208 186 static const long ID_PANEL3;
209 187 static const long ID_NOTEBOOK1;
210 188 static const long ID_BUTTON1;
... ...
GUI/SW1/SRC/SPACEWIRE.cpp
... ... @@ -114,10 +114,10 @@ const long SPACEWIRE::ID_STATICTEXT22 = wxNewId();
114 114 const long SPACEWIRE::ID_COMBOBOX1 = wxNewId();
115 115 const long SPACEWIRE::ID_STATICTEXT25 = wxNewId();
116 116 const long SPACEWIRE::ID_CHECKBOX3 = wxNewId();
  117 +const long SPACEWIRE::ID_PANEL1 = wxNewId();
117 118 const long SPACEWIRE::ID_BUTTON1 = wxNewId();
118 119 const long SPACEWIRE::ID_BUTTON2 = wxNewId();
119 120 const long SPACEWIRE::ID_BUTTON3 = wxNewId();
120   -const long SPACEWIRE::ID_PANEL1 = wxNewId();
121 121 //*)
122 122  
123 123 BEGIN_EVENT_TABLE(SPACEWIRE,wxDialog)
... ... @@ -136,6 +136,7 @@ SPACEWIRE::SPACEWIRE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
136 136 wxFlexGridSizer* FlexGridSizer2;
137 137 wxBoxSizer* BoxSizer2;
138 138 wxFlexGridSizer* FlexGridSizer7;
  139 + wxFlexGridSizer* FlexGridSizer8;
139 140 wxBoxSizer* BoxSizer1;
140 141 wxFlexGridSizer* FlexGridSizer6;
141 142 wxStaticBoxSizer* StaticBoxSizer1;
... ... @@ -300,6 +301,14 @@ SPACEWIRE::SPACEWIRE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
300 301 FlexGridSizer7->Add(CheckBox3, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
301 302 FlexGridSizer2->Add(FlexGridSizer7, 1, wxALL|wxEXPAND, 5);
302 303 StaticBoxSizer1->Add(FlexGridSizer2, 8, wxALL|wxEXPAND, 5);
  304 + FlexGridSizer1->Add(StaticBoxSizer1, 1, wxALL|wxEXPAND, 5);
  305 + FlexGridSizer8 = new wxFlexGridSizer(0, 1, 0, 0);
  306 + StaticBoxSizer2 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Cross Section"));
  307 + Panel1 = new wxPanel(this, ID_PANEL1, wxDefaultPosition, wxSize(500,500), wxTAB_TRAVERSAL, _T("ID_PANEL1"));
  308 + Panel1->SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
  309 + Panel1->SetToolTip(_("Double Click to Reset Schematic"));
  310 + StaticBoxSizer2->Add(Panel1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  311 + FlexGridSizer8->Add(StaticBoxSizer2, 1, wxALL|wxALIGN_TOP|wxALIGN_CENTER_HORIZONTAL, 5);
303 312 FlexGridSizer6 = new wxFlexGridSizer(0, 1, 0, 0);
304 313 BoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
305 314 Button1 = new wxButton(this, ID_BUTTON1, _("SAVE"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON1"));
... ... @@ -308,15 +317,9 @@ SPACEWIRE::SPACEWIRE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
308 317 BoxSizer2->Add(Button2, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
309 318 Button3 = new wxButton(this, ID_BUTTON3, _("CLOSE"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON3"));
310 319 BoxSizer2->Add(Button3, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
311   - FlexGridSizer6->Add(BoxSizer2, 1, wxALL|wxEXPAND, 5);
312   - StaticBoxSizer1->Add(FlexGridSizer6, 1, wxALL|wxEXPAND, 5);
313   - FlexGridSizer1->Add(StaticBoxSizer1, 1, wxALL|wxEXPAND, 5);
314   - StaticBoxSizer2 = new wxStaticBoxSizer(wxHORIZONTAL, this, _("Cross Section"));
315   - Panel1 = new wxPanel(this, ID_PANEL1, wxDefaultPosition, wxSize(500,500), wxTAB_TRAVERSAL, _T("ID_PANEL1"));
316   - Panel1->SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
317   - Panel1->SetToolTip(_("Double Click to Reset Schematic"));
318   - StaticBoxSizer2->Add(Panel1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
319   - FlexGridSizer1->Add(StaticBoxSizer2, 1, wxALL|wxALIGN_TOP|wxALIGN_CENTER_HORIZONTAL, 5);
  320 + FlexGridSizer6->Add(BoxSizer2, 1, wxALL|wxALIGN_RIGHT, 5);
  321 + FlexGridSizer8->Add(FlexGridSizer6, 1, wxALL|wxEXPAND, 5);
  322 + FlexGridSizer1->Add(FlexGridSizer8, 1, wxALL|wxEXPAND, 5);
320 323 SetSizer(FlexGridSizer1);
321 324 FlexGridSizer1->Fit(this);
322 325 FlexGridSizer1->SetSizeHints(this);
... ... @@ -350,11 +353,11 @@ SPACEWIRE::SPACEWIRE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxS
350 353 Connect(ID_TEXTCTRL25,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&SPACEWIRE::OnTextCtrl25Text);
351 354 Connect(ID_COMBOBOX1,wxEVT_COMMAND_COMBOBOX_SELECTED,(wxObjectEventFunction)&SPACEWIRE::OnComboBox1Selected);
352 355 Connect(ID_CHECKBOX3,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&SPACEWIRE::OnCheckBox3Click);
  356 + Panel1->Connect(wxEVT_PAINT,(wxObjectEventFunction)&SPACEWIRE::OnPanel1Paint,0,this);
  357 + Panel1->Connect(wxEVT_LEFT_DCLICK,(wxObjectEventFunction)&SPACEWIRE::OnPanel1LeftDClick,0,this);
353 358 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&SPACEWIRE::OnButton1Click);
354 359 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&SPACEWIRE::OnButton2Click);
355 360 Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&SPACEWIRE::OnButton3Click);
356   - Panel1->Connect(wxEVT_PAINT,(wxObjectEventFunction)&SPACEWIRE::OnPanel1Paint,0,this);
357   - Panel1->Connect(wxEVT_LEFT_DCLICK,(wxObjectEventFunction)&SPACEWIRE::OnPanel1LeftDClick,0,this);
358 361 //*)
359 362  
360 363 TextCtrl2->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&SPACEWIRE::OnHighlightSchematic, this);
... ... @@ -475,6 +478,19 @@ void SPACEWIRE::OnCheckBox1Click(wxCommandEvent&amp; event)
475 478 FD_ESR13 = winFD_ESR->TextCtrl13->GetValue();
476 479 FD_ESR14 = winFD_ESR->TextCtrl14->GetValue();
477 480 FD_ESR15 = winFD_ESR->TextCtrl15->GetValue();
  481 +
  482 + FD_ORDER = winFD_ESR->TextCtrl16->GetValue();
  483 + FD_lin = winFD_ESR->RadioButton1->GetValue();
  484 + FD_Fmin = winFD_ESR->TextCtrl17->GetValue();
  485 + FD_Fmax = winFD_ESR->TextCtrl18->GetValue();
  486 + FD_Num = winFD_ESR->TextCtrl19->GetValue();
  487 +
  488 +
  489 +// FD_ORDER = winFD_ESR->TextCtrl11->GetValue();
  490 +// FD_lin = winFD_ESR->RadioButton1->GetValue();
  491 +// FD_Fmin = winFD_ESR->TextCtrl12->GetValue();
  492 +// FD_Fmax = winFD_ESR->TextCtrl12->GetValue();
  493 +// FD_Num = winFD_ESR->TextCtrl12->GetValue();
478 494 }
479 495 winFD_ESR->Destroy();
480 496 }
... ... @@ -506,7 +522,7 @@ void SPACEWIRE::OnButton2Click(wxCommandEvent&amp; event)
506 522  
507 523 if (CheckBox2->GetValue()){
508 524 // Identify all mesh files for viewing
509   - //struct _finddata_t fileinfo;
  525 + struct _finddata_t fileinfo;
510 526 long hFile;
511 527 //wxString meshFileName = "*.msh.vtk";
512 528 wxString pattern = "*.msh.vtk";
... ... @@ -938,6 +954,20 @@ void SPACEWIRE::WriteCableFile (wxString fileName)
938 954 cableFile << TextCtrl25->GetValue() <<" \t# list of denominator coefficients b0 b1 b2... \n";
939 955 }
940 956  
  957 + if (CheckBox1->GetValue()){
  958 +
  959 + cableFile << FD_ORDER <<"\t # order for filter fitting\n";
  960 + if (FD_lin)
  961 + {
  962 + cableFile << "lin # frequency range type for filter fitting type (lin or dB)\n";
  963 + }
  964 + else
  965 + {
  966 + cableFile << "log # frequency range type for filter fitting type (lin or dB)\n";
  967 + }
  968 + cableFile << FD_Fmin <<" "<< FD_Fmax <<" "<< FD_ORDER <<"\t # fmin fmax number_of_frequencies for filter fitting";
  969 + }
  970 +
941 971 if (CheckBox2->GetValue()){
942 972 cableFile << "use_laplace\n";
943 973 }
... ... @@ -1609,3 +1639,7 @@ void SPACEWIRE::OnCheckBox3Click(wxCommandEvent&amp; event)
1609 1639 }
1610 1640 WriteCableFile (TextCtrl1->GetValue());
1611 1641 }
  1642 +
  1643 +void SPACEWIRE::OnTextCtrl28Text(wxCommandEvent& event)
  1644 +{
  1645 +}
... ...
GUI/SW1/SRC/SPACEWIRE.h
... ... @@ -103,6 +103,13 @@ class SPACEWIRE: public wxDialog
103 103 wxString FD_ESR14;
104 104 wxString FD_ESR15;
105 105  
  106 + wxString FD_ORDER;
  107 + bool FD_log;
  108 + bool FD_lin;
  109 + wxString FD_Fmin;
  110 + wxString FD_Fmax;
  111 + wxString FD_Num;
  112 +
106 113 wxString MESH_PARAM1;
107 114 wxString MESH_PARAM2;
108 115  
... ... @@ -248,10 +255,10 @@ class SPACEWIRE: public wxDialog
248 255 static const long ID_COMBOBOX1;
249 256 static const long ID_STATICTEXT25;
250 257 static const long ID_CHECKBOX3;
  258 + static const long ID_PANEL1;
251 259 static const long ID_BUTTON1;
252 260 static const long ID_BUTTON2;
253 261 static const long ID_BUTTON3;
254   - static const long ID_PANEL1;
255 262 //*)
256 263  
257 264 private:
... ... @@ -291,6 +298,7 @@ class SPACEWIRE: public wxDialog
291 298 void OnTextCtrl25Text(wxCommandEvent& event);
292 299 void OnComboBox1Selected(wxCommandEvent& event);
293 300 void OnCheckBox3Click(wxCommandEvent& event);
  301 + void OnTextCtrl28Text(wxCommandEvent& event);
294 302 //*)
295 303  
296 304 DECLARE_EVENT_TABLE()
... ...
GUI/SW1/SRC/SPICEMODEL.cpp
... ... @@ -84,6 +84,20 @@ const long SPICEMODEL::ID_TEXTCTRL8 = wxNewId();
84 84 const long SPICEMODEL::ID_STATICTEXT11 = wxNewId();
85 85 const long SPICEMODEL::ID_TEXTCTRL9 = wxNewId();
86 86 const long SPICEMODEL::ID_PANEL4 = wxNewId();
  87 +const long SPICEMODEL::ID_STATICTEXT17 = wxNewId();
  88 +const long SPICEMODEL::ID_CHECKBOX1 = wxNewId();
  89 +const long SPICEMODEL::ID_STATICTEXT12 = wxNewId();
  90 +const long SPICEMODEL::ID_TEXTCTRL10 = wxNewId();
  91 +const long SPICEMODEL::ID_STATICTEXT13 = wxNewId();
  92 +const long SPICEMODEL::ID_RADIOBUTTON1 = wxNewId();
  93 +const long SPICEMODEL::ID_RADIOBUTTON2 = wxNewId();
  94 +const long SPICEMODEL::ID_STATICTEXT14 = wxNewId();
  95 +const long SPICEMODEL::ID_TEXTCTRL11 = wxNewId();
  96 +const long SPICEMODEL::ID_STATICTEXT15 = wxNewId();
  97 +const long SPICEMODEL::ID_TEXTCTRL12 = wxNewId();
  98 +const long SPICEMODEL::ID_STATICTEXT16 = wxNewId();
  99 +const long SPICEMODEL::ID_TEXTCTRL13 = wxNewId();
  100 +const long SPICEMODEL::ID_PANEL5 = wxNewId();
87 101 const long SPICEMODEL::ID_NOTEBOOK1 = wxNewId();
88 102 const long SPICEMODEL::ID_BUTTON1 = wxNewId();
89 103 const long SPICEMODEL::ID_BUTTON2 = wxNewId();
... ... @@ -99,15 +113,20 @@ END_EVENT_TABLE()
99 113 SPICEMODEL::SPICEMODEL(wxWindow* parent,wxWindowID id,const wxPoint& pos,const wxSize& size)
100 114 {
101 115 //(*Initialize(SPICEMODEL)
  116 + wxBoxSizer* BoxSizer4;
102 117 wxStaticBoxSizer* StaticBoxSizer2;
103 118 wxFlexGridSizer* FlexGridSizer4;
  119 + wxFlexGridSizer* FlexGridSizer10;
104 120 wxFlexGridSizer* FlexGridSizer3;
105 121 wxFlexGridSizer* FlexGridSizer5;
  122 + wxFlexGridSizer* FlexGridSizer9;
106 123 wxFlexGridSizer* FlexGridSizer2;
107 124 wxBoxSizer* BoxSizer2;
108 125 wxFlexGridSizer* FlexGridSizer7;
109 126 wxStaticBoxSizer* StaticBoxSizer6;
  127 + wxFlexGridSizer* FlexGridSizer8;
110 128 wxBoxSizer* BoxSizer1;
  129 + wxFlexGridSizer* FlexGridSizer6;
111 130 wxStaticBoxSizer* StaticBoxSizer1;
112 131 wxFlexGridSizer* FlexGridSizer1;
113 132 wxBoxSizer* BoxSizer3;
... ... @@ -181,8 +200,53 @@ SPICEMODEL::SPICEMODEL(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const w
181 200 Panel4->SetSizer(FlexGridSizer5);
182 201 FlexGridSizer5->Fit(Panel4);
183 202 FlexGridSizer5->SetSizeHints(Panel4);
  203 + Panel5 = new wxPanel(Notebook1, ID_PANEL5, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ID_PANEL5"));
  204 + FlexGridSizer6 = new wxFlexGridSizer(0, 1, 0, 0);
  205 + BoxSizer4 = new wxBoxSizer(wxHORIZONTAL);
  206 + StaticText16 = new wxStaticText(Panel5, ID_STATICTEXT17, _("Use Filter Fitting"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT17"));
  207 + BoxSizer4->Add(StaticText16, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  208 + CheckBox1 = new wxCheckBox(Panel5, ID_CHECKBOX1, _("Yes"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX1"));
  209 + CheckBox1->SetValue(false);
  210 + BoxSizer4->Add(CheckBox1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  211 + FlexGridSizer6->Add(BoxSizer4, 1, wxALL|wxEXPAND, 5);
  212 + FlexGridSizer8 = new wxFlexGridSizer(0, 2, 0, 0);
  213 + StaticText9 = new wxStaticText(Panel5, ID_STATICTEXT12, _("Order for Filter Fitting "), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT12"));
  214 + FlexGridSizer8->Add(StaticText9, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  215 + TextCtrl10 = new wxTextCtrl(Panel5, ID_TEXTCTRL10, _("-10"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL10"));
  216 + TextCtrl10->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  217 + FlexGridSizer8->Add(TextCtrl10, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  218 + FlexGridSizer6->Add(FlexGridSizer8, 1, wxALL, 5);
  219 + FlexGridSizer9 = new wxFlexGridSizer(0, 3, 0, 0);
  220 + StaticText12 = new wxStaticText(Panel5, ID_STATICTEXT13, _("Range Type"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT13"));
  221 + FlexGridSizer9->Add(StaticText12, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  222 + RadioButton1 = new wxRadioButton(Panel5, ID_RADIOBUTTON1, _("Lin"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON1"));
  223 + FlexGridSizer9->Add(RadioButton1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  224 + RadioButton2 = new wxRadioButton(Panel5, ID_RADIOBUTTON2, _("Log"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_RADIOBUTTON2"));
  225 + FlexGridSizer9->Add(RadioButton2, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  226 + FlexGridSizer6->Add(FlexGridSizer9, 1, wxALL|wxEXPAND, 5);
  227 + FlexGridSizer10 = new wxFlexGridSizer(0, 2, 0, 0);
  228 + StaticText13 = new wxStaticText(Panel5, ID_STATICTEXT14, _("Frequency min (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT14"));
  229 + FlexGridSizer10->Add(StaticText13, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  230 + TextCtrl11 = new wxTextCtrl(Panel5, ID_TEXTCTRL11, _("1e3"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL11"));
  231 + TextCtrl11->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  232 + FlexGridSizer10->Add(TextCtrl11, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  233 + StaticText14 = new wxStaticText(Panel5, ID_STATICTEXT15, _("Frequecy max (Hz)"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT15"));
  234 + FlexGridSizer10->Add(StaticText14, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
  235 + TextCtrl12 = new wxTextCtrl(Panel5, ID_TEXTCTRL12, _("1e9"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL12"));
  236 + TextCtrl12->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  237 + FlexGridSizer10->Add(TextCtrl12, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  238 + StaticText15 = new wxStaticText(Panel5, ID_STATICTEXT16, _("Number of Frequencies"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT16"));
  239 + FlexGridSizer10->Add(StaticText15, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  240 + TextCtrl13 = new wxTextCtrl(Panel5, ID_TEXTCTRL13, _("12"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL13"));
  241 + TextCtrl13->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT));
  242 + FlexGridSizer10->Add(TextCtrl13, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
  243 + FlexGridSizer6->Add(FlexGridSizer10, 1, wxALL|wxEXPAND, 5);
  244 + Panel5->SetSizer(FlexGridSizer6);
  245 + FlexGridSizer6->Fit(Panel5);
  246 + FlexGridSizer6->SetSizeHints(Panel5);
184 247 Notebook1->AddPage(Panel3, _("Incident Field Excitation"), false);
185 248 Notebook1->AddPage(Panel4, _("Transfer Impedance Model"), false);
  249 + Notebook1->AddPage(Panel5, _("Filter Fitting"), false);
186 250 BoxSizer3->Add(Notebook1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
187 251 FlexGridSizer2->Add(BoxSizer3, 1, wxALL|wxEXPAND, 5);
188 252 BoxSizer2 = new wxBoxSizer(wxHORIZONTAL);
... ... @@ -215,6 +279,7 @@ SPICEMODEL::SPICEMODEL(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const w
215 279 Connect(ID_TEXTCTRL7,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&SPICEMODEL::OnTextCtrl7Text);
216 280 Connect(ID_TEXTCTRL8,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&SPICEMODEL::OnTextCtrl8Text);
217 281 Connect(ID_TEXTCTRL9,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&SPICEMODEL::OnTextCtrl9Text);
  282 + Connect(ID_TEXTCTRL13,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&SPICEMODEL::OnTextCtrl13Text1);
218 283 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&SPICEMODEL::OnButton1Click);
219 284 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&SPICEMODEL::OnButton2Click);
220 285 Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&SPICEMODEL::OnButton3Click);
... ... @@ -444,7 +509,22 @@ void SPICEMODEL::OnButton1Click(wxCommandEvent&amp; event)
444 509 spiceFile <<conductor_id[i] << " " << conductor_dn[i] <<" # conductor number and coupling direction\n";
445 510 }
446 511  
447   - spiceFile <<"No_validation_test";
  512 + spiceFile <<"No_validation_test\n";
  513 +
  514 + if (CheckBox1->GetValue())
  515 + {
  516 + spiceFile << TextCtrl10->GetValue() <<"\t # order for filter fitting\n";
  517 + if (RadioButton1)
  518 + {
  519 + spiceFile << "lin # frequency range type for filter fitting type (lin or dB)\n";
  520 + }
  521 + else
  522 + {
  523 + spiceFile << "log # frequency range type for filter fitting type (lin or dB)\n";
  524 + }
  525 + spiceFile << TextCtrl11->GetValue() <<" "<< TextCtrl12->GetValue() <<" "<< TextCtrl13->GetValue() <<"\t # fmin fmax number_of_frequencies for filter fitting\n";
  526 +
  527 + }
448 528 }
449 529 spiceFile.close();
450 530 }
... ... @@ -512,3 +592,15 @@ void SPICEMODEL::OnTextCtrl9Text(wxCommandEvent&amp; event)
512 592 int IsError = 0;
513 593 check_is_numeric_list(TextCtrl9, &IsError);
514 594 }
  595 +
  596 +void SPICEMODEL::OnNotebook1PageChanged(wxNotebookEvent& event)
  597 +{
  598 +}
  599 +
  600 +void SPICEMODEL::OnNotebook1PageChanged1(wxNotebookEvent& event)
  601 +{
  602 +}
  603 +
  604 +void SPICEMODEL::OnTextCtrl13Text1(wxCommandEvent& event)
  605 +{
  606 +}
... ...
GUI/SW1/SRC/SPICEMODEL.h
... ... @@ -46,6 +46,8 @@
46 46 #include <wx/sizer.h>
47 47 #include <wx/stattext.h>
48 48 #include <wx/textctrl.h>
  49 +#include <wx/checkbox.h>
  50 +#include <wx/radiobut.h>
49 51 #include <wx/panel.h>
50 52 #include <wx/button.h>
51 53 #include <wx/dialog.h>
... ... @@ -102,10 +104,16 @@ class SPICEMODEL: public wxDialog
102 104  
103 105 //(*Declarations(SPICEMODEL)
104 106 wxStaticText* StaticText10;
  107 + wxStaticText* StaticText9;
105 108 wxTextCtrl* TextCtrl4;
  109 + wxRadioButton* RadioButton1;
  110 + wxPanel* Panel5;
106 111 wxNotebook* Notebook1;
  112 + wxStaticText* StaticText13;
107 113 wxStaticText* StaticText2;
108 114 wxPanel* Panel4;
  115 + wxStaticText* StaticText14;
  116 + wxRadioButton* RadioButton2;
109 117 wxButton* Button1;
110 118 wxStaticText* StaticText6;
111 119 wxTextCtrl* TextCtrl6;
... ... @@ -115,6 +123,7 @@ class SPICEMODEL: public wxDialog
115 123 wxStaticText* StaticText1;
116 124 wxStaticText* StaticText3;
117 125 wxButton* Button2;
  126 + wxCheckBox* CheckBox1;
118 127 wxPanel* Panel3;
119 128 wxStaticText* StaticText21;
120 129 wxStaticText* ConductorNumber;
... ... @@ -122,15 +131,22 @@ class SPICEMODEL: public wxDialog
122 131 wxStaticText* StaticText5;
123 132 wxTextCtrl* TextCtrl15;
124 133 wxStaticText* StaticText7;
  134 + wxTextCtrl* TextCtrl13;
125 135 wxTextCtrl* TextCtrl8;
126 136 wxTextCtrl* TextCtrl2;
127 137 wxTextCtrl* TextCtrl7;
128 138 wxTextCtrl* TextCtrl1;
  139 + wxStaticText* StaticText15;
  140 + wxStaticText* StaticText12;
129 141 wxTextCtrl* TextCtrl9;
130 142 wxPanel* Panel2;
131 143 wxTextCtrl* TextCtrl5;
132 144 wxStaticText* StaticText4;
133 145 wxTextCtrl* TextCtrl3;
  146 + wxTextCtrl* TextCtrl10;
  147 + wxTextCtrl* TextCtrl12;
  148 + wxTextCtrl* TextCtrl11;
  149 + wxStaticText* StaticText16;
134 150 //*)
135 151  
136 152 protected:
... ... @@ -161,6 +177,20 @@ class SPICEMODEL: public wxDialog
161 177 static const long ID_STATICTEXT11;
162 178 static const long ID_TEXTCTRL9;
163 179 static const long ID_PANEL4;
  180 + static const long ID_STATICTEXT17;
  181 + static const long ID_CHECKBOX1;
  182 + static const long ID_STATICTEXT12;
  183 + static const long ID_TEXTCTRL10;
  184 + static const long ID_STATICTEXT13;
  185 + static const long ID_RADIOBUTTON1;
  186 + static const long ID_RADIOBUTTON2;
  187 + static const long ID_STATICTEXT14;
  188 + static const long ID_TEXTCTRL11;
  189 + static const long ID_STATICTEXT15;
  190 + static const long ID_TEXTCTRL12;
  191 + static const long ID_STATICTEXT16;
  192 + static const long ID_TEXTCTRL13;
  193 + static const long ID_PANEL5;
164 194 static const long ID_NOTEBOOK1;
165 195 static const long ID_BUTTON1;
166 196 static const long ID_BUTTON2;
... ... @@ -185,6 +215,9 @@ class SPICEMODEL: public wxDialog
185 215 void OnTextCtrl7Text(wxCommandEvent& event);
186 216 void OnTextCtrl8Text(wxCommandEvent& event);
187 217 void OnTextCtrl9Text(wxCommandEvent& event);
  218 + void OnNotebook1PageChanged(wxNotebookEvent& event);
  219 + void OnNotebook1PageChanged1(wxNotebookEvent& event);
  220 + void OnTextCtrl13Text1(wxCommandEvent& event);
188 221 //*)
189 222  
190 223 void PopulateTheDirectoryTree ( wxString);
... ...
GUI/SW1/SRC/SW1_GUI deleted
No preview for this file type
GUI/SW1/SRC/SW1_GUIMain.cpp
... ... @@ -182,7 +182,7 @@ SW1_GUIFrame::SW1_GUIFrame(wxWindow* parent,wxWindowID id)
182 182 MenuItem13->Enable(false);
183 183 MenuBar1->Append(Menu4, _("Bundle Model"));
184 184 Menu5 = new wxMenu();
185   - MenuItem16 = new wxMenuItem(Menu5, ID_NEWSPICE, _("Create Spice Budle Model"), wxEmptyString, wxITEM_NORMAL);
  185 + MenuItem16 = new wxMenuItem(Menu5, ID_NEWSPICE, _("Create Spice Bundle Model"), wxEmptyString, wxITEM_NORMAL);
186 186 Menu5->Append(MenuItem16);
187 187 Menu5->AppendSeparator();
188 188 Menu7 = new wxMenuItem(Menu5, ID_MENUITEM2, _("Export Spice Models"), wxEmptyString, wxITEM_NORMAL);
... ...
GUI/SW1/SRC/TP.cpp
... ... @@ -423,6 +423,7 @@ void TP::OnCheckBox1Click(wxCommandEvent&amp; event)
423 423  
424 424 FD_ESR *winFD_ESR = new FD_ESR(this);
425 425  
  426 +
426 427 if ( winFD_ESR->ShowModal() == wxID_OK )
427 428 {
428 429 FD_ESR1 = winFD_ESR->TextCtrl1->GetValue();
... ... @@ -431,11 +432,17 @@ void TP::OnCheckBox1Click(wxCommandEvent&amp; event)
431 432 FD_ESR4 = winFD_ESR->TextCtrl4->GetValue();
432 433 FD_ESR5 = winFD_ESR->TextCtrl5->GetValue();
433 434  
434   - FD_ESR6 = winFD_ESR->TextCtrl1->GetValue();
435   - FD_ESR7 = winFD_ESR->TextCtrl2->GetValue();
436   - FD_ESR8 = winFD_ESR->TextCtrl3->GetValue();
437   - FD_ESR9 = winFD_ESR->TextCtrl4->GetValue();
438   - FD_ESR10= winFD_ESR->TextCtrl5->GetValue();
  435 + FD_ESR6 = winFD_ESR->TextCtrl6->GetValue();
  436 + FD_ESR7 = winFD_ESR->TextCtrl7->GetValue();
  437 + FD_ESR8 = winFD_ESR->TextCtrl8->GetValue();
  438 + FD_ESR9 = winFD_ESR->TextCtrl9->GetValue();
  439 + FD_ESR10= winFD_ESR->TextCtrl10->GetValue();
  440 +
  441 + FD_ORDER = winFD_ESR->TextCtrl11->GetValue();
  442 + FD_lin = winFD_ESR->RadioButton1->GetValue();
  443 + FD_Fmin = winFD_ESR->TextCtrl12->GetValue();
  444 + FD_Fmax = winFD_ESR->TextCtrl13->GetValue();
  445 + FD_Num = winFD_ESR->TextCtrl14->GetValue();
439 446 }
440 447 winFD_ESR->Destroy();
441 448 }
... ... @@ -467,7 +474,7 @@ void TP::OnButton2Click(wxCommandEvent&amp; event)
467 474 if (CheckBox2->GetValue())
468 475 {
469 476 // Identify all mesh files for viewing
470   - //struct _finddata_t fileinfo;
  477 + struct _finddata_t fileinfo;
471 478 long hFile;
472 479 //wxString meshFileName = "*.msh.vtk";
473 480 wxString pattern = "*.msh.vtk";
... ... @@ -769,6 +776,20 @@ void TP::WriteCableFile (wxString fileName)
769 776 }
770 777 }
771 778  
  779 + if (CheckBox1->GetValue()){
  780 +
  781 + cableFile << FD_ORDER <<"\t # order for filter fitting\n";
  782 + if (FD_lin)
  783 + {
  784 + cableFile << "lin # frequency range type for filter fitting type (lin or dB)\n";
  785 + }
  786 + else
  787 + {
  788 + cableFile << "log # frequency range type for filter fitting type (lin or dB)\n";
  789 + }
  790 + cableFile << FD_Fmin <<" "<< FD_Fmax <<" "<< FD_ORDER <<"\t # fmin fmax number_of_frequencies for filter fitting";
  791 + }
  792 +
772 793 if (CheckBox2->GetValue()){
773 794 cableFile << "use_laplace\n";
774 795 }
... ...
GUI/SW1/SRC/TP.h
... ... @@ -99,6 +99,13 @@ class TP: public wxDialog
99 99 wxString FD_ESR9;
100 100 wxString FD_ESR10;
101 101  
  102 + wxString FD_ORDER;
  103 + bool FD_log;
  104 + bool FD_lin;
  105 + wxString FD_Fmin;
  106 + wxString FD_Fmax;
  107 + wxString FD_Num;
  108 +
102 109 wxString MESH_PARAM1;
103 110 wxString MESH_PARAM2;
104 111  
... ...
GUI/SW1/SRC/TWINAX.cpp
... ... @@ -446,7 +446,7 @@ void TWINAX::OnButton3Click(wxCommandEvent&amp; event)
446 446  
447 447 if (CheckBox2->GetValue()){
448 448 // Identify all mesh files for viewing
449   - //struct _finddata_t fileinfo;
  449 + struct _finddata_t fileinfo;
450 450 long hFile;
451 451 //wxString meshFileName = "*.msh.vtk";
452 452 wxString pattern = "*.msh.vtk";
... ... @@ -505,11 +505,17 @@ void TWINAX::OnCheckBox1Click(wxCommandEvent&amp; event)
505 505 FD_ESR4 = winFD_ESR->TextCtrl4->GetValue();
506 506 FD_ESR5 = winFD_ESR->TextCtrl5->GetValue();
507 507  
508   - FD_ESR6 = winFD_ESR->TextCtrl1->GetValue();
509   - FD_ESR7 = winFD_ESR->TextCtrl2->GetValue();
510   - FD_ESR8 = winFD_ESR->TextCtrl3->GetValue();
511   - FD_ESR9 = winFD_ESR->TextCtrl4->GetValue();
512   - FD_ESR10= winFD_ESR->TextCtrl5->GetValue();
  508 + FD_ESR6 = winFD_ESR->TextCtrl6->GetValue();
  509 + FD_ESR7 = winFD_ESR->TextCtrl7->GetValue();
  510 + FD_ESR8 = winFD_ESR->TextCtrl8->GetValue();
  511 + FD_ESR9 = winFD_ESR->TextCtrl9->GetValue();
  512 + FD_ESR10= winFD_ESR->TextCtrl10->GetValue();
  513 +
  514 + FD_ORDER = winFD_ESR->TextCtrl11->GetValue();
  515 + FD_lin = winFD_ESR->RadioButton1->GetValue();
  516 + FD_Fmin = winFD_ESR->TextCtrl12->GetValue();
  517 + FD_Fmax = winFD_ESR->TextCtrl13->GetValue();
  518 + FD_Num = winFD_ESR->TextCtrl14->GetValue();
513 519 }
514 520 winFD_ESR->Destroy();
515 521 }
... ... @@ -763,6 +769,20 @@ void TWINAX::WriteCableFile (wxString fileName)
763 769 cableFile << "1 # list of denominator coefficients b0 b1 b2... \n";
764 770 }
765 771  
  772 + if (CheckBox1->GetValue()){
  773 +
  774 + cableFile << FD_ORDER <<"\t # order for filter fitting\n";
  775 + if (FD_lin)
  776 + {
  777 + cableFile << "lin # frequency range type for filter fitting type (lin or dB)\n";
  778 + }
  779 + else
  780 + {
  781 + cableFile << "log # frequency range type for filter fitting type (lin or dB)\n";
  782 + }
  783 + cableFile << FD_Fmin <<" "<< FD_Fmax <<" "<< FD_ORDER <<"\t # fmin fmax number_of_frequencies for filter fitting";
  784 + }
  785 +
766 786 if (CheckBox2->GetValue()){
767 787 cableFile << "use_laplace\n";
768 788 }
... ...
GUI/SW1/SRC/TWINAX.h
... ... @@ -99,6 +99,13 @@ class TWINAX: public wxDialog
99 99 wxString FD_ESR9;
100 100 wxString FD_ESR10;
101 101  
  102 + wxString FD_ORDER;
  103 + bool FD_log;
  104 + bool FD_lin;
  105 + wxString FD_Fmin;
  106 + wxString FD_Fmax;
  107 + wxString FD_Num;
  108 +
102 109 wxString MESH_PARAM1;
103 110 wxString MESH_PARAM2;
104 111  
... ...
GUI/SW1/SRC/UTP.cpp
... ... @@ -64,20 +64,6 @@ const long UTP::ID_STATICTEXT12 = wxNewId();
64 64 const long UTP::ID_STATICTEXT13 = wxNewId();
65 65 const long UTP::ID_STATICTEXT14 = wxNewId();
66 66 const long UTP::ID_CHECKBOX1 = wxNewId();
67   -const long UTP::ID_STATICTEXT6 = wxNewId();
68   -const long UTP::ID_TEXTCTRL6 = wxNewId();
69   -const long UTP::ID_STATICLINE1 = wxNewId();
70   -const long UTP::ID_STATICLINE2 = wxNewId();
71   -const long UTP::ID_STATICTEXT7 = wxNewId();
72   -const long UTP::ID_TEXTCTRL7 = wxNewId();
73   -const long UTP::ID_STATICTEXT8 = wxNewId();
74   -const long UTP::ID_TEXTCTRL8 = wxNewId();
75   -const long UTP::ID_STATICLINE3 = wxNewId();
76   -const long UTP::ID_STATICLINE4 = wxNewId();
77   -const long UTP::ID_STATICTEXT9 = wxNewId();
78   -const long UTP::ID_TEXTCTRL9 = wxNewId();
79   -const long UTP::ID_STATICTEXT10 = wxNewId();
80   -const long UTP::ID_TEXTCTRL10 = wxNewId();
81 67 const long UTP::ID_PANEL3 = wxNewId();
82 68 const long UTP::ID_NOTEBOOK1 = wxNewId();
83 69 const long UTP::ID_STATICTEXT15 = wxNewId();
... ... @@ -102,7 +88,6 @@ UTP::UTP(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; size)
102 88 //(*Initialize(UTP)
103 89 wxBoxSizer* BoxSizer4;
104 90 wxStaticBoxSizer* StaticBoxSizer2;
105   - wxFlexGridSizer* FlexGridSizer4;
106 91 wxFlexGridSizer* FlexGridSizer3;
107 92 wxFlexGridSizer* FlexGridSizer5;
108 93 wxFlexGridSizer* FlexGridSizer2;
... ... @@ -163,41 +148,6 @@ UTP::UTP(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; size)
163 148 CheckBox1->SetValue(false);
164 149 FlexGridSizer5->Add(CheckBox1, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
165 150 BoxSizer4->Add(FlexGridSizer5, 1, wxALL|wxALIGN_CENTER_HORIZONTAL, 5);
166   - FlexGridSizer4 = new wxFlexGridSizer(0, 2, 0, 0);
167   - StaticText6 = new wxStaticText(Panel3, ID_STATICTEXT6, _("Normalisation Constant"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT6"));
168   - FlexGridSizer4->Add(StaticText6, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
169   - TextCtrl6 = new wxTextCtrl(Panel3, ID_TEXTCTRL6, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL6"));
170   - TextCtrl6->Disable();
171   - FlexGridSizer4->Add(TextCtrl6, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
172   - StaticLine1 = new wxStaticLine(Panel3, ID_STATICLINE1, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE1"));
173   - FlexGridSizer4->Add(StaticLine1, 1, wxALL|wxEXPAND, 5);
174   - StaticLine2 = new wxStaticLine(Panel3, ID_STATICLINE2, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE2"));
175   - FlexGridSizer4->Add(StaticLine2, 1, wxALL|wxEXPAND, 5);
176   - StaticText7 = new wxStaticText(Panel3, ID_STATICTEXT7, _("a order"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT7"));
177   - FlexGridSizer4->Add(StaticText7, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
178   - TextCtrl7 = new wxTextCtrl(Panel3, ID_TEXTCTRL7, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL7"));
179   - TextCtrl7->Disable();
180   - FlexGridSizer4->Add(TextCtrl7, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
181   - StaticText8 = new wxStaticText(Panel3, ID_STATICTEXT8, _("a constants"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT8"));
182   - FlexGridSizer4->Add(StaticText8, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
183   - TextCtrl8 = new wxTextCtrl(Panel3, ID_TEXTCTRL8, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL8"));
184   - TextCtrl8->Disable();
185   - FlexGridSizer4->Add(TextCtrl8, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
186   - StaticLine3 = new wxStaticLine(Panel3, ID_STATICLINE3, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE3"));
187   - FlexGridSizer4->Add(StaticLine3, 1, wxALL|wxEXPAND, 5);
188   - StaticLine4 = new wxStaticLine(Panel3, ID_STATICLINE4, wxDefaultPosition, wxSize(10,-1), wxLI_HORIZONTAL, _T("ID_STATICLINE4"));
189   - FlexGridSizer4->Add(StaticLine4, 1, wxALL|wxEXPAND, 5);
190   - StaticText9 = new wxStaticText(Panel3, ID_STATICTEXT9, _("b order"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT9"));
191   - FlexGridSizer4->Add(StaticText9, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
192   - TextCtrl9 = new wxTextCtrl(Panel3, ID_TEXTCTRL9, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL9"));
193   - TextCtrl9->Disable();
194   - FlexGridSizer4->Add(TextCtrl9, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
195   - StaticText10 = new wxStaticText(Panel3, ID_STATICTEXT10, _("b constants"), wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT10"));
196   - FlexGridSizer4->Add(StaticText10, 1, wxALL|wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL, 5);
197   - TextCtrl10 = new wxTextCtrl(Panel3, ID_TEXTCTRL10, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_TEXTCTRL10"));
198   - TextCtrl10->Disable();
199   - FlexGridSizer4->Add(TextCtrl10, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
200   - BoxSizer4->Add(FlexGridSizer4, 2, wxALL|wxEXPAND, 5);
201 151 Panel3->SetSizer(BoxSizer4);
202 152 BoxSizer4->Fit(Panel3);
203 153 BoxSizer4->SetSizeHints(Panel3);
... ... @@ -248,11 +198,6 @@ UTP::UTP(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; size)
248 198 Connect(ID_TEXTCTRL5,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl5Text);
249 199 Connect(ID_TEXTCTRL11,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl11Text);
250 200 Connect(ID_CHECKBOX1,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&UTP::OnCheckBox1Click);
251   - Connect(ID_TEXTCTRL6,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl6Text);
252   - Connect(ID_TEXTCTRL7,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl7Text);
253   - Connect(ID_TEXTCTRL8,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl8Text);
254   - Connect(ID_TEXTCTRL9,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl9Text);
255   - Connect(ID_TEXTCTRL10,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&UTP::OnTextCtrl10Text);
256 201 Connect(ID_NOTEBOOK1,wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING,(wxObjectEventFunction)&UTP::OnNotebook1PageChanging);
257 202 Connect(ID_COMBOBOX1,wxEVT_COMMAND_COMBOBOX_SELECTED,(wxObjectEventFunction)&UTP::OnComboBox1Selected);
258 203 Connect(ID_CHECKBOX3,wxEVT_COMMAND_CHECKBOX_CLICKED,(wxObjectEventFunction)&UTP::OnCheckBox3Click);
... ... @@ -268,11 +213,11 @@ UTP::UTP(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const wxSize&amp; size)
268 213 TextCtrl3->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
269 214 TextCtrl4->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
270 215 TextCtrl5->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
271   - TextCtrl6->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
272   - TextCtrl7->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
273   - TextCtrl8->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
274   - TextCtrl9->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
275   - TextCtrl10->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
  216 +// TextCtrl6->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
  217 +// TextCtrl7->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
  218 +// TextCtrl8->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
  219 +// TextCtrl9->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
  220 +// TextCtrl10->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
276 221 TextCtrl11->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
277 222 CheckBox1->Bind(wxEVT_SET_FOCUS,(wxObjectEventFunction)&UTP::OnHighlightSchematic, this);
278 223 }
... ... @@ -310,11 +255,11 @@ void UTP::OnButton1Click(wxCommandEvent&amp; event)
310 255  
311 256 if (CheckBox1->GetValue())
312 257 {
313   - check_is_empty(TextCtrl6, &IsError);
314   - check_is_empty(TextCtrl7, &IsError);
315   - check_is_empty(TextCtrl8, &IsError);
316   - check_is_empty(TextCtrl9, &IsError);
317   - check_is_empty(TextCtrl10, &IsError);
  258 +// check_is_empty(TextCtrl6, &IsError);
  259 +// check_is_empty(TextCtrl7, &IsError);
  260 +// check_is_empty(TextCtrl8, &IsError);
  261 +// check_is_empty(TextCtrl9, &IsError);
  262 +// check_is_empty(TextCtrl10, &IsError);
318 263 }
319 264 else
320 265 {
... ... @@ -340,11 +285,37 @@ void UTP::OnButton1Click(wxCommandEvent&amp; event)
340 285 void UTP::OnCheckBox1Click(wxCommandEvent& event)
341 286 {
342 287 TextCtrl11->Disable();
343   - TextCtrl6->Enable();
344   - TextCtrl7->Enable();
345   - TextCtrl8->Enable();
346   - TextCtrl9->Enable();
347   - TextCtrl10->Enable();
  288 +// TextCtrl6->Enable();
  289 +// TextCtrl7->Enable();
  290 +// TextCtrl8->Enable();
  291 +// TextCtrl9->Enable();
  292 +// TextCtrl10->Enable();
  293 +
  294 + FD_ESR *winFD_ESR = new FD_ESR(this);
  295 +
  296 + if ( winFD_ESR->ShowModal() == wxID_OK )
  297 + {
  298 +// FD_ESR1 = winFD_ESR->TextCtrl1->GetValue();
  299 +// FD_ESR2 = winFD_ESR->TextCtrl2->GetValue();
  300 +// FD_ESR3 = winFD_ESR->TextCtrl3->GetValue();
  301 +// FD_ESR4 = winFD_ESR->TextCtrl4->GetValue();
  302 +// FD_ESR5 = winFD_ESR->TextCtrl5->GetValue();
  303 +
  304 + FD_ESR6 = winFD_ESR->TextCtrl6->GetValue();
  305 + FD_ESR7 = winFD_ESR->TextCtrl7->GetValue();
  306 + FD_ESR8 = winFD_ESR->TextCtrl8->GetValue();
  307 + FD_ESR9 = winFD_ESR->TextCtrl9->GetValue();
  308 + FD_ESR10= winFD_ESR->TextCtrl10->GetValue();
  309 +
  310 + FD_ORDER = winFD_ESR->TextCtrl11->GetValue();
  311 + FD_lin = winFD_ESR->RadioButton1->GetValue();
  312 + FD_Fmin = winFD_ESR->TextCtrl12->GetValue();
  313 + FD_Fmax = winFD_ESR->TextCtrl12->GetValue();
  314 + FD_Num = winFD_ESR->TextCtrl12->GetValue();
  315 +
  316 + }
  317 + winFD_ESR->Destroy();
  318 +
348 319 }
349 320  
350 321 void UTP::OnButton2Click(wxCommandEvent& event)
... ... @@ -375,7 +346,7 @@ void UTP::OnButton2Click(wxCommandEvent&amp; event)
375 346 if (CheckBox2->GetValue())
376 347 {
377 348 // Identify all mesh files for viewing
378   - //struct _finddata_t fileinfo;
  349 + struct _finddata_t fileinfo;
379 350 long hFile;
380 351 //wxString meshFileName = "*.msh.vtk";
381 352 wxString pattern = "*.msh.vtk";
... ... @@ -473,35 +444,35 @@ void UTP::OnTextCtrl11Text(wxCommandEvent&amp; event)
473 444 check_is_numeric_list(TextCtrl11, &IsError);
474 445 }
475 446  
476   -void UTP::OnTextCtrl6Text(wxCommandEvent& event)
477   -{
478   - int IsError = 0;
479   - check_is_numeric_list(TextCtrl6, &IsError);
480   -}
481   -
482   -void UTP::OnTextCtrl7Text(wxCommandEvent& event)
483   -{
484   - int IsError = 0;
485   - check_is_numeric_list(TextCtrl7, &IsError);
486   -}
487   -
488   -void UTP::OnTextCtrl8Text(wxCommandEvent& event)
489   -{
490   - int IsError = 0;
491   - check_is_numeric_list(TextCtrl8, &IsError);
492   -}
493   -
494   -void UTP::OnTextCtrl9Text(wxCommandEvent& event)
495   -{
496   - int IsError = 0;
497   - check_is_numeric_list(TextCtrl9, &IsError);
498   -}
499   -
500   -void UTP::OnTextCtrl10Text(wxCommandEvent& event)
501   -{
502   - int IsError = 0;
503   - check_is_numeric_list(TextCtrl10, &IsError);
504   -}
  447 +//void UTP::OnTextCtrl6Text(wxCommandEvent& event)
  448 +//{
  449 +// int IsError = 0;
  450 +// check_is_numeric_list(TextCtrl6, &IsError);
  451 +//}
  452 +//
  453 +//void UTP::OnTextCtrl7Text(wxCommandEvent& event)
  454 +//{
  455 +// int IsError = 0;
  456 +// check_is_numeric_list(TextCtrl7, &IsError);
  457 +//}
  458 +//
  459 +//void UTP::OnTextCtrl8Text(wxCommandEvent& event)
  460 +//{
  461 +// int IsError = 0;
  462 +// check_is_numeric_list(TextCtrl8, &IsError);
  463 +//}
  464 +//
  465 +//void UTP::OnTextCtrl9Text(wxCommandEvent& event)
  466 +//{
  467 +// int IsError = 0;
  468 +// check_is_numeric_list(TextCtrl9, &IsError);
  469 +//}
  470 +//
  471 +//void UTP::OnTextCtrl10Text(wxCommandEvent& event)
  472 +//{
  473 +// int IsError = 0;
  474 +// check_is_numeric_list(TextCtrl10, &IsError);
  475 +//}
505 476  
506 477 void UTP::WriteCableFile (wxString fileName)
507 478 {
... ... @@ -529,11 +500,18 @@ void UTP::WriteCableFile (wxString fileName)
529 500  
530 501 if (CheckBox1->GetValue()){
531 502 cableFile << "# Dielectric relative permittivity model follows\n";
532   - cableFile << TextCtrl6->GetValue() <<" \t# w normalisation constant\n";
533   - cableFile << TextCtrl7->GetValue() <<" \t# a order, a coefficients follow below\n";
534   - cableFile << TextCtrl8->GetValue() <<" \n";
535   - cableFile << TextCtrl9->GetValue() <<" \t# b order, b coefficients follow below\n";
536   - cableFile << TextCtrl10->GetValue() <<" \n";
  503 + cableFile << FD_ESR6 <<"\t # w normalisation constant\n";
  504 + cableFile << FD_ESR7 <<"\t # a order, a coefficients follow below\n";
  505 + cableFile << FD_ESR8 <<"\n";
  506 + cableFile << FD_ESR9 <<"\t # b order, b coefficients follow below\n";
  507 + cableFile << FD_ESR10 <<"\n";
  508 +
  509 +// cableFile << "# Dielectric relative permittivity model follows\n";
  510 +// cableFile << TextCtrl6->GetValue() <<" \t# w normalisation constant\n";
  511 +// cableFile << TextCtrl7->GetValue() <<" \t# a order, a coefficients follow below\n";
  512 +// cableFile << TextCtrl8->GetValue() <<" \n";
  513 +// cableFile << TextCtrl9->GetValue() <<" \t# b order, b coefficients follow below\n";
  514 +// cableFile << TextCtrl10->GetValue() <<" \n";
537 515 }
538 516  
539 517 else{
... ... @@ -546,6 +524,20 @@ void UTP::WriteCableFile (wxString fileName)
546 524 }
547 525 }
548 526  
  527 + if (CheckBox1->GetValue()){
  528 +
  529 + cableFile << FD_ORDER <<"\t # order for filter fitting\n";
  530 + if (FD_lin)
  531 + {
  532 + cableFile << "lin # frequency range type for filter fitting type (lin or dB)";
  533 + }
  534 + else
  535 + {
  536 + cableFile << "log # frequency range type for filter fitting type (lin or dB)";
  537 + }
  538 + cableFile << FD_Fmin <<" "<< FD_Fmax <<" "<< FD_ORDER <<"\t # fmin fmax number_of_frequencies for filter fitting";
  539 + }
  540 +
549 541 if (CheckBox2->GetValue())
550 542 {
551 543 cableFile << "use_laplace\n";
... ...
GUI/SW1/SRC/UTP.h
... ... @@ -47,7 +47,6 @@
47 47 #include <wx/stattext.h>
48 48 #include <wx/textctrl.h>
49 49 #include <wx/checkbox.h>
50   -#include <wx/statline.h>
51 50 #include <wx/panel.h>
52 51 #include <wx/button.h>
53 52 #include <wx/dialog.h>
... ... @@ -59,6 +58,7 @@
59 58 #include <wx/dcclient.h>
60 59  
61 60 // Application Includes
  61 +#include "FD_ESR.h"
62 62 #include "UTILITIES.h"
63 63 #include "MESH_LAPLACE.h"
64 64 #include "MESH_PARAM.h"
... ... @@ -69,7 +69,7 @@
69 69 #include <fstream>
70 70 #include <sstream>
71 71 #include <stdio.h>
72   -//#include <io.h>
  72 +#include <io.h>
73 73  
74 74 using namespace std;
75 75  
... ... @@ -89,21 +89,34 @@ class UTP: public wxDialog
89 89 void utpSchematic();
90 90 void OnHighlightSchematic(wxCommandEvent & event);
91 91  
  92 + wxString FD_ESR1;
  93 + wxString FD_ESR2;
  94 + wxString FD_ESR3;
  95 + wxString FD_ESR4;
  96 + wxString FD_ESR5;
  97 + wxString FD_ESR6;
  98 + wxString FD_ESR7;
  99 + wxString FD_ESR8;
  100 + wxString FD_ESR9;
  101 + wxString FD_ESR10;
  102 +
  103 + wxString FD_ORDER;
  104 + bool FD_log;
  105 + bool FD_lin;
  106 + wxString FD_Fmin;
  107 + wxString FD_Fmax;
  108 + wxString FD_Num;
  109 +
92 110 wxString MESH_PARAM1;
93 111 wxString MESH_PARAM2;
94 112  
95 113 //(*Declarations(UTP)
96   - wxStaticText* StaticText10;
97   - wxStaticText* StaticText9;
98 114 wxTextCtrl* TextCtrl4;
99 115 wxNotebook* Notebook1;
100 116 wxStaticText* StaticText13;
101 117 wxStaticText* StaticText2;
102 118 wxStaticText* StaticText14;
103 119 wxButton* Button1;
104   - wxStaticText* StaticText6;
105   - wxTextCtrl* TextCtrl6;
106   - wxStaticText* StaticText8;
107 120 wxStaticText* StaticText11;
108 121 wxCheckBox* CheckBox3;
109 122 wxCheckBox* CheckBox2;
... ... @@ -112,28 +125,19 @@ class UTP: public wxDialog
112 125 wxStaticText* StaticText3;
113 126 wxButton* Button2;
114 127 wxPanel* Panel3;
115   - wxStaticLine* StaticLine4;
116 128 wxCheckBox* CheckBox1;
117   - wxStaticLine* StaticLine2;
118 129 wxButton* Button3;
119 130 wxStaticText* StaticText5;
120   - wxStaticText* StaticText7;
121   - wxStaticLine* StaticLine3;
122   - wxTextCtrl* TextCtrl8;
123   - wxStaticLine* StaticLine1;
124 131 wxTextCtrl* TextCtrl2;
125 132 wxComboBox* ComboBox1;
126   - wxTextCtrl* TextCtrl7;
127 133 wxTextCtrl* TextCtrl1;
128 134 wxStaticText* StaticText15;
129 135 wxStaticText* StaticText12;
130   - wxTextCtrl* TextCtrl9;
131 136 wxPanel* Panel2;
132 137 wxTextCtrl* TextCtrl5;
133 138 wxStaticText* StaticText17;
134 139 wxStaticText* StaticText4;
135 140 wxTextCtrl* TextCtrl3;
136   - wxTextCtrl* TextCtrl10;
137 141 wxTextCtrl* TextCtrl11;
138 142 wxStaticText* StaticText16;
139 143 //*)
... ... @@ -158,20 +162,6 @@ class UTP: public wxDialog
158 162 static const long ID_STATICTEXT13;
159 163 static const long ID_STATICTEXT14;
160 164 static const long ID_CHECKBOX1;
161   - static const long ID_STATICTEXT6;
162   - static const long ID_TEXTCTRL6;
163   - static const long ID_STATICLINE1;
164   - static const long ID_STATICLINE2;
165   - static const long ID_STATICTEXT7;
166   - static const long ID_TEXTCTRL7;
167   - static const long ID_STATICTEXT8;
168   - static const long ID_TEXTCTRL8;
169   - static const long ID_STATICLINE3;
170   - static const long ID_STATICLINE4;
171   - static const long ID_STATICTEXT9;
172   - static const long ID_TEXTCTRL9;
173   - static const long ID_STATICTEXT10;
174   - static const long ID_TEXTCTRL10;
175 165 static const long ID_PANEL3;
176 166 static const long ID_NOTEBOOK1;
177 167 static const long ID_STATICTEXT15;
... ...
GUI/SW1/SRC/resources/Twinax.png 0 → 100644

63.6 KB

GUI/SW1/SRC/resources/coaxial.jpg 0 → 100644

86 KB

GUI/SW1/SRC/resources/coaxial.png 0 → 100644

41.3 KB

GUI/SW1/SRC/resources/cylindrical.png 0 → 100644

30.8 KB

GUI/SW1/SRC/resources/dsub.png 0 → 100644

36.7 KB

GUI/SW1/SRC/resources/flexcable.png 0 → 100644

21.8 KB

GUI/SW1/SRC/resources/overshield.png 0 → 100644

30.1 KB

GUI/SW1/SRC/resources/spacewire.png 0 → 100644

92.7 KB

GUI/SW1/SRC/resources/stp.png 0 → 100644

72.3 KB

GUI/SW1/SRC/resources/tp.png 0 → 100644

38.9 KB