KiCad PCB EDA Suite
Loading...
Searching...
No Matches
panel_electrical_spacing_iec60664_base.cpp
Go to the documentation of this file.
1
2// C++ code generated with wxFormBuilder (version 3.10.1-0-g8feb16b3)
3// http://www.wxformbuilder.org/
4//
5// PLEASE DO *NOT* EDIT THIS FILE!
7
9
11
13
14PANEL_ELECTRICAL_SPACING_IEC60664_BASE::PANEL_ELECTRICAL_SPACING_IEC60664_BASE( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) : CALCULATOR_PANEL( parent, id, pos, size, style, name )
15{
16 wxBoxSizer* bSizerWindow;
17 bSizerWindow = new wxBoxSizer( wxVERTICAL );
18
19 m_scrolledWindow = new wxScrolledWindow( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxVSCROLL );
20 m_scrolledWindow->SetScrollRate( 5, 5 );
21 wxBoxSizer* bSizerMain;
22 bSizerMain = new wxBoxSizer( wxVERTICAL );
23
24 m_stTitle = new wxStaticText( m_scrolledWindow, wxID_ANY, _("Insulation for equipment within low-voltage supply systems"), wxDefaultPosition, wxDefaultSize, 0 );
25 m_stTitle->Wrap( -1 );
26 m_stTitle->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
27
28 bSizerMain->Add( m_stTitle, 0, wxALIGN_CENTER|wxALL, 5 );
29
30 wxStaticBoxSizer* sbSizerTop;
31 sbSizerTop = new wxStaticBoxSizer( new wxStaticBox( m_scrolledWindow, wxID_ANY, _("Determine the transient impulse voltage to withstand") ), wxHORIZONTAL );
32
33 wxBoxSizer* bSizerTopLeft;
34 bSizerTopLeft = new wxBoxSizer( wxHORIZONTAL );
35
36 wxFlexGridSizer* fgSizer111;
37 fgSizer111 = new wxFlexGridSizer( 0, 3, 0, 0 );
38 fgSizer111->SetFlexibleDirection( wxBOTH );
39 fgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
40
41 m_staticText5211 = new wxStaticText( sbSizerTop->GetStaticBox(), wxID_ANY, _("Rated Voltage (RMS or DC):"), wxDefaultPosition, wxDefaultSize, 0 );
42 m_staticText5211->Wrap( -1 );
43 m_staticText5211->SetToolTip( _("Voltage of the mains supply") );
44
45 fgSizer111->Add( m_staticText5211, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
46
47 m_ratedVoltage = new wxTextCtrl( sbSizerTop->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
48 fgSizer111->Add( m_ratedVoltage, 0, wxALL|wxEXPAND, 5 );
49
50 m_staticText52112 = new wxStaticText( sbSizerTop->GetStaticBox(), wxID_ANY, _("V"), wxDefaultPosition, wxDefaultSize, 0 );
51 m_staticText52112->Wrap( -1 );
52 fgSizer111->Add( m_staticText52112, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
53
54 m_staticText52111 = new wxStaticText( sbSizerTop->GetStaticBox(), wxID_ANY, _("Overvoltage category:"), wxDefaultPosition, wxDefaultSize, 0 );
55 m_staticText52111->Wrap( -1 );
56 m_staticText52111->SetToolTip( _("OVC I: Equipment with no direct connection to mains supply\n\nOVC II: Energy-consuming equipment to be supplied from the fixed installation. (eg: appliances, portable tools, household loads). OVCIII applies if there are reliability and avaibility requirements\n\nOVC III : Equipment in fixed installations with reliability and avaibility requirements. (eg: electrical switches, equipment for industrial use)\n\nOVC IV: Equipment at the origin of the installation (eg: electricity meters, primary overcurrent protection devices)") );
57
58 fgSizer111->Add( m_staticText52111, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
59
60 wxString m_OVCchoiceChoices[] = { _("OVC I"), _("OVC II"), _("OVC III"), _("OVC IV") };
61 int m_OVCchoiceNChoices = sizeof( m_OVCchoiceChoices ) / sizeof( wxString );
62 m_OVCchoice = new wxChoice( sbSizerTop->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_OVCchoiceNChoices, m_OVCchoiceChoices, 0 );
63 m_OVCchoice->SetSelection( 0 );
64 fgSizer111->Add( m_OVCchoice, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
65
66
67 bSizerTopLeft->Add( fgSizer111, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
68
69
70 bSizerTopLeft->Add( 0, 0, 1, wxEXPAND, 5 );
71
72
73 sbSizerTop->Add( bSizerTopLeft, 1, wxEXPAND, 5 );
74
75 wxBoxSizer* bSizerTopRight;
76 bSizerTopRight = new wxBoxSizer( wxHORIZONTAL );
77
78 wxFlexGridSizer* fgSizerTopRight;
79 fgSizerTopRight = new wxFlexGridSizer( 0, 3, 0, 0 );
80 fgSizerTopRight->SetFlexibleDirection( wxBOTH );
81 fgSizerTopRight->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
82
83 m_staticText111111 = new wxStaticText( sbSizerTop->GetStaticBox(), wxID_ANY, _("Impulse voltage:"), wxDefaultPosition, wxDefaultSize, 0 );
84 m_staticText111111->Wrap( -1 );
85 m_staticText111111->SetToolTip( _("Given the rated voltage and the overvoltage category, a device should withstand this value without a breakdown of insulation. This impulse voltage is a standard 1.2/50µs wave") );
86
87 fgSizerTopRight->Add( m_staticText111111, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
88
89 m_impulseVotlage1TxtCtrl = new wxTextCtrl( sbSizerTop->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
90 m_impulseVotlage1TxtCtrl->Enable( false );
91 m_impulseVotlage1TxtCtrl->SetMinSize( wxSize( 100,-1 ) );
92
93 fgSizerTopRight->Add( m_impulseVotlage1TxtCtrl, 0, wxALL, 5 );
94
95 static_textkV = new wxStaticText( sbSizerTop->GetStaticBox(), wxID_ANY, _("kV"), wxDefaultPosition, wxDefaultSize, 0 );
96 static_textkV->Wrap( -1 );
97 fgSizerTopRight->Add( static_textkV, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
98
99
100 bSizerTopRight->Add( fgSizerTopRight, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
101
102
103 sbSizerTop->Add( bSizerTopRight, 1, wxEXPAND, 5 );
104
105
106 bSizerMain->Add( sbSizerTop, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
107
108 wxStaticBoxSizer* sbSizerMiddle;
109 sbSizerMiddle = new wxStaticBoxSizer( new wxStaticBox( m_scrolledWindow, wxID_ANY, _("Compute the clearance and creepage distances") ), wxHORIZONTAL );
110
111 wxBoxSizer* bSizerMiddleLeft;
112 bSizerMiddleLeft = new wxBoxSizer( wxHORIZONTAL );
113
114 wxFlexGridSizer* fgSizer11;
115 fgSizer11 = new wxFlexGridSizer( 0, 3, 0, 0 );
116 fgSizer11->SetFlexibleDirection( wxBOTH );
117 fgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
118
119 m_staticText11 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("RMS Voltage:"), wxDefaultPosition, wxDefaultSize, 0 );
120 m_staticText11->Wrap( -1 );
121 m_staticText11->SetToolTip( _("Expected RMS voltage.") );
122
123 fgSizer11->Add( m_staticText11, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
124
125 m_RMSVoltage = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
126 m_RMSVoltage->SetMinSize( wxSize( 100,-1 ) );
127
128 fgSizer11->Add( m_RMSVoltage, 0, wxALL|wxEXPAND, 5 );
129
130 m_staticText11212 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("V"), wxDefaultPosition, wxDefaultSize, 0 );
131 m_staticText11212->Wrap( -1 );
132 fgSizer11->Add( m_staticText11212, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
133
134 m_staticText114 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Transient overvoltage:"), wxDefaultPosition, wxDefaultSize, 0 );
135 m_staticText114->Wrap( -1 );
136 m_staticText114->SetToolTip( _("Transient overvoltages due to:\n\n- Atmospheric disturbances transmitted by the mains supply (eg: a lightning strike)\n- Switching loads in the main supplys\n- External circuits\n- Internal generation\n\nEvents that last for a few milliseconds or less.") );
137
138 fgSizer11->Add( m_staticText114, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
139
140 m_transientOvervoltage = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
141 m_transientOvervoltage->SetMinSize( wxSize( 100,-1 ) );
142
143 fgSizer11->Add( m_transientOvervoltage, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
144
145 m_staticText1121 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("kV"), wxDefaultPosition, wxDefaultSize, 0 );
146 m_staticText1121->Wrap( -1 );
147 fgSizer11->Add( m_staticText1121, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
148
149 m_staticText113 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Recurring peak voltage:"), wxDefaultPosition, wxDefaultSize, 0 );
150 m_staticText113->Wrap( -1 );
151 m_staticText113->SetToolTip( _("- Steady-state voltage value\n- Temporary overvoltage\n- Recurring peak voltage\n\nEvents of relatively long duration.") );
152
153 fgSizer11->Add( m_staticText113, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
154
155 m_peakVoltage = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
156 m_peakVoltage->SetMinSize( wxSize( 100,-1 ) );
157
158 fgSizer11->Add( m_peakVoltage, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
159
160 m_staticText11211 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("kV"), wxDefaultPosition, wxDefaultSize, 0 );
161 m_staticText11211->Wrap( -1 );
162 fgSizer11->Add( m_staticText11211, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
163
164 m_staticText112 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Type of insulation:"), wxDefaultPosition, wxDefaultSize, 0 );
165 m_staticText112->Wrap( -1 );
166 m_staticText112->SetToolTip( _("Functional: insulation is necessary only for the functioning of the equipment\n\nBasic: Insulation of hazardous-live parts.\n\nReinforced: Single insulation that provides a degree of protection equivalent to a double insulation. ( which is two separate basic insulations, in case one of them fails ).") );
167
168 fgSizer11->Add( m_staticText112, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
169
170 wxString m_insulationTypeChoices[] = { _("Functional"), _("Basic"), _("Reinforced") };
171 int m_insulationTypeNChoices = sizeof( m_insulationTypeChoices ) / sizeof( wxString );
172 m_insulationType = new wxChoice( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_insulationTypeNChoices, m_insulationTypeChoices, 0 );
173 m_insulationType->SetSelection( 0 );
174 fgSizer11->Add( m_insulationType, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
175
176
177 fgSizer11->Add( 0, 0, 1, wxEXPAND, 5 );
178
179 m_staticText52 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Pollution Degree:"), wxDefaultPosition, wxDefaultSize, 0 );
180 m_staticText52->Wrap( -1 );
181 m_staticText52->SetToolTip( _("PD1: No pollution or only dry, non-conductive pollution occurs\n\nPD2: Only non-conductive pollution occurs . Condensation may occur.\n\nPD3: Conductive pollution occurs, or non-conductive pollution occurs which becomes conductive due to expected condensation.\n\nPD4: Continous conductivity occurs due to conductive dust, rain, ...") );
182
183 fgSizer11->Add( m_staticText52, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
184
185 wxString m_pollutionDegreeChoices[] = { _("PD1"), _("PD2"), _("PD3"), _("PD4") };
186 int m_pollutionDegreeNChoices = sizeof( m_pollutionDegreeChoices ) / sizeof( wxString );
187 m_pollutionDegree = new wxChoice( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_pollutionDegreeNChoices, m_pollutionDegreeChoices, 0 );
188 m_pollutionDegree->SetSelection( 1 );
189 fgSizer11->Add( m_pollutionDegree, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
190
191
192 fgSizer11->Add( 0, 0, 1, wxEXPAND, 5 );
193
194 m_materialGroupTxt = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Material group:"), wxDefaultPosition, wxDefaultSize, 0 );
195 m_materialGroupTxt->Wrap( -1 );
196 m_materialGroupTxt->SetToolTip( _("Materials with a high comparative tracking index (CTI) are better at providing isolation.\n\nMaterial group I: 600 <= CTI\nMaterial group II: 400 <= CTI < 600\nMaterial group IIIa: 175 <= CTI < 400\nMaterial group IIIb: 100 <= CTI < 175") );
197
198 fgSizer11->Add( m_materialGroupTxt, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
199
200 wxString m_materialGroupChoices[] = { _("I"), _("II"), _("IIIa"), _("IIIb") };
201 int m_materialGroupNChoices = sizeof( m_materialGroupChoices ) / sizeof( wxString );
202 m_materialGroup = new wxChoice( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_materialGroupNChoices, m_materialGroupChoices, 0 );
203 m_materialGroup->SetSelection( 0 );
204 fgSizer11->Add( m_materialGroup, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
205
206
207 fgSizer11->Add( 0, 0, 1, wxEXPAND, 5 );
208
209 m_staticText1112 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("PCB material:"), wxDefaultPosition, wxDefaultSize, 0 );
210 m_staticText1112->Wrap( -1 );
211 m_staticText1112->SetToolTip( _("Printed wiring material can benefit of a creepage distance reduction for RMS voltages lower than 1000V") );
212
213 fgSizer11->Add( m_staticText1112, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
214
215 m_pcbMaterial = new wxCheckBox( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
216 fgSizer11->Add( m_pcbMaterial, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
217
218
219 fgSizer11->Add( 0, 0, 1, wxEXPAND, 5 );
220
221 m_staticText1112121 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Max altitude:"), wxDefaultPosition, wxDefaultSize, 0 );
222 m_staticText1112121->Wrap( -1 );
223 m_staticText1112121->SetToolTip( _("Coating and potting allows for clearance and creepage distances reduction. Not supported by the calculator.\n\nA coating that could easily delaminate in the lifespan of the product (such as a soldermask) should not be considered for a reduction.") );
224
225 fgSizer11->Add( m_staticText1112121, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
226
227 m_altitude = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
228 m_altitude->SetMinSize( wxSize( 100,-1 ) );
229
230 fgSizer11->Add( m_altitude, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
231
232 m_staticText11121211 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("m"), wxDefaultPosition, wxDefaultSize, 0 );
233 m_staticText11121211->Wrap( -1 );
234 fgSizer11->Add( m_staticText11121211, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
235
236
237 bSizerMiddleLeft->Add( fgSizer11, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
238
239
240 sbSizerMiddle->Add( bSizerMiddleLeft, 1, wxEXPAND, 5 );
241
242 wxBoxSizer* bSizerMiddleRight;
243 bSizerMiddleRight = new wxBoxSizer( wxVERTICAL );
244
245 wxBoxSizer* bSizerMiddleRightInfo;
246 bSizerMiddleRightInfo = new wxBoxSizer( wxHORIZONTAL );
247
248 wxFlexGridSizer* fgSizer6;
249 fgSizer6 = new wxFlexGridSizer( 0, 3, 0, 0 );
250 fgSizer6->AddGrowableCol( 1 );
251 fgSizer6->SetFlexibleDirection( wxBOTH );
252 fgSizer6->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
253
254 m_staticText11111 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
255 m_staticText11111->Wrap( -1 );
256 fgSizer6->Add( m_staticText11111, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
257
258 m_clearance = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
259 m_clearance->Enable( false );
260 m_clearance->SetMinSize( wxSize( 100,-1 ) );
261
262 fgSizer6->Add( m_clearance, 0, wxALL, 5 );
263
264 m_staticText71111 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
265 m_staticText71111->Wrap( -1 );
266 fgSizer6->Add( m_staticText71111, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
267
268 m_staticText1111 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Creepage:"), wxDefaultPosition, wxDefaultSize, 0 );
269 m_staticText1111->Wrap( -1 );
270 fgSizer6->Add( m_staticText1111, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
271
272 m_creepage = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
273 m_creepage->Enable( false );
274 m_creepage->SetMinSize( wxSize( 100,-1 ) );
275
276 fgSizer6->Add( m_creepage, 0, wxBOTTOM|wxLEFT|wxRIGHT, 5 );
277
278 m_staticText7111 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
279 m_staticText7111->Wrap( -1 );
280 fgSizer6->Add( m_staticText7111, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
281
282 m_staticText111 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("Min groove width:"), wxDefaultPosition, wxDefaultSize, 0 );
283 m_staticText111->Wrap( -1 );
284 m_staticText111->SetToolTip( _("A groove which width is smaller has no effect on the path considered for creepage") );
285
286 fgSizer6->Add( m_staticText111, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
287
288 m_minGrooveWidth = new wxTextCtrl( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
289 m_minGrooveWidth->Enable( false );
290 m_minGrooveWidth->SetMinSize( wxSize( 100,-1 ) );
291
292 fgSizer6->Add( m_minGrooveWidth, 0, wxBOTTOM|wxLEFT|wxRIGHT, 5 );
293
294 m_staticText711 = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
295 m_staticText711->Wrap( -1 );
296 fgSizer6->Add( m_staticText711, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
297
298
299 bSizerMiddleRightInfo->Add( fgSizer6, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT, 5 );
300
301
302 bSizerMiddleRight->Add( bSizerMiddleRightInfo, 0, wxEXPAND, 5 );
303
304 wxBoxSizer* bSizerBitmapHelp;
305 bSizerBitmapHelp = new wxBoxSizer( wxVERTICAL );
306
307 wxBoxSizer* bSizerBitmap;
308 bSizerBitmap = new wxBoxSizer( wxHORIZONTAL );
309
310 m_creepageclearanceBitmap = new wxStaticBitmap( sbSizerMiddle->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
311 bSizerBitmap->Add( m_creepageclearanceBitmap, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
312
313 m_stBitmapLegend = new wxStaticText( sbSizerMiddle->GetStaticBox(), wxID_ANY, _("solid: clearance\ndashed: creepage"), wxDefaultPosition, wxDefaultSize, 0 );
314 m_stBitmapLegend->Wrap( -1 );
315 bSizerBitmap->Add( m_stBitmapLegend, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 10 );
316
317
318 bSizerBitmapHelp->Add( bSizerBitmap, 1, wxEXPAND, 5 );
319
320
321 bSizerMiddleRight->Add( bSizerBitmapHelp, 0, wxEXPAND, 5 );
322
323
324 sbSizerMiddle->Add( bSizerMiddleRight, 1, wxEXPAND, 5 );
325
326
327 bSizerMain->Add( sbSizerMiddle, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
328
329 wxStaticBoxSizer* sbSizerBottom;
330 sbSizerBottom = new wxStaticBoxSizer( new wxStaticBox( m_scrolledWindow, wxID_ANY, _("Help") ), wxVERTICAL );
331
332 m_panelHelp = new HTML_WINDOW( sbSizerBottom->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHW_SCROLLBAR_AUTO );
333 sbSizerBottom->Add( m_panelHelp, 1, wxALL|wxEXPAND, 5 );
334
335
336 bSizerMain->Add( sbSizerBottom, 1, wxEXPAND|wxBOTTOM, 5 );
337
338
339 m_scrolledWindow->SetSizer( bSizerMain );
340 m_scrolledWindow->Layout();
341 bSizerMain->Fit( m_scrolledWindow );
342 bSizerWindow->Add( m_scrolledWindow, 1, wxEXPAND | wxALL, 5 );
343
344
345 this->SetSizer( bSizerWindow );
346 this->Layout();
347 bSizerWindow->Fit( this );
348
349 // Connect Events
350 m_ratedVoltage->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateTransientImpulse ), NULL, this );
351 m_OVCchoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateTransientImpulse ), NULL, this );
352 m_RMSVoltage->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
353 m_transientOvervoltage->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
354 m_peakVoltage->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
355 m_insulationType->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
356 m_pollutionDegree->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
357 m_materialGroup->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
358 m_pcbMaterial->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
359 m_altitude->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
360}
361
363{
364 // Disconnect Events
365 m_ratedVoltage->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateTransientImpulse ), NULL, this );
366 m_OVCchoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateTransientImpulse ), NULL, this );
367 m_RMSVoltage->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
368 m_transientOvervoltage->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
369 m_peakVoltage->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
370 m_insulationType->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
371 m_pollutionDegree->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
372 m_materialGroup->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
373 m_pcbMaterial->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
374 m_altitude->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ELECTRICAL_SPACING_IEC60664_BASE::UpdateClearanceCreepage ), NULL, this );
375
376}
const char * name
Definition: DXF_plotter.cpp:57
Add dark theme support to wxHtmlWindow.
Definition: html_window.h:34
virtual void UpdateClearanceCreepage(wxCommandEvent &event)
PANEL_ELECTRICAL_SPACING_IEC60664_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
virtual void UpdateTransientImpulse(wxCommandEvent &event)
#define _(s)