--- a/i18n/messages.pot Thu Jun 22 16:07:56 2017 +0300
+++ b/i18n/messages.pot Thu Jun 22 16:08:50 2017 +0300
@@ -1,23 +1,23 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
+# This file is distributed under the same license as the Beremiz package. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-"Project-Id-Version: PACKAGE VERSION\n"
+"Project-Id-Version: Beremiz\n" "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-03-09 15:28+0300\n"
+"POT-Creation-Date: 2017-06-21 18:30+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"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n"
-#: ../PLCOpenEditor.py:408 ../Beremiz.py:1191
+#: ../BeremizIDE.py:1094 ../PLCOpenEditor.py:418 @@ -56,107 +56,107 @@
-#: ../dialogs/PouTransitionDialog.py:99 ../dialogs/ProjectDialog.py:66
-#: ../dialogs/PouActionDialog.py:91 ../dialogs/PouDialog.py:113
+#: ../dialogs/PouTransitionDialog.py:94 ../dialogs/ProjectDialog.py:69 +#: ../dialogs/PouActionDialog.py:92 ../dialogs/PouDialog.py:113 -#: ../ProjectController.py:1110
+#: ../ProjectController.py:1139 msgid " generation failed !\n"
-#: ../plcopen/plcopen.py:881
+#: ../plcopen/plcopen.py:886 msgid "\"%s\" Data Type doesn't exist !!!"
-#: ../plcopen/plcopen.py:899
+#: ../plcopen/plcopen.py:904 msgid "\"%s\" POU already exists !!!"
-#: ../plcopen/plcopen.py:920
+#: ../plcopen/plcopen.py:925 msgid "\"%s\" POU doesn't exist !!!"
-#: ../editors/Viewer.py:246
+#: ../editors/Viewer.py:247 msgid "\"%s\" can't use itself!"
-#: ../IDEFrame.py:1651 ../IDEFrame.py:1670
+#: ../IDEFrame.py:1655 ../IDEFrame.py:1674 msgid "\"%s\" config already exists!"
-#: ../plcopen/plcopen.py:467
+#: ../plcopen/plcopen.py:472 msgid "\"%s\" configuration already exists !!!"
msgid "\"%s\" data type already exists!"
-#: ../dialogs/PouTransitionDialog.py:110 ../dialogs/BlockPreviewDialog.py:219
-#: ../dialogs/PouActionDialog.py:102 ../editors/Viewer.py:262
-#: ../editors/Viewer.py:330 ../editors/Viewer.py:354 ../editors/Viewer.py:374
+#: ../dialogs/PouTransitionDialog.py:105 ../dialogs/BlockPreviewDialog.py:220 +#: ../dialogs/PouActionDialog.py:103 ../editors/Viewer.py:263 +#: ../editors/Viewer.py:331 ../editors/Viewer.py:355 ../editors/Viewer.py:375 #: ../editors/TextViewer.py:272 ../editors/TextViewer.py:301
#: ../controls/VariablePanel.py:396
msgid "\"%s\" element for this pou already exists!"
msgid "\"%s\" folder is not a valid Beremiz project\n"
-#: ../dialogs/SFCStepNameDialog.py:52 ../dialogs/PouTransitionDialog.py:106
-#: ../dialogs/BlockPreviewDialog.py:207 ../dialogs/PouNameDialog.py:50
-#: ../dialogs/PouActionDialog.py:98 ../dialogs/PouDialog.py:120
+#: ../dialogs/SFCStepNameDialog.py:52 ../dialogs/PouTransitionDialog.py:101 +#: ../dialogs/BlockPreviewDialog.py:208 ../dialogs/PouNameDialog.py:50 +#: ../dialogs/PouActionDialog.py:99 ../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:763
+#: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:587 +#: ../editors/CodeFileEditor.py:781 ../controls/VariablePanel.py:773 msgid "\"%s\" is a keyword. It can't be used!"
-#: ../plcopen/plcopen.py:2412
+#: ../plcopen/plcopen.py:2417 msgid "\"%s\" is an invalid value!"
-#: ../PLCOpenEditor.py:339 ../PLCOpenEditor.py:381
+#: ../PLCOpenEditor.py:349 ../PLCOpenEditor.py:391 msgid "\"%s\" is not a valid folder!"
-#: ../dialogs/SFCStepNameDialog.py:50 ../dialogs/PouTransitionDialog.py:104
-#: ../dialogs/BlockPreviewDialog.py:203 ../dialogs/PouNameDialog.py:48
-#: ../dialogs/PouActionDialog.py:96 ../dialogs/PouDialog.py:118
+#: ../dialogs/SFCStepNameDialog.py:50 ../dialogs/PouTransitionDialog.py:99 +#: ../dialogs/BlockPreviewDialog.py:204 ../dialogs/PouNameDialog.py:48 +#: ../dialogs/PouActionDialog.py:97 ../dialogs/PouDialog.py:118 #: ../editors/ResourceEditor.py:447 ../editors/ResourceEditor.py:482
-#: ../editors/DataTypeEditor.py:579 ../editors/CodeFileEditor.py:768
-#: ../controls/VariablePanel.py:761 ../IDEFrame.py:1590
+#: ../editors/DataTypeEditor.py:585 ../editors/CodeFileEditor.py:779 +#: ../controls/VariablePanel.py:771 ../IDEFrame.py:1594 msgid "\"%s\" is not a valid identifier!"
msgid "\"%s\" is used by one or more POUs. Do you wish to continue?"
-#: ../dialogs/BlockPreviewDialog.py:211 ../dialogs/PouDialog.py:122
-#: ../editors/Viewer.py:260 ../editors/Viewer.py:315 ../editors/Viewer.py:345
-#: ../editors/Viewer.py:367 ../editors/TextViewer.py:270
+#: ../dialogs/BlockPreviewDialog.py:212 ../dialogs/PouDialog.py:122 +#: ../editors/Viewer.py:261 ../editors/Viewer.py:316 ../editors/Viewer.py:346 +#: ../editors/Viewer.py:368 ../editors/TextViewer.py:270 #: ../editors/TextViewer.py:299 ../editors/TextViewer.py:350
#: ../editors/TextViewer.py:373 ../controls/VariablePanel.py:338
msgid "\"%s\" pou already exists!"
@@ -171,12 +171,12 @@
msgid "\"%s\" value already defined!"
-#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:745
+#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:743 msgid "\"%s\" value isn't a valid array dimension!"
-#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:752
+#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:750 "\"%s\" value isn't a valid array dimension!\n"
@@ -188,17 +188,17 @@
msgid "\"{a1}\" function cancelled in \"{a2}\" POU: No input connected"
-#: ../editors/Viewer.py:250
+#: ../editors/Viewer.py:251 msgid "\"{a1}\" is already used by \"{a2}\"!"
-#: ../plcopen/plcopen.py:491
+#: ../plcopen/plcopen.py:496 msgid "\"{a1}\" resource already exists in \"{a2}\" configuration !!!"
-#: ../plcopen/plcopen.py:509
+#: ../plcopen/plcopen.py:514 msgid "\"{a1}\" resource doesn't exist in \"{a2}\" configuration !!!"
@@ -236,12 +236,12 @@
-#: ../PLCControler.py:1531
+#: ../PLCControler.py:1533 -#: ../PLCControler.py:1514
+#: ../PLCControler.py:1516 @@ -251,15 +251,15 @@
-#: ../plcopen/plcopen.py:1645 ../plcopen/plcopen.py:1652
-#: ../plcopen/plcopen.py:1664 ../plcopen/plcopen.py:1672
-#: ../plcopen/plcopen.py:1682
+#: ../plcopen/plcopen.py:1650 ../plcopen/plcopen.py:1657 +#: ../plcopen/plcopen.py:1669 ../plcopen/plcopen.py:1677 +#: ../plcopen/plcopen.py:1687 msgid "%s body don't have instances!"
-#: ../plcopen/plcopen.py:1700 ../plcopen/plcopen.py:1707
-#: ../plcopen/plcopen.py:1714
+#: ../plcopen/plcopen.py:1705 ../plcopen/plcopen.py:1712 +#: ../plcopen/plcopen.py:1719 msgid "%s body don't have text!"
@@ -313,11 +313,11 @@
-#: ../PLCOpenEditor.py:125
+#: ../PLCOpenEditor.py:127
@@ -345,17 +345,17 @@
-#: ../PLCOpenEditor.py:396 ../PLCOpenEditor.py:398 ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:406 ../PLCOpenEditor.py:408 ../PLCOpenEditor.py:409 -#: ../dialogs/PouTransitionDialog.py:101 ../dialogs/PouActionDialog.py:93
+#: ../dialogs/PouTransitionDialog.py:96 ../dialogs/PouActionDialog.py:94 #: ../dialogs/PouDialog.py:115
-#: ../PLCOpenEditor.py:394
+#: ../PLCOpenEditor.py:404 @@ -375,15 +375,15 @@
-#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1613 ../IDEFrame.py:1659
+#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1617 ../IDEFrame.py:1663 msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?"
-#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:108
-#: ../dialogs/PouNameDialog.py:52 ../dialogs/PouActionDialog.py:100
-#: ../controls/VariablePanel.py:765 ../IDEFrame.py:1627 ../IDEFrame.py:1640
+#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:103 +#: ../dialogs/PouNameDialog.py:52 ../dialogs/PouActionDialog.py:101 +#: ../controls/VariablePanel.py:775 ../IDEFrame.py:1631 ../IDEFrame.py:1644 msgid "A POU named \"%s\" already exists!"
@@ -393,7 +393,7 @@
msgid "A child named \"{a1}\" already exists -> \"{a2}\"\n"
-#: ../dialogs/BrowseLocationsDialog.py:216
+#: ../dialogs/BrowseLocationsDialog.py:218 msgid "A location must be selected!"
@@ -401,18 +401,18 @@
msgid "A task with the same name already exists!"
-#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:767
-#: ../IDEFrame.py:1629 ../IDEFrame.py:1642
+#: ../dialogs/SFCStepNameDialog.py:56 ../controls/VariablePanel.py:777 +#: ../IDEFrame.py:1633 ../IDEFrame.py:1646 msgid "A variable with \"%s\" as name already exists in this pou!"
-#: ../editors/CodeFileEditor.py:774
+#: ../editors/CodeFileEditor.py:785 msgid "A variable with \"%s\" as name already exists!"
-#: ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:158 ../Beremiz.py:381
+#: ../BeremizIDE.py:283 ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:168 @@ -420,15 +420,15 @@
-#: ../dialogs/SFCStepDialog.py:72 ../dialogs/ActionBlockDialog.py:42
+#: ../dialogs/SFCStepDialog.py:73 ../dialogs/ActionBlockDialog.py:43 -#: ../editors/Viewer.py:555 ../editors/Viewer.py:2356
+#: ../editors/Viewer.py:614 ../editors/Viewer.py:2392 -#: ../dialogs/PouActionDialog.py:81
+#: ../dialogs/PouActionDialog.py:82 @@ -436,12 +436,12 @@
-#: ../plcopen/plcopen.py:1359
+#: ../plcopen/plcopen.py:1364 msgid "Action with name %s doesn't exist!"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98 @@ -449,16 +449,16 @@
-#: ../editors/Viewer.py:1110
+#: ../editors/Viewer.py:431 #: ../canfestival/SlaveEditor.py:80 ../canfestival/NetworkEditor.py:101
-#: ../editors/Viewer.py:588 ../Beremiz.py:1060
+#: ../BeremizIDE.py:964 ../editors/Viewer.py:647 -#: ../IDEFrame.py:1889 ../IDEFrame.py:1924
+#: ../IDEFrame.py:1893 ../IDEFrame.py:1928 @@ -466,23 +466,23 @@
msgid "Add C code accessing located variables synchronously"
msgid "Add Configuration"
-#: ../editors/Viewer.py:513
+#: ../editors/Viewer.py:572 msgid "Add Divergence Branch"
-#: ../dialogs/DiscoveryDialog.py:116
+#: ../dialogs/DiscoveryDialog.py:117
@@ -490,15 +490,15 @@
msgid "Add Python code executed asynchronously"
-#: ../IDEFrame.py:1900 ../IDEFrame.py:1950
+#: ../IDEFrame.py:1904 ../IDEFrame.py:1954 -#: ../IDEFrame.py:1878 ../IDEFrame.py:1921
+#: ../IDEFrame.py:1882 ../IDEFrame.py:1925 -#: ../editors/Viewer.py:500
+#: ../editors/Viewer.py:559 @@ -506,7 +506,7 @@
msgid "Add a new initial step"
-#: ../editors/Viewer.py:2717 ../editors/SFCViewer.py:770
+#: ../editors/Viewer.py:2755 ../editors/SFCViewer.py:770 @@ -538,7 +538,7 @@
-#: ../editors/CodeFileEditor.py:658 ../controls/VariablePanel.py:450
+#: ../editors/CodeFileEditor.py:660 ../controls/VariablePanel.py:450 @@ -546,22 +546,22 @@
-#: ../plcopen/definitions.py:47
+#: ../plcopen/definitions.py:49 msgid "Additional function blocks"
-#: ../editors/Viewer.py:571
+#: ../editors/Viewer.py:630 msgid "Adjust Block Size"
-#: ../editors/Viewer.py:1648
+#: ../editors/Viewer.py:1684 -#: ../dialogs/BrowseLocationsDialog.py:39
-#: ../dialogs/BrowseLocationsDialog.py:47
-#: ../dialogs/BrowseLocationsDialog.py:140
-#: ../dialogs/BrowseLocationsDialog.py:143 ../controls/LogViewer.py:298
+#: ../dialogs/BrowseLocationsDialog.py:40 +#: ../dialogs/BrowseLocationsDialog.py:48 +#: ../dialogs/BrowseLocationsDialog.py:141 +#: ../dialogs/BrowseLocationsDialog.py:144 ../controls/LogViewer.py:298 #: ../controls/VariablePanel.py:70
@@ -570,11 +570,11 @@
msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv"
-#: ../ProjectController.py:1644
+#: ../ProjectController.py:1673 msgid "Already connected. Please disconnect\n"
-#: ../editors/DataTypeEditor.py:594
+#: ../editors/DataTypeEditor.py:591 msgid "An element named \"%s\" already exists in this structure!"
@@ -583,7 +583,7 @@
msgid "An instance with the same name already exists!"
-#: ../dialogs/ConnectionDialog.py:96
+#: ../dialogs/ConnectionDialog.py:100 msgid "Apply name modification to all continuations with the same name"
@@ -603,8 +603,8 @@
-#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:635
-#: ../controls/VariablePanel.py:841
+#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:633 +#: ../controls/VariablePanel.py:858 @@ -612,19 +612,19 @@
-#: ../dialogs/FBDVariableDialog.py:217
+#: ../dialogs/FBDVariableDialog.py:222 msgid "At least a variable or an expression must be selected!"
-#: ../controls/ProjectPropertiesPanel.py:99
+#: ../controls/ProjectPropertiesPanel.py:100 -#: ../controls/ProjectPropertiesPanel.py:96
+#: ../controls/ProjectPropertiesPanel.py:97 msgid "Author Name (optional):"
-#: ../dialogs/FindInPouDialog.py:79
+#: ../dialogs/FindInPouDialog.py:77 @@ -641,16 +641,16 @@
msgid "Bad location size : %s"
-#: ../dialogs/ArrayTypeDialog.py:55 ../editors/DataTypeEditor.py:175
+#: ../dialogs/ArrayTypeDialog.py:54 ../editors/DataTypeEditor.py:175 #: ../editors/DataTypeEditor.py:205 ../editors/DataTypeEditor.py:297
-#: ../editors/DataTypeEditor.py:625 ../controls/VariablePanel.py:799
+#: ../editors/DataTypeEditor.py:623 ../controls/VariablePanel.py:816
@@ -682,11 +682,11 @@
msgid "Bitwise inverting"
-#: ../editors/Viewer.py:525 ../editors/Viewer.py:2369
+#: ../editors/Viewer.py:584 ../editors/Viewer.py:2405 -#: ../dialogs/FBDBlockDialog.py:59
+#: ../dialogs/FBDBlockDialog.py:60 @@ -694,15 +694,15 @@
-#: ../editors/Viewer.py:491
+#: ../editors/Viewer.py:550 -#: ../ProjectController.py:1322
+#: ../ProjectController.py:1351 -#: ../dialogs/BrowseValuesLibraryDialog.py:37
+#: ../dialogs/BrowseValuesLibraryDialog.py:38 msgid "Browse %s values library"
@@ -711,23 +711,23 @@
-#: ../ProjectController.py:1790
+#: ../ProjectController.py:1820 -#: ../ProjectController.py:1256
+#: ../ProjectController.py:1285 msgid "Build directory already clean\n"
-#: ../ProjectController.py:1791
+#: ../ProjectController.py:1821 msgid "Build project into build folder"
-#: ../ProjectController.py:1039
+#: ../ProjectController.py:1068 msgid "C Build crashed !\n"
-#: ../ProjectController.py:1036
+#: ../ProjectController.py:1065 msgid "C Build failed.\n"
@@ -735,7 +735,7 @@
-#: ../ProjectController.py:1114
+#: ../ProjectController.py:1143 msgid "C code generated successfully.\n"
@@ -743,7 +743,7 @@
msgid "C compilation failed.\n"
-#: ../targets/toolchain_gcc.py:156
+#: ../targets/toolchain_gcc.py:192 msgid "C compilation of %s failed.\n"
@@ -768,8 +768,8 @@
-#: ../plcopen/plcopen.py:1584 ../plcopen/plcopen.py:1598
-#: ../plcopen/plcopen.py:1622 ../plcopen/plcopen.py:1638
+#: ../plcopen/plcopen.py:1589 ../plcopen/plcopen.py:1603 +#: ../plcopen/plcopen.py:1627 ../plcopen/plcopen.py:1643 msgid "Can only generate execution order on FBD networks!"
@@ -777,7 +777,7 @@
msgid "Can only give a location to local or global variables"
-#: ../PLCOpenEditor.py:334
+#: ../PLCOpenEditor.py:344 msgid "Can't generate program to file %s!"
@@ -786,7 +786,7 @@
msgid "Can't give a location to a function block instance"
-#: ../PLCOpenEditor.py:379
+#: ../PLCOpenEditor.py:389 msgid "Can't save project to file %s!"
@@ -809,7 +809,7 @@
msgid "Cannot get PLC status - connection failed.\n"
-#: ../ProjectController.py:902
+#: ../ProjectController.py:931 msgid "Cannot open/parse VARIABLES.csv!\n"
@@ -818,31 +818,31 @@
msgid "Cannot set bit offset for non bool '{a1}' variable (ID:{a2},Idx:{a3},sIdx:{a4}))"
-#: ../dialogs/SearchInProjectDialog.py:59 ../dialogs/FindInPouDialog.py:88
+#: ../dialogs/SearchInProjectDialog.py:59 ../dialogs/FindInPouDialog.py:86 -#: ../editors/Viewer.py:486
+#: ../editors/Viewer.py:545 -#: ../Beremiz_service.py:266
+#: ../Beremiz_service.py:268 msgid "Change IP of interface to bind"
-#: ../Beremiz_service.py:265
-msgid "Change POU Type To"
#: ../Beremiz_service.py:267
+msgid "Change POU Type To" +#: ../Beremiz_service.py:269 msgid "Change Port Number"
-#: ../Beremiz_service.py:268
+#: ../Beremiz_service.py:270 msgid "Change working directory"
@@ -850,37 +850,37 @@
-#: ../svgui/svgui.py:125
+#: ../svgui/svgui.py:128 msgid "Choose a SVG file"
-#: ../ProjectController.py:501
+#: ../ProjectController.py:530 msgid "Choose a directory to save project"
-#: ../canfestival/canfestival.py:160 ../PLCOpenEditor.py:292
-#: ../PLCOpenEditor.py:324 ../PLCOpenEditor.py:373
+#: ../canfestival/canfestival.py:162 ../PLCOpenEditor.py:302 +#: ../PLCOpenEditor.py:334 ../PLCOpenEditor.py:383 -#: ../Beremiz.py:931 ../Beremiz.py:966
+#: ../BeremizIDE.py:833 ../BeremizIDE.py:868 -#: ../dialogs/BrowseValuesLibraryDialog.py:42
+#: ../dialogs/BrowseValuesLibraryDialog.py:41 msgid "Choose a value for %s:"
-#: ../Beremiz_service.py:323
+#: ../Beremiz_service.py:325 msgid "Choose a working directory "
-#: ../ProjectController.py:408
+#: ../ProjectController.py:437 msgid "Chosen folder doesn't contain a program. It's not a valid project!"
-#: ../ProjectController.py:375
+#: ../ProjectController.py:404 msgid "Chosen folder isn't empty. You can't use it for a new project!"
@@ -892,11 +892,11 @@
-#: ../dialogs/FBDVariableDialog.py:69
+#: ../dialogs/FBDVariableDialog.py:70 -#: ../ProjectController.py:1794
+#: ../ProjectController.py:1824 @@ -904,11 +904,11 @@
msgid "Clean log messages"
-#: ../ProjectController.py:1796
+#: ../ProjectController.py:1826 msgid "Clean project build folder"
-#: ../ProjectController.py:1253
+#: ../ProjectController.py:1282 msgid "Cleaning the build directory\n"
@@ -916,44 +916,49 @@
-#: ../editors/Viewer.py:582
+#: ../editors/Viewer.py:641 msgid "Clear Execution Order"
-#: ../dialogs/SearchInProjectDialog.py:105 ../dialogs/FindInPouDialog.py:111
+#: ../dialogs/SearchInProjectDialog.py:103 ../dialogs/FindInPouDialog.py:109 -#: ../PLCOpenEditor.py:199 ../Beremiz.py:693
+#: ../BeremizIDE.py:595 ../PLCOpenEditor.py:209 msgid "Close Application"
-#: ../PLCOpenEditor.py:108 ../Beremiz.py:333 ../Beremiz.py:637
+#: ../BeremizIDE.py:228 ../BeremizIDE.py:539 ../PLCOpenEditor.py:110 -#: ../PLCOpenEditor.py:106 ../Beremiz.py:331
+#: ../BeremizIDE.py:226 ../PLCOpenEditor.py:108 -#: ../editors/Viewer.py:541 ../editors/Viewer.py:2377
+#: ../editors/Viewer.py:600 ../editors/Viewer.py:2413 -#: ../editors/Viewer.py:561 ../editors/LDViewer.py:506
+#: ../editors/Viewer.py:620 ../editors/LDViewer.py:506 -#: ../dialogs/ProjectDialog.py:57
+#: ../BeremizIDE.py:276 ../BeremizIDE.py:279 ../PLCOpenEditor.py:161 +#: ../PLCOpenEditor.py:164 +msgid "Community support" +#: ../dialogs/ProjectDialog.py:60 -#: ../controls/ProjectPropertiesPanel.py:94
-msgid "Company Name (required):"
#: ../controls/ProjectPropertiesPanel.py:95
+msgid "Company Name (required):" +#: ../controls/ProjectPropertiesPanel.py:96 msgid "Company URL (optional):"
@@ -961,7 +966,7 @@
-#: ../ProjectController.py:693
+#: ../ProjectController.py:722 msgid "Compiling IEC Program into C code...\n"
@@ -969,7 +974,7 @@
-#: ../editors/ConfTreeNodeEditor.py:229
+#: ../editors/ConfTreeNodeEditor.py:230 @@ -977,47 +982,47 @@
-#: ../dialogs/SearchInProjectDialog.py:39
+#: ../dialogs/SearchInProjectDialog.py:40 -#: ../PLCControler.py:97
+#: ../PLCControler.py:99 -#: ../editors/Viewer.py:307 ../editors/Viewer.py:337 ../editors/Viewer.py:359
+#: ../editors/Viewer.py:308 ../editors/Viewer.py:338 ../editors/Viewer.py:360 #: ../editors/TextViewer.py:291 ../editors/TextViewer.py:342
#: ../editors/TextViewer.py:365 ../controls/VariablePanel.py:328
msgid "Confirm or change variable name"
-#: ../ProjectController.py:1809
+#: ../ProjectController.py:1839 -#: ../ProjectController.py:1810
+#: ../ProjectController.py:1840 msgid "Connect to the target PLC"
-#: ../ProjectController.py:1313
+#: ../ProjectController.py:1342 msgid "Connected to URI: %s"
-#: ../dialogs/SFCTransitionDialog.py:76 ../editors/Viewer.py:527
-#: ../editors/Viewer.py:2370
+#: ../dialogs/SFCTransitionDialog.py:77 ../editors/Viewer.py:586 +#: ../editors/Viewer.py:2406 -#: ../dialogs/ConnectionDialog.py:52
+#: ../dialogs/ConnectionDialog.py:53 msgid "Connection Properties"
-#: ../ProjectController.py:1668
+#: ../ProjectController.py:1697 msgid "Connection canceled!\n"
-#: ../ProjectController.py:1693
+#: ../ProjectController.py:1722 msgid "Connection failed to %s!\n"
@@ -1031,15 +1036,15 @@
msgid "Connection to '%s' failed.\n"
-#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1605
+#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1641 -#: ../dialogs/SFCStepDialog.py:65
+#: ../dialogs/SFCStepDialog.py:66
@@ -1047,15 +1052,15 @@
-#: ../editors/Viewer.py:537 ../editors/Viewer.py:2373
+#: ../editors/Viewer.py:596 ../editors/Viewer.py:2409 -#: ../controls/ProjectPropertiesPanel.py:197
+#: ../controls/ProjectPropertiesPanel.py:198 msgid "Content Description (optional):"
-#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1606
+#: ../dialogs/ConnectionDialog.py:66 ../editors/Viewer.py:1642 @@ -1075,12 +1080,12 @@
msgid "Conversion to time-of-day"
-#: ../editors/Viewer.py:597 ../controls/LogViewer.py:693 ../IDEFrame.py:370
+#: ../editors/Viewer.py:656 ../controls/LogViewer.py:704 ../IDEFrame.py:370
@@ -1103,7 +1108,7 @@
-#: ../py_ext/PythonFileCTNMixin.py:77
+#: ../py_ext/PythonFileCTNMixin.py:78 msgid "Couldn't import old %s file."
@@ -1122,27 +1127,27 @@
-#: ../PLCControler.py:946
+#: ../PLCControler.py:948 msgid "Couldn't paste non-POU object."
-#: ../ProjectController.py:1610
+#: ../ProjectController.py:1639 msgid "Couldn't start PLC !\n"
-#: ../ProjectController.py:1618
+#: ../ProjectController.py:1647 msgid "Couldn't stop PLC !\n"
-#: ../ProjectController.py:1582
+#: ../ProjectController.py:1611 msgid "Couldn't stop debugger.\n"
-#: ../dialogs/PouDialog.py:45
+#: ../dialogs/PouDialog.py:46 @@ -1206,7 +1211,7 @@
msgid "Create a new step"
-#: ../dialogs/PouTransitionDialog.py:47 ../IDEFrame.py:156
+#: ../dialogs/PouTransitionDialog.py:42 ../IDEFrame.py:156 msgid "Create a new transition"
@@ -1218,11 +1223,11 @@
-#: ../Beremiz_service.py:432
+#: ../Beremiz_service.py:434 msgid "Current working directory :"
-#: ../editors/Viewer.py:596 ../IDEFrame.py:368 ../IDEFrame.py:424
+#: ../editors/Viewer.py:655 ../IDEFrame.py:368 ../IDEFrame.py:424 @@ -1246,11 +1251,11 @@
-#: ../dialogs/SearchInProjectDialog.py:35
+#: ../dialogs/SearchInProjectDialog.py:36 -#: ../PLCControler.py:96
+#: ../PLCControler.py:98 @@ -1271,11 +1276,11 @@
-#: ../dialogs/DurationEditorDialog.py:43
+#: ../dialogs/DurationEditorDialog.py:44 -#: ../ProjectController.py:1715
+#: ../ProjectController.py:1744 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n"
@@ -1283,17 +1288,17 @@
-#: ../editors/Viewer.py:1127 ../editors/Viewer.py:3664
+#: ../editors/Viewer.py:448 -#: ../ProjectController.py:1371
+#: ../ProjectController.py:1400 msgid "Debug: Unknown variable '%s'\n"
-#: ../ProjectController.py:1369
+#: ../ProjectController.py:1398 msgid "Debug: Unsupported type to debug '%s'\n"
@@ -1302,23 +1307,23 @@
-#: ../ProjectController.py:1551
+#: ../ProjectController.py:1580 msgid "Debugger disabled\n"
-#: ../ProjectController.py:1712
+#: ../ProjectController.py:1741 -#: ../ProjectController.py:1584
+#: ../ProjectController.py:1613 msgid "Debugger stopped.\n"
-#: ../editors/Viewer.py:572 ../Beremiz.py:1064 ../IDEFrame.py:1958
+#: ../BeremizIDE.py:967 ../editors/Viewer.py:631 ../IDEFrame.py:1962 -#: ../editors/Viewer.py:514
+#: ../editors/Viewer.py:573 msgid "Delete Divergence Branch"
@@ -1326,7 +1331,7 @@
-#: ../editors/Viewer.py:501
+#: ../editors/Viewer.py:560 msgid "Delete Wire Segment"
@@ -1342,19 +1347,23 @@
+#: ../editors/CodeFileEditor.py:744 #: ../controls/VariablePanel.py:432
-#: ../dialogs/ArrayTypeDialog.py:61 ../editors/DataTypeEditor.py:321
+#: ../dialogs/ArrayTypeDialog.py:60 ../editors/DataTypeEditor.py:321 -#: ../dialogs/FindInPouDialog.py:68
+#: ../dialogs/FindInPouDialog.py:66 -#: ../dialogs/BrowseLocationsDialog.py:90
+#: ../dialogs/BrowseLocationsDialog.py:91 @@ -1362,19 +1371,19 @@
-#: ../ProjectController.py:1818
+#: ../ProjectController.py:1848 -#: ../ProjectController.py:1820
+#: ../ProjectController.py:1850 msgid "Disconnect from PLC"
-#: ../ProjectController.py:1323
+#: ../ProjectController.py:1352 -#: ../editors/Viewer.py:556 ../editors/Viewer.py:2365
+#: ../editors/Viewer.py:615 ../editors/Viewer.py:2401 @@ -1391,19 +1400,19 @@
-#: ../PLCOpenEditor.py:328
+#: ../PLCOpenEditor.py:338 -#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39 -#: ../canfestival/canfestival.py:163
+#: ../canfestival/canfestival.py:165 msgid "EDS files (*.eds)|*.eds|All files|*.*"
-#: ../editors/Viewer.py:570
+#: ../editors/Viewer.py:629 @@ -1419,11 +1428,11 @@
-#: ../dialogs/SFCStepDialog.py:50
+#: ../dialogs/SFCStepDialog.py:51 -#: ../wxglade_hmi/wxglade_hmi.py:36
+#: ../wxglade_hmi/wxglade_hmi.py:38 msgid "Edit a WxWidgets GUI with WXGlade"
@@ -1431,11 +1440,11 @@
msgid "Edit action block properties"
-#: ../dialogs/ArrayTypeDialog.py:45
+#: ../dialogs/ArrayTypeDialog.py:44 msgid "Edit array type properties"
-#: ../editors/Viewer.py:2586 ../editors/Viewer.py:3015
+#: ../editors/Viewer.py:2624 ../editors/Viewer.py:3053 @@ -1447,11 +1456,11 @@
-#: ../editors/Viewer.py:2974
+#: ../editors/Viewer.py:3012 -#: ../ProjectController.py:1832
+#: ../ProjectController.py:1862 msgid "Edit raw IEC code added to code generated by PLCGenerator"
@@ -1459,7 +1468,7 @@
-#: ../dialogs/SFCTransitionDialog.py:51
+#: ../dialogs/SFCTransitionDialog.py:52 @@ -1467,7 +1476,7 @@
-#: ../ProjectController.py:1216
+#: ../ProjectController.py:1245 @@ -1475,7 +1484,7 @@
-#: ../ProjectController.py:1321
+#: ../ProjectController.py:1350 @@ -1483,15 +1492,15 @@
-#: ../Beremiz_service.py:331
+#: ../Beremiz_service.py:333 -#: ../Beremiz_service.py:316
+#: ../Beremiz_service.py:318 msgid "Enter a port number "
-#: ../Beremiz_service.py:307
+#: ../Beremiz_service.py:309 msgid "Enter the IP of the interface to bind"
@@ -1503,45 +1512,44 @@
-#: ../dialogs/ForceVariableDialog.py:179
+#: ../BeremizIDE.py:1106 ../dialogs/ForceVariableDialog.py:197 #: ../dialogs/SearchInProjectDialog.py:168 ../dialogs/SFCStepNameDialog.py:60
#: ../dialogs/DurationEditorDialog.py:121
-#: ../dialogs/DurationEditorDialog.py:163 ../dialogs/PouTransitionDialog.py:112
-#: ../dialogs/BlockPreviewDialog.py:236 ../dialogs/ProjectDialog.py:71
+#: ../dialogs/DurationEditorDialog.py:163 ../dialogs/PouTransitionDialog.py:107 +#: ../dialogs/BlockPreviewDialog.py:237 ../dialogs/ProjectDialog.py:74 #: ../dialogs/ArrayTypeDialog.py:97 ../dialogs/ArrayTypeDialog.py:103
-#: ../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/ResourceEditor.py:436 ../editors/Viewer.py:423
+#: ../dialogs/PouNameDialog.py:54 ../dialogs/BrowseLocationsDialog.py:218 +#: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouActionDialog.py:105 +#: ../dialogs/PouDialog.py:134 ../PLCOpenEditor.py:345 ../PLCOpenEditor.py:350 +#: ../PLCOpenEditor.py:430 ../PLCOpenEditor.py:440 +#: ../editors/ResourceEditor.py:436 ../editors/Viewer.py:424 #: ../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:343 ../ProjectController.py:471
-#: ../ProjectController.py:478 ../controls/FolderTree.py:217
+#: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:574 +#: ../editors/DataTypeEditor.py:743 ../editors/DataTypeEditor.py:750 +#: ../editors/TextViewer.py:389 ../editors/CodeFileEditor.py:767 +#: ../ProjectController.py:372 ../ProjectController.py:500 +#: ../ProjectController.py:507 ../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: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
+#: ../controls/VariablePanel.py:402 ../controls/VariablePanel.py:759 +#: ../IDEFrame.py:1007 ../IDEFrame.py:1617 ../IDEFrame.py:1658 +#: ../IDEFrame.py:1663 ../IDEFrame.py:1677 ../IDEFrame.py:1682 +#: ../Beremiz_service.py:213 -#: ../ProjectController.py:748
+#: ../ProjectController.py:777 msgid "Error : At least one configuration and one resource must be declared in PLC !\n"
-#: ../ProjectController.py:740
+#: ../ProjectController.py:769 msgid "Error : IEC to C compiler returned %d\n"
-#: ../ProjectController.py:671
+#: ../ProjectController.py:700 "Error in ST/IL/SFC code generator :\n"
@@ -1553,28 +1561,28 @@
msgid "Error while saving \"%s\"\n"
-#: ../canfestival/canfestival.py:168
+#: ../canfestival/canfestival.py:170 msgid "Error: Export slave failed\n"
-#: ../canfestival/canfestival.py:369
+#: ../canfestival/canfestival.py:371 msgid "Error: No Master generated\n"
-#: ../canfestival/canfestival.py:364
+#: ../canfestival/canfestival.py:366 msgid "Error: No PLC built\n"
-#: ../ProjectController.py:1687
+#: ../ProjectController.py:1716 msgid "Exception while connecting %s!\n"
-#: ../dialogs/FBDBlockDialog.py:117
+#: ../dialogs/FBDBlockDialog.py:120 msgid "Execution Control:"
-#: ../dialogs/FBDVariableDialog.py:79 ../dialogs/FBDBlockDialog.py:105
+#: ../dialogs/FBDVariableDialog.py:80 ../dialogs/FBDBlockDialog.py:108 @@ -1590,7 +1598,7 @@
-#: ../canfestival/canfestival.py:174
+#: ../canfestival/canfestival.py:176 msgid "Export CanOpen slave to EDS file"
@@ -1598,11 +1606,11 @@
msgid "Export graph values to clipboard"
-#: ../canfestival/canfestival.py:173
+#: ../canfestival/canfestival.py:175 -#: ../dialogs/FBDVariableDialog.py:89
+#: ../dialogs/FBDVariableDialog.py:90 @@ -1610,28 +1618,28 @@
-#: ../ProjectController.py:761
+#: ../ProjectController.py:790 msgid "Extracting Located Variables...\n"
-#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:31
-#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143
+#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 +#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144 -#: ../ProjectController.py:1750
+#: ../ProjectController.py:1779 msgid "Failed : Must build before transfer.\n"
-#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:462
+#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:521 -#: ../ProjectController.py:1029
+#: ../ProjectController.py:1058 msgid "Fatal : cannot get builder.\n"
@@ -1651,8 +1659,8 @@
msgid "File '%s' already exists!"
-#: ../dialogs/SearchInProjectDialog.py:100 ../dialogs/FindInPouDialog.py:36
-#: ../dialogs/FindInPouDialog.py:106 ../IDEFrame.py:375
+#: ../dialogs/SearchInProjectDialog.py:98 ../dialogs/FindInPouDialog.py:37 +#: ../dialogs/FindInPouDialog.py:104 ../IDEFrame.py:375 @@ -1668,7 +1676,7 @@
-#: ../dialogs/FindInPouDialog.py:57
+#: ../dialogs/FindInPouDialog.py:55 @@ -1676,7 +1684,7 @@
msgid "Force runtime reload\n"
-#: ../editors/Viewer.py:1564
+#: ../editors/Viewer.py:1600 @@ -1684,27 +1692,27 @@
msgid "Forcing Variable Value"
-#: ../dialogs/SFCTransitionDialog.py:179 ../dialogs/PouTransitionDialog.py:102
-#: ../dialogs/ProjectDialog.py:70 ../dialogs/PouActionDialog.py:94
+#: ../dialogs/SFCTransitionDialog.py:182 ../dialogs/PouTransitionDialog.py:97 +#: ../dialogs/ProjectDialog.py:73 ../dialogs/PouActionDialog.py:95 #: ../dialogs/PouDialog.py:116
msgid "Form isn't complete. %s must be filled!"
-#: ../dialogs/SFCStepDialog.py:144 ../dialogs/FBDBlockDialog.py:232
-#: ../dialogs/ConnectionDialog.py:160
+#: ../dialogs/SFCStepDialog.py:147 ../dialogs/FBDBlockDialog.py:236 +#: ../dialogs/ConnectionDialog.py:163 msgid "Form isn't complete. Name must be filled!"
-#: ../dialogs/FBDBlockDialog.py:228
+#: ../dialogs/FBDBlockDialog.py:232 msgid "Form isn't complete. Valid block type must be selected!"
-#: ../dialogs/FindInPouDialog.py:74
+#: ../dialogs/FindInPouDialog.py:72 -#: ../dialogs/SearchInProjectDialog.py:36 ../IDEFrame.py:1745
+#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1749 @@ -1712,37 +1720,37 @@
-#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1744
+#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1748 -#: ../controls/VariablePanel.py:837
+#: ../controls/VariablePanel.py:854 msgid "Function Block Types"
-#: ../PLCControler.py:95
+#: ../PLCControler.py:97 -#: ../editors/Viewer.py:248
+#: ../editors/Viewer.py:249 msgid "Function Blocks can't be used in Functions!"
-#: ../PLCControler.py:2337
+#: ../PLCControler.py:2343 msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!"
-#: ../PLCControler.py:95
+#: ../PLCControler.py:97 -#: ../PLCOpenEditor.py:115
+#: ../PLCOpenEditor.py:117 -#: ../ProjectController.py:662
+#: ../ProjectController.py:691 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n"
@@ -1754,7 +1762,7 @@
msgid "Go to current value"
-#: ../controls/ProjectPropertiesPanel.py:173
+#: ../controls/ProjectPropertiesPanel.py:174 @@ -1766,15 +1774,15 @@
msgid "Greater than or equal to"
-#: ../controls/ProjectPropertiesPanel.py:134
+#: ../controls/ProjectPropertiesPanel.py:135 -#: ../runtime/NevowServer.py:181
+#: ../runtime/NevowServer.py:182 msgid "HTTP interface port :"
-#: ../controls/ProjectPropertiesPanel.py:120
+#: ../controls/ProjectPropertiesPanel.py:121 @@ -1782,15 +1790,16 @@
-#: ../controls/ProjectPropertiesPanel.py:150
+#: ../controls/ProjectPropertiesPanel.py:151 -#: ../dialogs/DurationEditorDialog.py:44
+#: ../dialogs/DurationEditorDialog.py:45 -#: ../dialogs/PouActionDialog.py:31 ../dialogs/PouDialog.py:36
+#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 +#: ../dialogs/PouDialog.py:37 @@ -1798,20 +1807,20 @@
-#: ../Beremiz_service.py:308 ../Beremiz_service.py:309
+#: ../Beremiz_service.py:310 ../Beremiz_service.py:311 -#: ../svgui/svgui.py:42 ../svgui/svgui.py:43
+#: ../svgui/svgui.py:44 ../svgui/svgui.py:45 -#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1591
+#: ../dialogs/FBDVariableDialog.py:39 ../editors/Viewer.py:1627 #: ../controls/VariablePanel.py:71
-#: ../editors/Viewer.py:1110
+#: ../editors/Viewer.py:431 @@ -1830,11 +1839,15 @@
msgid "Incompatible size of data between \"{a1}\" and \"{a2}\""
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39 -#: ../editors/Viewer.py:552
+#: ../editors/CodeFileEditor.py:744 +#: ../editors/Viewer.py:611 @@ -1848,23 +1861,23 @@
-#: ../dialogs/SFCTransitionDialog.py:75 ../dialogs/ActionBlockDialog.py:42
+#: ../dialogs/SFCTransitionDialog.py:76 ../dialogs/ActionBlockDialog.py:43 -#: ../dialogs/SFCStepDialog.py:70 ../dialogs/FBDVariableDialog.py:37
-#: ../dialogs/BrowseLocationsDialog.py:40 ../editors/Viewer.py:289
-#: ../editors/Viewer.py:1589 ../editors/TextViewer.py:307
+#: ../dialogs/SFCStepDialog.py:71 ../dialogs/FBDVariableDialog.py:38 +#: ../dialogs/BrowseLocationsDialog.py:41 ../editors/Viewer.py:290 +#: ../editors/Viewer.py:1625 ../editors/TextViewer.py:307 #: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71
#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351
-#: ../dialogs/FBDBlockDialog.py:93
+#: ../dialogs/FBDBlockDialog.py:96 @@ -1872,7 +1885,7 @@
-#: ../plcopen/plcopen.py:1691
+#: ../plcopen/plcopen.py:1696 msgid "Instance with id %d doesn't exist!"
@@ -1893,7 +1906,7 @@
-#: ../PLCControler.py:2325
+#: ../PLCControler.py:2331 msgid "Invalid plcopen element(s)!!!"
@@ -1919,12 +1932,12 @@
msgid "Invalid value \"%s\" for variable grid element"
-#: ../editors/Viewer.py:233 ../editors/Viewer.py:236
+#: ../editors/Viewer.py:234 ../editors/Viewer.py:237 msgid "Invalid value \"%s\" for viewer block"
-#: ../dialogs/ForceVariableDialog.py:177
+#: ../dialogs/ForceVariableDialog.py:195 msgid "Invalid value \"{a1}\" for \"{a2}\" variable!"
@@ -1935,12 +1948,12 @@
"You must fill a numeric value."
-#: ../editors/Viewer.py:557 ../editors/Viewer.py:2354
+#: ../editors/Viewer.py:616 ../editors/Viewer.py:2390 -#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:31
-#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143
+#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 +#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144 @@ -1949,37 +1962,37 @@
msgid "Ladder element with id %d is on more than one rung."
-#: ../dialogs/PouTransitionDialog.py:91 ../dialogs/PouActionDialog.py:83
+#: ../dialogs/PouTransitionDialog.py:86 ../dialogs/PouActionDialog.py:84 #: ../dialogs/PouDialog.py:104
-#: ../controls/ProjectPropertiesPanel.py:186
+#: ../controls/ProjectPropertiesPanel.py:187 msgid "Language (optional):"
-#: ../dialogs/PouTransitionDialog.py:65 ../dialogs/PouActionDialog.py:56
+#: ../dialogs/PouTransitionDialog.py:60 ../dialogs/PouActionDialog.py:56 #: ../dialogs/PouDialog.py:73
-#: ../ProjectController.py:1756
+#: ../ProjectController.py:1785 msgid "Latest build already matches current target. Transfering anyway...\n"
-#: ../Beremiz_service.py:271
+#: ../Beremiz_service.py:273 msgid "Launch WX GUI inspector"
-#: ../Beremiz_service.py:270
+#: ../Beremiz_service.py:272 msgid "Launch a live Python shell"
-#: ../editors/Viewer.py:485
+#: ../editors/Viewer.py:544 -#: ../dialogs/LDPowerRailDialog.py:62
+#: ../dialogs/LDPowerRailDialog.py:63 @@ -2007,19 +2020,19 @@
-#: ../targets/toolchain_gcc.py:166
+#: ../targets/toolchain_gcc.py:202 -#: ../dialogs/DiscoveryDialog.py:111 ../controls/VariablePanel.py:72
+#: ../dialogs/DiscoveryDialog.py:112 ../controls/VariablePanel.py:72 -#: ../canfestival/canfestival.py:346
+#: ../canfestival/canfestival.py:348 -#: ../ProjectController.py:1662
+#: ../ProjectController.py:1691 msgid "Local service discovery failed!\n"
@@ -2065,7 +2078,7 @@
-#: ../dialogs/BrowseLocationsDialog.py:42 ../editors/Viewer.py:289
+#: ../dialogs/BrowseLocationsDialog.py:43 ../editors/Viewer.py:290 #: ../editors/TextViewer.py:307 ../controls/LocationCellEditor.py:98
#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351
@@ -2075,15 +2088,15 @@
-#: ../dialogs/DurationEditorDialog.py:48
+#: ../dialogs/DurationEditorDialog.py:49 -#: ../editors/Viewer.py:490
+#: ../editors/Viewer.py:549 -#: ../dialogs/DurationEditorDialog.py:47
+#: ../dialogs/DurationEditorDialog.py:48 @@ -2095,11 +2108,11 @@
-#: ../dialogs/DurationEditorDialog.py:45
+#: ../dialogs/DurationEditorDialog.py:46 -#: ../controls/ProjectPropertiesPanel.py:210
+#: ../controls/ProjectPropertiesPanel.py:211 @@ -2156,11 +2169,11 @@
-#: ../editors/CodeFileEditor.py:661 ../controls/VariablePanel.py:453
+#: ../editors/CodeFileEditor.py:663 ../controls/VariablePanel.py:453 msgid "Move variable down"
-#: ../editors/CodeFileEditor.py:660 ../controls/VariablePanel.py:452
+#: ../editors/CodeFileEditor.py:662 ../controls/VariablePanel.py:452 @@ -2181,17 +2194,17 @@
#: ../editors/ResourceEditor.py:68 ../editors/ResourceEditor.py:83
-#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53
-#: ../controls/VariablePanel.py:54
+#: ../editors/DataTypeEditor.py:50 ../editors/CodeFileEditor.py:744 +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 -#: ../Beremiz_service.py:332
+#: ../Beremiz_service.py:334 msgid "Name must not be null!"
-#: ../dialogs/SFCStepDialog.py:56 ../dialogs/FBDBlockDialog.py:83
-#: ../dialogs/ConnectionDialog.py:75
+#: ../dialogs/SFCStepDialog.py:57 ../dialogs/FBDBlockDialog.py:86 +#: ../dialogs/ConnectionDialog.py:76 @@ -2199,20 +2212,20 @@
msgid "Natural logarithm"
-#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:460
+#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:519 -#: ../Beremiz_service.py:578
+#: ../Beremiz_service.py:580 msgid "Nevow Web service failed. "
-#: ../Beremiz_service.py:554
+#: ../Beremiz_service.py:556 msgid "Nevow/Athena import failed :"
-#: ../PLCOpenEditor.py:102 ../PLCOpenEditor.py:144 ../Beremiz.py:321
+#: ../BeremizIDE.py:216 ../BeremizIDE.py:251 ../PLCOpenEditor.py:104 +#: ../PLCOpenEditor.py:146 @@ -2220,11 +2233,11 @@
-#: ../editors/Viewer.py:459
+#: ../editors/Viewer.py:518 -#: ../ProjectController.py:1784
+#: ../ProjectController.py:1814 msgid "No PLC to transfer (did build succeed ?)\n"
@@ -2238,7 +2251,7 @@
msgid "No connector found corresponding to \"{a1}\" continuation in \"{a2}\" POU"
-#: ../PLCOpenEditor.py:347
+#: ../PLCOpenEditor.py:357 "No documentation available.\n"
@@ -2258,7 +2271,7 @@
msgid "No search results available."
-#: ../svgui/svgui.py:131
+#: ../svgui/svgui.py:134 msgid "No such SVG file: %s\n"
@@ -2312,28 +2325,32 @@
-#: ../dialogs/SearchInProjectDialog.py:86
+#: ../editors/CodeFileEditor.py:744 +#: ../dialogs/SearchInProjectDialog.py:84 -#: ../PLCOpenEditor.py:104 ../PLCOpenEditor.py:145 ../Beremiz.py:323
+#: ../BeremizIDE.py:218 ../BeremizIDE.py:252 ../PLCOpenEditor.py:106 +#: ../PLCOpenEditor.py:147 -#: ../svgui/svgui.py:140
+#: ../svgui/svgui.py:143
msgid "Open Source framework for automation, implemented IEC 61131 IDE with constantly growing set of extensions and flexible PLC runtime."
-#: ../ProjectController.py:1836
+#: ../ProjectController.py:1866 msgid "Open a file explorer to manage project files"
-#: ../wxglade_hmi/wxglade_hmi.py:138
+#: ../wxglade_hmi/wxglade_hmi.py:155 @@ -2341,11 +2358,11 @@
-#: ../dialogs/FindInPouDialog.py:83
+#: ../dialogs/FindInPouDialog.py:81 ../editors/CodeFileEditor.py:744 -#: ../controls/ProjectPropertiesPanel.py:97
+#: ../controls/ProjectPropertiesPanel.py:98 msgid "Organization (optional):"
@@ -2353,9 +2370,9 @@
-#: ../dialogs/SFCStepDialog.py:71 ../dialogs/FBDVariableDialog.py:39
-#: ../dialogs/BrowseLocationsDialog.py:41 ../editors/Viewer.py:289
-#: ../editors/Viewer.py:1590 ../editors/TextViewer.py:307
+#: ../dialogs/SFCStepDialog.py:72 ../dialogs/FBDVariableDialog.py:40 +#: ../dialogs/BrowseLocationsDialog.py:42 ../editors/Viewer.py:290 +#: ../editors/Viewer.py:1626 ../editors/TextViewer.py:307 #: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71
#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351
@@ -2369,42 +2386,42 @@
-#: ../targets/toolchain_gcc.py:131
+#: ../targets/toolchain_gcc.py:167
-#: ../ProjectController.py:1013
+#: ../ProjectController.py:1042 msgid "PLC code generation failed !\n"
-#: ../Beremiz_service.py:295
+#: ../Beremiz_service.py:297 msgid "PLC is empty or already started."
-#: ../Beremiz_service.py:302
+#: ../Beremiz_service.py:304 msgid "PLC is not started."
-#: ../PLCOpenEditor.py:196 ../PLCOpenEditor.py:309
+#: ../PLCOpenEditor.py:206 ../PLCOpenEditor.py:319 "PLC syntax error at line {a1}:\n"
-#: ../PLCOpenEditor.py:292 ../PLCOpenEditor.py:373
+#: ../PLCOpenEditor.py:302 ../PLCOpenEditor.py:383 msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
-#: ../PLCOpenEditor.py:152 ../PLCOpenEditor.py:209
+#: ../PLCOpenEditor.py:154 ../PLCOpenEditor.py:219 -#: ../PLCOpenEditor.py:355
+#: ../PLCOpenEditor.py:365 "PLCOpenEditor is part of Beremiz project.\n"
@@ -2441,15 +2458,15 @@
msgid "PYRO using certificates in '%s' \n"
-#: ../PLCOpenEditor.py:118 ../Beremiz.py:336
+#: ../BeremizIDE.py:231 ../PLCOpenEditor.py:120 -#: ../controls/ProjectPropertiesPanel.py:110
+#: ../controls/ProjectPropertiesPanel.py:111 msgid "Page Size (optional):"
@@ -2458,11 +2475,11 @@
-#: ../editors/Viewer.py:598 ../IDEFrame.py:372 ../IDEFrame.py:426
+#: ../editors/Viewer.py:657 ../IDEFrame.py:372 ../IDEFrame.py:426
@@ -2470,11 +2487,11 @@
msgid "Pattern to search:"
-#: ../dialogs/LDPowerRailDialog.py:73
+#: ../dialogs/LDPowerRailDialog.py:74 -#: ../editors/Viewer.py:2717 ../editors/Viewer.py:2974
+#: ../editors/Viewer.py:2755 ../editors/Viewer.py:3012 #: ../editors/SFCViewer.py:770
msgid "Please choose a target"
@@ -2483,7 +2500,7 @@
msgid "Please enter a block name"
-#: ../editors/Viewer.py:2587 ../editors/Viewer.py:3016
+#: ../editors/Viewer.py:2625 ../editors/Viewer.py:3054 msgid "Please enter comment text"
@@ -2492,7 +2509,7 @@
msgid "Please enter step name"
-#: ../Beremiz_service.py:194
+#: ../Beremiz_service.py:196 msgid "Please enter text"
@@ -2501,23 +2518,23 @@
msgid "Please enter value for a \"%s\" variable:"
-#: ../Beremiz_service.py:317
+#: ../Beremiz_service.py:319 msgid "Port number must be 0 <= port <= 65535!"
-#: ../Beremiz_service.py:317
+#: ../Beremiz_service.py:319 msgid "Port number must be an integer!"
-#: ../editors/Viewer.py:536 ../editors/Viewer.py:2378
+#: ../editors/Viewer.py:595 ../editors/Viewer.py:2414 -#: ../dialogs/LDPowerRailDialog.py:50
+#: ../dialogs/LDPowerRailDialog.py:51 msgid "Power Rail Properties"
-#: ../PLCOpenEditor.py:120 ../Beremiz.py:338
+#: ../BeremizIDE.py:233 ../PLCOpenEditor.py:122 @@ -2525,12 +2542,12 @@
-#: ../PLCOpenEditor.py:122 ../PLCOpenEditor.py:148 ../Beremiz.py:340
+#: ../BeremizIDE.py:235 ../BeremizIDE.py:255 ../PLCOpenEditor.py:124 +#: ../PLCOpenEditor.py:150
@@ -2538,53 +2555,53 @@
-#: ../dialogs/SFCTransitionDialog.py:89
+#: ../dialogs/SFCTransitionDialog.py:90 -#: ../runtime/PLCObject.py:370
+#: ../runtime/PLCObject.py:369 msgid "Problem starting PLC : error %d"
-#: ../dialogs/ProjectDialog.py:55
+#: ../dialogs/ProjectDialog.py:58 -#: ../controls/ProjectPropertiesPanel.py:80
+#: ../controls/ProjectPropertiesPanel.py:81 msgid "Product Name (required):"
+#: ../controls/ProjectPropertiesPanel.py:83 +msgid "Product Release (optional):" +#: ../dialogs/ProjectDialog.py:59 #: ../controls/ProjectPropertiesPanel.py:82
-msgid "Product Release (optional):"
-#: ../dialogs/ProjectDialog.py:56
-#: ../controls/ProjectPropertiesPanel.py:81
msgid "Product Version (required):"
-#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1743
+#: ../dialogs/SearchInProjectDialog.py:39 ../IDEFrame.py:1747 -#: ../PLCOpenEditor.py:337
+#: ../PLCOpenEditor.py:347 msgid "Program was successfully generated!"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98 -#: ../editors/Viewer.py:242
+#: ../editors/Viewer.py:243 msgid "Programs can't be used by other POUs!"
-#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:584
+#: ../controls/ProjectPropertiesPanel.py:85 ../IDEFrame.py:584 @@ -2593,29 +2610,29 @@
-#: ../ProjectController.py:1835
+#: ../ProjectController.py:1865 -#: ../dialogs/ProjectDialog.py:54
+#: ../dialogs/ProjectDialog.py:57 -#: ../controls/ProjectPropertiesPanel.py:78
-msgid "Project Name (required):"
#: ../controls/ProjectPropertiesPanel.py:79
+msgid "Project Name (required):" +#: ../controls/ProjectPropertiesPanel.py:80 msgid "Project Version (optional):"
-#: ../PLCControler.py:3158
+#: ../PLCControler.py:3164 "Project file syntax error:\n"
-#: ../dialogs/ProjectDialog.py:32 ../editors/ProjectNodeEditor.py:37
+#: ../dialogs/ProjectDialog.py:33 ../editors/ProjectNodeEditor.py:37 msgid "Project properties"
@@ -2624,15 +2641,15 @@
msgid "Project tree layout do not match confnode.xml {a1}!={a2} "
-#: ../dialogs/ConnectionDialog.py:94
+#: ../dialogs/ConnectionDialog.py:98 -#: ../PLCControler.py:97
+#: ../PLCControler.py:99 -#: ../Beremiz_service.py:440
+#: ../Beremiz_service.py:442 msgid "Publishing service on local network"
@@ -2641,11 +2658,11 @@
msgid "Pyro exception: %s\n"
-#: ../Beremiz_service.py:427
+#: ../Beremiz_service.py:429 msgid "Pyro object's uri :"
-#: ../Beremiz_service.py:426
+#: ../Beremiz_service.py:428 @@ -2657,11 +2674,11 @@
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39 -#: ../PLCOpenEditor.py:128 ../Beremiz.py:343 ../Beremiz_service.py:273
+#: ../BeremizIDE.py:238 ../PLCOpenEditor.py:130 ../Beremiz_service.py:275 @@ -2669,11 +2686,11 @@
-#: ../ProjectController.py:1831
+#: ../ProjectController.py:1861
+#: ../BeremizIDE.py:1046 msgid "Really delete node '%s'?"
@@ -2682,11 +2699,11 @@
-#: ../dialogs/SFCTransitionDialog.py:74
+#: ../dialogs/SFCTransitionDialog.py:75 -#: ../dialogs/DiscoveryDialog.py:106 ../IDEFrame.py:432
+#: ../dialogs/DiscoveryDialog.py:107 ../IDEFrame.py:432 @@ -2694,11 +2711,11 @@
msgid "Regular expression"
-#: ../dialogs/FindInPouDialog.py:98
+#: ../dialogs/FindInPouDialog.py:96 msgid "Regular expressions"
-#: ../editors/Viewer.py:1567
+#: ../editors/Viewer.py:1603 @@ -2706,16 +2723,16 @@
msgid "Remainder (modulo)"
+#: ../BeremizIDE.py:1047
@@ -2743,11 +2760,11 @@
-#: ../editors/CodeFileEditor.py:659 ../controls/VariablePanel.py:451
+#: ../editors/CodeFileEditor.py:661 ../controls/VariablePanel.py:451
@@ -2755,7 +2772,7 @@
-#: ../editors/Viewer.py:502
+#: ../editors/Viewer.py:561 msgid "Replace Wire by connections"
@@ -2767,7 +2784,7 @@
-#: ../editors/Viewer.py:583
+#: ../editors/Viewer.py:642 msgid "Reset Execution Order"
@@ -2779,7 +2796,7 @@
msgid "Reset search result"
-#: ../PLCControler.py:97 ../Beremiz.py:1075
+#: ../BeremizIDE.py:978 ../PLCControler.py:99 @@ -2791,15 +2808,15 @@
-#: ../editors/Viewer.py:487
+#: ../editors/Viewer.py:546 -#: ../dialogs/LDPowerRailDialog.py:63
+#: ../dialogs/LDPowerRailDialog.py:64 -#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:461
+#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:520 @@ -2815,15 +2832,15 @@
-#: ../ProjectController.py:1799
+#: ../ProjectController.py:1829 -#: ../ProjectController.py:1058
+#: ../ProjectController.py:1087 msgid "Runtime IO extensions C code generation failed !\n"
-#: ../ProjectController.py:1067
+#: ../ProjectController.py:1096 msgid "Runtime library extensions C code generation failed !\n"
@@ -2835,7 +2852,7 @@
-#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143
+#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144 @@ -2849,16 +2866,16 @@
msgid "SFC transition in POU \"%s\" must be connected."
-#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:31
-#: ../dialogs/PouDialog.py:36
+#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32 +#: ../dialogs/PouDialog.py:37 -#: ../PLCOpenEditor.py:324
+#: ../PLCOpenEditor.py:334 msgid "ST files (*.st)|*.st|All files|*.*"
-#: ../svgui/svgui.py:125
+#: ../svgui/svgui.py:128 msgid "SVG files (*.svg)|*.svg|All files|*.*"
@@ -2866,20 +2883,20 @@
-#: ../PLCOpenEditor.py:111 ../PLCOpenEditor.py:146 ../Beremiz.py:327
+#: ../BeremizIDE.py:222 ../BeremizIDE.py:253 ../PLCOpenEditor.py:113 +#: ../PLCOpenEditor.py:148 -#: ../PLCOpenEditor.py:113 ../PLCOpenEditor.py:147 ../Beremiz.py:359
+#: ../BeremizIDE.py:254 ../PLCOpenEditor.py:115 ../PLCOpenEditor.py:149
-#: ../ProjectController.py:470
+#: ../ProjectController.py:499 msgid "Save path is the same as path of a project! \n"
@@ -2891,11 +2908,11 @@
-#: ../dialogs/SearchInProjectDialog.py:44 ../IDEFrame.py:382 ../IDEFrame.py:428
+#: ../dialogs/SearchInProjectDialog.py:45 ../IDEFrame.py:382 ../IDEFrame.py:428 msgid "Search in Project"
-#: ../dialogs/DurationEditorDialog.py:46
+#: ../dialogs/DurationEditorDialog.py:47 @@ -2903,17 +2920,17 @@
-#: ../editors/Viewer.py:288 ../editors/TextViewer.py:306
+#: ../editors/Viewer.py:289 ../editors/TextViewer.py:306 #: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:290
#: ../controls/VariablePanel.py:350
msgid "Select a variable class:"
-#: ../ProjectController.py:1216
+#: ../ProjectController.py:1245 msgid "Select an editor:"
-#: ../controls/PouInstanceVariablesPanel.py:276
+#: ../controls/PouInstanceVariablesPanel.py:281 msgid "Select an instance"
@@ -2921,7 +2938,7 @@
-#: ../ProjectController.py:477
+#: ../ProjectController.py:506 msgid "Selected directory already contains another project. Overwrite? \n"
@@ -2957,19 +2974,19 @@
-#: ../ProjectController.py:1825
+#: ../ProjectController.py:1855 msgid "Show IEC code generated by PLCGenerator"
-#: ../canfestival/canfestival.py:387
+#: ../canfestival/canfestival.py:389 -#: ../canfestival/canfestival.py:388
+#: ../canfestival/canfestival.py:390 msgid "Show Master generated by config_utils"
-#: ../ProjectController.py:1823
+#: ../ProjectController.py:1853 @@ -3002,52 +3019,52 @@
msgid "Square root (base 2)"
-#: ../plcopen/definitions.py:46
+#: ../plcopen/definitions.py:48 msgid "Standard function blocks"
-#: ../ProjectController.py:1801 ../Beremiz_service.py:261
+#: ../ProjectController.py:1831 ../Beremiz_service.py:263 -#: ../ProjectController.py:1005
+#: ../ProjectController.py:1034 msgid "Start build in %s\n"
-#: ../ProjectController.py:1319
+#: ../ProjectController.py:1348 -#: ../ProjectController.py:1607
+#: ../ProjectController.py:1636
-#: ../editors/Viewer.py:553 ../editors/Viewer.py:2353
+#: ../editors/Viewer.py:612 ../editors/Viewer.py:2389 -#: ../ProjectController.py:1804
+#: ../ProjectController.py:1834 -#: ../Beremiz_service.py:262
+#: ../Beremiz_service.py:264 -#: ../ProjectController.py:1806
+#: ../ProjectController.py:1836 -#: ../ProjectController.py:1320
+#: ../ProjectController.py:1349 -#: ../ProjectController.py:1579
+#: ../ProjectController.py:1608 msgid "Stopping debugger...\n"
@@ -3063,7 +3080,7 @@
-#: ../ProjectController.py:1044
+#: ../ProjectController.py:1073 msgid "Successfully built.\n"
@@ -3071,7 +3088,7 @@
msgid "Switch perspective"
-#: ../dialogs/SearchInProjectDialog.py:165 ../dialogs/FindInPouDialog.py:172
+#: ../dialogs/SearchInProjectDialog.py:165 ../dialogs/FindInPouDialog.py:115 msgid "Syntax error in regular expression of pattern to search!"
@@ -3095,6 +3112,18 @@
+"The best place to ask questions about Beremiz/PLCOpenEditor\n" +"is project's mailing list: beremiz-devel@lists.sourceforge.net\n" +"This is the main community support channel.\n" +"For posting it is required to be subscribed to the mailing list.\n" +"You can subscribe to the list here:\n" +"https://lists.sourceforge.net/lists/listinfo/beremiz-devel" #: ../editors/FileManagementPanel.py:180
@@ -3106,16 +3135,16 @@
msgid "The group of block must be coherent!"
-#: ../Beremiz.py:640 ../IDEFrame.py:1011
+#: ../BeremizIDE.py:542 ../IDEFrame.py:1015 msgid "There are changes, do you want to save?"
-#: ../IDEFrame.py:1654 ../IDEFrame.py:1673
+#: ../IDEFrame.py:1658 ../IDEFrame.py:1677 msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?"
"There was a problem printing.\n"
"Perhaps your current printer is not set correctly?"
@@ -3163,27 +3192,31 @@
msgid "Time-of-day subtraction"
-#: ../editors/Viewer.py:489
+#: ../dialogs/ForceVariableDialog.py:172 +#: ../editors/Viewer.py:548 -#: ../ProjectController.py:1813
+#: ../ProjectController.py:1843 -#: ../ProjectController.py:1815
+#: ../ProjectController.py:1845 -#: ../ProjectController.py:1779
+#: ../ProjectController.py:1808 msgid "Transfer completed successfully.\n"
-#: ../ProjectController.py:1781
+#: ../ProjectController.py:1811 msgid "Transfer failed\n"
-#: ../editors/Viewer.py:554 ../editors/Viewer.py:2355 ../editors/Viewer.py:2382
+#: ../editors/Viewer.py:613 ../editors/Viewer.py:2391 ../editors/Viewer.py:2418 @@ -3192,11 +3225,11 @@
msgid "Transition \"%s\" body must contain an output variable or coil referring to its name"
-#: ../dialogs/PouTransitionDialog.py:89
+#: ../dialogs/PouTransitionDialog.py:84 -#: ../dialogs/PouTransitionDialog.py:58
+#: ../dialogs/PouTransitionDialog.py:53 @@ -3210,12 +3243,12 @@
msgid "Transition with content \"{a1}\" not connected to a previous step in \"{a2}\" POU"
-#: ../plcopen/plcopen.py:1318
+#: ../plcopen/plcopen.py:1323 msgid "Transition with name %s doesn't exist!"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98 @@ -3227,17 +3260,17 @@
-#: ../Beremiz_service.py:476
+#: ../Beremiz_service.py:478 msgid "Twisted unavailable."
-#: ../dialogs/ActionBlockDialog.py:38 ../editors/ResourceEditor.py:83
-#: ../editors/DataTypeEditor.py:50 ../controls/VariablePanel.py:53
-#: ../controls/VariablePanel.py:54
+#: ../dialogs/ActionBlockDialog.py:39 ../editors/ResourceEditor.py:83 +#: ../editors/DataTypeEditor.py:50 ../editors/CodeFileEditor.py:744 +#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54 -#: ../dialogs/BrowseLocationsDialog.py:48
+#: ../dialogs/BrowseLocationsDialog.py:49 msgid "Type and derivated"
@@ -3254,13 +3287,13 @@
-#: ../dialogs/BrowseLocationsDialog.py:49
+#: ../dialogs/BrowseLocationsDialog.py:50 -#: ../dialogs/SFCDivergenceDialog.py:59 ../dialogs/SFCTransitionDialog.py:57
-#: ../dialogs/LDPowerRailDialog.py:56 ../dialogs/BrowseLocationsDialog.py:99
-#: ../dialogs/FBDBlockDialog.py:65 ../dialogs/ConnectionDialog.py:58
+#: ../dialogs/SFCDivergenceDialog.py:59 ../dialogs/SFCTransitionDialog.py:58 +#: ../dialogs/LDPowerRailDialog.py:57 ../dialogs/BrowseLocationsDialog.py:100 +#: ../dialogs/FBDBlockDialog.py:66 ../dialogs/ConnectionDialog.py:59 @@ -3288,20 +3321,20 @@
-#: ../ProjectController.py:382
+#: ../ProjectController.py:411 -#: ../editors/Viewer.py:393
+#: ../editors/Viewer.py:394 msgid "Unknown variable \"%s\" for this POU!"
-#: ../ProjectController.py:379 ../ProjectController.py:380
+#: ../ProjectController.py:408 ../ProjectController.py:409 -#: ../PLCControler.py:636
+#: ../PLCControler.py:638 @@ -3311,7 +3344,7 @@
msgid "Unrecognized data size \"%s\""
-#: ../editors/DataTypeEditor.py:632 ../controls/VariablePanel.py:810
+#: ../editors/DataTypeEditor.py:630 ../controls/VariablePanel.py:827 @@ -3319,11 +3352,11 @@
-#: ../PLCControler.py:95
+#: ../PLCControler.py:97 msgid "User-defined POUs"
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39 @@ -3331,28 +3364,28 @@
-#: ../dialogs/ActionBlockDialog.py:42 ../editors/Viewer.py:526
-#: ../editors/Viewer.py:2385
+#: ../dialogs/ActionBlockDialog.py:43 ../editors/Viewer.py:585 +#: ../editors/Viewer.py:2421 -#: ../editors/Viewer.py:308 ../editors/Viewer.py:338 ../editors/Viewer.py:360
+#: ../editors/Viewer.py:309 ../editors/Viewer.py:339 ../editors/Viewer.py:361 #: ../editors/TextViewer.py:292 ../editors/TextViewer.py:343
#: ../editors/TextViewer.py:366 ../controls/VariablePanel.py:329
-#: ../dialogs/FBDVariableDialog.py:63
+#: ../dialogs/FBDVariableDialog.py:64 msgid "Variable Properties"
-#: ../editors/Viewer.py:288 ../editors/TextViewer.py:306
+#: ../editors/Viewer.py:289 ../editors/TextViewer.py:306 #: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:290
#: ../controls/VariablePanel.py:350
-#: ../editors/Viewer.py:395 ../editors/TextViewer.py:387
+#: ../editors/Viewer.py:396 ../editors/TextViewer.py:387 msgid "Variable don't belong to this POU!"
@@ -3364,11 +3397,11 @@
-#: ../controls/ProjectPropertiesPanel.py:151
+#: ../controls/ProjectPropertiesPanel.py:152 -#: ../Beremiz_service.py:586
+#: ../Beremiz_service.py:588 msgid "WAMP client startup failed. "
@@ -3386,11 +3419,11 @@
msgid "WAMP connection to '%s' failed.\n"
-#: ../Beremiz_service.py:562
+#: ../Beremiz_service.py:564 msgid "WAMP import failed :"
-#: ../wxglade_hmi/wxglade_hmi.py:35
+#: ../wxglade_hmi/wxglade_hmi.py:37 @@ -3398,7 +3431,7 @@
-#: ../ProjectController.py:666
+#: ../ProjectController.py:695 msgid "Warnings in ST/IL/SFC code generator :\n"
@@ -3406,11 +3439,11 @@
-#: ../controls/ProjectPropertiesPanel.py:119
+#: ../controls/ProjectPropertiesPanel.py:120 -#: ../dialogs/FindInPouDialog.py:93
+#: ../dialogs/FindInPouDialog.py:91 @@ -3422,19 +3455,19 @@
-#: ../svgui/svgui.py:139
+#: ../svgui/svgui.py:142 "You don't have write permissions.\n"
-#: ../wxglade_hmi/wxglade_hmi.py:137
+#: ../wxglade_hmi/wxglade_hmi.py:154 "You don't have write permissions.\n"
-#: ../ProjectController.py:342
+#: ../ProjectController.py:371 "You must have permission to work on the project\n"
"Work on a project copy ?"
@@ -3452,7 +3485,7 @@
msgid "You must type a name!"
-#: ../dialogs/ForceVariableDialog.py:175
+#: ../dialogs/ForceVariableDialog.py:193 msgid "You must type a value!"
@@ -3464,7 +3497,7 @@
-#: ../PLCOpenEditor.py:333
+#: ../PLCOpenEditor.py:343 @@ -3474,19 +3507,19 @@
msgid "exited with status {a1} (pid {a2})\n"
-#: ../PLCOpenEditor.py:396 ../PLCOpenEditor.py:398
+#: ../PLCOpenEditor.py:406 ../PLCOpenEditor.py:408 -#: ../dialogs/PouDialog.py:31
+#: ../dialogs/PouDialog.py:32 -#: ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:409 -#: ../dialogs/PouDialog.py:31
+#: ../dialogs/PouDialog.py:32 @@ -3494,7 +3527,7 @@
-#: ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:409 @@ -3506,7 +3539,7 @@
-#: ../dialogs/PouDialog.py:31
+#: ../dialogs/PouDialog.py:32 @@ -3526,16 +3559,16 @@
msgid "update info unavailable."
-#: ../PLCOpenEditor.py:331
+#: ../PLCOpenEditor.py:341 -#: ../PLCControler.py:970
+#: ../PLCControler.py:972 msgid "{a1} \"{a2}\" can't be pasted as a {a3}."
@@ -3604,9 +3637,6 @@
@@ -3669,153 +3699,3 @@
#: Extra TC6 documentation strings
-msgid "0 - current time, 1 - load time from PDT"
-msgid "Datetime, current or relative to PDT"
-msgid "The real time clock has many uses including time stamping, setting dates and times of day in batch reports, in alarm messages and so on."
-msgid "1 = integrate, 0 = hold"
-msgid "Overriding reset"
-msgid "Integrated output"
-msgid "The integral function block integrates the value of input XIN over time."
-msgid "Input to be differentiated"
-msgid "Differentiated output"
-msgid "The derivative function block produces an output XOUT proportional to the rate of change of the input XIN."
-msgid "0 - manual , 1 - automatic"
-msgid "Process variable"
-msgid "Manual output adjustment - Typically from transfer station"
-msgid "Proportionality constant"
-msgid "Derivative time constant"
-msgid "FB for integral term"
-msgid "FB for derivative term"
-msgid "The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control."
-msgid "0 - track X0, 1 - ramp to/track X1"
-msgid "BUSY = 1 during ramping period"
-msgid "Elapsed time of ramp"
-msgid "The RAMP function block is modelled on example given in the standard."
-msgid "The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2."
-msgid "The SR bistable is a latch where the Set dominates."
-msgid "The RS bistable is a latch where the Reset dominates."
-msgid "The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources."
-msgid "The output produces a single pulse when a rising edge is detected."
-msgid "The output produces a single pulse when a falling edge is detected."
-msgid "The up-counter can be used to signal when a count has reached a maximum value."
-msgid "The down-counter can be used to signal when a count has reached zero, on counting down from a preset value."
-msgid "The up-down counter has two inputs CU and CD. It can be used to both count up on one input and down on the other."
-msgid "first input parameter"
-msgid "second input parameter"
-msgid "first output parameter"
-msgid "second output parameter"
-msgid "internal state: 0-reset, 1-counting, 2-set"
-msgid "The pulse timer can be used to generate output pulses of a given time duration."
-msgid "The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true."
-msgid "The off-delay timer can be used to delay setting an output false, for fixed period after input goes false."