174 label=_('Base Type:')) |
174 label=_('Base Type:')) |
175 directly_panel_sizer.AddWindow(directly_basetype_label, 1, border=5, |
175 directly_panel_sizer.AddWindow(directly_basetype_label, 1, border=5, |
176 flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
176 flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
177 |
177 |
178 self.DirectlyBaseType = wx.ComboBox(self.DirectlyPanel, style=wx.CB_READONLY) |
178 self.DirectlyBaseType = wx.ComboBox(self.DirectlyPanel, style=wx.CB_READONLY) |
179 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, self.DirectlyPanel) |
179 self.Bind(wx.EVT_COMBOBOX, self.OnInfosChanged, self.DirectlyBaseType) |
180 directly_panel_sizer.AddWindow(self.DirectlyBaseType, 1, border=5, |
180 directly_panel_sizer.AddWindow(self.DirectlyBaseType, 1, border=5, |
181 flag=wx.GROW|wx.ALL) |
181 flag=wx.GROW|wx.ALL) |
182 |
182 |
183 directly_initialvalue_label = wx.StaticText(self.DirectlyPanel, |
183 directly_initialvalue_label = wx.StaticText(self.DirectlyPanel, |
184 label=_('Initial Value:')) |
184 label=_('Initial Value:')) |
185 directly_panel_sizer.AddWindow(directly_initialvalue_label, 1, border=5, |
185 directly_panel_sizer.AddWindow(directly_initialvalue_label, 1, border=5, |
186 flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
186 flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
187 |
187 |
188 self.DirectlyInitialValue = wx.TextCtrl(self.DirectlyPanel, |
188 self.DirectlyInitialValue = wx.TextCtrl(self.DirectlyPanel, |
189 style=wx.TAB_TRAVERSAL|wx.TE_PROCESS_ENTER|wx.TE_RICH) |
189 style=wx.TE_PROCESS_ENTER|wx.TE_RICH) |
190 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, self.DirectlyInitialValue) |
190 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, self.DirectlyInitialValue) |
191 directly_panel_sizer.AddWindow(self.DirectlyInitialValue, 1, border=5, |
191 directly_panel_sizer.AddWindow(self.DirectlyInitialValue, 1, border=5, |
192 flag=wx.ALL) |
192 flag=wx.ALL) |
193 |
193 |
194 self.DirectlyPanel.SetSizer(directly_panel_sizer) |
194 self.DirectlyPanel.SetSizer(directly_panel_sizer) |
309 label=_('Initial Value:')) |
309 label=_('Initial Value:')) |
310 array_panel_rightsizer.AddWindow(array_initialvalue_label, 1, border=5, |
310 array_panel_rightsizer.AddWindow(array_initialvalue_label, 1, border=5, |
311 flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
311 flag=wx.ALIGN_CENTER_VERTICAL|wx.ALL) |
312 |
312 |
313 self.ArrayInitialValue = wx.TextCtrl(self.ArrayPanel, |
313 self.ArrayInitialValue = wx.TextCtrl(self.ArrayPanel, |
314 style=wx.TAB_TRAVERSAL|wx.TE_PROCESS_ENTER|wx.TE_RICH) |
314 style=wx.TE_PROCESS_ENTER|wx.TE_RICH) |
315 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, self.ArrayInitialValue) |
315 self.Bind(wx.EVT_TEXT_ENTER, self.OnReturnKeyPressed, self.ArrayInitialValue) |
316 array_panel_rightsizer.AddWindow(self.ArrayInitialValue, 1, border=5, |
316 array_panel_rightsizer.AddWindow(self.ArrayInitialValue, 1, border=5, |
317 flag=wx.ALL) |
317 flag=wx.ALL) |
318 |
318 |
319 self.ArrayDimensions = CustomEditableListBox(self.ArrayPanel, |
319 self.ArrayDimensions = CustomEditableListBox(self.ArrayPanel, |
569 wx.CallAfter(self.RefreshTypeInfos) |
569 wx.CallAfter(self.RefreshTypeInfos) |
570 event.Skip() |
570 event.Skip() |
571 |
571 |
572 def OnStructureElementsGridCellChange(self, event): |
572 def OnStructureElementsGridCellChange(self, event): |
573 row, col = event.GetRow(), event.GetCol() |
573 row, col = event.GetRow(), event.GetCol() |
574 colname = self.StructureElementsTable.GetColLabelValue(col) |
574 colname = self.StructureElementsTable.GetColLabelValue(col, False) |
575 value = self.StructureElementsTable.GetValue(row, col) |
575 value = self.StructureElementsTable.GetValue(row, col) |
576 if colname == "Name": |
576 if colname == "Name": |
577 if not TestIdentifier(value): |
577 if not TestIdentifier(value): |
578 message = wx.MessageDialog(self, _("\"%s\" is not a valid identifier!")%value, _("Error"), wx.OK|wx.ICON_ERROR) |
578 message = wx.MessageDialog(self, _("\"%s\" is not a valid identifier!")%value, _("Error"), wx.OK|wx.ICON_ERROR) |
579 message.ShowModal() |
579 message.ShowModal() |
611 wx.CallAfter(self.RefreshStructureButtons) |
611 wx.CallAfter(self.RefreshStructureButtons) |
612 event.Skip() |
612 event.Skip() |
613 |
613 |
614 def OnStructureElementsGridEditorShown(self, event): |
614 def OnStructureElementsGridEditorShown(self, event): |
615 row, col = event.GetRow(), event.GetCol() |
615 row, col = event.GetRow(), event.GetCol() |
616 if self.StructureElementsTable.GetColLabelValue(col) == "Type": |
616 if self.StructureElementsTable.GetColLabelValue(col, False) == "Type": |
617 type_menu = wx.Menu(title='') |
617 type_menu = wx.Menu(title='') |
618 |
618 |
619 base_menu = wx.Menu(title='') |
619 base_menu = wx.Menu(title='') |
620 for base_type in self.Controler.GetBaseTypes(): |
620 for base_type in self.Controler.GetBaseTypes(): |
621 new_id = wx.NewId() |
621 new_id = wx.NewId() |