47 POU_LANGUAGES = GetPouLanguages() |
47 POU_LANGUAGES = GetPouLanguages() |
48 POU_LANGUAGES_DICT = dict([(_(language), language) for language in POU_LANGUAGES]) |
48 POU_LANGUAGES_DICT = dict([(_(language), language) for language in POU_LANGUAGES]) |
49 |
49 |
50 def __init__(self, parent, pou_type=None, type_readonly=False): |
50 def __init__(self, parent, pou_type=None, type_readonly=False): |
51 wx.Dialog.__init__(self, id=-1, parent=parent, |
51 wx.Dialog.__init__(self, id=-1, parent=parent, |
52 name='PouDialog', title=_('Create a new POU'), |
52 name='PouDialog', title=_('Create a new POU'), |
53 style=wx.DEFAULT_DIALOG_STYLE) |
53 style=wx.DEFAULT_DIALOG_STYLE) |
54 |
54 |
55 main_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10) |
55 main_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10) |
56 main_sizer.AddGrowableCol(0) |
56 main_sizer.AddGrowableCol(0) |
57 main_sizer.AddGrowableRow(0) |
57 main_sizer.AddGrowableRow(0) |
58 |
58 |
59 infos_sizer = wx.FlexGridSizer(cols=2, hgap=5, rows=3, vgap=15) |
59 infos_sizer = wx.FlexGridSizer(cols=2, hgap=5, rows=3, vgap=15) |
60 infos_sizer.AddGrowableCol(1) |
60 infos_sizer.AddGrowableCol(1) |
61 main_sizer.AddSizer(infos_sizer, border=20, |
61 main_sizer.AddSizer(infos_sizer, border=20, |
62 flag=wx.GROW | wx.TOP | wx.LEFT | wx.RIGHT) |
62 flag=wx.GROW | wx.TOP | wx.LEFT | wx.RIGHT) |
63 |
63 |
64 pouname_label = wx.StaticText(self, label=_('POU Name:')) |
64 pouname_label = wx.StaticText(self, label=_('POU Name:')) |
65 infos_sizer.AddWindow(pouname_label, border=4, |
65 infos_sizer.AddWindow(pouname_label, border=4, |
66 flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) |
66 flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) |
67 |
67 |
68 self.PouName = wx.TextCtrl(self) |
68 self.PouName = wx.TextCtrl(self) |
69 infos_sizer.AddWindow(self.PouName, flag=wx.GROW) |
69 infos_sizer.AddWindow(self.PouName, flag=wx.GROW) |
70 |
70 |
71 poutype_label = wx.StaticText(self, label=_('POU Type:')) |
71 poutype_label = wx.StaticText(self, label=_('POU Type:')) |
72 infos_sizer.AddWindow(poutype_label, border=4, |
72 infos_sizer.AddWindow(poutype_label, border=4, |
73 flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) |
73 flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) |
74 |
74 |
75 self.PouType = wx.ComboBox(self, style=wx.CB_READONLY) |
75 self.PouType = wx.ComboBox(self, style=wx.CB_READONLY) |
76 self.Bind(wx.EVT_COMBOBOX, self.OnTypeChanged, self.PouType) |
76 self.Bind(wx.EVT_COMBOBOX, self.OnTypeChanged, self.PouType) |
77 infos_sizer.AddWindow(self.PouType, flag=wx.GROW) |
77 infos_sizer.AddWindow(self.PouType, flag=wx.GROW) |
78 |
78 |
79 language_label = wx.StaticText(self, label=_('Language:')) |
79 language_label = wx.StaticText(self, label=_('Language:')) |
80 infos_sizer.AddWindow(language_label, border=4, |
80 infos_sizer.AddWindow(language_label, border=4, |
81 flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) |
81 flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) |
82 |
82 |
83 self.Language = wx.ComboBox(self, style=wx.CB_READONLY) |
83 self.Language = wx.ComboBox(self, style=wx.CB_READONLY) |
84 infos_sizer.AddWindow(self.Language, flag=wx.GROW) |
84 infos_sizer.AddWindow(self.Language, flag=wx.GROW) |
85 |
85 |
86 button_sizer = self.CreateButtonSizer(wx.OK | wx.CANCEL | wx.CENTRE) |
86 button_sizer = self.CreateButtonSizer(wx.OK | wx.CANCEL | wx.CENTRE) |
87 self.Bind(wx.EVT_BUTTON, self.OnOK, button_sizer.GetAffirmativeButton()) |
87 self.Bind(wx.EVT_BUTTON, self.OnOK, button_sizer.GetAffirmativeButton()) |
88 main_sizer.AddSizer(button_sizer, border=20, |
88 main_sizer.AddSizer(button_sizer, border=20, |
89 flag=wx.ALIGN_RIGHT | wx.BOTTOM | wx.LEFT | wx.RIGHT) |
89 flag=wx.ALIGN_RIGHT | wx.BOTTOM | wx.LEFT | wx.RIGHT) |
90 |
90 |
91 self.SetSizer(main_sizer) |
91 self.SetSizer(main_sizer) |
92 |
92 |
93 for option in GetPouTypes(): |
93 for option in GetPouTypes(): |
94 if not type_readonly or _(option) == _(pou_type): |
94 if not type_readonly or _(option) == _(pou_type): |