diff -r 31e63e25b4cc -r 64beb9e9c749 dialogs/PouActionDialog.py --- a/dialogs/PouActionDialog.py Mon Aug 21 20:17:19 2017 +0000 +++ b/dialogs/PouActionDialog.py Mon Aug 21 23:22:58 2017 +0300 @@ -26,55 +26,60 @@ import wx from plcopen.structures import TestIdentifier, IEC_KEYWORDS +from util.TranslationCatalogs import NoTranslate + def GetActionLanguages(): - _ = lambda x : x + _ = NoTranslate return [_("IL"), _("ST"), _("LD"), _("FBD")] + + ACTION_LANGUAGES_DICT = dict([(_(language), language) for language in GetActionLanguages()]) + class PouActionDialog(wx.Dialog): - + def __init__(self, parent): wx.Dialog.__init__(self, parent, title=_('Create a new action')) - + main_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=2, vgap=10) main_sizer.AddGrowableCol(0) main_sizer.AddGrowableRow(0) - + infos_sizer = wx.FlexGridSizer(cols=2, hgap=5, rows=3, vgap=15) infos_sizer.AddGrowableCol(1) - main_sizer.AddSizer(infos_sizer, border=20, - flag=wx.GROW|wx.TOP|wx.LEFT|wx.RIGHT) - + main_sizer.AddSizer(infos_sizer, border=20, + flag=wx.GROW | wx.TOP | wx.LEFT | wx.RIGHT) + actionname_label = wx.StaticText(self, label=_('Action Name:')) - infos_sizer.AddWindow(actionname_label, border=4, - flag=wx.ALIGN_CENTER_VERTICAL|wx.TOP) - - self.ActionName = wx.TextCtrl(self, size=wx.Size(180,-1)) + infos_sizer.AddWindow(actionname_label, border=4, + flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) + + self.ActionName = wx.TextCtrl(self, size=wx.Size(180, -1)) infos_sizer.AddWindow(self.ActionName, flag=wx.GROW) - + language_label = wx.StaticText(self, label=_('Language:')) - infos_sizer.AddWindow(language_label, border=4, - flag=wx.ALIGN_CENTER_VERTICAL|wx.TOP) - + infos_sizer.AddWindow(language_label, border=4, + flag=wx.ALIGN_CENTER_VERTICAL | wx.TOP) + self.Language = wx.ComboBox(self, style=wx.CB_READONLY) infos_sizer.AddWindow(self.Language, flag=wx.GROW) - - button_sizer = self.CreateButtonSizer(wx.OK|wx.CANCEL|wx.CENTRE) - self.Bind(wx.EVT_BUTTON, self.OnOK, - button_sizer.GetAffirmativeButton()) - main_sizer.AddSizer(button_sizer, border=20, - flag=wx.ALIGN_RIGHT|wx.BOTTOM|wx.LEFT|wx.RIGHT) - + + button_sizer = self.CreateButtonSizer(wx.OK | wx.CANCEL | wx.CENTRE) + self.Bind(wx.EVT_BUTTON, self.OnOK, + button_sizer.GetAffirmativeButton()) + main_sizer.AddSizer(button_sizer, border=20, + flag=wx.ALIGN_RIGHT | wx.BOTTOM | wx.LEFT | wx.RIGHT) + self.SetSizer(main_sizer) - + for option in GetActionLanguages(): self.Language.Append(_(option)) - + self.Fit() self.PouNames = [] self.PouElementNames = [] - + def OnOK(self, event): error = [] action_name = self.ActionName.GetValue() @@ -89,9 +94,9 @@ if i == 0: text += item elif i == len(error) - 1: - text += _(" and %s")%item + text += _(" and %s") % item else: - text += _(", %s")%item + text += _(", %s") % item message = _("Form isn't complete. %s must be filled!") % text elif not TestIdentifier(action_name): message = _("\"%s\" is not a valid identifier!") % action_name @@ -102,28 +107,27 @@ elif action_name.upper() in self.PouElementNames: message = _("\"%s\" element for this pou already exists!") % action_name if message is not None: - dialog = wx.MessageDialog(self, message, _("Error"), wx.OK|wx.ICON_ERROR) + dialog = wx.MessageDialog(self, message, _("Error"), wx.OK | wx.ICON_ERROR) dialog.ShowModal() dialog.Destroy() else: self.EndModal(wx.ID_OK) - + def SetPouNames(self, pou_names): self.PouNames = [pou_name.upper() for pou_name in pou_names] - + def SetPouElementNames(self, element_names): self.PouElementNames = [element_name.upper() for element_name in element_names] - + def SetValues(self, values): for item, value in values.items(): if item == "actionName": self.ActionName.SetValue(value) elif item == "language": self.Language.SetStringSelection(_(value)) - + def GetValues(self): values = {} values["actionName"] = self.ActionName.GetValue() values["language"] = ACTION_LANGUAGES_DICT[self.Language.GetStringSelection()] return values -