236 def _init_coll_MainSizer_Growables(self, parent): |
245 def _init_coll_MainSizer_Growables(self, parent): |
237 parent.AddGrowableCol(0) |
246 parent.AddGrowableCol(0) |
238 parent.AddGrowableRow(1) |
247 parent.AddGrowableRow(1) |
239 |
248 |
240 def _init_coll_TopSizer_Items(self, parent): |
249 def _init_coll_TopSizer_Items(self, parent): |
241 parent.AddWindow(self.staticText1, 0, border=5, flag=wx.GROW|wx.LEFT) |
250 parent.AddWindow(self.staticText1, 0, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.LEFT|wx.RIGHT) |
242 parent.AddWindow(self.DerivationType, 0, border=0, flag=wx.GROW) |
251 parent.AddWindow(self.DerivationType, 0, border=5, flag=wx.GROW|wx.RIGHT) |
243 |
252 |
244 def _init_coll_TypeInfosSizer_Items(self, parent): |
253 def _init_coll_TypeInfosSizer_Items(self, parent): |
245 parent.AddWindow(self.DirectlyPanel, 1, border=0, flag=wx.ALL) |
254 parent.AddWindow(self.DirectlyPanel, 1, border=0, flag=wx.ALL) |
246 parent.AddWindow(self.SubrangePanel, 1, border=0, flag=wx.ALL) |
255 parent.AddWindow(self.SubrangePanel, 1, border=0, flag=wx.ALL) |
247 parent.AddWindow(self.EnumeratedPanel, 1, border=0, flag=wx.GROW|wx.ALL) |
256 parent.AddWindow(self.EnumeratedPanel, 1, border=0, flag=wx.GROW|wx.ALL) |
248 parent.AddWindow(self.ArrayPanel, 1, border=0, flag=wx.ALL) |
257 parent.AddWindow(self.ArrayPanel, 1, border=0, flag=wx.ALL) |
249 parent.AddWindow(self.StructurePanel, 1, border=0, flag=wx.GROW|wx.ALL) |
258 parent.AddWindow(self.StructurePanel, 1, border=0, flag=wx.GROW|wx.ALL) |
250 |
259 |
251 def _init_coll_DirectlyPanelSizer_Items(self, parent): |
260 def _init_coll_DirectlyPanelSizer_Items(self, parent): |
252 parent.AddWindow(self.staticText2, 1, border=5, flag=wx.GROW|wx.ALL) |
261 parent.AddWindow(self.staticText2, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
253 parent.AddWindow(self.DirectlyBaseType, 1, border=5, flag=wx.GROW|wx.ALL) |
262 parent.AddWindow(self.DirectlyBaseType, 1, border=5, flag=wx.GROW|wx.ALL) |
254 parent.AddWindow(self.staticText3, 1, border=5, flag=wx.GROW|wx.ALL) |
263 parent.AddWindow(self.staticText3, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
255 parent.AddWindow(self.DirectlyInitialValue, 1, border=5, flag=wx.GROW|wx.ALL) |
264 parent.AddWindow(self.DirectlyInitialValue, 1, border=5, flag=wx.GROW|wx.ALL) |
256 |
265 |
257 def _init_coll_SubrangePanelSizer_Items(self, parent): |
266 def _init_coll_SubrangePanelSizer_Items(self, parent): |
258 parent.AddWindow(self.staticText4, 1, border=5, flag=wx.GROW|wx.ALL) |
267 parent.AddWindow(self.staticText4, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
259 parent.AddWindow(self.SubrangeBaseType, 1, border=5, flag=wx.GROW|wx.ALL) |
268 parent.AddWindow(self.SubrangeBaseType, 1, border=5, flag=wx.GROW|wx.ALL) |
260 parent.AddWindow(self.staticText5, 1, border=5, flag=wx.GROW|wx.ALL) |
269 parent.AddWindow(self.staticText5, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
261 parent.AddWindow(self.SubrangeInitialValue, 1, border=5, flag=wx.GROW|wx.ALL) |
270 parent.AddWindow(self.SubrangeInitialValue, 1, border=5, flag=wx.GROW|wx.ALL) |
262 parent.AddWindow(self.staticText6, 1, border=5, flag=wx.GROW|wx.ALL) |
271 parent.AddWindow(self.staticText6, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
263 parent.AddWindow(self.SubrangeMinimum, 1, border=5, flag=wx.GROW|wx.ALL) |
272 parent.AddWindow(self.SubrangeMinimum, 1, border=5, flag=wx.GROW|wx.ALL) |
264 parent.AddWindow(wx.Size(0, 0), 1, border=5, flag=wx.GROW|wx.ALL) |
273 parent.AddWindow(wx.Size(0, 0), 1, border=5, flag=wx.GROW|wx.ALL) |
265 parent.AddWindow(wx.Size(0, 0), 1, border=5, flag=wx.GROW|wx.ALL) |
274 parent.AddWindow(wx.Size(0, 0), 1, border=5, flag=wx.GROW|wx.ALL) |
266 parent.AddWindow(self.staticText7, 1, border=5, flag=wx.GROW|wx.ALL) |
275 parent.AddWindow(self.staticText7, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
267 parent.AddWindow(self.SubrangeMaximum, 1, border=5, flag=wx.GROW|wx.ALL) |
276 parent.AddWindow(self.SubrangeMaximum, 1, border=5, flag=wx.GROW|wx.ALL) |
268 |
277 |
269 def _init_coll_EnumeratedPanelSizer_Items(self, parent): |
278 def _init_coll_EnumeratedPanelSizer_Items(self, parent): |
270 parent.AddWindow(self.EnumeratedValues, 2, border=5, flag=wx.GROW|wx.ALL) |
279 parent.AddWindow(self.EnumeratedValues, 1, border=5, flag=wx.GROW|wx.ALL) |
271 parent.AddWindow(self.staticText8, 1, border=5, flag=wx.GROW|wx.ALL) |
280 parent.AddSizer(self.EnumeratedPanelRightSizer, 1, border=0, flag=0) |
|
281 |
|
282 def _init_coll_EnumeratedPanelRightSizer_Items(self, parent): |
|
283 parent.AddWindow(self.staticText8, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
272 parent.AddWindow(self.EnumeratedInitialValue, 1, border=5, flag=wx.ALL) |
284 parent.AddWindow(self.EnumeratedInitialValue, 1, border=5, flag=wx.ALL) |
273 |
285 |
274 def _init_coll_ArrayPanelSizer_Items(self, parent): |
286 def _init_coll_ArrayPanelSizer_Items(self, parent): |
275 parent.AddSizer(self.ArrayPanelLeftSizer, 0, border=0, flag=wx.GROW) |
287 parent.AddSizer(self.ArrayPanelLeftSizer, 0, border=0, flag=wx.GROW) |
276 parent.AddSizer(self.ArrayPanelRightSizer, 0, border=0, flag=wx.GROW) |
288 parent.AddSizer(self.ArrayPanelRightSizer, 0, border=0, flag=0) |
277 parent.AddWindow(self.ArrayDimensions, 0, border=5, flag=wx.GROW|wx.ALL) |
289 parent.AddWindow(self.ArrayDimensions, 0, border=5, flag=wx.GROW|wx.ALL) |
278 |
290 |
279 def _init_coll_ArrayPanelSizer_Growables(self, parent): |
291 def _init_coll_ArrayPanelSizer_Growables(self, parent): |
280 parent.AddGrowableCol(0) |
292 parent.AddGrowableCol(0) |
281 parent.AddGrowableCol(1) |
293 parent.AddGrowableCol(1) |
282 parent.AddGrowableRow(1) |
294 parent.AddGrowableRow(1) |
283 |
295 |
284 def _init_coll_ArrayPanelLeftSizer_Items(self, parent): |
296 def _init_coll_ArrayPanelLeftSizer_Items(self, parent): |
285 parent.AddWindow(self.staticText9, 1, border=5, flag=wx.GROW|wx.ALL) |
297 parent.AddWindow(self.staticText9, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
286 parent.AddWindow(self.ArrayBaseType, 1, border=5, flag=wx.GROW|wx.ALL) |
298 parent.AddWindow(self.ArrayBaseType, 1, border=5, flag=wx.GROW|wx.ALL) |
287 |
299 |
288 def _init_coll_ArrayPanelRightSizer_Items(self, parent): |
300 def _init_coll_ArrayPanelRightSizer_Items(self, parent): |
289 parent.AddWindow(self.staticText10, 1, border=5, flag=wx.GROW|wx.ALL) |
301 parent.AddWindow(self.staticText10, 1, border=5, flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
290 parent.AddWindow(self.ArrayInitialValue, 1, border=5, flag=wx.GROW|wx.ALL) |
302 parent.AddWindow(self.ArrayInitialValue, 1, border=5, flag=wx.GROW|wx.ALL) |
291 |
303 |
292 def _init_coll_StructurePanelSizer_Items(self, parent): |
304 def _init_coll_StructurePanelSizer_Items(self, parent): |
293 parent.AddWindow(self.staticText11, 0, border=5, flag=wx.GROW|wx.ALL) |
305 parent.AddWindow(self.staticText11, 0, border=5, flag=wx.ALL) |
294 parent.AddWindow(self.StructureElementsGrid, 0, border=0, flag=wx.GROW) |
306 parent.AddWindow(self.StructureElementsGrid, 0, border=0, flag=wx.GROW) |
295 parent.AddSizer(self.StructurePanelButtonSizer, 0, border=0, flag=wx.ALIGN_RIGHT) |
307 parent.AddSizer(self.StructurePanelButtonSizer, 0, border=0, flag=wx.ALIGN_RIGHT) |
296 |
308 |
297 def _init_coll_StructurePanelSizer_Growables(self, parent): |
309 def _init_coll_StructurePanelSizer_Growables(self, parent): |
298 parent.AddGrowableCol(0) |
310 parent.AddGrowableCol(0) |
299 parent.AddGrowableRow(1) |
311 parent.AddGrowableRow(1) |
300 |
312 |
301 def _init_coll_StructurePanelButtonSizer_Items(self, parent): |
313 def _init_coll_StructurePanelButtonSizer_Items(self, parent): |
302 parent.AddWindow(self.StructureAddButton, 1, border=5, flag=wx.GROW|wx.ALL) |
314 parent.AddWindow(self.StructureAddButton, 0, border=5, flag=wx.ALL) |
303 parent.AddWindow(self.StructureDeleteButton, 1, border=5, flag=wx.GROW|wx.ALL) |
315 parent.AddWindow(self.StructureDeleteButton, 0, border=5, flag=wx.ALL) |
304 parent.AddWindow(self.StructureUpButton, 1, border=5, flag=wx.GROW|wx.ALL) |
316 parent.AddWindow(self.StructureUpButton, 0, border=5, flag=wx.ALL) |
305 parent.AddWindow(self.StructureDownButton, 1, border=5, flag=wx.GROW|wx.ALL) |
317 parent.AddWindow(self.StructureDownButton, 0, border=5, flag=wx.ALL) |
306 |
318 |
307 def _init_sizers(self): |
319 def _init_sizers(self): |
308 self.MainSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10) |
320 self.MainSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10) |
309 self.TopSizer = wx.BoxSizer(wx.HORIZONTAL) |
321 self.TopSizer = wx.BoxSizer(wx.HORIZONTAL) |
310 self.TypeInfosSizer = wx.StaticBoxSizer(self.staticbox, wx.HORIZONTAL) |
322 self.TypeInfosSizer = wx.StaticBoxSizer(self.staticbox, wx.HORIZONTAL) |
311 self.DirectlyPanelSizer = wx.BoxSizer(wx.HORIZONTAL) |
323 self.DirectlyPanelSizer = wx.BoxSizer(wx.HORIZONTAL) |
312 self.SubrangePanelSizer = wx.GridSizer(cols=4, hgap=0, rows=3, vgap=0) |
324 self.SubrangePanelSizer = wx.GridSizer(cols=4, hgap=5, rows=3, vgap=0) |
313 self.EnumeratedPanelSizer = wx.BoxSizer(wx.HORIZONTAL) |
325 self.EnumeratedPanelSizer = wx.BoxSizer(wx.HORIZONTAL) |
314 self.ArrayPanelSizer = wx.FlexGridSizer(cols=2, hgap=0, rows=2, vgap=0) |
326 self.EnumeratedPanelRightSizer = wx.BoxSizer(wx.HORIZONTAL) |
|
327 self.ArrayPanelSizer = wx.FlexGridSizer(cols=2, hgap=5, rows=2, vgap=0) |
315 self.ArrayPanelLeftSizer = wx.BoxSizer(wx.HORIZONTAL) |
328 self.ArrayPanelLeftSizer = wx.BoxSizer(wx.HORIZONTAL) |
316 self.ArrayPanelRightSizer = wx.BoxSizer(wx.HORIZONTAL) |
329 self.ArrayPanelRightSizer = wx.BoxSizer(wx.HORIZONTAL) |
317 self.StructurePanelSizer = wx.FlexGridSizer(cols=1, hgap=0, rows=3, vgap=0) |
330 self.StructurePanelSizer = wx.FlexGridSizer(cols=1, hgap=5, rows=3, vgap=0) |
318 self.StructurePanelButtonSizer = wx.BoxSizer(wx.HORIZONTAL) |
331 self.StructurePanelButtonSizer = wx.BoxSizer(wx.HORIZONTAL) |
319 self._init_coll_MainSizer_Items(self.MainSizer) |
332 self._init_coll_MainSizer_Items(self.MainSizer) |
320 self._init_coll_MainSizer_Growables(self.MainSizer) |
333 self._init_coll_MainSizer_Growables(self.MainSizer) |
321 self._init_coll_TopSizer_Items(self.TopSizer) |
334 self._init_coll_TopSizer_Items(self.TopSizer) |
322 self._init_coll_TypeInfosSizer_Items(self.TypeInfosSizer) |
335 self._init_coll_TypeInfosSizer_Items(self.TypeInfosSizer) |
323 self._init_coll_DirectlyPanelSizer_Items(self.DirectlyPanelSizer) |
336 self._init_coll_DirectlyPanelSizer_Items(self.DirectlyPanelSizer) |
324 self._init_coll_SubrangePanelSizer_Items(self.SubrangePanelSizer) |
337 self._init_coll_SubrangePanelSizer_Items(self.SubrangePanelSizer) |
325 self._init_coll_EnumeratedPanelSizer_Items(self.EnumeratedPanelSizer) |
338 self._init_coll_EnumeratedPanelSizer_Items(self.EnumeratedPanelSizer) |
|
339 self._init_coll_EnumeratedPanelRightSizer_Items(self.EnumeratedPanelRightSizer) |
326 self._init_coll_ArrayPanelSizer_Items(self.ArrayPanelSizer) |
340 self._init_coll_ArrayPanelSizer_Items(self.ArrayPanelSizer) |
327 self._init_coll_ArrayPanelSizer_Growables(self.ArrayPanelSizer) |
341 self._init_coll_ArrayPanelSizer_Growables(self.ArrayPanelSizer) |
328 self._init_coll_ArrayPanelLeftSizer_Items(self.ArrayPanelLeftSizer) |
342 self._init_coll_ArrayPanelLeftSizer_Items(self.ArrayPanelLeftSizer) |
329 self._init_coll_ArrayPanelRightSizer_Items(self.ArrayPanelRightSizer) |
343 self._init_coll_ArrayPanelRightSizer_Items(self.ArrayPanelRightSizer) |
330 self._init_coll_StructurePanelSizer_Items(self.StructurePanelSizer) |
344 self._init_coll_StructurePanelSizer_Items(self.StructurePanelSizer) |
360 self.DirectlyPanel = wx.Panel(id=ID_DATATYPEEDITORDIRECTLYPANEL, |
374 self.DirectlyPanel = wx.Panel(id=ID_DATATYPEEDITORDIRECTLYPANEL, |
361 name='DirectlyPanel', parent=self, pos=wx.Point(0, 0), |
375 name='DirectlyPanel', parent=self, pos=wx.Point(0, 0), |
362 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
376 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
363 |
377 |
364 self.staticText2 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT2, |
378 self.staticText2 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT2, |
365 label='Base Type:', name='staticText2', parent=self.DirectlyPanel, |
379 label=_('Base Type:'), name='staticText2', parent=self.DirectlyPanel, |
366 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
380 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
367 |
381 |
368 self.DirectlyBaseType = wx.ComboBox(id=ID_DATATYPEEDITORDIRECTLYBASETYPE, |
382 self.DirectlyBaseType = wx.ComboBox(id=ID_DATATYPEEDITORDIRECTLYBASETYPE, |
369 name='DirectlyBaseType', parent=self.DirectlyPanel, pos=wx.Point(0, 0), |
383 name='DirectlyBaseType', parent=self.DirectlyPanel, pos=wx.Point(0, 0), |
370 size=wx.Size(0, 28), style=wx.CB_READONLY) |
384 size=wx.Size(0, 28), style=wx.CB_READONLY) |
371 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, id=ID_DATATYPEEDITORDIRECTLYBASETYPE) |
385 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, id=ID_DATATYPEEDITORDIRECTLYBASETYPE) |
372 |
386 |
373 self.staticText3 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT3, |
387 self.staticText3 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT3, |
374 label='Initial Value:', name='staticText3', parent=self.DirectlyPanel, |
388 label=_('Initial Value:'), name='staticText3', parent=self.DirectlyPanel, |
375 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
389 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
376 |
390 |
377 self.DirectlyInitialValue = wx.TextCtrl(id=ID_DATATYPEEDITORDIRECTLYINITIALVALUE, |
391 self.DirectlyInitialValue = wx.TextCtrl(id=ID_DATATYPEEDITORDIRECTLYINITIALVALUE, |
378 name='DirectlyInitialValue', parent=self.DirectlyPanel, pos=wx.Point(0, 0), |
392 name='DirectlyInitialValue', parent=self.DirectlyPanel, pos=wx.Point(0, 0), |
379 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL|wx.TE_PROCESS_ENTER|wx.TE_MULTILINE|wx.TE_RICH) |
393 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL|wx.TE_PROCESS_ENTER|wx.TE_MULTILINE|wx.TE_RICH) |
380 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, id=ID_DATATYPEEDITORDIRECTLYINITIALVALUE) |
394 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, id=ID_DATATYPEEDITORDIRECTLYINITIALVALUE) |
384 self.SubrangePanel = wx.Panel(id=ID_DATATYPEEDITORSUBRANGEPANEL, |
398 self.SubrangePanel = wx.Panel(id=ID_DATATYPEEDITORSUBRANGEPANEL, |
385 name='SubrangePanel', parent=self, pos=wx.Point(0, 0), |
399 name='SubrangePanel', parent=self, pos=wx.Point(0, 0), |
386 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
400 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
387 |
401 |
388 self.staticText4 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT4, |
402 self.staticText4 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT4, |
389 label='Base Type:', name='staticText4', parent=self.SubrangePanel, |
403 label=_('Base Type:'), name='staticText4', parent=self.SubrangePanel, |
390 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
404 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
391 |
405 |
392 self.SubrangeBaseType = wx.ComboBox(id=ID_DATATYPEEDITORSUBRANGEBASETYPE, |
406 self.SubrangeBaseType = wx.ComboBox(id=ID_DATATYPEEDITORSUBRANGEBASETYPE, |
393 name='SubrangeBaseType', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
407 name='SubrangeBaseType', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
394 size=wx.Size(0, 28), style=wx.CB_READONLY) |
408 size=wx.Size(0, 28), style=wx.CB_READONLY) |
395 self.Bind(wx.EVT_COMBOBOX, self.OnSubrangeBaseTypeChanged, id=ID_DATATYPEEDITORSUBRANGEBASETYPE) |
409 self.Bind(wx.EVT_COMBOBOX, self.OnSubrangeBaseTypeChanged, id=ID_DATATYPEEDITORSUBRANGEBASETYPE) |
396 |
410 |
397 self.staticText5 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT5, |
411 self.staticText5 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT5, |
398 label='Initial Value:', name='staticText5', parent=self.SubrangePanel, |
412 label=_('Initial Value:'), name='staticText5', parent=self.SubrangePanel, |
399 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
413 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
400 |
414 |
401 self.SubrangeInitialValue = wx.SpinCtrl(id=ID_DATATYPEEDITORSUBRANGEINITIALVALUE, |
415 self.SubrangeInitialValue = wx.SpinCtrl(id=ID_DATATYPEEDITORSUBRANGEINITIALVALUE, |
402 name='SubrangeInitialValue', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
416 name='SubrangeInitialValue', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
403 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL) |
417 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL) |
404 self.Bind(wx.EVT_SPINCTRL, self.OnInfosChanged, id=ID_DATATYPEEDITORSUBRANGEINITIALVALUE) |
418 self.Bind(wx.EVT_SPINCTRL, self.OnInfosChanged, id=ID_DATATYPEEDITORSUBRANGEINITIALVALUE) |
405 |
419 |
406 self.staticText6 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT6, |
420 self.staticText6 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT6, |
407 label='Minimum:', name='staticText6', parent=self.SubrangePanel, |
421 label=_('Minimum:'), name='staticText6', parent=self.SubrangePanel, |
408 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
422 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
409 |
423 |
410 self.SubrangeMinimum = wx.SpinCtrl(id=ID_DATATYPEEDITORSUBRANGEMINIMUM, |
424 self.SubrangeMinimum = wx.SpinCtrl(id=ID_DATATYPEEDITORSUBRANGEMINIMUM, |
411 name='SubrangeMinimum', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
425 name='SubrangeMinimum', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
412 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL) |
426 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL) |
413 self.Bind(wx.EVT_SPINCTRL, self.OnSubrangeMinimumChanged, id=ID_DATATYPEEDITORSUBRANGEMINIMUM) |
427 self.Bind(wx.EVT_SPINCTRL, self.OnSubrangeMinimumChanged, id=ID_DATATYPEEDITORSUBRANGEMINIMUM) |
414 |
428 |
415 self.staticText7 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT7, |
429 self.staticText7 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT7, |
416 label='Maximum:', name='staticText7', parent=self.SubrangePanel, |
430 label=_('Maximum:'), name='staticText7', parent=self.SubrangePanel, |
417 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
431 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
418 |
432 |
419 self.SubrangeMaximum = wx.SpinCtrl(id=ID_DATATYPEEDITORSUBRANGEMAXIMUM, |
433 self.SubrangeMaximum = wx.SpinCtrl(id=ID_DATATYPEEDITORSUBRANGEMAXIMUM, |
420 name='SubrangeMaximum', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
434 name='SubrangeMaximum', parent=self.SubrangePanel, pos=wx.Point(0, 0), |
421 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL) |
435 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL) |
422 self.Bind(wx.EVT_SPINCTRL, self.OnSubrangeMaximumChanged, id=ID_DATATYPEEDITORSUBRANGEMAXIMUM) |
436 self.Bind(wx.EVT_SPINCTRL, self.OnSubrangeMaximumChanged, id=ID_DATATYPEEDITORSUBRANGEMAXIMUM) |
426 self.EnumeratedPanel = wx.Panel(id=ID_DATATYPEEDITORENUMERATEDPANEL, |
440 self.EnumeratedPanel = wx.Panel(id=ID_DATATYPEEDITORENUMERATEDPANEL, |
427 name='EnumeratedPanel', parent=self, pos=wx.Point(0, 0), |
441 name='EnumeratedPanel', parent=self, pos=wx.Point(0, 0), |
428 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
442 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
429 |
443 |
430 self.EnumeratedValues = wx.gizmos.EditableListBox(id=ID_DATATYPEEDITORENUMERATEDVALUES, |
444 self.EnumeratedValues = wx.gizmos.EditableListBox(id=ID_DATATYPEEDITORENUMERATEDVALUES, |
431 name='EnumeratedValues', parent=self.EnumeratedPanel, label="Values:", pos=wx.Point(0, 0), |
445 name='EnumeratedValues', parent=self.EnumeratedPanel, label=_("Values:"), pos=wx.Point(0, 0), |
432 size=wx.Size(0, 0), style=wx.gizmos.EL_ALLOW_NEW | wx.gizmos.EL_ALLOW_EDIT | wx.gizmos.EL_ALLOW_DELETE) |
446 size=wx.Size(0, 0), style=wx.gizmos.EL_ALLOW_NEW | wx.gizmos.EL_ALLOW_EDIT | wx.gizmos.EL_ALLOW_DELETE) |
433 self.EnumeratedValues.GetListCtrl().Bind(wx.EVT_LIST_END_LABEL_EDIT, self.OnEnumeratedValueEndEdit) |
447 self.EnumeratedValues.GetListCtrl().Bind(wx.EVT_LIST_END_LABEL_EDIT, self.OnEnumeratedValueEndEdit) |
434 self.EnumeratedValues.GetNewButton().Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
448 self.EnumeratedValues.GetEditButton().SetToolTipString(_("Edit item")) |
435 self.EnumeratedValues.GetDelButton().Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
449 new_button = self.EnumeratedValues.GetNewButton() |
436 self.EnumeratedValues.GetUpButton().Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
450 new_button.SetToolTipString(_("New item")) |
437 self.EnumeratedValues.GetDownButton().Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
451 new_button.Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
|
452 del_button = self.EnumeratedValues.GetDelButton() |
|
453 del_button.SetToolTipString(_("Delete item")) |
|
454 del_button.Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
|
455 up_button = self.EnumeratedValues.GetUpButton() |
|
456 up_button.SetToolTipString(_("Move up")) |
|
457 up_button.Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
|
458 down_button = self.EnumeratedValues.GetDownButton() |
|
459 down_button.SetToolTipString(_("Move down")) |
|
460 down_button.Bind(wx.EVT_BUTTON, self.OnEnumeratedValuesChanged) |
438 |
461 |
439 self.staticText8 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT8, |
462 self.staticText8 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT8, |
440 label='Initial Value:', name='staticText8', parent=self.EnumeratedPanel, |
463 label=_('Initial Value:'), name='staticText8', parent=self.EnumeratedPanel, |
441 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
464 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
442 |
465 |
443 self.EnumeratedInitialValue = wx.ComboBox(id=ID_DATATYPEEDITORENUMERATEDINITIALVALUE, |
466 self.EnumeratedInitialValue = wx.ComboBox(id=ID_DATATYPEEDITORENUMERATEDINITIALVALUE, |
444 name='EnumeratedInitialValue', parent=self.EnumeratedPanel, pos=wx.Point(0, 0), |
467 name='EnumeratedInitialValue', parent=self.EnumeratedPanel, pos=wx.Point(0, 0), |
445 size=wx.Size(0, 28), style=wx.CB_READONLY) |
468 size=wx.Size(0, 28), style=wx.CB_READONLY) |
446 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, id=ID_DATATYPEEDITORENUMERATEDINITIALVALUE) |
469 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, id=ID_DATATYPEEDITORENUMERATEDINITIALVALUE) |
450 self.ArrayPanel = wx.Panel(id=ID_DATATYPEEDITORARRAYPANEL, |
473 self.ArrayPanel = wx.Panel(id=ID_DATATYPEEDITORARRAYPANEL, |
451 name='ArrayPanel', parent=self, pos=wx.Point(0, 0), |
474 name='ArrayPanel', parent=self, pos=wx.Point(0, 0), |
452 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
475 size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL) |
453 |
476 |
454 self.staticText9 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT9, |
477 self.staticText9 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT9, |
455 label='Base Type:', name='staticText9', parent=self.ArrayPanel, |
478 label=_('Base Type:'), name='staticText9', parent=self.ArrayPanel, |
456 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
479 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
457 |
480 |
458 self.ArrayBaseType = wx.ComboBox(id=ID_DATATYPEEDITORARRAYBASETYPE, |
481 self.ArrayBaseType = wx.ComboBox(id=ID_DATATYPEEDITORARRAYBASETYPE, |
459 name='SubrangeBaseType', parent=self.ArrayPanel, pos=wx.Point(0, 0), |
482 name='SubrangeBaseType', parent=self.ArrayPanel, pos=wx.Point(0, 0), |
460 size=wx.Size(0, 28), style=wx.CB_READONLY) |
483 size=wx.Size(0, 28), style=wx.CB_READONLY) |
461 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, id=ID_DATATYPEEDITORARRAYBASETYPE) |
484 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, id=ID_DATATYPEEDITORARRAYBASETYPE) |
462 |
485 |
463 self.ArrayDimensions = wx.gizmos.EditableListBox(id=ID_DATATYPEEDITORARRAYDIMENSIONS, |
486 self.ArrayDimensions = wx.gizmos.EditableListBox(id=ID_DATATYPEEDITORARRAYDIMENSIONS, |
464 name='ArrayDimensions', parent=self.ArrayPanel, label="Dimensions:", pos=wx.Point(0, 0), |
487 name='ArrayDimensions', parent=self.ArrayPanel, label=_("Dimensions:"), pos=wx.Point(0, 0), |
465 size=wx.Size(0, 24), style=wx.gizmos.EL_ALLOW_NEW | wx.gizmos.EL_ALLOW_EDIT | wx.gizmos.EL_ALLOW_DELETE) |
488 size=wx.Size(0, 24), style=wx.gizmos.EL_ALLOW_NEW | wx.gizmos.EL_ALLOW_EDIT | wx.gizmos.EL_ALLOW_DELETE) |
466 self.ArrayDimensions.GetListCtrl().Bind(wx.EVT_LIST_END_LABEL_EDIT, self.OnDimensionsChanged) |
489 self.ArrayDimensions.GetListCtrl().Bind(wx.EVT_LIST_END_LABEL_EDIT, self.OnDimensionsChanged) |
467 self.ArrayDimensions.GetNewButton().Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
490 self.ArrayDimensions.GetEditButton().SetToolTipString(_("Edit item")) |
468 self.ArrayDimensions.GetDelButton().Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
491 new_button = self.ArrayDimensions.GetNewButton() |
469 self.ArrayDimensions.GetUpButton().Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
492 new_button.SetToolTipString(_("New item")) |
470 self.ArrayDimensions.GetDownButton().Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
493 new_button.Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
|
494 del_button = self.ArrayDimensions.GetDelButton() |
|
495 del_button.SetToolTipString(_("Delete item")) |
|
496 del_button.Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
|
497 up_button = self.ArrayDimensions.GetUpButton() |
|
498 up_button.SetToolTipString(_("Move up")) |
|
499 up_button.Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
|
500 down_button = self.ArrayDimensions.GetDownButton() |
|
501 down_button.SetToolTipString(_("Move down")) |
|
502 down_button.Bind(wx.EVT_BUTTON, self.OnDimensionsChanged) |
471 |
503 |
472 self.staticText10 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT10, |
504 self.staticText10 = wx.StaticText(id=ID_DATATYPEEDITORSTATICTEXT10, |
473 label='Initial Value:', name='staticText10', parent=self.ArrayPanel, |
505 label=_('Initial Value:'), name='staticText10', parent=self.ArrayPanel, |
474 pos=wx.Point(0, 0), size=wx.Size(150, 17), style=0) |
506 pos=wx.Point(0, 0), size=wx.DefaultSize, style=0) |
475 |
507 |
476 self.ArrayInitialValue = wx.TextCtrl(id=ID_DATATYPEEDITORARRAYINITIALVALUE, |
508 self.ArrayInitialValue = wx.TextCtrl(id=ID_DATATYPEEDITORARRAYINITIALVALUE, |
477 name='ArrayInitialValue', parent=self.ArrayPanel, pos=wx.Point(0, 0), |
509 name='ArrayInitialValue', parent=self.ArrayPanel, pos=wx.Point(0, 0), |
478 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL|wx.TE_PROCESS_ENTER|wx.TE_MULTILINE|wx.TE_RICH) |
510 size=wx.Size(0, 24), style=wx.TAB_TRAVERSAL|wx.TE_PROCESS_ENTER|wx.TE_MULTILINE|wx.TE_RICH) |
479 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, id=ID_DATATYPEEDITORARRAYINITIALVALUE) |
511 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, id=ID_DATATYPEEDITORARRAYINITIALVALUE) |
528 |
560 |
529 def __init__(self, parent, tagname, window, controler): |
561 def __init__(self, parent, tagname, window, controler): |
530 self._init_ctrls(parent) |
562 self._init_ctrls(parent) |
531 |
563 |
532 self.StructureElementDefaultValue = {"Name" : "", "Type" : "INT", "Initial Value" : ""} |
564 self.StructureElementDefaultValue = {"Name" : "", "Type" : "INT", "Initial Value" : ""} |
533 self.StructureElementsTable = ElementsTable(self, [], ["#", "Name", "Type", "Initial Value"]) |
565 self.StructureElementsTable = ElementsTable(self, [], GetElementsTableColnames()) |
534 self.StructureColSizes = [40, 150, 100, 250] |
566 self.StructureColSizes = [40, 150, 100, 250] |
535 self.StructureColAlignements = [wx.ALIGN_CENTER, wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_LEFT] |
567 self.StructureColAlignements = [wx.ALIGN_CENTER, wx.ALIGN_LEFT, wx.ALIGN_LEFT, wx.ALIGN_LEFT] |
536 |
568 |
537 self.StructureElementsGrid.SetTable(self.StructureElementsTable) |
569 self.StructureElementsGrid.SetTable(self.StructureElementsTable) |
538 self.StructureElementsGrid.SetRowLabelSize(0) |
570 self.StructureElementsGrid.SetRowLabelSize(0) |
539 for col in range(self.StructureElementsTable.GetNumberCols()): |
571 for col in range(self.StructureElementsTable.GetNumberCols()): |
540 attr = wx.grid.GridCellAttr() |
572 attr = wx.grid.GridCellAttr() |
541 attr.SetAlignment(self.StructureColAlignements[col], wx.ALIGN_CENTRE) |
573 attr.SetAlignment(self.StructureColAlignements[col], wx.ALIGN_CENTRE) |
542 self.StructureElementsGrid.SetColAttr(col, attr) |
574 self.StructureElementsGrid.SetColAttr(col, attr) |
543 self.StructureElementsGrid.SetColSize(col, self.StructureColSizes[col]) |
575 self.StructureElementsGrid.SetColMinimalWidth(col, self.StructureColSizes[col]) |
544 |
576 self.StructureElementsGrid.AutoSizeColumn(col, False) |
545 self.DerivationType.Append("Directly") |
577 |
546 self.DerivationType.Append("Subrange") |
578 for datatype in GetDatatypeTypes(): |
547 self.DerivationType.Append("Enumerated") |
579 self.DerivationType.Append(_(datatype)) |
548 self.DerivationType.Append("Array") |
|
549 self.DerivationType.Append("Structure") |
|
550 self.SubrangePanel.Hide() |
580 self.SubrangePanel.Hide() |
551 self.EnumeratedPanel.Hide() |
581 self.EnumeratedPanel.Hide() |
552 self.ArrayPanel.Hide() |
582 self.ArrayPanel.Hide() |
553 self.StructurePanel.Hide() |
583 self.StructurePanel.Hide() |
554 self.CurrentPanel = "Directly" |
584 self.CurrentPanel = "Directly" |
762 base_menu = wx.Menu(title='') |
793 base_menu = wx.Menu(title='') |
763 for base_type in self.Controler.GetBaseTypes(): |
794 for base_type in self.Controler.GetBaseTypes(): |
764 new_id = wx.NewId() |
795 new_id = wx.NewId() |
765 AppendMenu(base_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=base_type) |
796 AppendMenu(base_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=base_type) |
766 self.Bind(wx.EVT_MENU, self.GetElementTypeFunction(base_type), id=new_id) |
797 self.Bind(wx.EVT_MENU, self.GetElementTypeFunction(base_type), id=new_id) |
767 type_menu.AppendMenu(wx.NewId(), "Base Types", base_menu) |
798 type_menu.AppendMenu(wx.NewId(), _("Base Types"), base_menu) |
768 datatype_menu = wx.Menu(title='') |
799 datatype_menu = wx.Menu(title='') |
769 for datatype in self.Controler.GetDataTypes(self.TagName, False, self.ParentWindow.Debug): |
800 for datatype in self.Controler.GetDataTypes(self.TagName, False, self.ParentWindow.Debug): |
770 new_id = wx.NewId() |
801 new_id = wx.NewId() |
771 AppendMenu(datatype_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=datatype) |
802 AppendMenu(datatype_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=datatype) |
772 self.Bind(wx.EVT_MENU, self.GetElementTypeFunction(datatype), id=new_id) |
803 self.Bind(wx.EVT_MENU, self.GetElementTypeFunction(datatype), id=new_id) |
773 type_menu.AppendMenu(wx.NewId(), "User Data Types", datatype_menu) |
804 type_menu.AppendMenu(wx.NewId(), _("User Data Types"), datatype_menu) |
774 ## functionblock_menu = wx.Menu(title='') |
805 ## functionblock_menu = wx.Menu(title='') |
775 ## bodytype = self.Controler.GetEditedElementBodyType(self.TagName, self.ParentWindow.Debug) |
806 ## bodytype = self.Controler.GetEditedElementBodyType(self.TagName, self.ParentWindow.Debug) |
776 ## pouname, poutype = self.Controler.GetEditedElementType(self.TagName, self.ParentWindow.Debug) |
807 ## pouname, poutype = self.Controler.GetEditedElementType(self.TagName, self.ParentWindow.Debug) |
777 ## if classtype in ["Input","Output","InOut","External","Global"] or poutype != "function" and bodytype in ["ST", "IL"]: |
808 ## if classtype in ["Input","Output","InOut","External","Global"] or poutype != "function" and bodytype in ["ST", "IL"]: |
778 ## for functionblock_type in self.Controler.GetFunctionBlockTypes(self.TagName, self.ParentWindow.Debug): |
809 ## for functionblock_type in self.Controler.GetFunctionBlockTypes(self.TagName, self.ParentWindow.Debug): |
779 ## new_id = wx.NewId() |
810 ## new_id = wx.NewId() |
780 ## AppendMenu(functionblock_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=functionblock_type) |
811 ## AppendMenu(functionblock_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text=functionblock_type) |
781 ## self.Bind(wx.EVT_MENU, self.GetVariableTypeFunction(functionblock_type), id=new_id) |
812 ## self.Bind(wx.EVT_MENU, self.GetVariableTypeFunction(functionblock_type), id=new_id) |
782 ## type_menu.AppendMenu(wx.NewId(), "Function Block Types", functionblock_menu) |
813 ## type_menu.AppendMenu(wx.NewId(), _("Function Block Types"), functionblock_menu) |
783 rect = self.StructureElementsGrid.BlockToDeviceRect((row, col), (row, col)) |
814 rect = self.StructureElementsGrid.BlockToDeviceRect((row, col), (row, col)) |
784 self.StructureElementsGrid.PopupMenuXY(type_menu, rect.x + rect.width, rect.y + self.StructureElementsGrid.GetColLabelSize()) |
815 self.StructureElementsGrid.PopupMenuXY(type_menu, rect.x + rect.width, rect.y + self.StructureElementsGrid.GetColLabelSize()) |
785 event.Veto() |
816 event.Veto() |
786 else: |
817 else: |
787 event.Skip() |
818 event.Skip() |