# HG changeset patch # User Andrey Skvortsov <andrej.skvortzov@gmail.com> # Date 1489062919 -10800 # Node ID 3a98027ff372cb2bb60529176c05d65aa63323e2 # Parent bb5440697405c25a308650529cf56ca31e77cb30 apply constraints to names for tasks and task instances in resource configuration The same rules as for IEC identifiers are applied. - no non-lating characters, ... - no IEC keywords - check for duplicate names in resource configuration closes #19 diff -r bb5440697405 -r 3a98027ff372 editors/ResourceEditor.py --- a/editors/ResourceEditor.py Thu Mar 09 13:01:28 2017 +0500 +++ b/editors/ResourceEditor.py Thu Mar 09 15:35:19 2017 +0300 @@ -31,7 +31,7 @@ from dialogs.DurationEditorDialog import IEC_TIME_MODEL from EditorPanel import EditorPanel from util.BitmapLibrary import GetBitmap - +from plcopen.structures import LOCATIONDATATYPES, TestIdentifier, IEC_KEYWORDS, DefaultType #------------------------------------------------------------------------------- # Configuration Editor class #------------------------------------------------------------------------------- @@ -108,7 +108,7 @@ def GetValue(self, row, col): if row < self.GetNumberRows(): colname = self.GetColLabelValue(col, False) - value = str(self.data[row].get(colname, "")) + value = self.data[row].get(colname, "") if colname == "Triggering": return _(value) return value @@ -432,9 +432,28 @@ self.TasksGrid.RefreshButtons() self.InstancesGrid.RefreshButtons() + def ShowErrorMessage(self, message): + dialog = wx.MessageDialog(self, message, _("Error"), wx.OK|wx.ICON_ERROR) + dialog.ShowModal() + dialog.Destroy() + def OnTasksGridCellChange(self, event): row, col = event.GetRow(), event.GetCol() if self.TasksTable.GetColLabelValue(col, False) == "Name": + value = self.TasksTable.GetValue(row, col) + message = None + + if not TestIdentifier(value): + message = _("\"%s\" is not a valid identifier!") % value + elif value.upper() in IEC_KEYWORDS: + message = _("\"%s\" is a keyword. It can't be used!") % value + elif value.upper() in [var["Name"].upper() for i, var in enumerate(self.TasksTable.data) if i!=row]: + message = _("A task with the same name already exists!") + if message is not None: + event.Veto() + wx.CallAfter(self.ShowErrorMessage, message) + return + tasklist = [name for name in self.TaskList.split(",") if name != ""] for i in xrange(self.TasksTable.GetNumberRows()): task = self.TasksTable.GetValueByName(i, "Name") @@ -454,6 +473,22 @@ event.Skip() def OnInstancesGridCellChange(self, event): + row, col = event.GetRow(), event.GetCol() + if self.InstancesTable.GetColLabelValue(col, False) == "Name": + value = self.InstancesTable.GetValue(row, col) + message = None + + if not TestIdentifier(value): + message = _("\"%s\" is not a valid identifier!") % value + elif value.upper() in IEC_KEYWORDS: + message = _("\"%s\" is a keyword. It can't be used!") % value + elif value.upper() in [var["Name"].upper() for i ,var in enumerate(self.InstancesTable.data) if i!=row]: + message = _("An instance with the same name already exists!") + if message is not None: + event.Veto() + wx.CallAfter(self.ShowErrorMessage, message) + return + self.RefreshModel() self.ParentWindow.RefreshPouInstanceVariablesPanel() self.InstancesGrid.RefreshButtons() diff -r bb5440697405 -r 3a98027ff372 i18n/Beremiz_ru_RU.po --- a/i18n/Beremiz_ru_RU.po Thu Mar 09 13:01:28 2017 +0500 +++ b/i18n/Beremiz_ru_RU.po Thu Mar 09 15:35:19 2017 +0300 @@ -7,8 +7,8 @@ msgstr "" "Project-Id-Version: Beremiz\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-01-12 14:39+0300\n" -"PO-Revision-Date: 2017-01-12 14:41+0300\n" +"POT-Creation-Date: 2017-03-09 15:28+0300\n" +"PO-Revision-Date: 2017-03-09 15:30+0300\n" "Last-Translator: Andrey Skvortsov <andrej.skvortzov@gmail.com>\n" "Language-Team: Andrey Skvortsov <andrej.skvortzov@gmail.com>\n" "Language: ru_RU\n" @@ -72,7 +72,7 @@ msgid " and %s" msgstr "и %s" -#: ../ProjectController.py:1089 +#: ../ProjectController.py:1110 msgid " generation failed !\n" msgstr "Ð½ÐµÑƒÐ´Ð°Ñ‡Ð½Ð°Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ ÐºÐ¾Ð´Ð°!\n" @@ -96,7 +96,7 @@ msgid "\"%s\" can't use itself!" msgstr "\"%s\" не может иÑпользовать Ñам ÑебÑ!!!" -#: ../IDEFrame.py:1652 ../IDEFrame.py:1671 +#: ../IDEFrame.py:1651 ../IDEFrame.py:1670 #, python-format msgid "\"%s\" config already exists!" msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ \"%s\" уже ÑущеÑтвует!!!" @@ -106,7 +106,7 @@ msgid "\"%s\" configuration already exists !!!" msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ \"%s\" уже ÑущеÑтвует!!!" -#: ../IDEFrame.py:1602 +#: ../IDEFrame.py:1601 #, python-format msgid "\"%s\" data type already exists!" msgstr "Тип данных \"%s\" уже ÑущеÑтвует!!!" @@ -128,9 +128,10 @@ #: ../dialogs/SFCStepNameDialog.py:52 ../dialogs/PouTransitionDialog.py:106 #: ../dialogs/BlockPreviewDialog.py:207 ../dialogs/PouNameDialog.py:50 #: ../dialogs/PouActionDialog.py:98 ../dialogs/PouDialog.py:120 +#: ../editors/ResourceEditor.py:449 ../editors/ResourceEditor.py:484 #: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:584 -#: ../editors/CodeFileEditor.py:770 ../controls/VariablePanel.py:751 -#: ../IDEFrame.py:1593 +#: ../editors/CodeFileEditor.py:770 ../controls/VariablePanel.py:763 +#: ../IDEFrame.py:1592 #, python-format msgid "\"%s\" is a keyword. It can't be used!" msgstr "\"%s\" ÑвлÑетÑÑ ÐºÐ»ÑŽÑ‡ÐµÐ²Ñ‹Ð¼ Ñловом и не может быть иÑпользован!" @@ -148,13 +149,14 @@ #: ../dialogs/SFCStepNameDialog.py:50 ../dialogs/PouTransitionDialog.py:104 #: ../dialogs/BlockPreviewDialog.py:203 ../dialogs/PouNameDialog.py:48 #: ../dialogs/PouActionDialog.py:96 ../dialogs/PouDialog.py:118 +#: ../editors/ResourceEditor.py:447 ../editors/ResourceEditor.py:482 #: ../editors/DataTypeEditor.py:579 ../editors/CodeFileEditor.py:768 -#: ../controls/VariablePanel.py:749 ../IDEFrame.py:1591 +#: ../controls/VariablePanel.py:761 ../IDEFrame.py:1590 #, python-format msgid "\"%s\" is not a valid identifier!" msgstr "\"%s\" неверный идентификатор!" -#: ../IDEFrame.py:2396 +#: ../IDEFrame.py:2395 #, python-format msgid "\"%s\" is used by one or more POUs. Do you wish to continue?" msgstr "\"%s\" иÑпользуетÑÑ Ð±Ð¾Ð»ÐµÐµ чем одним POU. Продолжить?" @@ -164,7 +166,7 @@ #: ../editors/Viewer.py:367 ../editors/TextViewer.py:270 #: ../editors/TextViewer.py:299 ../editors/TextViewer.py:350 #: ../editors/TextViewer.py:373 ../controls/VariablePanel.py:338 -#: ../IDEFrame.py:1611 +#: ../IDEFrame.py:1610 #, python-format msgid "\"%s\" pou already exists!" msgstr "POU \"%s\" уже ÑущеÑтвует!" @@ -279,8 +281,8 @@ msgid "&Add Element" msgstr "&Добавить Ñлемент" -#: ../dialogs/AboutDialog.py:65 ../dialogs/AboutDialog.py:113 -#: ../dialogs/AboutDialog.py:150 +#: ../dialogs/AboutDialog.py:73 ../dialogs/AboutDialog.py:121 +#: ../dialogs/AboutDialog.py:158 msgid "&Close" msgstr "&Закрыть" @@ -316,7 +318,7 @@ msgid "&Help" msgstr "&Помощь" -#: ../dialogs/AboutDialog.py:64 +#: ../dialogs/AboutDialog.py:72 msgid "&License" msgstr "&ЛицензиÑ" @@ -402,15 +404,15 @@ msgid "1s" msgstr "1 Ñек" -#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1614 ../IDEFrame.py:1660 -#: ../IDEFrame.py:1679 +#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1613 ../IDEFrame.py:1659 +#: ../IDEFrame.py:1678 #, python-format msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?" msgstr "Ð’ POU приÑутÑтвует Ñлемент Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ \"%s\". Ðто может вызвать конфликт. Хотите продолжить?" #: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:108 #: ../dialogs/PouNameDialog.py:52 ../dialogs/PouActionDialog.py:100 -#: ../controls/VariablePanel.py:753 ../IDEFrame.py:1628 ../IDEFrame.py:1641 +#: ../controls/VariablePanel.py:765 ../IDEFrame.py:1627 ../IDEFrame.py:1640 #, python-format msgid "A POU named \"%s\" already exists!" msgstr "POU Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ \"%s\" уже ÑущеÑтвует!" @@ -424,8 +426,12 @@ msgid "A location must be selected!" msgstr "Ðеобходимо выбрать размещение!" -#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:755 -#: ../IDEFrame.py:1630 ../IDEFrame.py:1643 +#: ../editors/ResourceEditor.py:451 +msgid "A task with the same name already exists!" +msgstr "Задача Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует!" + +#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:767 +#: ../IDEFrame.py:1629 ../IDEFrame.py:1642 #, python-format msgid "A variable with \"%s\" as name already exists in this pou!" msgstr "ÐŸÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ \"%s\" уже ÑущеÑтвует в Ñтом POU!" @@ -435,7 +441,7 @@ msgid "A variable with \"%s\" as name already exists!" msgstr "ÐŸÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ \"%s\" уже ÑущеÑтвует!" -#: ../dialogs/AboutDialog.py:40 ../PLCOpenEditor.py:158 ../Beremiz.py:381 +#: ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:158 ../Beremiz.py:381 msgid "About" msgstr "О программе" @@ -447,7 +453,7 @@ msgid "Action" msgstr "ДейÑтвие" -#: ../editors/Viewer.py:555 ../editors/Viewer.py:2345 +#: ../editors/Viewer.py:555 ../editors/Viewer.py:2356 msgid "Action Block" msgstr "Блок дейÑтвиÑ" @@ -472,7 +478,7 @@ msgid "Actions:" msgstr "ДейÑтвиÑ:" -#: ../editors/Viewer.py:1100 +#: ../editors/Viewer.py:1110 msgid "Active" msgstr "Ðктивный" @@ -481,7 +487,7 @@ msgid "Add" msgstr "Добавить" -#: ../IDEFrame.py:1890 ../IDEFrame.py:1925 +#: ../IDEFrame.py:1889 ../IDEFrame.py:1924 msgid "Add Action" msgstr "Добавить дейÑтвие" @@ -489,11 +495,11 @@ msgid "Add C code accessing located variables synchronously" msgstr "Добавить C-код Ñ Ñинхронным доÑтупом к локальным переменным" -#: ../IDEFrame.py:1873 +#: ../IDEFrame.py:1872 msgid "Add Configuration" msgstr "Добавить конфигурацию" -#: ../IDEFrame.py:1853 +#: ../IDEFrame.py:1852 msgid "Add DataType" msgstr "Добавить тип данных" @@ -505,7 +511,7 @@ msgid "Add IP" msgstr "Добавить IP адреÑ" -#: ../IDEFrame.py:1861 +#: ../IDEFrame.py:1860 msgid "Add POU" msgstr "Добавить POU" @@ -513,11 +519,11 @@ msgid "Add Python code executed asynchronously" msgstr "Добавить аÑинхронно вызываемый код на Python" -#: ../IDEFrame.py:1901 ../IDEFrame.py:1951 +#: ../IDEFrame.py:1900 ../IDEFrame.py:1950 msgid "Add Resource" msgstr "Добавить реÑурÑ" -#: ../IDEFrame.py:1879 ../IDEFrame.py:1922 +#: ../IDEFrame.py:1878 ../IDEFrame.py:1921 msgid "Add Transition" msgstr "Добавить переход" @@ -529,7 +535,7 @@ msgid "Add a new initial step" msgstr "Добавить новый иÑходный шаг" -#: ../editors/Viewer.py:2706 ../editors/SFCViewer.py:770 +#: ../editors/Viewer.py:2717 ../editors/SFCViewer.py:770 msgid "Add a new jump" msgstr "Добавить новый безуÑловный переход" @@ -577,7 +583,7 @@ msgid "Adjust Block Size" msgstr "Скорректировать размер Ñлемента" -#: ../editors/Viewer.py:1637 +#: ../editors/Viewer.py:1648 msgid "Alignment" msgstr "Выравнивание" @@ -593,7 +599,7 @@ msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv" msgstr "Ð’Ñе файлы (*.*)|*.*|CSV files (*.csv)|*.csv" -#: ../ProjectController.py:1623 +#: ../ProjectController.py:1644 msgid "Already connected. Please disconnect\n" msgstr "Уже подключен. ПожалуйÑта, отключитеÑÑŒ Ñначала.\n" @@ -602,6 +608,10 @@ msgid "An element named \"%s\" already exists in this structure!" msgstr "Поле Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ \"%s\" уже ÑущеÑтвует в данной Ñтруктуре!" +#: ../editors/ResourceEditor.py:486 +msgid "An instance with the same name already exists!" +msgstr "ÐкземплÑÑ€ задачи Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует!" + #: ../dialogs/ConnectionDialog.py:96 msgid "Apply name modification to all continuations with the same name" msgstr "Переименовать вÑе цепи Ñ Ñ‚ÐµÐ¼ же Ñамым именем" @@ -623,7 +633,7 @@ msgstr "Математика" #: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:635 -#: ../controls/VariablePanel.py:829 +#: ../controls/VariablePanel.py:841 msgid "Array" msgstr "МаÑÑив" @@ -668,7 +678,7 @@ msgid "Base Type:" msgstr "Базовый тип:" -#: ../editors/DataTypeEditor.py:625 ../controls/VariablePanel.py:787 +#: ../editors/DataTypeEditor.py:625 ../controls/VariablePanel.py:799 msgid "Base Types" msgstr "Базовые типы" @@ -710,7 +720,7 @@ msgid "Bitwise inverting" msgstr "Битовое ÐЕ" -#: ../editors/Viewer.py:525 ../editors/Viewer.py:2358 +#: ../editors/Viewer.py:525 ../editors/Viewer.py:2369 msgid "Block" msgstr "Блок" @@ -726,7 +736,7 @@ msgid "Bottom" msgstr "Ðиз" -#: ../ProjectController.py:1301 +#: ../ProjectController.py:1322 msgid "Broken" msgstr "Ошибка" @@ -739,23 +749,23 @@ msgid "Browse Locations" msgstr "ПроÑмотр директорий" -#: ../ProjectController.py:1769 +#: ../ProjectController.py:1790 msgid "Build" msgstr "Сборка" -#: ../ProjectController.py:1235 +#: ../ProjectController.py:1256 msgid "Build directory already clean\n" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñборки уже пуÑта\n" -#: ../ProjectController.py:1770 +#: ../ProjectController.py:1791 msgid "Build project into build folder" msgstr "Сборка проекта в директории Ñборки" -#: ../ProjectController.py:1018 +#: ../ProjectController.py:1039 msgid "C Build crashed !\n" msgstr "КрÑш во Ð²Ñ€ÐµÐ¼Ñ Ñборки C-кода!\n" -#: ../ProjectController.py:1015 +#: ../ProjectController.py:1036 msgid "C Build failed.\n" msgstr "Ошибка Ñборки C-кода.\n" @@ -763,7 +773,7 @@ msgid "C code" msgstr "C код " -#: ../ProjectController.py:1093 +#: ../ProjectController.py:1114 msgid "C code generated successfully.\n" msgstr "C-код уÑпешно Ñгенерирован.\n" @@ -780,7 +790,7 @@ msgid "C extension" msgstr "С-раÑширение" -#: ../dialogs/AboutDialog.py:63 +#: ../dialogs/AboutDialog.py:71 msgid "C&redits" msgstr "&БлагодарноÑти" @@ -859,7 +869,7 @@ msgid "Cannot get PLC status - connection failed.\n" msgstr "Ðевозможно получить ÑоÑтоÑние ПЛК - ошибка подключениÑ.\n" -#: ../ProjectController.py:881 +#: ../ProjectController.py:902 msgid "Cannot open/parse VARIABLES.csv!\n" msgstr "Ðе удалоÑÑŒ открыть/прочитать VARIABLES.csv\n" @@ -884,7 +894,7 @@ msgid "Change Name" msgstr "Сменить имÑ" -#: ../IDEFrame.py:1943 +#: ../IDEFrame.py:1942 msgid "Change POU Type To" msgstr "Сменить тип POU на" @@ -904,7 +914,7 @@ msgid "Choose a SVG file" msgstr "Выберите SVG-файл" -#: ../ProjectController.py:451 +#: ../ProjectController.py:501 msgid "Choose a directory to save project" msgstr "Выберите директорию, чтобы Ñохранить проект" @@ -926,11 +936,11 @@ msgid "Choose a working directory " msgstr "Выберите рабочую директорию" -#: ../ProjectController.py:358 +#: ../ProjectController.py:408 msgid "Chosen folder doesn't contain a program. It's not a valid project!" msgstr "Ð’Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð½Ðµ Ñодержит программы. Ðто некорректный проект!" -#: ../ProjectController.py:325 +#: ../ProjectController.py:375 msgid "Chosen folder isn't empty. You can't use it for a new project!" msgstr "Ð’Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð½Ðµ пуÑта и не может иÑпользоватьÑÑ Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ проекта!" @@ -946,7 +956,7 @@ msgid "Class:" msgstr "КлаÑÑ:" -#: ../ProjectController.py:1773 +#: ../ProjectController.py:1794 msgid "Clean" msgstr "ОчиÑтить" @@ -954,11 +964,11 @@ msgid "Clean log messages" msgstr "ОчиÑтить лог" -#: ../ProjectController.py:1775 +#: ../ProjectController.py:1796 msgid "Clean project build folder" msgstr "ОчиÑтить директорию Ñборки проекта" -#: ../ProjectController.py:1232 +#: ../ProjectController.py:1253 msgid "Cleaning the build directory\n" msgstr "ОчиÑтка директории Ñборки\n" @@ -987,7 +997,7 @@ msgid "Close Tab" msgstr "Закрыть вкладку" -#: ../editors/Viewer.py:541 ../editors/Viewer.py:2366 +#: ../editors/Viewer.py:541 ../editors/Viewer.py:2377 msgid "Coil" msgstr "Катушка" @@ -1017,7 +1027,7 @@ msgid "Compiler" msgstr "КомпилÑтор" -#: ../ProjectController.py:672 +#: ../ProjectController.py:693 msgid "Compiling IEC Program into C code...\n" msgstr "КомпилÑÑ†Ð¸Ñ ÐœÐК-программы в C-код...\n" @@ -1047,21 +1057,21 @@ msgid "Confirm or change variable name" msgstr "Подтвердить или поменÑÑ‚ÑŒ Ð¸Ð¼Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð¾Ð¹" -#: ../ProjectController.py:1788 +#: ../ProjectController.py:1809 msgid "Connect" msgstr "ПодключитьÑÑ" -#: ../ProjectController.py:1789 +#: ../ProjectController.py:1810 msgid "Connect to the target PLC" msgstr "ПодключитьÑÑ Ðº целевому ПЛК" -#: ../ProjectController.py:1292 +#: ../ProjectController.py:1313 #, python-format msgid "Connected to URI: %s" msgstr "Подключен к URI: %s" #: ../dialogs/SFCTransitionDialog.py:76 ../editors/Viewer.py:527 -#: ../editors/Viewer.py:2359 +#: ../editors/Viewer.py:2370 msgid "Connection" msgstr "Подключение" @@ -1069,11 +1079,11 @@ msgid "Connection Properties" msgstr "СвойÑтва подключение" -#: ../ProjectController.py:1647 +#: ../ProjectController.py:1668 msgid "Connection canceled!\n" msgstr "Подключение отменено!\n" -#: ../ProjectController.py:1672 +#: ../ProjectController.py:1693 #, python-format msgid "Connection failed to %s!\n" msgstr "Ðеудачное подключение к %s!\n" @@ -1087,7 +1097,7 @@ msgid "Connection to '%s' failed.\n" msgstr "Ðеудачное подключение к %s!\n" -#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1594 +#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1605 msgid "Connector" msgstr "Коннектор" @@ -1103,7 +1113,7 @@ msgid "Constant" msgstr "КонÑтанта" -#: ../editors/Viewer.py:537 ../editors/Viewer.py:2362 +#: ../editors/Viewer.py:537 ../editors/Viewer.py:2373 msgid "Contact" msgstr "Контакт" @@ -1111,7 +1121,7 @@ msgid "Content Description (optional):" msgstr "ОпиÑание Ñодержимого (опционально):" -#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1595 +#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1606 msgid "Continuation" msgstr "Продолжение" @@ -1136,7 +1146,7 @@ msgid "Copy" msgstr "Копировать" -#: ../IDEFrame.py:1930 +#: ../IDEFrame.py:1929 msgid "Copy POU" msgstr "Копировать POU" @@ -1191,15 +1201,15 @@ msgid "Couldn't paste non-POU object." msgstr "Ðевозможно вÑтавить не-POU." -#: ../ProjectController.py:1589 +#: ../ProjectController.py:1610 msgid "Couldn't start PLC !\n" msgstr "Ðевозможно запуÑтить ПЛК!\n" -#: ../ProjectController.py:1597 +#: ../ProjectController.py:1618 msgid "Couldn't stop PLC !\n" msgstr "Ðевозможно оÑтановить ПЛК!\n" -#: ../ProjectController.py:1561 +#: ../ProjectController.py:1582 msgid "Couldn't stop debugger.\n" msgstr "Ðевозможно оÑтановить отладчик.\n" @@ -1279,7 +1289,7 @@ msgid "Create a new variable" msgstr "Создать новую переменную" -#: ../dialogs/AboutDialog.py:105 +#: ../dialogs/AboutDialog.py:113 msgid "Credits" msgstr "БлагодарноÑти" @@ -1343,7 +1353,7 @@ msgid "Days:" msgstr "Дни:" -#: ../ProjectController.py:1694 +#: ../ProjectController.py:1715 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" msgstr "ÐžÑ‚Ð»Ð°Ð¶Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð° не ÑоответÑтвует программе в ПЛК - оÑтановите/загрузите/запуÑтите, чтобы разрешить отладку\n" @@ -1351,17 +1361,17 @@ msgid "Debug instance" msgstr "Отладка ÑкземплÑра" -#: ../editors/Viewer.py:1117 ../editors/Viewer.py:3653 +#: ../editors/Viewer.py:1127 ../editors/Viewer.py:3664 #, python-format msgid "Debug: %s" msgstr "Отладка: %s" -#: ../ProjectController.py:1350 +#: ../ProjectController.py:1371 #, python-format msgid "Debug: Unknown variable '%s'\n" msgstr "Отладка: неизвеÑÑ‚Ð½Ð°Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ '%s'\n" -#: ../ProjectController.py:1348 +#: ../ProjectController.py:1369 #, python-format msgid "Debug: Unsupported type to debug '%s'\n" msgstr "Отладка: неподдерживамый отладкой тип '%s'\n" @@ -1370,19 +1380,19 @@ msgid "Debugger" msgstr "Отладчик" -#: ../ProjectController.py:1530 +#: ../ProjectController.py:1551 msgid "Debugger disabled\n" msgstr "Отладчик запрещен\n" -#: ../ProjectController.py:1691 +#: ../ProjectController.py:1712 msgid "Debugger ready\n" msgstr "Отладчик готов\n" -#: ../ProjectController.py:1563 +#: ../ProjectController.py:1584 msgid "Debugger stopped.\n" msgstr "Отладчик оÑтановлен.\n" -#: ../editors/Viewer.py:572 ../Beremiz.py:1064 ../IDEFrame.py:1959 +#: ../editors/Viewer.py:572 ../Beremiz.py:1064 ../IDEFrame.py:1958 msgid "Delete" msgstr "Удалить" @@ -1439,19 +1449,19 @@ msgid "Disable_Extensions" msgstr "Запретить раÑширениÑ" -#: ../ProjectController.py:1797 +#: ../ProjectController.py:1818 msgid "Disconnect" msgstr "ОтключитьÑÑ" -#: ../ProjectController.py:1799 +#: ../ProjectController.py:1820 msgid "Disconnect from PLC" msgstr "ОтключитьÑÑ Ð¾Ñ‚ ПЛК" -#: ../ProjectController.py:1302 +#: ../ProjectController.py:1323 msgid "Disconnected" msgstr "Отключено" -#: ../editors/Viewer.py:556 ../editors/Viewer.py:2354 +#: ../editors/Viewer.py:556 ../editors/Viewer.py:2365 msgid "Divergence" msgstr "Ветвление" @@ -1512,7 +1522,7 @@ msgid "Edit array type properties" msgstr "Редактировать ÑвойÑтва маÑÑива" -#: ../editors/Viewer.py:2575 ../editors/Viewer.py:3004 +#: ../editors/Viewer.py:2586 ../editors/Viewer.py:3015 msgid "Edit comment" msgstr "Редактировать комментарий" @@ -1524,11 +1534,11 @@ msgid "Edit item" msgstr "Редактировать Ñлемент" -#: ../editors/Viewer.py:2963 +#: ../editors/Viewer.py:2974 msgid "Edit jump target" msgstr "Редактирование безуÑловного перехода" -#: ../ProjectController.py:1811 +#: ../ProjectController.py:1832 msgid "Edit raw IEC code added to code generated by PLCGenerator" msgstr "Редактировать ÐœÐК-код добавленный к коду Ñгенерированному PLCGenerator" @@ -1544,7 +1554,7 @@ msgid "Editor ToolBar" msgstr "Редактор панели инÑтрументов" -#: ../ProjectController.py:1195 +#: ../ProjectController.py:1216 msgid "Editor selection" msgstr "Редактор выделениÑ" @@ -1555,7 +1565,7 @@ msgid "Elements :" msgstr "Ðлементы:" -#: ../ProjectController.py:1300 +#: ../ProjectController.py:1321 msgid "Empty" msgstr "Ðет программы" @@ -1595,35 +1605,36 @@ #: ../dialogs/PouNameDialog.py:54 ../dialogs/BrowseLocationsDialog.py:216 #: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouActionDialog.py:104 #: ../dialogs/PouDialog.py:134 ../PLCOpenEditor.py:335 ../PLCOpenEditor.py:340 -#: ../PLCOpenEditor.py:420 ../PLCOpenEditor.py:430 ../editors/Viewer.py:423 +#: ../PLCOpenEditor.py:420 ../PLCOpenEditor.py:430 +#: ../editors/ResourceEditor.py:436 ../editors/Viewer.py:423 #: ../editors/LDViewer.py:666 ../editors/LDViewer.py:882 #: ../editors/LDViewer.py:886 ../editors/DataTypeEditor.py:550 #: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:579 #: ../editors/DataTypeEditor.py:584 ../editors/DataTypeEditor.py:594 #: ../editors/DataTypeEditor.py:745 ../editors/DataTypeEditor.py:752 #: ../editors/TextViewer.py:389 ../editors/CodeFileEditor.py:783 -#: ../ProjectController.py:293 ../ProjectController.py:421 -#: ../ProjectController.py:428 ../controls/FolderTree.py:217 +#: ../ProjectController.py:343 ../ProjectController.py:471 +#: ../ProjectController.py:478 ../controls/FolderTree.py:217 #: ../controls/DebugVariablePanel/DebugVariablePanel.py:166 #: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:137 #: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:231 -#: ../controls/VariablePanel.py:402 ../controls/VariablePanel.py:772 -#: ../Beremiz.py:1203 ../IDEFrame.py:1003 ../IDEFrame.py:1614 -#: ../IDEFrame.py:1655 ../IDEFrame.py:1660 ../IDEFrame.py:1674 -#: ../IDEFrame.py:1679 ../Beremiz_service.py:211 +#: ../controls/VariablePanel.py:402 ../controls/VariablePanel.py:784 +#: ../Beremiz.py:1203 ../IDEFrame.py:1003 ../IDEFrame.py:1613 +#: ../IDEFrame.py:1654 ../IDEFrame.py:1659 ../IDEFrame.py:1673 +#: ../IDEFrame.py:1678 ../Beremiz_service.py:211 msgid "Error" msgstr "Ошибка" -#: ../ProjectController.py:727 +#: ../ProjectController.py:748 msgid "Error : At least one configuration and one resource must be declared in PLC !\n" msgstr "Ошибка: Как минимум одна ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¸ один реÑÑƒÑ€Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ‹ быть задекларированы в ПЛК!\n" -#: ../ProjectController.py:719 +#: ../ProjectController.py:740 #, python-format msgid "Error : IEC to C compiler returned %d\n" msgstr "Ошибка: компилÑтор ÐœÐК в C вернул код ошибки %d\n" -#: ../ProjectController.py:621 +#: ../ProjectController.py:671 #, python-format msgid "" "Error in ST/IL/SFC code generator :\n" @@ -1647,7 +1658,7 @@ msgid "Error: No PLC built\n" msgstr "Ошибка: ПЛК не Ñобран\n" -#: ../ProjectController.py:1666 +#: ../ProjectController.py:1687 #, python-format msgid "Exception while connecting %s!\n" msgstr "ИÑключение во Ð²Ñ€ÐµÐ¼Ñ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ %s!\n" @@ -1692,7 +1703,7 @@ msgid "External" msgstr "Внешний" -#: ../ProjectController.py:740 +#: ../ProjectController.py:761 msgid "Extracting Located Variables...\n" msgstr "ÐкÑпорт локальных переменных...\n" @@ -1707,7 +1718,7 @@ msgid "FBD" msgstr "FBD" -#: ../ProjectController.py:1729 +#: ../ProjectController.py:1750 msgid "Failed : Must build before transfer.\n" msgstr "Ошибка: необходима Ñборка перед передачей.\n" @@ -1715,7 +1726,7 @@ msgid "Falling Edge" msgstr "Спадающий фронт" -#: ../ProjectController.py:1008 +#: ../ProjectController.py:1029 msgid "Fatal : cannot get builder.\n" msgstr "Ошибка: невозможно получить Ñборщик.\n" @@ -1764,7 +1775,7 @@ msgid "Force runtime reload\n" msgstr "Принудительный перезапуÑк ÑиÑтемы иÑполнениÑ\n" -#: ../editors/Viewer.py:1553 +#: ../editors/Viewer.py:1564 msgid "Force value" msgstr "ФикÑировать значение" @@ -1792,7 +1803,7 @@ msgid "Forward" msgstr "Вперед" -#: ../dialogs/SearchInProjectDialog.py:36 ../IDEFrame.py:1746 +#: ../dialogs/SearchInProjectDialog.py:36 ../IDEFrame.py:1745 msgid "Function" msgstr "ФункциÑ" @@ -1800,12 +1811,12 @@ msgid "Function &Block" msgstr "Функциональный &блок" -#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1745 -#: ../IDEFrame.py:1938 +#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1744 +#: ../IDEFrame.py:1937 msgid "Function Block" msgstr "Функциональный блок" -#: ../controls/VariablePanel.py:825 +#: ../controls/VariablePanel.py:837 msgid "Function Block Types" msgstr "Типы функциональных блоков" @@ -1830,7 +1841,7 @@ msgid "Generate Program" msgstr "Сгенерировать программу" -#: ../ProjectController.py:612 +#: ../ProjectController.py:662 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n" msgstr "Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ ÐœÐК-61131 ST/IL/SFC кода ПЛК...\n" @@ -1900,12 +1911,12 @@ msgid "Import SVG" msgstr "Импорт SVG" -#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1580 +#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1591 #: ../controls/VariablePanel.py:71 msgid "InOut" msgstr "Вход/Выход" -#: ../editors/Viewer.py:1100 +#: ../editors/Viewer.py:1110 msgid "Inactive" msgstr "Ðеактивный" @@ -1955,7 +1966,7 @@ #: ../dialogs/SFCStepDialog.py:70 ../dialogs/FBDVariableDialog.py:37 #: ../dialogs/BrowseLocationsDialog.py:40 ../editors/Viewer.py:289 -#: ../editors/Viewer.py:1578 ../editors/TextViewer.py:307 +#: ../editors/Viewer.py:1589 ../editors/TextViewer.py:307 #: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71 #: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 msgid "Input" @@ -2043,7 +2054,7 @@ "Ðеверное значение!\n" "Ðеобходимо ввеÑти чиÑловое значение." -#: ../editors/Viewer.py:557 ../editors/Viewer.py:2343 +#: ../editors/Viewer.py:557 ../editors/Viewer.py:2354 msgid "Jump" msgstr "БезуÑловный переход" @@ -2074,7 +2085,7 @@ msgid "Language:" msgstr "Язык:" -#: ../ProjectController.py:1735 +#: ../ProjectController.py:1756 msgid "Latest build already matches current target. Transfering anyway...\n" msgstr "Ð—Ð°Ð³Ñ€ÑƒÐ¶Ð°ÐµÐ¼Ð°Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð° Ñовпадает Ñ Ñ‚ÐµÐºÑƒÑ‰Ð¸Ð¹ программой в целевом ПЛК. Загрузка продолжена...\n" @@ -2113,7 +2124,7 @@ msgid "Library" msgstr "Библиотеки" -#: ../dialogs/AboutDialog.py:143 +#: ../dialogs/AboutDialog.py:151 msgid "License" msgstr "ЛицензиÑ" @@ -2139,7 +2150,7 @@ msgid "Local entries" msgstr "Локальные запиÑи" -#: ../ProjectController.py:1641 +#: ../ProjectController.py:1662 msgid "Local service discovery failed!\n" msgstr "Локальный ÑÐµÑ€Ð²Ð¸Ñ Ð½Ðµ найден!\n" @@ -2350,7 +2361,7 @@ msgid "No Modifier" msgstr "Ðет модификатора" -#: ../ProjectController.py:1763 +#: ../ProjectController.py:1784 msgid "No PLC to transfer (did build succeed ?)\n" msgstr "Ðет ПЛК Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ð¸ (была Ñборка уÑпешна?)\n" @@ -2460,7 +2471,7 @@ msgid "Open Source framework for automation, implemented IEC 61131 IDE with constantly growing set of extensions and flexible PLC runtime." msgstr "Свободное программное обеÑпечение Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾Ð¹ автоматизации, ÑоÑтоÑщие из Ñреды разработки программ по Ñтандарту ÐœÐК 61131 Ñ Ð¿Ð¾ÑтоÑнно раÑширÑющимÑÑ Ð½Ð°Ð±Ð¾Ñ€Ð¾Ð¼ плагинов и гибкой ÑиÑтемой иÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÐŸÐ›Ðš." -#: ../ProjectController.py:1815 +#: ../ProjectController.py:1836 msgid "Open a file explorer to manage project files" msgstr "Открыть файловый менеджер Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра файлов проекта" @@ -2486,7 +2497,7 @@ #: ../dialogs/SFCStepDialog.py:71 ../dialogs/FBDVariableDialog.py:39 #: ../dialogs/BrowseLocationsDialog.py:41 ../editors/Viewer.py:289 -#: ../editors/Viewer.py:1579 ../editors/TextViewer.py:307 +#: ../editors/Viewer.py:1590 ../editors/TextViewer.py:307 #: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71 #: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 msgid "Output" @@ -2514,7 +2525,7 @@ msgid "PLC Log" msgstr "Лог ПЛК" -#: ../ProjectController.py:992 +#: ../ProjectController.py:1013 msgid "PLC code generation failed !\n" msgstr "ÐÐµÑƒÐ´Ð°Ñ‡Ð½Ð°Ñ Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ ÐºÐ¾Ð´Ð°!\n" @@ -2594,7 +2605,7 @@ msgid "Page Size (optional):" msgstr "Размер Ñтраницы (опционально):" -#: ../IDEFrame.py:2599 +#: ../IDEFrame.py:2598 #, python-format msgid "Page: %d" msgstr "Страница: %d" @@ -2607,7 +2618,7 @@ msgid "Paste" msgstr "Ð’Ñтавить" -#: ../IDEFrame.py:1865 +#: ../IDEFrame.py:1864 msgid "Paste POU" msgstr "Ð’Ñтавить POU" @@ -2619,7 +2630,7 @@ msgid "Pin number:" msgstr "Ðомер пина:" -#: ../editors/Viewer.py:2706 ../editors/Viewer.py:2963 +#: ../editors/Viewer.py:2717 ../editors/Viewer.py:2974 #: ../editors/SFCViewer.py:770 msgid "Please choose a target" msgstr "Выберите цель перехода" @@ -2628,7 +2639,7 @@ msgid "Please enter a block name" msgstr "Введите Ð¸Ð¼Ñ Ð±Ð»Ð¾ÐºÐ°" -#: ../editors/Viewer.py:2576 ../editors/Viewer.py:3005 +#: ../editors/Viewer.py:2587 ../editors/Viewer.py:3016 msgid "Please enter comment text" msgstr "Введите текÑÑ‚ комментариÑ" @@ -2654,7 +2665,7 @@ msgid "Port number must be an integer!" msgstr "Ðомер порта должен быть целым чиÑлом!" -#: ../editors/Viewer.py:536 ../editors/Viewer.py:2367 +#: ../editors/Viewer.py:536 ../editors/Viewer.py:2378 msgid "Power Rail" msgstr "Шина питаниÑ" @@ -2718,8 +2729,8 @@ msgid "Product Version (required):" msgstr "ВерÑÐ¸Ñ Ð¿Ñ€Ð¾Ð´ÑƒÐºÑ‚Ð° (обÑзательно):" -#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1744 -#: ../IDEFrame.py:1941 +#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1743 +#: ../IDEFrame.py:1940 msgid "Program" msgstr "Программа" @@ -2744,7 +2755,7 @@ msgid "Project '%s':" msgstr "Проект '%s':" -#: ../ProjectController.py:1814 +#: ../ProjectController.py:1835 msgid "Project Files" msgstr "Файлы проекта" @@ -2828,7 +2839,7 @@ msgid "Range:" msgstr "Диапазон:" -#: ../ProjectController.py:1810 +#: ../ProjectController.py:1831 msgid "Raw IEC code" msgstr "ÐœÐК-код" @@ -2857,7 +2868,7 @@ msgid "Regular expressions" msgstr "РегулÑрные выражениÑ" -#: ../editors/Viewer.py:1556 +#: ../editors/Viewer.py:1567 msgid "Release value" msgstr "ОÑвободить значение" @@ -2870,11 +2881,11 @@ msgid "Remove %s node" msgstr "Удалить %s Ñлемент" -#: ../IDEFrame.py:2405 +#: ../IDEFrame.py:2404 msgid "Remove Datatype" msgstr "Удалить тип данных" -#: ../IDEFrame.py:2410 +#: ../IDEFrame.py:2409 msgid "Remove Pou" msgstr "Удалить POU" @@ -2906,7 +2917,7 @@ msgid "Remove variable" msgstr "Удалить переменную" -#: ../IDEFrame.py:1945 +#: ../IDEFrame.py:1944 msgid "Rename" msgstr "Переименовать" @@ -2977,15 +2988,15 @@ msgid "Rounding up/down" msgstr "Округление вверх/вниз" -#: ../ProjectController.py:1778 +#: ../ProjectController.py:1799 msgid "Run" msgstr "Старт" -#: ../ProjectController.py:1037 +#: ../ProjectController.py:1058 msgid "Runtime IO extensions C code generation failed !\n" msgstr "Ошибка генерации C-кода Ð´Ð»Ñ Ñ€Ð°Ñширений ввода-вывода!\n" -#: ../ProjectController.py:1046 +#: ../ProjectController.py:1067 msgid "Runtime library extensions C code generation failed !\n" msgstr "Ошибка генерации C-кода Ð´Ð»Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñ‚ÐµÐºÐ¸ раÑширений ÑиÑтемы иÑполнениÑ!\n" @@ -3044,7 +3055,7 @@ msgid "Save as" msgstr "Сохранить как" -#: ../ProjectController.py:420 +#: ../ProjectController.py:470 msgid "Save path is the same as path of a project! \n" msgstr "Выбранный путь Ñовпадает Ñ Ð¿ÑƒÑ‚Ñ‘Ð¼ проекта!\n" @@ -3074,7 +3085,7 @@ msgid "Select a variable class:" msgstr "Выберите клаÑÑ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð¾Ð¹:" -#: ../ProjectController.py:1195 +#: ../ProjectController.py:1216 msgid "Select an editor:" msgstr "Выберите редактор:" @@ -3086,7 +3097,7 @@ msgid "Select an object" msgstr "Выберите объект" -#: ../ProjectController.py:427 +#: ../ProjectController.py:477 msgid "Selected directory already contains another project. Overwrite? \n" msgstr "Ð’Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ ÑƒÐ¶Ðµ Ñодержит другой проект. ПерезапиÑать?\n" @@ -3125,7 +3136,7 @@ msgid "Shift right" msgstr "Сдвиг вправо" -#: ../ProjectController.py:1804 +#: ../ProjectController.py:1825 msgid "Show IEC code generated by PLCGenerator" msgstr "Показать код, Ñгенерированный PLCGenerator" @@ -3137,7 +3148,7 @@ msgid "Show Master generated by config_utils" msgstr "Показать ведущий узел Ñгенерированный config_utils" -#: ../ProjectController.py:1802 +#: ../ProjectController.py:1823 msgid "Show code" msgstr "Показать код" @@ -3174,20 +3185,20 @@ msgid "Standard function blocks" msgstr "Стандартные функциональные блоки" -#: ../ProjectController.py:1780 ../Beremiz_service.py:261 +#: ../ProjectController.py:1801 ../Beremiz_service.py:261 msgid "Start PLC" msgstr "ЗапуÑтить ПЛК" -#: ../ProjectController.py:984 +#: ../ProjectController.py:1005 #, python-format msgid "Start build in %s\n" msgstr "Сборка запущена в %s\n" -#: ../ProjectController.py:1298 +#: ../ProjectController.py:1319 msgid "Started" msgstr "Работа" -#: ../ProjectController.py:1586 +#: ../ProjectController.py:1607 msgid "Starting PLC\n" msgstr "ПЛК запуÑкаетÑÑ\n" @@ -3195,11 +3206,11 @@ msgid "Status ToolBar" msgstr "Панель ÑтатуÑа" -#: ../editors/Viewer.py:553 ../editors/Viewer.py:2342 +#: ../editors/Viewer.py:553 ../editors/Viewer.py:2353 msgid "Step" msgstr "Шаг" -#: ../ProjectController.py:1783 +#: ../ProjectController.py:1804 msgid "Stop" msgstr "Стоп" @@ -3207,15 +3218,15 @@ msgid "Stop PLC" msgstr "ОÑтановить ПЛК" -#: ../ProjectController.py:1785 +#: ../ProjectController.py:1806 msgid "Stop Running PLC" msgstr "ОÑтановить запущенный ПЛК" -#: ../ProjectController.py:1299 +#: ../ProjectController.py:1320 msgid "Stopped" msgstr "Стоп" -#: ../ProjectController.py:1558 +#: ../ProjectController.py:1579 msgid "Stopping debugger...\n" msgstr "ОÑтановка отладчика...\n" @@ -3231,7 +3242,7 @@ msgid "Subtraction" msgstr "Вычитание" -#: ../ProjectController.py:1023 +#: ../ProjectController.py:1044 msgid "Successfully built.\n" msgstr "Сборка прошла уÑпешно.\n" @@ -3343,7 +3354,7 @@ msgid "There are changes, do you want to save?" msgstr "Хотите Ñохранить изменениÑ?" -#: ../IDEFrame.py:1655 ../IDEFrame.py:1674 +#: ../IDEFrame.py:1654 ../IDEFrame.py:1673 #, python-format msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?" msgstr "СущеÑтвует POU Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ \"%s\". Ðто может вызвать конфликт. Хотите продолжить?" @@ -3402,23 +3413,23 @@ msgid "Top" msgstr "Верх" -#: ../ProjectController.py:1792 +#: ../ProjectController.py:1813 msgid "Transfer" msgstr "Передать" -#: ../ProjectController.py:1794 +#: ../ProjectController.py:1815 msgid "Transfer PLC" msgstr "Передать ПЛК" -#: ../ProjectController.py:1758 +#: ../ProjectController.py:1779 msgid "Transfer completed successfully.\n" msgstr "Передача уÑпешно завершена.\n" -#: ../ProjectController.py:1760 +#: ../ProjectController.py:1781 msgid "Transfer failed\n" msgstr "Ошибка передачи\n" -#: ../editors/Viewer.py:554 ../editors/Viewer.py:2344 ../editors/Viewer.py:2371 +#: ../editors/Viewer.py:554 ../editors/Viewer.py:2355 ../editors/Viewer.py:2382 msgid "Transition" msgstr "Переход" @@ -3454,7 +3465,7 @@ msgid "Transitions" msgstr "Переходы" -#: ../dialogs/AboutDialog.py:123 +#: ../dialogs/AboutDialog.py:131 msgid "Translated by" msgstr "Перевод" @@ -3526,7 +3537,7 @@ msgid "Undo" msgstr "Отмена" -#: ../ProjectController.py:332 +#: ../ProjectController.py:382 msgid "Unknown" msgstr "ÐеизвеÑтно" @@ -3535,7 +3546,7 @@ msgid "Unknown variable \"%s\" for this POU!" msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ \"%s\" Ð´Ð»Ñ Ñтого POU!" -#: ../ProjectController.py:329 ../ProjectController.py:330 +#: ../ProjectController.py:379 ../ProjectController.py:380 msgid "Unnamed" msgstr "Unnamed" @@ -3549,7 +3560,7 @@ msgid "Unrecognized data size \"%s\"" msgstr "Ðеопределенный размер данных \"%s\"" -#: ../editors/DataTypeEditor.py:632 ../controls/VariablePanel.py:798 +#: ../editors/DataTypeEditor.py:632 ../controls/VariablePanel.py:810 msgid "User Data Types" msgstr "ПользовательÑкие типы данных" @@ -3570,7 +3581,7 @@ msgstr "ЗначениÑ:" #: ../dialogs/ActionBlockDialog.py:42 ../editors/Viewer.py:526 -#: ../editors/Viewer.py:2374 +#: ../editors/Viewer.py:2385 msgid "Variable" msgstr "ПеременнаÑ" @@ -3636,7 +3647,7 @@ msgid "Warning" msgstr "Предупреждение" -#: ../ProjectController.py:616 +#: ../ProjectController.py:666 msgid "Warnings in ST/IL/SFC code generator :\n" msgstr "ÐŸÑ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ¶Ð´ÐµÐ½Ð¸Ñ Ð² ST/IL/SFC коде генераторе:\n" @@ -3655,7 +3666,7 @@ msgid "Wrap search" msgstr "Продолжить поиÑк Ñначала" -#: ../dialogs/AboutDialog.py:122 +#: ../dialogs/AboutDialog.py:130 msgid "Written by" msgstr "Ðвторы" @@ -3685,7 +3696,7 @@ "У Ð²Ð°Ñ Ð½ÐµÐ´Ð¾Ñтаточно прав Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи.\n" "Открыть wxGlade вÑе равно?" -#: ../ProjectController.py:292 +#: ../ProjectController.py:342 msgid "" "You must have permission to work on the project\n" "Work on a project copy ?" diff -r bb5440697405 -r 3a98027ff372 i18n/messages.pot --- a/i18n/messages.pot Thu Mar 09 13:01:28 2017 +0500 +++ b/i18n/messages.pot Thu Mar 09 15:35:19 2017 +0300 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-01-12 14:39+0300\n" +"POT-Creation-Date: 2017-03-09 15:28+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -62,7 +62,7 @@ msgid " and %s" msgstr "" -#: ../ProjectController.py:1089 +#: ../ProjectController.py:1110 msgid " generation failed !\n" msgstr "" @@ -86,7 +86,7 @@ msgid "\"%s\" can't use itself!" msgstr "" -#: ../IDEFrame.py:1652 ../IDEFrame.py:1671 +#: ../IDEFrame.py:1651 ../IDEFrame.py:1670 #, python-format msgid "\"%s\" config already exists!" msgstr "" @@ -96,7 +96,7 @@ msgid "\"%s\" configuration already exists !!!" msgstr "" -#: ../IDEFrame.py:1602 +#: ../IDEFrame.py:1601 #, python-format msgid "\"%s\" data type already exists!" msgstr "" @@ -118,9 +118,10 @@ #: ../dialogs/SFCStepNameDialog.py:52 ../dialogs/PouTransitionDialog.py:106 #: ../dialogs/BlockPreviewDialog.py:207 ../dialogs/PouNameDialog.py:50 #: ../dialogs/PouActionDialog.py:98 ../dialogs/PouDialog.py:120 +#: ../editors/ResourceEditor.py:449 ../editors/ResourceEditor.py:484 #: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:584 -#: ../editors/CodeFileEditor.py:770 ../controls/VariablePanel.py:751 -#: ../IDEFrame.py:1593 +#: ../editors/CodeFileEditor.py:770 ../controls/VariablePanel.py:763 +#: ../IDEFrame.py:1592 #, python-format msgid "\"%s\" is a keyword. It can't be used!" msgstr "" @@ -138,13 +139,14 @@ #: ../dialogs/SFCStepNameDialog.py:50 ../dialogs/PouTransitionDialog.py:104 #: ../dialogs/BlockPreviewDialog.py:203 ../dialogs/PouNameDialog.py:48 #: ../dialogs/PouActionDialog.py:96 ../dialogs/PouDialog.py:118 +#: ../editors/ResourceEditor.py:447 ../editors/ResourceEditor.py:482 #: ../editors/DataTypeEditor.py:579 ../editors/CodeFileEditor.py:768 -#: ../controls/VariablePanel.py:749 ../IDEFrame.py:1591 +#: ../controls/VariablePanel.py:761 ../IDEFrame.py:1590 #, python-format msgid "\"%s\" is not a valid identifier!" msgstr "" -#: ../IDEFrame.py:2396 +#: ../IDEFrame.py:2395 #, python-format msgid "\"%s\" is used by one or more POUs. Do you wish to continue?" msgstr "" @@ -154,7 +156,7 @@ #: ../editors/Viewer.py:367 ../editors/TextViewer.py:270 #: ../editors/TextViewer.py:299 ../editors/TextViewer.py:350 #: ../editors/TextViewer.py:373 ../controls/VariablePanel.py:338 -#: ../IDEFrame.py:1611 +#: ../IDEFrame.py:1610 #, python-format msgid "\"%s\" pou already exists!" msgstr "" @@ -266,8 +268,8 @@ msgid "&Add Element" msgstr "" -#: ../dialogs/AboutDialog.py:65 ../dialogs/AboutDialog.py:113 -#: ../dialogs/AboutDialog.py:150 +#: ../dialogs/AboutDialog.py:73 ../dialogs/AboutDialog.py:121 +#: ../dialogs/AboutDialog.py:158 msgid "&Close" msgstr "" @@ -303,7 +305,7 @@ msgid "&Help" msgstr "" -#: ../dialogs/AboutDialog.py:64 +#: ../dialogs/AboutDialog.py:72 msgid "&License" msgstr "" @@ -373,15 +375,15 @@ msgid "1s" msgstr "" -#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1614 ../IDEFrame.py:1660 -#: ../IDEFrame.py:1679 +#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1613 ../IDEFrame.py:1659 +#: ../IDEFrame.py:1678 #, python-format msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?" msgstr "" #: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:108 #: ../dialogs/PouNameDialog.py:52 ../dialogs/PouActionDialog.py:100 -#: ../controls/VariablePanel.py:753 ../IDEFrame.py:1628 ../IDEFrame.py:1641 +#: ../controls/VariablePanel.py:765 ../IDEFrame.py:1627 ../IDEFrame.py:1640 #, python-format msgid "A POU named \"%s\" already exists!" msgstr "" @@ -395,8 +397,12 @@ msgid "A location must be selected!" msgstr "" -#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:755 -#: ../IDEFrame.py:1630 ../IDEFrame.py:1643 +#: ../editors/ResourceEditor.py:451 +msgid "A task with the same name already exists!" +msgstr "" + +#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:767 +#: ../IDEFrame.py:1629 ../IDEFrame.py:1642 #, python-format msgid "A variable with \"%s\" as name already exists in this pou!" msgstr "" @@ -406,7 +412,7 @@ msgid "A variable with \"%s\" as name already exists!" msgstr "" -#: ../dialogs/AboutDialog.py:40 ../PLCOpenEditor.py:158 ../Beremiz.py:381 +#: ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:158 ../Beremiz.py:381 msgid "About" msgstr "" @@ -418,7 +424,7 @@ msgid "Action" msgstr "" -#: ../editors/Viewer.py:555 ../editors/Viewer.py:2345 +#: ../editors/Viewer.py:555 ../editors/Viewer.py:2356 msgid "Action Block" msgstr "" @@ -443,7 +449,7 @@ msgid "Actions:" msgstr "" -#: ../editors/Viewer.py:1100 +#: ../editors/Viewer.py:1110 msgid "Active" msgstr "" @@ -452,7 +458,7 @@ msgid "Add" msgstr "" -#: ../IDEFrame.py:1890 ../IDEFrame.py:1925 +#: ../IDEFrame.py:1889 ../IDEFrame.py:1924 msgid "Add Action" msgstr "" @@ -460,11 +466,11 @@ msgid "Add C code accessing located variables synchronously" msgstr "" -#: ../IDEFrame.py:1873 +#: ../IDEFrame.py:1872 msgid "Add Configuration" msgstr "" -#: ../IDEFrame.py:1853 +#: ../IDEFrame.py:1852 msgid "Add DataType" msgstr "" @@ -476,7 +482,7 @@ msgid "Add IP" msgstr "" -#: ../IDEFrame.py:1861 +#: ../IDEFrame.py:1860 msgid "Add POU" msgstr "" @@ -484,11 +490,11 @@ msgid "Add Python code executed asynchronously" msgstr "" -#: ../IDEFrame.py:1901 ../IDEFrame.py:1951 +#: ../IDEFrame.py:1900 ../IDEFrame.py:1950 msgid "Add Resource" msgstr "" -#: ../IDEFrame.py:1879 ../IDEFrame.py:1922 +#: ../IDEFrame.py:1878 ../IDEFrame.py:1921 msgid "Add Transition" msgstr "" @@ -500,7 +506,7 @@ msgid "Add a new initial step" msgstr "" -#: ../editors/Viewer.py:2706 ../editors/SFCViewer.py:770 +#: ../editors/Viewer.py:2717 ../editors/SFCViewer.py:770 msgid "Add a new jump" msgstr "" @@ -548,7 +554,7 @@ msgid "Adjust Block Size" msgstr "" -#: ../editors/Viewer.py:1637 +#: ../editors/Viewer.py:1648 msgid "Alignment" msgstr "" @@ -564,7 +570,7 @@ msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv" msgstr "" -#: ../ProjectController.py:1623 +#: ../ProjectController.py:1644 msgid "Already connected. Please disconnect\n" msgstr "" @@ -573,6 +579,10 @@ msgid "An element named \"%s\" already exists in this structure!" msgstr "" +#: ../editors/ResourceEditor.py:486 +msgid "An instance with the same name already exists!" +msgstr "" + #: ../dialogs/ConnectionDialog.py:96 msgid "Apply name modification to all continuations with the same name" msgstr "" @@ -594,7 +604,7 @@ msgstr "" #: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:635 -#: ../controls/VariablePanel.py:829 +#: ../controls/VariablePanel.py:841 msgid "Array" msgstr "" @@ -636,7 +646,7 @@ msgid "Base Type:" msgstr "" -#: ../editors/DataTypeEditor.py:625 ../controls/VariablePanel.py:787 +#: ../editors/DataTypeEditor.py:625 ../controls/VariablePanel.py:799 msgid "Base Types" msgstr "" @@ -672,7 +682,7 @@ msgid "Bitwise inverting" msgstr "" -#: ../editors/Viewer.py:525 ../editors/Viewer.py:2358 +#: ../editors/Viewer.py:525 ../editors/Viewer.py:2369 msgid "Block" msgstr "" @@ -688,7 +698,7 @@ msgid "Bottom" msgstr "" -#: ../ProjectController.py:1301 +#: ../ProjectController.py:1322 msgid "Broken" msgstr "" @@ -701,23 +711,23 @@ msgid "Browse Locations" msgstr "" -#: ../ProjectController.py:1769 +#: ../ProjectController.py:1790 msgid "Build" msgstr "" -#: ../ProjectController.py:1235 +#: ../ProjectController.py:1256 msgid "Build directory already clean\n" msgstr "" -#: ../ProjectController.py:1770 +#: ../ProjectController.py:1791 msgid "Build project into build folder" msgstr "" -#: ../ProjectController.py:1018 +#: ../ProjectController.py:1039 msgid "C Build crashed !\n" msgstr "" -#: ../ProjectController.py:1015 +#: ../ProjectController.py:1036 msgid "C Build failed.\n" msgstr "" @@ -725,7 +735,7 @@ msgid "C code" msgstr "" -#: ../ProjectController.py:1093 +#: ../ProjectController.py:1114 msgid "C code generated successfully.\n" msgstr "" @@ -742,7 +752,7 @@ msgid "C extension" msgstr "" -#: ../dialogs/AboutDialog.py:63 +#: ../dialogs/AboutDialog.py:71 msgid "C&redits" msgstr "" @@ -799,7 +809,7 @@ msgid "Cannot get PLC status - connection failed.\n" msgstr "" -#: ../ProjectController.py:881 +#: ../ProjectController.py:902 msgid "Cannot open/parse VARIABLES.csv!\n" msgstr "" @@ -824,7 +834,7 @@ msgid "Change Name" msgstr "" -#: ../IDEFrame.py:1943 +#: ../IDEFrame.py:1942 msgid "Change POU Type To" msgstr "" @@ -844,7 +854,7 @@ msgid "Choose a SVG file" msgstr "" -#: ../ProjectController.py:451 +#: ../ProjectController.py:501 msgid "Choose a directory to save project" msgstr "" @@ -866,11 +876,11 @@ msgid "Choose a working directory " msgstr "" -#: ../ProjectController.py:358 +#: ../ProjectController.py:408 msgid "Chosen folder doesn't contain a program. It's not a valid project!" msgstr "" -#: ../ProjectController.py:325 +#: ../ProjectController.py:375 msgid "Chosen folder isn't empty. You can't use it for a new project!" msgstr "" @@ -886,7 +896,7 @@ msgid "Class:" msgstr "" -#: ../ProjectController.py:1773 +#: ../ProjectController.py:1794 msgid "Clean" msgstr "" @@ -894,11 +904,11 @@ msgid "Clean log messages" msgstr "" -#: ../ProjectController.py:1775 +#: ../ProjectController.py:1796 msgid "Clean project build folder" msgstr "" -#: ../ProjectController.py:1232 +#: ../ProjectController.py:1253 msgid "Cleaning the build directory\n" msgstr "" @@ -927,7 +937,7 @@ msgid "Close Tab" msgstr "" -#: ../editors/Viewer.py:541 ../editors/Viewer.py:2366 +#: ../editors/Viewer.py:541 ../editors/Viewer.py:2377 msgid "Coil" msgstr "" @@ -951,7 +961,7 @@ msgid "Comparison" msgstr "" -#: ../ProjectController.py:672 +#: ../ProjectController.py:693 msgid "Compiling IEC Program into C code...\n" msgstr "" @@ -981,21 +991,21 @@ msgid "Confirm or change variable name" msgstr "" -#: ../ProjectController.py:1788 +#: ../ProjectController.py:1809 msgid "Connect" msgstr "" -#: ../ProjectController.py:1789 +#: ../ProjectController.py:1810 msgid "Connect to the target PLC" msgstr "" -#: ../ProjectController.py:1292 +#: ../ProjectController.py:1313 #, python-format msgid "Connected to URI: %s" msgstr "" #: ../dialogs/SFCTransitionDialog.py:76 ../editors/Viewer.py:527 -#: ../editors/Viewer.py:2359 +#: ../editors/Viewer.py:2370 msgid "Connection" msgstr "" @@ -1003,11 +1013,11 @@ msgid "Connection Properties" msgstr "" -#: ../ProjectController.py:1647 +#: ../ProjectController.py:1668 msgid "Connection canceled!\n" msgstr "" -#: ../ProjectController.py:1672 +#: ../ProjectController.py:1693 #, python-format msgid "Connection failed to %s!\n" msgstr "" @@ -1021,7 +1031,7 @@ msgid "Connection to '%s' failed.\n" msgstr "" -#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1594 +#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1605 msgid "Connector" msgstr "" @@ -1037,7 +1047,7 @@ msgid "Constant" msgstr "" -#: ../editors/Viewer.py:537 ../editors/Viewer.py:2362 +#: ../editors/Viewer.py:537 ../editors/Viewer.py:2373 msgid "Contact" msgstr "" @@ -1045,7 +1055,7 @@ msgid "Content Description (optional):" msgstr "" -#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1595 +#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1606 msgid "Continuation" msgstr "" @@ -1070,7 +1080,7 @@ msgid "Copy" msgstr "" -#: ../IDEFrame.py:1930 +#: ../IDEFrame.py:1929 msgid "Copy POU" msgstr "" @@ -1116,15 +1126,15 @@ msgid "Couldn't paste non-POU object." msgstr "" -#: ../ProjectController.py:1589 +#: ../ProjectController.py:1610 msgid "Couldn't start PLC !\n" msgstr "" -#: ../ProjectController.py:1597 +#: ../ProjectController.py:1618 msgid "Couldn't stop PLC !\n" msgstr "" -#: ../ProjectController.py:1561 +#: ../ProjectController.py:1582 msgid "Couldn't stop debugger.\n" msgstr "" @@ -1204,7 +1214,7 @@ msgid "Create a new variable" msgstr "" -#: ../dialogs/AboutDialog.py:105 +#: ../dialogs/AboutDialog.py:113 msgid "Credits" msgstr "" @@ -1265,7 +1275,7 @@ msgid "Days:" msgstr "" -#: ../ProjectController.py:1694 +#: ../ProjectController.py:1715 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" msgstr "" @@ -1273,17 +1283,17 @@ msgid "Debug instance" msgstr "" -#: ../editors/Viewer.py:1117 ../editors/Viewer.py:3653 +#: ../editors/Viewer.py:1127 ../editors/Viewer.py:3664 #, python-format msgid "Debug: %s" msgstr "" -#: ../ProjectController.py:1350 +#: ../ProjectController.py:1371 #, python-format msgid "Debug: Unknown variable '%s'\n" msgstr "" -#: ../ProjectController.py:1348 +#: ../ProjectController.py:1369 #, python-format msgid "Debug: Unsupported type to debug '%s'\n" msgstr "" @@ -1292,19 +1302,19 @@ msgid "Debugger" msgstr "" -#: ../ProjectController.py:1530 +#: ../ProjectController.py:1551 msgid "Debugger disabled\n" msgstr "" -#: ../ProjectController.py:1691 +#: ../ProjectController.py:1712 msgid "Debugger ready\n" msgstr "" -#: ../ProjectController.py:1563 +#: ../ProjectController.py:1584 msgid "Debugger stopped.\n" msgstr "" -#: ../editors/Viewer.py:572 ../Beremiz.py:1064 ../IDEFrame.py:1959 +#: ../editors/Viewer.py:572 ../Beremiz.py:1064 ../IDEFrame.py:1958 msgid "Delete" msgstr "" @@ -1352,19 +1362,19 @@ msgid "Directly" msgstr "" -#: ../ProjectController.py:1797 +#: ../ProjectController.py:1818 msgid "Disconnect" msgstr "" -#: ../ProjectController.py:1799 +#: ../ProjectController.py:1820 msgid "Disconnect from PLC" msgstr "" -#: ../ProjectController.py:1302 +#: ../ProjectController.py:1323 msgid "Disconnected" msgstr "" -#: ../editors/Viewer.py:556 ../editors/Viewer.py:2354 +#: ../editors/Viewer.py:556 ../editors/Viewer.py:2365 msgid "Divergence" msgstr "" @@ -1425,7 +1435,7 @@ msgid "Edit array type properties" msgstr "" -#: ../editors/Viewer.py:2575 ../editors/Viewer.py:3004 +#: ../editors/Viewer.py:2586 ../editors/Viewer.py:3015 msgid "Edit comment" msgstr "" @@ -1437,11 +1447,11 @@ msgid "Edit item" msgstr "" -#: ../editors/Viewer.py:2963 +#: ../editors/Viewer.py:2974 msgid "Edit jump target" msgstr "" -#: ../ProjectController.py:1811 +#: ../ProjectController.py:1832 msgid "Edit raw IEC code added to code generated by PLCGenerator" msgstr "" @@ -1457,7 +1467,7 @@ msgid "Editor ToolBar" msgstr "" -#: ../ProjectController.py:1195 +#: ../ProjectController.py:1216 msgid "Editor selection" msgstr "" @@ -1465,7 +1475,7 @@ msgid "Elements :" msgstr "" -#: ../ProjectController.py:1300 +#: ../ProjectController.py:1321 msgid "Empty" msgstr "" @@ -1502,35 +1512,36 @@ #: ../dialogs/PouNameDialog.py:54 ../dialogs/BrowseLocationsDialog.py:216 #: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouActionDialog.py:104 #: ../dialogs/PouDialog.py:134 ../PLCOpenEditor.py:335 ../PLCOpenEditor.py:340 -#: ../PLCOpenEditor.py:420 ../PLCOpenEditor.py:430 ../editors/Viewer.py:423 +#: ../PLCOpenEditor.py:420 ../PLCOpenEditor.py:430 +#: ../editors/ResourceEditor.py:436 ../editors/Viewer.py:423 #: ../editors/LDViewer.py:666 ../editors/LDViewer.py:882 #: ../editors/LDViewer.py:886 ../editors/DataTypeEditor.py:550 #: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:579 #: ../editors/DataTypeEditor.py:584 ../editors/DataTypeEditor.py:594 #: ../editors/DataTypeEditor.py:745 ../editors/DataTypeEditor.py:752 #: ../editors/TextViewer.py:389 ../editors/CodeFileEditor.py:783 -#: ../ProjectController.py:293 ../ProjectController.py:421 -#: ../ProjectController.py:428 ../controls/FolderTree.py:217 +#: ../ProjectController.py:343 ../ProjectController.py:471 +#: ../ProjectController.py:478 ../controls/FolderTree.py:217 #: ../controls/DebugVariablePanel/DebugVariablePanel.py:166 #: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:137 #: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:231 -#: ../controls/VariablePanel.py:402 ../controls/VariablePanel.py:772 -#: ../Beremiz.py:1203 ../IDEFrame.py:1003 ../IDEFrame.py:1614 -#: ../IDEFrame.py:1655 ../IDEFrame.py:1660 ../IDEFrame.py:1674 -#: ../IDEFrame.py:1679 ../Beremiz_service.py:211 +#: ../controls/VariablePanel.py:402 ../controls/VariablePanel.py:784 +#: ../Beremiz.py:1203 ../IDEFrame.py:1003 ../IDEFrame.py:1613 +#: ../IDEFrame.py:1654 ../IDEFrame.py:1659 ../IDEFrame.py:1673 +#: ../IDEFrame.py:1678 ../Beremiz_service.py:211 msgid "Error" msgstr "" -#: ../ProjectController.py:727 +#: ../ProjectController.py:748 msgid "Error : At least one configuration and one resource must be declared in PLC !\n" msgstr "" -#: ../ProjectController.py:719 +#: ../ProjectController.py:740 #, python-format msgid "Error : IEC to C compiler returned %d\n" msgstr "" -#: ../ProjectController.py:621 +#: ../ProjectController.py:671 #, python-format msgid "" "Error in ST/IL/SFC code generator :\n" @@ -1554,7 +1565,7 @@ msgid "Error: No PLC built\n" msgstr "" -#: ../ProjectController.py:1666 +#: ../ProjectController.py:1687 #, python-format msgid "Exception while connecting %s!\n" msgstr "" @@ -1599,7 +1610,7 @@ msgid "External" msgstr "" -#: ../ProjectController.py:740 +#: ../ProjectController.py:761 msgid "Extracting Located Variables...\n" msgstr "" @@ -1608,7 +1619,7 @@ msgid "FBD" msgstr "" -#: ../ProjectController.py:1729 +#: ../ProjectController.py:1750 msgid "Failed : Must build before transfer.\n" msgstr "" @@ -1616,7 +1627,7 @@ msgid "Falling Edge" msgstr "" -#: ../ProjectController.py:1008 +#: ../ProjectController.py:1029 msgid "Fatal : cannot get builder.\n" msgstr "" @@ -1665,7 +1676,7 @@ msgid "Force runtime reload\n" msgstr "" -#: ../editors/Viewer.py:1553 +#: ../editors/Viewer.py:1564 msgid "Force value" msgstr "" @@ -1693,7 +1704,7 @@ msgid "Forward" msgstr "" -#: ../dialogs/SearchInProjectDialog.py:36 ../IDEFrame.py:1746 +#: ../dialogs/SearchInProjectDialog.py:36 ../IDEFrame.py:1745 msgid "Function" msgstr "" @@ -1701,12 +1712,12 @@ msgid "Function &Block" msgstr "" -#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1745 -#: ../IDEFrame.py:1938 +#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1744 +#: ../IDEFrame.py:1937 msgid "Function Block" msgstr "" -#: ../controls/VariablePanel.py:825 +#: ../controls/VariablePanel.py:837 msgid "Function Block Types" msgstr "" @@ -1731,7 +1742,7 @@ msgid "Generate Program" msgstr "" -#: ../ProjectController.py:612 +#: ../ProjectController.py:662 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n" msgstr "" @@ -1795,12 +1806,12 @@ msgid "Import SVG" msgstr "" -#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1580 +#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1591 #: ../controls/VariablePanel.py:71 msgid "InOut" msgstr "" -#: ../editors/Viewer.py:1100 +#: ../editors/Viewer.py:1110 msgid "Inactive" msgstr "" @@ -1847,7 +1858,7 @@ #: ../dialogs/SFCStepDialog.py:70 ../dialogs/FBDVariableDialog.py:37 #: ../dialogs/BrowseLocationsDialog.py:40 ../editors/Viewer.py:289 -#: ../editors/Viewer.py:1578 ../editors/TextViewer.py:307 +#: ../editors/Viewer.py:1589 ../editors/TextViewer.py:307 #: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71 #: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 msgid "Input" @@ -1924,7 +1935,7 @@ "You must fill a numeric value." msgstr "" -#: ../editors/Viewer.py:557 ../editors/Viewer.py:2343 +#: ../editors/Viewer.py:557 ../editors/Viewer.py:2354 msgid "Jump" msgstr "" @@ -1952,7 +1963,7 @@ msgid "Language:" msgstr "" -#: ../ProjectController.py:1735 +#: ../ProjectController.py:1756 msgid "Latest build already matches current target. Transfering anyway...\n" msgstr "" @@ -1988,7 +1999,7 @@ msgid "Library" msgstr "" -#: ../dialogs/AboutDialog.py:143 +#: ../dialogs/AboutDialog.py:151 msgid "License" msgstr "" @@ -2008,7 +2019,7 @@ msgid "Local entries" msgstr "" -#: ../ProjectController.py:1641 +#: ../ProjectController.py:1662 msgid "Local service discovery failed!\n" msgstr "" @@ -2213,7 +2224,7 @@ msgid "No Modifier" msgstr "" -#: ../ProjectController.py:1763 +#: ../ProjectController.py:1784 msgid "No PLC to transfer (did build succeed ?)\n" msgstr "" @@ -2318,7 +2329,7 @@ msgid "Open Source framework for automation, implemented IEC 61131 IDE with constantly growing set of extensions and flexible PLC runtime." msgstr "" -#: ../ProjectController.py:1815 +#: ../ProjectController.py:1836 msgid "Open a file explorer to manage project files" msgstr "" @@ -2344,7 +2355,7 @@ #: ../dialogs/SFCStepDialog.py:71 ../dialogs/FBDVariableDialog.py:39 #: ../dialogs/BrowseLocationsDialog.py:41 ../editors/Viewer.py:289 -#: ../editors/Viewer.py:1579 ../editors/TextViewer.py:307 +#: ../editors/Viewer.py:1590 ../editors/TextViewer.py:307 #: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71 #: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351 msgid "Output" @@ -2366,7 +2377,7 @@ msgid "PLC Log" msgstr "" -#: ../ProjectController.py:992 +#: ../ProjectController.py:1013 msgid "PLC code generation failed !\n" msgstr "" @@ -2438,7 +2449,7 @@ msgid "Page Size (optional):" msgstr "" -#: ../IDEFrame.py:2599 +#: ../IDEFrame.py:2598 #, python-format msgid "Page: %d" msgstr "" @@ -2451,7 +2462,7 @@ msgid "Paste" msgstr "" -#: ../IDEFrame.py:1865 +#: ../IDEFrame.py:1864 msgid "Paste POU" msgstr "" @@ -2463,7 +2474,7 @@ msgid "Pin number:" msgstr "" -#: ../editors/Viewer.py:2706 ../editors/Viewer.py:2963 +#: ../editors/Viewer.py:2717 ../editors/Viewer.py:2974 #: ../editors/SFCViewer.py:770 msgid "Please choose a target" msgstr "" @@ -2472,7 +2483,7 @@ msgid "Please enter a block name" msgstr "" -#: ../editors/Viewer.py:2576 ../editors/Viewer.py:3005 +#: ../editors/Viewer.py:2587 ../editors/Viewer.py:3016 msgid "Please enter comment text" msgstr "" @@ -2498,7 +2509,7 @@ msgid "Port number must be an integer!" msgstr "" -#: ../editors/Viewer.py:536 ../editors/Viewer.py:2367 +#: ../editors/Viewer.py:536 ../editors/Viewer.py:2378 msgid "Power Rail" msgstr "" @@ -2556,8 +2567,8 @@ msgid "Product Version (required):" msgstr "" -#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1744 -#: ../IDEFrame.py:1941 +#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1743 +#: ../IDEFrame.py:1940 msgid "Program" msgstr "" @@ -2582,7 +2593,7 @@ msgid "Project '%s':" msgstr "" -#: ../ProjectController.py:1814 +#: ../ProjectController.py:1835 msgid "Project Files" msgstr "" @@ -2658,7 +2669,7 @@ msgid "Range:" msgstr "" -#: ../ProjectController.py:1810 +#: ../ProjectController.py:1831 msgid "Raw IEC code" msgstr "" @@ -2687,7 +2698,7 @@ msgid "Regular expressions" msgstr "" -#: ../editors/Viewer.py:1556 +#: ../editors/Viewer.py:1567 msgid "Release value" msgstr "" @@ -2700,11 +2711,11 @@ msgid "Remove %s node" msgstr "" -#: ../IDEFrame.py:2405 +#: ../IDEFrame.py:2404 msgid "Remove Datatype" msgstr "" -#: ../IDEFrame.py:2410 +#: ../IDEFrame.py:2409 msgid "Remove Pou" msgstr "" @@ -2736,7 +2747,7 @@ msgid "Remove variable" msgstr "" -#: ../IDEFrame.py:1945 +#: ../IDEFrame.py:1944 msgid "Rename" msgstr "" @@ -2804,15 +2815,15 @@ msgid "Rounding up/down" msgstr "" -#: ../ProjectController.py:1778 +#: ../ProjectController.py:1799 msgid "Run" msgstr "" -#: ../ProjectController.py:1037 +#: ../ProjectController.py:1058 msgid "Runtime IO extensions C code generation failed !\n" msgstr "" -#: ../ProjectController.py:1046 +#: ../ProjectController.py:1067 msgid "Runtime library extensions C code generation failed !\n" msgstr "" @@ -2868,7 +2879,7 @@ msgid "Save as" msgstr "" -#: ../ProjectController.py:420 +#: ../ProjectController.py:470 msgid "Save path is the same as path of a project! \n" msgstr "" @@ -2898,7 +2909,7 @@ msgid "Select a variable class:" msgstr "" -#: ../ProjectController.py:1195 +#: ../ProjectController.py:1216 msgid "Select an editor:" msgstr "" @@ -2910,7 +2921,7 @@ msgid "Select an object" msgstr "" -#: ../ProjectController.py:427 +#: ../ProjectController.py:477 msgid "Selected directory already contains another project. Overwrite? \n" msgstr "" @@ -2946,7 +2957,7 @@ msgid "Shift right" msgstr "" -#: ../ProjectController.py:1804 +#: ../ProjectController.py:1825 msgid "Show IEC code generated by PLCGenerator" msgstr "" @@ -2958,7 +2969,7 @@ msgid "Show Master generated by config_utils" msgstr "" -#: ../ProjectController.py:1802 +#: ../ProjectController.py:1823 msgid "Show code" msgstr "" @@ -2995,20 +3006,20 @@ msgid "Standard function blocks" msgstr "" -#: ../ProjectController.py:1780 ../Beremiz_service.py:261 +#: ../ProjectController.py:1801 ../Beremiz_service.py:261 msgid "Start PLC" msgstr "" -#: ../ProjectController.py:984 +#: ../ProjectController.py:1005 #, python-format msgid "Start build in %s\n" msgstr "" -#: ../ProjectController.py:1298 +#: ../ProjectController.py:1319 msgid "Started" msgstr "" -#: ../ProjectController.py:1586 +#: ../ProjectController.py:1607 msgid "Starting PLC\n" msgstr "" @@ -3016,11 +3027,11 @@ msgid "Status ToolBar" msgstr "" -#: ../editors/Viewer.py:553 ../editors/Viewer.py:2342 +#: ../editors/Viewer.py:553 ../editors/Viewer.py:2353 msgid "Step" msgstr "" -#: ../ProjectController.py:1783 +#: ../ProjectController.py:1804 msgid "Stop" msgstr "" @@ -3028,15 +3039,15 @@ msgid "Stop PLC" msgstr "" -#: ../ProjectController.py:1785 +#: ../ProjectController.py:1806 msgid "Stop Running PLC" msgstr "" -#: ../ProjectController.py:1299 +#: ../ProjectController.py:1320 msgid "Stopped" msgstr "" -#: ../ProjectController.py:1558 +#: ../ProjectController.py:1579 msgid "Stopping debugger...\n" msgstr "" @@ -3052,7 +3063,7 @@ msgid "Subtraction" msgstr "" -#: ../ProjectController.py:1023 +#: ../ProjectController.py:1044 msgid "Successfully built.\n" msgstr "" @@ -3099,7 +3110,7 @@ msgid "There are changes, do you want to save?" msgstr "" -#: ../IDEFrame.py:1655 ../IDEFrame.py:1674 +#: ../IDEFrame.py:1654 ../IDEFrame.py:1673 #, python-format msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?" msgstr "" @@ -3156,23 +3167,23 @@ msgid "Top" msgstr "" -#: ../ProjectController.py:1792 +#: ../ProjectController.py:1813 msgid "Transfer" msgstr "" -#: ../ProjectController.py:1794 +#: ../ProjectController.py:1815 msgid "Transfer PLC" msgstr "" -#: ../ProjectController.py:1758 +#: ../ProjectController.py:1779 msgid "Transfer completed successfully.\n" msgstr "" -#: ../ProjectController.py:1760 +#: ../ProjectController.py:1781 msgid "Transfer failed\n" msgstr "" -#: ../editors/Viewer.py:554 ../editors/Viewer.py:2344 ../editors/Viewer.py:2371 +#: ../editors/Viewer.py:554 ../editors/Viewer.py:2355 ../editors/Viewer.py:2382 msgid "Transition" msgstr "" @@ -3208,7 +3219,7 @@ msgid "Transitions" msgstr "" -#: ../dialogs/AboutDialog.py:123 +#: ../dialogs/AboutDialog.py:131 msgid "Translated by" msgstr "" @@ -3277,7 +3288,7 @@ msgid "Undo" msgstr "" -#: ../ProjectController.py:332 +#: ../ProjectController.py:382 msgid "Unknown" msgstr "" @@ -3286,7 +3297,7 @@ msgid "Unknown variable \"%s\" for this POU!" msgstr "" -#: ../ProjectController.py:329 ../ProjectController.py:330 +#: ../ProjectController.py:379 ../ProjectController.py:380 msgid "Unnamed" msgstr "" @@ -3300,7 +3311,7 @@ msgid "Unrecognized data size \"%s\"" msgstr "" -#: ../editors/DataTypeEditor.py:632 ../controls/VariablePanel.py:798 +#: ../editors/DataTypeEditor.py:632 ../controls/VariablePanel.py:810 msgid "User Data Types" msgstr "" @@ -3321,7 +3332,7 @@ msgstr "" #: ../dialogs/ActionBlockDialog.py:42 ../editors/Viewer.py:526 -#: ../editors/Viewer.py:2374 +#: ../editors/Viewer.py:2385 msgid "Variable" msgstr "" @@ -3387,7 +3398,7 @@ msgid "Warning" msgstr "" -#: ../ProjectController.py:616 +#: ../ProjectController.py:666 msgid "Warnings in ST/IL/SFC code generator :\n" msgstr "" @@ -3403,7 +3414,7 @@ msgid "Wrap search" msgstr "" -#: ../dialogs/AboutDialog.py:122 +#: ../dialogs/AboutDialog.py:130 msgid "Written by" msgstr "" @@ -3423,7 +3434,7 @@ "Open wxGlade anyway ?" msgstr "" -#: ../ProjectController.py:292 +#: ../ProjectController.py:342 msgid "" "You must have permission to work on the project\n" "Work on a project copy ?" diff -r bb5440697405 -r 3a98027ff372 locale/ru_RU/LC_MESSAGES/Beremiz.mo Binary file locale/ru_RU/LC_MESSAGES/Beremiz.mo has changed