--- a/i18n/Beremiz_fr_FR.po Wed Sep 13 10:18:04 2017 +0300
+++ b/i18n/Beremiz_fr_FR.po Wed Sep 13 15:35:43 2017 +0300
@@ -1,15 +1,17 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+# English translations for Beremiz package.
+# Copyright (C) 2017 THE Beremiz'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the Beremiz package.
+# Automatically generated, 2017.
#
-#, fuzzy
+# Translators:
+# Andrey Skvortsov <andrej.skvortzov@gmail.com>, 2017
+# Fabien M <mail@fabienm.eu>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Beremiz\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-03-09 15:28+0300\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"POT-Creation-Date: 2017-07-05 13:02+0300\n"
+"PO-Revision-Date: 2017-07-05 13:02+0300\n"
"Last-Translator: Fabien M <mail@fabienm.eu>, 2017\n"
"Language-Team: French (France) (https://www.transifex.com/beremiz/teams/75746/fr_FR/)\n"
"MIME-Version: 1.0\n"
@@ -18,7 +20,7 @@
"Language: fr_FR\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-#: ../PLCOpenEditor.py:408 ../Beremiz.py:1191
+#: ../BeremizIDE.py:1095 ../PLCOpenEditor.py:418
#, python-format
msgid ""
"\n"
@@ -66,109 +68,109 @@
msgid " Temp"
msgstr " Temporaire"
-#: ../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:114
#, python-format
msgid " and %s"
msgstr " et %s"
-#: ../ProjectController.py:1110
+#: ../ProjectController.py:1151
msgid " generation failed !\n"
msgstr "la construction a échouée !\n"
-#: ../plcopen/plcopen.py:881
+#: ../plcopen/plcopen.py:886
#, python-format
msgid "\"%s\" Data Type doesn't exist !!!"
msgstr "Le type de donnée \"%s\" n'existe pas !!!"
-#: ../plcopen/plcopen.py:899
+#: ../plcopen/plcopen.py:904
#, python-format
msgid "\"%s\" POU already exists !!!"
msgstr "Le POU \"%s\" existe déjà !!!"
-#: ../plcopen/plcopen.py:920
+#: ../plcopen/plcopen.py:925
#, python-format
msgid "\"%s\" POU doesn't exist !!!"
msgstr "Le POU \"%s\" n'existe pas !!!"
-#: ../editors/Viewer.py:246
+#: ../editors/Viewer.py:247
#, python-format
msgid "\"%s\" can't use itself!"
msgstr "\"%s\" ne peut pas s'utiliser lui-même !"
-#: ../IDEFrame.py:1651 ../IDEFrame.py:1670
+#: ../IDEFrame.py:1655 ../IDEFrame.py:1674
#, python-format
msgid "\"%s\" config already exists!"
msgstr "La configuration \"%s\" existe déjà !"
-#: ../plcopen/plcopen.py:467
+#: ../plcopen/plcopen.py:472
#, python-format
msgid "\"%s\" configuration already exists !!!"
msgstr "La configuration \"%s\" existe déjà !!!"
-#: ../IDEFrame.py:1601
+#: ../IDEFrame.py:1605
#, python-format
msgid "\"%s\" data type already exists!"
msgstr "Le type de données \"%s\" existe déjà !"
-#: ../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
#, python-format
msgid "\"%s\" element for this pou already exists!"
msgstr "Un élément \"%s\" existe déjà dans ce POU !"
-#: ../Beremiz.py:994
+#: ../BeremizIDE.py:897
#, python-format
msgid "\"%s\" folder is not a valid Beremiz project\n"
msgstr "Le dossier \"%s\" ne contient pas de projet Beremiz valide\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:121
#: ../editors/ResourceEditor.py:449 ../editors/ResourceEditor.py:484
-#: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:584
-#: ../editors/CodeFileEditor.py:770 ../controls/VariablePanel.py:763
-#: ../IDEFrame.py:1592
+#: ../editors/DataTypeEditor.py:555 ../editors/DataTypeEditor.py:587
+#: ../editors/CodeFileEditor.py:776 ../controls/VariablePanel.py:773
+#: ../IDEFrame.py:1596
#, python-format
msgid "\"%s\" is a keyword. It can't be used!"
msgstr "\"%s\" est un mot réservé. Il ne peut être utilisé !"
-#: ../plcopen/plcopen.py:2412
+#: ../plcopen/plcopen.py:2417
#, python-format
msgid "\"%s\" is an invalid value!"
msgstr "\"%s\" n'est pas une valeur valide !"
-#: ../PLCOpenEditor.py:339 ../PLCOpenEditor.py:381
+#: ../PLCOpenEditor.py:349 ../PLCOpenEditor.py:391
#, python-format
msgid "\"%s\" is not a valid folder!"
msgstr "\"%s\" n'est pas un répertoire valide !"
-#: ../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:119
#: ../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:774
+#: ../controls/VariablePanel.py:771 ../IDEFrame.py:1594
#, python-format
msgid "\"%s\" is not a valid identifier!"
msgstr "\"%s\" n'est pas un identifiant valide !"
-#: ../IDEFrame.py:2395
+#: ../IDEFrame.py:2410
#, python-format
msgid "\"%s\" is used by one or more POUs. Do you wish to continue?"
msgstr ""
"\"%s\" est utilisé par un POU ou plus. Souhaitez vous continuer malgré tout "
"?"
-#: ../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:123
+#: ../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
-#: ../IDEFrame.py:1610
+#: ../IDEFrame.py:1614
#, python-format
msgid "\"%s\" pou already exists!"
msgstr "Le POU \"%s\" existe déjà !"
@@ -183,12 +185,12 @@
msgid "\"%s\" value already defined!"
msgstr "La valeur \"%s\" est déjà définie !"
-#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:745
+#: ../dialogs/ArrayTypeDialog.py:97 ../editors/DataTypeEditor.py:743
#, python-format
msgid "\"%s\" value isn't a valid array dimension!"
msgstr "\"%s\" n'est pas une dimension de tableau valide !"
-#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:752
+#: ../dialogs/ArrayTypeDialog.py:103 ../editors/DataTypeEditor.py:750
#, python-format
msgid ""
"\"%s\" value isn't a valid array dimension!\n"
@@ -202,17 +204,17 @@
msgid "\"{a1}\" function cancelled in \"{a2}\" POU: No input connected"
msgstr "Fonction \"{a1}\" annulée dans \"{a2}\" POU: Pas d'entrée connectée"
-#: ../editors/Viewer.py:250
+#: ../editors/Viewer.py:251
#, python-brace-format
msgid "\"{a1}\" is already used by \"{a2}\"!"
msgstr "\"{a1}\" est déjà utilisé par \"{a2}\"!"
-#: ../plcopen/plcopen.py:491
+#: ../plcopen/plcopen.py:496
#, python-brace-format
msgid "\"{a1}\" resource already exists in \"{a2}\" configuration !!!"
msgstr "La ressource \"{a1}\" existe déjà dans la configuration \"{a2}\" !"
-#: ../plcopen/plcopen.py:509
+#: ../plcopen/plcopen.py:514
#, python-brace-format
msgid "\"{a1}\" resource doesn't exist in \"{a2}\" configuration !!!"
msgstr "La ressource \"${a1}\" n'existe pas dans la configuration \"{a2}\" !"
@@ -250,12 +252,12 @@
msgid "%ds"
msgstr "%ds"
-#: ../PLCControler.py:1531
+#: ../PLCControler.py:1533
#, python-format
msgid "%s Data Types"
msgstr "Types de données de %s"
-#: ../PLCControler.py:1514
+#: ../PLCControler.py:1516
#, python-format
msgid "%s POUs"
msgstr "POUs de %s"
@@ -265,15 +267,15 @@
msgid "%s Profile"
msgstr "Profil %s"
-#: ../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
#, python-format
msgid "%s body don't have instances!"
msgstr "Le code d'un %s n'a pas d'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
#, python-format
msgid "%s body don't have text!"
msgstr "Le code d'un %s n'a pas de texte !"
@@ -327,11 +329,11 @@
msgid "&Program"
msgstr "&Programme"
-#: ../PLCOpenEditor.py:125
+#: ../PLCOpenEditor.py:127
msgid "&Properties"
msgstr "&Propriétés"
-#: ../Beremiz.py:324
+#: ../BeremizIDE.py:219
msgid "&Recent Projects"
msgstr "Projets &récent"
@@ -359,17 +361,17 @@
msgid "(%d matches)"
msgstr "(%d correspondances)"
-#: ../PLCOpenEditor.py:396 ../PLCOpenEditor.py:398 ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:406 ../PLCOpenEditor.py:408 ../PLCOpenEditor.py:409
msgid ", "
msgstr ", "
-#: ../dialogs/PouTransitionDialog.py:101 ../dialogs/PouActionDialog.py:93
-#: ../dialogs/PouDialog.py:115
+#: ../dialogs/PouTransitionDialog.py:96 ../dialogs/PouActionDialog.py:94
+#: ../dialogs/PouDialog.py:116
#, python-format
msgid ", %s"
msgstr ", %s"
-#: ../PLCOpenEditor.py:394
+#: ../PLCOpenEditor.py:404
msgid ". "
msgstr ". "
@@ -389,8 +391,8 @@
msgid "1s"
msgstr "1s"
-#: ../dialogs/PouDialog.py:124 ../IDEFrame.py:1613 ../IDEFrame.py:1659
-#: ../IDEFrame.py:1678
+#: ../dialogs/PouDialog.py:125 ../IDEFrame.py:1617 ../IDEFrame.py:1663
+#: ../IDEFrame.py:1682
#, python-format
msgid ""
"A POU has an element named \"%s\". This could cause a conflict. Do you wish "
@@ -399,9 +401,9 @@
"Un POU a un élément nommé \"%s\". Cela peut générer des conflits. Voulez-"
"vous continuer ?"
-#: ../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
#, python-format
msgid "A POU named \"%s\" already exists!"
msgstr "Un POU nommé \"%s\" existe déjà !"
@@ -411,7 +413,7 @@
msgid "A child named \"{a1}\" already exists -> \"{a2}\"\n"
msgstr "Un enfant nommé \"{a1}\" existe déjà -> \"{a2}\"\n"
-#: ../dialogs/BrowseLocationsDialog.py:216
+#: ../dialogs/BrowseLocationsDialog.py:218
msgid "A location must be selected!"
msgstr "Une adresse doit être sélectionné !"
@@ -419,18 +421,18 @@
msgid "A task with the same name already exists!"
msgstr "Une tâche du même nom existe déjà"
-#: ../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
#, python-format
msgid "A variable with \"%s\" as name already exists in this pou!"
msgstr "Une variable nommée \"%s\" existe déjà dans ce POU !"
-#: ../editors/CodeFileEditor.py:774
+#: ../editors/CodeFileEditor.py:780
#, python-format
msgid "A variable with \"%s\" as name already exists!"
msgstr "Une variable avec le nom \"%s\" existe déjà !"
-#: ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:158 ../Beremiz.py:381
+#: ../BeremizIDE.py:283 ../dialogs/AboutDialog.py:48 ../PLCOpenEditor.py:168
msgid "About"
msgstr "A propos"
@@ -438,15 +440,15 @@
msgid "Absolute number"
msgstr "Nombre absolu"
-#: ../dialogs/SFCStepDialog.py:72 ../dialogs/ActionBlockDialog.py:42
+#: ../dialogs/SFCStepDialog.py:73 ../dialogs/ActionBlockDialog.py:43
msgid "Action"
msgstr "Action"
-#: ../editors/Viewer.py:555 ../editors/Viewer.py:2356
+#: ../editors/Viewer.py:614 ../editors/Viewer.py:2394
msgid "Action Block"
msgstr "Ajouter un bloc fonctionnel"
-#: ../dialogs/PouActionDialog.py:81
+#: ../dialogs/PouActionDialog.py:82
msgid "Action Name"
msgstr "Nom de l'action"
@@ -454,12 +456,12 @@
msgid "Action Name:"
msgstr "Nom de l'action :"
-#: ../plcopen/plcopen.py:1359
+#: ../plcopen/plcopen.py:1364
#, python-format
msgid "Action with name %s doesn't exist!"
msgstr "L'action nommée %s n'existe pas !"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98
msgid "Actions"
msgstr "Actions"
@@ -467,16 +469,16 @@
msgid "Actions:"
msgstr "Actions :"
-#: ../editors/Viewer.py:1110
+#: ../editors/Viewer.py:431
msgid "Active"
msgstr "Actif"
#: ../canfestival/SlaveEditor.py:80 ../canfestival/NetworkEditor.py:101
-#: ../editors/Viewer.py:588 ../Beremiz.py:1060
+#: ../BeremizIDE.py:965 ../editors/Viewer.py:647
msgid "Add"
msgstr "Ajouter"
-#: ../IDEFrame.py:1889 ../IDEFrame.py:1924
+#: ../IDEFrame.py:1893 ../IDEFrame.py:1928
msgid "Add Action"
msgstr "Ajouter une action"
@@ -485,23 +487,23 @@
msgstr ""
"Ajoute un code C ayant accès à des variables localisées de façon synchrone"
-#: ../IDEFrame.py:1872
+#: ../IDEFrame.py:1876
msgid "Add Configuration"
msgstr "Ajouter une configuration"
-#: ../IDEFrame.py:1852
+#: ../IDEFrame.py:1856
msgid "Add DataType"
msgstr "Ajouter un type de donnée"
-#: ../editors/Viewer.py:513
+#: ../editors/Viewer.py:572
msgid "Add Divergence Branch"
msgstr "Ajouter une branche à la divergence"
-#: ../dialogs/DiscoveryDialog.py:116
+#: ../dialogs/DiscoveryDialog.py:117
msgid "Add IP"
msgstr "Ajouter IP"
-#: ../IDEFrame.py:1860
+#: ../IDEFrame.py:1864
msgid "Add POU"
msgstr "Ajouter un POU"
@@ -509,15 +511,15 @@
msgid "Add Python code executed asynchronously"
msgstr "Ajoute un code Python executé de façon asynchone"
-#: ../IDEFrame.py:1900 ../IDEFrame.py:1950
+#: ../IDEFrame.py:1904 ../IDEFrame.py:1954
msgid "Add Resource"
msgstr "Ajouter une resource"
-#: ../IDEFrame.py:1878 ../IDEFrame.py:1921
+#: ../IDEFrame.py:1882 ../IDEFrame.py:1925
msgid "Add Transition"
msgstr "Ajouter une transition"
-#: ../editors/Viewer.py:500
+#: ../editors/Viewer.py:559
msgid "Add Wire Segment"
msgstr "Ajouter un segment au fil"
@@ -525,7 +527,7 @@
msgid "Add a new initial step"
msgstr "Ajouter une nouvelle étape initiale"
-#: ../editors/Viewer.py:2717 ../editors/SFCViewer.py:770
+#: ../editors/Viewer.py:2757 ../editors/SFCViewer.py:770
msgid "Add a new jump"
msgstr "Ajouter un nouveau renvoi"
@@ -565,22 +567,22 @@
msgid "Addition"
msgstr "Addition"
-#: ../plcopen/definitions.py:47
+#: ../plcopen/definitions.py:49
msgid "Additional function blocks"
msgstr "Blocs fonctionnels additionnels"
-#: ../editors/Viewer.py:571
+#: ../editors/Viewer.py:630
msgid "Adjust Block Size"
msgstr "Ajuster la taille des blocs"
-#: ../editors/Viewer.py:1648
+#: ../editors/Viewer.py:1686
msgid "Alignment"
msgstr "Alignement"
-#: ../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
msgid "All"
msgstr "Tout"
@@ -589,11 +591,11 @@
msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv"
msgstr "Tous les fichiers|*.*|Fichiers CSV (*.csv)|*.csv"
-#: ../ProjectController.py:1644
+#: ../ProjectController.py:1685
msgid "Already connected. Please disconnect\n"
msgstr "Déjà connecté. Veuillez déconnecter\n"
-#: ../editors/DataTypeEditor.py:594
+#: ../editors/DataTypeEditor.py:591
#, python-format
msgid "An element named \"%s\" already exists in this structure!"
msgstr "Un élément nommé \"%s\" existe déjà dans la structure !"
@@ -602,7 +604,7 @@
msgid "An instance with the same name already exists!"
msgstr "Une instance avec le même nom existe déjà !"
-#: ../dialogs/ConnectionDialog.py:96
+#: ../dialogs/ConnectionDialog.py:100
msgid "Apply name modification to all continuations with the same name"
msgstr ""
"Appliquer la modification de nom à toutes les prolongements portant ce même "
@@ -624,8 +626,8 @@
msgid "Arithmetic"
msgstr "Arithmétique"
-#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:635
-#: ../controls/VariablePanel.py:841
+#: ../editors/DataTypeEditor.py:54 ../editors/DataTypeEditor.py:633
+#: ../controls/VariablePanel.py:858
msgid "Array"
msgstr "Tableau"
@@ -633,19 +635,19 @@
msgid "Assignment"
msgstr "Assignation"
-#: ../dialogs/FBDVariableDialog.py:217
+#: ../dialogs/FBDVariableDialog.py:222
msgid "At least a variable or an expression must be selected!"
msgstr "Au moins une variable ou une expression doit être sélectionné !"
-#: ../controls/ProjectPropertiesPanel.py:99
+#: ../controls/ProjectPropertiesPanel.py:100
msgid "Author"
msgstr "Auteur"
-#: ../controls/ProjectPropertiesPanel.py:96
+#: ../controls/ProjectPropertiesPanel.py:97
msgid "Author Name (optional):"
msgstr "Nom de l'auteur (optionel) :"
-#: ../dialogs/FindInPouDialog.py:79
+#: ../dialogs/FindInPouDialog.py:77
msgid "Backward"
msgstr "Vers le haut"
@@ -662,16 +664,16 @@
msgid "Bad location size : %s"
msgstr "Mauvaise taille d'adresse : %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
msgid "Base Type:"
msgstr "Type de base :"
-#: ../editors/DataTypeEditor.py:625 ../controls/VariablePanel.py:799
+#: ../editors/DataTypeEditor.py:623 ../controls/VariablePanel.py:816
msgid "Base Types"
msgstr "Types de base"
-#: ../Beremiz.py:553
+#: ../BeremizIDE.py:455
msgid "Beremiz"
msgstr "Beremiz"
@@ -703,11 +705,11 @@
msgid "Bitwise inverting"
msgstr "Inversion bit à bit"
-#: ../editors/Viewer.py:525 ../editors/Viewer.py:2369
+#: ../editors/Viewer.py:584 ../editors/Viewer.py:2407
msgid "Block"
msgstr "Block"
-#: ../dialogs/FBDBlockDialog.py:59
+#: ../dialogs/FBDBlockDialog.py:60
msgid "Block Properties"
msgstr "Propriétés du bloc"
@@ -715,15 +717,15 @@
msgid "Block name"
msgstr "Nom du bloc"
-#: ../editors/Viewer.py:491
+#: ../editors/Viewer.py:550
msgid "Bottom"
msgstr "Bas"
-#: ../ProjectController.py:1322
+#: ../ProjectController.py:1363
msgid "Broken"
msgstr "Cassé"
-#: ../dialogs/BrowseValuesLibraryDialog.py:37
+#: ../dialogs/BrowseValuesLibraryDialog.py:38
#, python-format
msgid "Browse %s values library"
msgstr "Explorer la liste des valeurs du paramètre '%s'"
@@ -732,23 +734,23 @@
msgid "Browse Locations"
msgstr "Naviger dans les adresses"
-#: ../ProjectController.py:1790
+#: ../ProjectController.py:1832
msgid "Build"
msgstr "Compiler"
-#: ../ProjectController.py:1256
+#: ../ProjectController.py:1297
msgid "Build directory already clean\n"
msgstr "Le répertoire de compilation est déjà nettoyé\n"
-#: ../ProjectController.py:1791
+#: ../ProjectController.py:1833
msgid "Build project into build folder"
msgstr "Compiler le projet dans le répertoire ce compilation"
-#: ../ProjectController.py:1039
+#: ../ProjectController.py:1080
msgid "C Build crashed !\n"
msgstr "La compilation du C a mal fonctionné !\n"
-#: ../ProjectController.py:1036
+#: ../ProjectController.py:1077
msgid "C Build failed.\n"
msgstr "La compilation du C a échouée !\n"
@@ -756,7 +758,7 @@
msgid "C code"
msgstr "Code C"
-#: ../ProjectController.py:1114
+#: ../ProjectController.py:1155
msgid "C code generated successfully.\n"
msgstr "Code C généré avec succès.\n"
@@ -764,7 +766,7 @@
msgid "C compilation failed.\n"
msgstr "La compilation a échouée\n"
-#: ../targets/toolchain_gcc.py:156
+#: ../targets/toolchain_gcc.py:192
#, python-format
msgid "C compilation of %s failed.\n"
msgstr "La compilation C de %s a échouée.\n"
@@ -789,8 +791,8 @@
msgid "CANopen support"
msgstr "Support CANopen"
-#: ../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!"
msgstr "L'ordre d'exécution ne peut être généré que dans les FBD !"
@@ -799,7 +801,7 @@
msgstr ""
"Une adresse ne peut être affecté qu'à des variables locales ou globales"
-#: ../PLCOpenEditor.py:334
+#: ../PLCOpenEditor.py:344
#, python-format
msgid "Can't generate program to file %s!"
msgstr "Le programme n'a pu être généré dans le fichier \"%s\" !"
@@ -808,7 +810,7 @@
msgid "Can't give a location to a function block instance"
msgstr "Une adresse ne peut être affectée à une instance de Function Block"
-#: ../PLCOpenEditor.py:379
+#: ../PLCOpenEditor.py:389
#, python-format
msgid "Can't save project to file %s!"
msgstr "Le projet n'a pu être sauvé dans le fichier \"%s\" !"
@@ -832,7 +834,7 @@
msgid "Cannot get PLC status - connection failed.\n"
msgstr "Impossible d'obtenir le statut de l'automate - la connexion a échoué.\n"
-#: ../ProjectController.py:902
+#: ../ProjectController.py:943
msgid "Cannot open/parse VARIABLES.csv!\n"
msgstr "Impossible d'ouvrir ou d'analyser le fichier VARIABLES.csv !\n"
@@ -845,31 +847,31 @@
"Impossible de configurer l'offset du bit de la variable non booléenne '{a1}'"
" (ID:{a2},Idx:{a3},sIdx:{a4}))"
-#: ../dialogs/SearchInProjectDialog.py:59 ../dialogs/FindInPouDialog.py:88
+#: ../dialogs/SearchInProjectDialog.py:59 ../dialogs/FindInPouDialog.py:86
msgid "Case sensitive"
msgstr "Respecter la casse"
-#: ../editors/Viewer.py:486
+#: ../editors/Viewer.py:545
msgid "Center"
msgstr "Centre"
-#: ../Beremiz_service.py:266
+#: ../Beremiz_service.py:268
msgid "Change IP of interface to bind"
msgstr "Changer l'adresse IP de l'interface à lier"
-#: ../Beremiz_service.py:265
+#: ../Beremiz_service.py:267
msgid "Change Name"
msgstr "Changer le nom"
-#: ../IDEFrame.py:1942
+#: ../IDEFrame.py:1946
msgid "Change POU Type To"
msgstr "Changer le type du POU pour"
-#: ../Beremiz_service.py:267
+#: ../Beremiz_service.py:269
msgid "Change Port Number"
msgstr "Changer le numéro de port"
-#: ../Beremiz_service.py:268
+#: ../Beremiz_service.py:270
msgid "Change working directory"
msgstr "Changer le dossier de travail"
@@ -877,38 +879,38 @@
msgid "Character string"
msgstr "Chaîne de caractères"
-#: ../svgui/svgui.py:125
+#: ../svgui/svgui.py:128
msgid "Choose a SVG file"
msgstr "Choisissez un fichier SVG"
-#: ../ProjectController.py:501
+#: ../ProjectController.py:542
msgid "Choose a directory to save project"
msgstr "Choisissez un dossier où enregistrer le projet"
-#: ../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
msgid "Choose a file"
msgstr "Choisissez un fichier"
-#: ../Beremiz.py:931 ../Beremiz.py:966
+#: ../BeremizIDE.py:833 ../BeremizIDE.py:869
msgid "Choose a project"
msgstr "Choisissez un projet"
-#: ../dialogs/BrowseValuesLibraryDialog.py:42
+#: ../dialogs/BrowseValuesLibraryDialog.py:41
#, python-format
msgid "Choose a value for %s:"
msgstr "Choisissez une valeur pour le paramètre %s :"
-#: ../Beremiz_service.py:323
+#: ../Beremiz_service.py:325
msgid "Choose a working directory "
msgstr "Choisissez un dossier de travail"
-#: ../ProjectController.py:408
+#: ../ProjectController.py:449
msgid "Chosen folder doesn't contain a program. It's not a valid project!"
msgstr ""
"Le répertoire ne contient pas de programme. Ce n'est pas un projet valide !"
-#: ../ProjectController.py:375
+#: ../ProjectController.py:416
msgid "Chosen folder isn't empty. You can't use it for a new project!"
msgstr ""
"Le répertoire n'est pas vide. Vous ne pouvez pas l'utiliser pour créer un "
@@ -922,11 +924,11 @@
msgid "Class Filter:"
msgstr "Filtre de classe :"
-#: ../dialogs/FBDVariableDialog.py:69
+#: ../dialogs/FBDVariableDialog.py:70
msgid "Class:"
msgstr "Classe :"
-#: ../ProjectController.py:1794
+#: ../ProjectController.py:1836
msgid "Clean"
msgstr "Nettoyer"
@@ -934,11 +936,11 @@
msgid "Clean log messages"
msgstr "Nettoyer les messages de log"
-#: ../ProjectController.py:1796
+#: ../ProjectController.py:1838
msgid "Clean project build folder"
msgstr "Nettoyer le répertoire de compilation"
-#: ../ProjectController.py:1253
+#: ../ProjectController.py:1294
msgid "Cleaning the build directory\n"
msgstr "Répertoire de compilation en cours de nettoyage\n"
@@ -946,44 +948,49 @@
msgid "Clear Errors"
msgstr "Effacer les erreurs"
-#: ../editors/Viewer.py:582
+#: ../editors/Viewer.py:641
msgid "Clear Execution Order"
msgstr "Effacer l'ordre d'exécution"
-#: ../dialogs/SearchInProjectDialog.py:105 ../dialogs/FindInPouDialog.py:111
+#: ../dialogs/SearchInProjectDialog.py:103 ../dialogs/FindInPouDialog.py:109
msgid "Close"
msgstr "Fermer"
-#: ../PLCOpenEditor.py:199 ../Beremiz.py:693
+#: ../BeremizIDE.py:595 ../PLCOpenEditor.py:209
msgid "Close Application"
msgstr "Fermer l'application"
-#: ../PLCOpenEditor.py:108 ../Beremiz.py:333 ../Beremiz.py:637
-#: ../IDEFrame.py:1009
+#: ../BeremizIDE.py:228 ../BeremizIDE.py:539 ../PLCOpenEditor.py:110
+#: ../IDEFrame.py:1013
msgid "Close Project"
msgstr "Fermer le projet"
-#: ../PLCOpenEditor.py:106 ../Beremiz.py:331
+#: ../BeremizIDE.py:226 ../PLCOpenEditor.py:108
msgid "Close Tab"
msgstr "Fermer l'onglet"
-#: ../editors/Viewer.py:541 ../editors/Viewer.py:2377
+#: ../editors/Viewer.py:600 ../editors/Viewer.py:2415
msgid "Coil"
msgstr "Relai"
-#: ../editors/Viewer.py:561 ../editors/LDViewer.py:506
+#: ../editors/Viewer.py:620 ../editors/LDViewer.py:506
msgid "Comment"
msgstr "Commentaire"
-#: ../dialogs/ProjectDialog.py:57
+#: ../BeremizIDE.py:276 ../BeremizIDE.py:279 ../PLCOpenEditor.py:161
+#: ../PLCOpenEditor.py:164
+msgid "Community support"
+msgstr ""
+
+#: ../dialogs/ProjectDialog.py:60
msgid "Company Name"
msgstr "Nom de l'entreprise"
-#: ../controls/ProjectPropertiesPanel.py:94
+#: ../controls/ProjectPropertiesPanel.py:95
msgid "Company Name (required):"
msgstr "Nom de l'entreprise (obligatoire) :"
-#: ../controls/ProjectPropertiesPanel.py:95
+#: ../controls/ProjectPropertiesPanel.py:96
msgid "Company URL (optional):"
msgstr "URL de l'entreprise (optionel) :"
@@ -991,7 +998,7 @@
msgid "Comparison"
msgstr "Comparaison"
-#: ../ProjectController.py:693
+#: ../ProjectController.py:734
msgid "Compiling IEC Program into C code...\n"
msgstr "Compilation du program en IEC vers du code C en cours...\n"
@@ -999,7 +1006,7 @@
msgid "Concatenation"
msgstr "Concaténation"
-#: ../editors/ConfTreeNodeEditor.py:229
+#: ../editors/ConfTreeNodeEditor.py:230
msgid "Config"
msgstr "Configuration"
@@ -1007,47 +1014,47 @@
msgid "Config variables"
msgstr "Variables de configuration"
-#: ../dialogs/SearchInProjectDialog.py:39
+#: ../dialogs/SearchInProjectDialog.py:40
msgid "Configuration"
msgstr "Configuration"
-#: ../PLCControler.py:97
+#: ../PLCControler.py:99
msgid "Configurations"
msgstr "Configurations"
-#: ../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"
msgstr "Confirmer ou changer de nom de variable"
-#: ../ProjectController.py:1809
+#: ../ProjectController.py:1851
msgid "Connect"
msgstr "Connecter"
-#: ../ProjectController.py:1810
+#: ../ProjectController.py:1852
msgid "Connect to the target PLC"
msgstr "Connecter à l'automate cible"
-#: ../ProjectController.py:1313
+#: ../ProjectController.py:1354
#, python-format
msgid "Connected to URI: %s"
msgstr "Connecté à l'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:2408
msgid "Connection"
msgstr "Connexion"
-#: ../dialogs/ConnectionDialog.py:52
+#: ../dialogs/ConnectionDialog.py:53
msgid "Connection Properties"
msgstr "Propriétés de la connexion"
-#: ../ProjectController.py:1668
+#: ../ProjectController.py:1709
msgid "Connection canceled!\n"
msgstr "La connection a été abandonnée !\n"
-#: ../ProjectController.py:1693
+#: ../ProjectController.py:1734
#, python-format
msgid "Connection failed to %s!\n"
msgstr "La connection à \"%s\" a échouée !\n"
@@ -1061,15 +1068,15 @@
msgid "Connection to '%s' failed.\n"
msgstr "La connexion à l'adresse '%s' a échouée.\n"
-#: ../dialogs/ConnectionDialog.py:64 ../editors/Viewer.py:1605
+#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1643
msgid "Connector"
msgstr "Connecteur"
-#: ../dialogs/SFCStepDialog.py:65
+#: ../dialogs/SFCStepDialog.py:66
msgid "Connectors:"
msgstr "Connecteurs :"
-#: ../Beremiz.py:448
+#: ../BeremizIDE.py:350
msgid "Console"
msgstr "Console"
@@ -1077,15 +1084,15 @@
msgid "Constant"
msgstr "Constante"
-#: ../editors/Viewer.py:537 ../editors/Viewer.py:2373
+#: ../editors/Viewer.py:596 ../editors/Viewer.py:2411
msgid "Contact"
msgstr "Contact"
-#: ../controls/ProjectPropertiesPanel.py:197
+#: ../controls/ProjectPropertiesPanel.py:198
msgid "Content Description (optional):"
msgstr "Description du contenu (optionel) :"
-#: ../dialogs/ConnectionDialog.py:65 ../editors/Viewer.py:1606
+#: ../dialogs/ConnectionDialog.py:66 ../editors/Viewer.py:1644
msgid "Continuation"
msgstr "Prolongement"
@@ -1105,12 +1112,12 @@
msgid "Conversion to time-of-day"
msgstr "Conversion en heure de la journée"
-#: ../editors/Viewer.py:597 ../controls/LogViewer.py:693 ../IDEFrame.py:370
+#: ../editors/Viewer.py:656 ../controls/LogViewer.py:704 ../IDEFrame.py:370
#: ../IDEFrame.py:425
msgid "Copy"
msgstr "Copier"
-#: ../IDEFrame.py:1929
+#: ../IDEFrame.py:1933
msgid "Copy POU"
msgstr "Copier ce POU"
@@ -1135,7 +1142,7 @@
"Impossible d'ajouter l'enfant \"{a1}\", de type {a2}:\n"
"{a3}\n"
-#: ../py_ext/PythonFileCTNMixin.py:77
+#: ../py_ext/PythonFileCTNMixin.py:78
#, python-format
msgid "Couldn't import old %s file."
msgstr "Impossible d'importer l'ancien fichier %s"
@@ -1158,27 +1165,27 @@
"Impossible de charger les parametres confnode {a1}:\n"
"{a2}"
-#: ../PLCControler.py:946
+#: ../PLCControler.py:948
msgid "Couldn't paste non-POU object."
msgstr "Impossible de coller autre chose qu'un POU."
-#: ../ProjectController.py:1610
+#: ../ProjectController.py:1651
msgid "Couldn't start PLC !\n"
msgstr "Impossible de démarrer l'automate !\n"
-#: ../ProjectController.py:1618
+#: ../ProjectController.py:1659
msgid "Couldn't stop PLC !\n"
msgstr "Impossible d'arrêter l'automate !\n"
-#: ../ProjectController.py:1582
+#: ../ProjectController.py:1623
msgid "Couldn't stop debugger.\n"
msgstr "Impossible d'arrêter le débogage de l'automate !\n"
-#: ../svgui/svgui.py:47
+#: ../svgui/svgui.py:49
msgid "Create HMI"
msgstr "Créer une IHM"
-#: ../dialogs/PouDialog.py:45
+#: ../dialogs/PouDialog.py:46
msgid "Create a new POU"
msgstr "Créer un nouveau POU"
@@ -1242,7 +1249,7 @@
msgid "Create a new step"
msgstr "Créer une nouvelle étape"
-#: ../dialogs/PouTransitionDialog.py:47 ../IDEFrame.py:156
+#: ../dialogs/PouTransitionDialog.py:42 ../IDEFrame.py:156
msgid "Create a new transition"
msgstr "Créer une nouvelle transition"
@@ -1254,11 +1261,11 @@
msgid "Credits"
msgstr "Credits"
-#: ../Beremiz_service.py:432
+#: ../Beremiz_service.py:434
msgid "Current working directory :"
msgstr "Répertoire de travail actuel :"
-#: ../editors/Viewer.py:596 ../IDEFrame.py:368 ../IDEFrame.py:424
+#: ../editors/Viewer.py:655 ../IDEFrame.py:368 ../IDEFrame.py:424
msgid "Cut"
msgstr "Couper"
@@ -1282,11 +1289,11 @@
msgid "DS-302 Profile"
msgstr "Profil DS-302"
-#: ../dialogs/SearchInProjectDialog.py:35
+#: ../dialogs/SearchInProjectDialog.py:36
msgid "Data Type"
msgstr "Type de donnée"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98
msgid "Data Types"
msgstr "Types de données"
@@ -1307,11 +1314,11 @@
msgid "Date subtraction"
msgstr "Soustraction de date"
-#: ../dialogs/DurationEditorDialog.py:43
+#: ../dialogs/DurationEditorDialog.py:44
msgid "Days:"
msgstr "Jours :"
-#: ../ProjectController.py:1715
+#: ../ProjectController.py:1756
msgid "Debug does not match PLC - stop/transfert/start to re-enable\n"
msgstr ""
"Les informations de débogage ne correspond pas l'automate connecté - "
@@ -1321,17 +1328,17 @@
msgid "Debug instance"
msgstr "Déboguer l'instance"
-#: ../editors/Viewer.py:1127 ../editors/Viewer.py:3664
+#: ../editors/Viewer.py:448
#, python-format
msgid "Debug: %s"
msgstr "Débogage : %s"
-#: ../ProjectController.py:1371
+#: ../ProjectController.py:1412
#, python-format
msgid "Debug: Unknown variable '%s'\n"
msgstr "Débogage : Variable '%s' inconnue\n"
-#: ../ProjectController.py:1369
+#: ../ProjectController.py:1410
#, python-format
msgid "Debug: Unsupported type to debug '%s'\n"
msgstr "Débogage : Type non supporté dans le débogage '%'\n"
@@ -1340,23 +1347,23 @@
msgid "Debugger"
msgstr "Déboggueur"
-#: ../ProjectController.py:1551
+#: ../ProjectController.py:1592
msgid "Debugger disabled\n"
msgstr "Débogueur désactivé\n"
-#: ../ProjectController.py:1712
+#: ../ProjectController.py:1753
msgid "Debugger ready\n"
msgstr "Débogueur \n"
-#: ../ProjectController.py:1584
+#: ../ProjectController.py:1625
msgid "Debugger stopped.\n"
msgstr "Débogueur désactivé\n"
-#: ../editors/Viewer.py:572 ../Beremiz.py:1064 ../IDEFrame.py:1958
+#: ../BeremizIDE.py:968 ../editors/Viewer.py:631 ../IDEFrame.py:1962
msgid "Delete"
msgstr "Supprimer"
-#: ../editors/Viewer.py:514
+#: ../editors/Viewer.py:573
msgid "Delete Divergence Branch"
msgstr "Supprimer une branche de divergence"
@@ -1364,7 +1371,7 @@
msgid "Delete File"
msgstr "Supprimer un fichier"
-#: ../editors/Viewer.py:501
+#: ../editors/Viewer.py:560
msgid "Delete Wire Segment"
msgstr "Supprimer un segment de fil"
@@ -1380,19 +1387,23 @@
msgid "Derivation Type:"
msgstr "Type de dérivation :"
+#: ../editors/CodeFileEditor.py:739
+msgid "Description"
+msgstr ""
+
#: ../controls/VariablePanel.py:432
msgid "Description:"
msgstr "Description :"
-#: ../dialogs/ArrayTypeDialog.py:61 ../editors/DataTypeEditor.py:321
+#: ../dialogs/ArrayTypeDialog.py:60 ../editors/DataTypeEditor.py:321
msgid "Dimensions:"
msgstr "Dimensions :"
-#: ../dialogs/FindInPouDialog.py:68
+#: ../dialogs/FindInPouDialog.py:66
msgid "Direction"
msgstr "Direction"
-#: ../dialogs/BrowseLocationsDialog.py:90
+#: ../dialogs/BrowseLocationsDialog.py:91
msgid "Direction:"
msgstr "Direction :"
@@ -1400,19 +1411,19 @@
msgid "Directly"
msgstr "Direct"
-#: ../ProjectController.py:1818
+#: ../ProjectController.py:1860
msgid "Disconnect"
msgstr "Déconnecter"
-#: ../ProjectController.py:1820
+#: ../ProjectController.py:1862
msgid "Disconnect from PLC"
msgstr "Déconnecter l'automate"
-#: ../ProjectController.py:1323
+#: ../ProjectController.py:1364
msgid "Disconnected"
msgstr "Déconnecté"
-#: ../editors/Viewer.py:556 ../editors/Viewer.py:2365
+#: ../editors/Viewer.py:615 ../editors/Viewer.py:2403
msgid "Divergence"
msgstr "Divergence"
@@ -1429,19 +1440,19 @@
msgid "Documentation"
msgstr "Documentation"
-#: ../PLCOpenEditor.py:328
+#: ../PLCOpenEditor.py:338
msgid "Done"
msgstr "Terminé"
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39
msgid "Duration"
msgstr "Durée"
-#: ../canfestival/canfestival.py:163
+#: ../canfestival/canfestival.py:165
msgid "EDS files (*.eds)|*.eds|All files|*.*"
msgstr "Fichiers EDS (*.eds)|*.eds|Tous les fichiers|*.*"
-#: ../editors/Viewer.py:570
+#: ../editors/Viewer.py:629
msgid "Edit Block"
msgstr "Editer le block"
@@ -1457,11 +1468,11 @@
msgid "Edit Duration"
msgstr "Editer une durée"
-#: ../dialogs/SFCStepDialog.py:50
+#: ../dialogs/SFCStepDialog.py:51
msgid "Edit Step"
msgstr "Editer l'étape"
-#: ../wxglade_hmi/wxglade_hmi.py:36
+#: ../wxglade_hmi/wxglade_hmi.py:38
msgid "Edit a WxWidgets GUI with WXGlade"
msgstr "Editer une IHM WxWidgets à l'aide de WXGlade"
@@ -1469,11 +1480,11 @@
msgid "Edit action block properties"
msgstr "Editer les propriétés du block d'actions"
-#: ../dialogs/ArrayTypeDialog.py:45
+#: ../dialogs/ArrayTypeDialog.py:44
msgid "Edit array type properties"
msgstr "Editer les propriétés d'un type de données tableau"
-#: ../editors/Viewer.py:2586 ../editors/Viewer.py:3015
+#: ../editors/Viewer.py:2626 ../editors/Viewer.py:3055
msgid "Edit comment"
msgstr "Editer le commentaire"
@@ -1485,11 +1496,11 @@
msgid "Edit item"
msgstr "Editer l'élément"
-#: ../editors/Viewer.py:2974
+#: ../editors/Viewer.py:3014
msgid "Edit jump target"
msgstr "Editer la cible du renvoi"
-#: ../ProjectController.py:1832
+#: ../ProjectController.py:1874
msgid "Edit raw IEC code added to code generated by PLCGenerator"
msgstr "Editer le code IEC ajouté au code généré par PLCGenerator"
@@ -1497,7 +1508,7 @@
msgid "Edit step name"
msgstr "Editer le nom de l'étape"
-#: ../dialogs/SFCTransitionDialog.py:51
+#: ../dialogs/SFCTransitionDialog.py:52
msgid "Edit transition"
msgstr "Editer la transition"
@@ -1505,7 +1516,7 @@
msgid "Editor ToolBar"
msgstr "Barre d'outils d'édition"
-#: ../ProjectController.py:1216
+#: ../ProjectController.py:1257
msgid "Editor selection"
msgstr "Selection d'un éditeur"
@@ -1513,7 +1524,7 @@
msgid "Elements :"
msgstr "Eléments :"
-#: ../ProjectController.py:1321
+#: ../ProjectController.py:1362
msgid "Empty"
msgstr "Vide"
@@ -1521,15 +1532,15 @@
msgid "Enable Undo/Redo"
msgstr "Activer Défaire/Refaire"
-#: ../Beremiz_service.py:331
+#: ../Beremiz_service.py:333
msgid "Enter a name "
msgstr "Saisissez un nom"
-#: ../Beremiz_service.py:316
+#: ../Beremiz_service.py:318
msgid "Enter a port number "
msgstr "Saisissez un numéro de port"
-#: ../Beremiz_service.py:307
+#: ../Beremiz_service.py:309
msgid "Enter the IP of the interface to bind"
msgstr "Saisissez l'adresse IP de l'interface à lier"
@@ -1541,38 +1552,37 @@
msgid "Equal to"
msgstr "Egal à"
-#: ../dialogs/ForceVariableDialog.py:179
+#: ../BeremizIDE.py:1107 ../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/ArrayTypeDialog.py:97
+#: ../dialogs/DurationEditorDialog.py:167
+#: ../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/BrowseLocationsDialog.py:218
#: ../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 ../editors/LDViewer.py:666
+#: ../dialogs/PouActionDialog.py:105 ../dialogs/PouDialog.py:135
+#: ../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
+#: ../editors/DataTypeEditor.py:574 ../editors/DataTypeEditor.py:743
+#: ../editors/DataTypeEditor.py:750 ../editors/TextViewer.py:389
+#: ../editors/CodeFileEditor.py:762 ../ProjectController.py:372
+#: ../ProjectController.py:512 ../ProjectController.py:519
#: ../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
msgid "Error"
msgstr "Erreur"
-#: ../ProjectController.py:748
+#: ../ProjectController.py:789
msgid ""
"Error : At least one configuration and one resource must be declared in PLC "
"!\n"
@@ -1580,12 +1590,12 @@
"Erreur : Au moins une configuration ou une ressource doit être déclarée dans"
" l'automate !\n"
-#: ../ProjectController.py:740
+#: ../ProjectController.py:781
#, python-format
msgid "Error : IEC to C compiler returned %d\n"
msgstr "Erreur : Le compilateur d'IEC en C a retourné %d\n"
-#: ../ProjectController.py:671
+#: ../ProjectController.py:712
#, python-format
msgid ""
"Error in ST/IL/SFC code generator :\n"
@@ -1599,28 +1609,28 @@
msgid "Error while saving \"%s\"\n"
msgstr "Erreur lors de l'enregistrement de \"%s\"\n"
-#: ../canfestival/canfestival.py:168
+#: ../canfestival/canfestival.py:170
msgid "Error: Export slave failed\n"
msgstr "Erreur : L'export de l'esclave a échoué\n"
-#: ../canfestival/canfestival.py:369
+#: ../canfestival/canfestival.py:371
msgid "Error: No Master generated\n"
msgstr "Erreur : Aucun maître généré\n"
-#: ../canfestival/canfestival.py:364
+#: ../canfestival/canfestival.py:366
msgid "Error: No PLC built\n"
msgstr "Erreur : Aucun automate compilé\n"
-#: ../ProjectController.py:1687
+#: ../ProjectController.py:1728
#, python-format
msgid "Exception while connecting %s!\n"
msgstr "Une exception est apparu au cours de la connexion %s !\n"
-#: ../dialogs/FBDBlockDialog.py:117
+#: ../dialogs/FBDBlockDialog.py:120
msgid "Execution Control:"
msgstr "Contrôle d'exécution :"
-#: ../dialogs/FBDVariableDialog.py:79 ../dialogs/FBDBlockDialog.py:105
+#: ../dialogs/FBDVariableDialog.py:80 ../dialogs/FBDBlockDialog.py:108
msgid "Execution Order:"
msgstr "Ordre d'exécution :"
@@ -1636,7 +1646,7 @@
msgid "Exponentiation"
msgstr "Exponentiel"
-#: ../canfestival/canfestival.py:174
+#: ../canfestival/canfestival.py:176
msgid "Export CanOpen slave to EDS file"
msgstr "Exporter un esclave CANopen sous la forme d'un fichier EDS"
@@ -1644,11 +1654,11 @@
msgid "Export graph values to clipboard"
msgstr "Exporter les valeurs du graphique vers le presse-papier"
-#: ../canfestival/canfestival.py:173
+#: ../canfestival/canfestival.py:175
msgid "Export slave"
msgstr "Exporter un esclave"
-#: ../dialogs/FBDVariableDialog.py:89
+#: ../dialogs/FBDVariableDialog.py:90
msgid "Expression:"
msgstr "Expression :"
@@ -1656,38 +1666,38 @@
msgid "External"
msgstr "Externe"
-#: ../ProjectController.py:761
+#: ../ProjectController.py:802
msgid "Extracting Located Variables...\n"
msgstr "Extraction des variables adressées en cours...\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
msgid "FBD"
msgstr "FBD"
-#: ../ProjectController.py:1750
+#: ../ProjectController.py:1791
msgid "Failed : Must build before transfer.\n"
msgstr "Echec : Le projet doit être compilé avant d'être transféré.\n"
-#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:462
+#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:521
msgid "Falling Edge"
msgstr "Front descendant"
-#: ../ProjectController.py:1029
+#: ../ProjectController.py:1070
msgid "Fatal : cannot get builder.\n"
msgstr "Erreur fatale : impossible de trouver un compilateur.\n"
-#: ../Beremiz.py:118
+#: ../Beremiz.py:156
#, python-format
msgid "Fetching %s"
msgstr "Recherche %s"
-#: ../dialogs/DurationEditorDialog.py:160
+#: ../dialogs/DurationEditorDialog.py:164
#, python-format
msgid "Field %s hasn't a valid value!"
msgstr "Le champ %s n'a pas une valeur valide !"
-#: ../dialogs/DurationEditorDialog.py:162
+#: ../dialogs/DurationEditorDialog.py:166
#, python-format
msgid "Fields %s haven't a valid value!"
msgstr "Les champs %s n'ont pas une valeur valide !"
@@ -1697,8 +1707,8 @@
msgid "File '%s' already exists!"
msgstr "Le fichier '%s' existe déjà !"
-#: ../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
msgid "Find"
msgstr "Rechercher"
@@ -1714,7 +1724,7 @@
msgid "Find position"
msgstr "Trouver la position"
-#: ../dialogs/FindInPouDialog.py:57
+#: ../dialogs/FindInPouDialog.py:55
msgid "Find:"
msgstr "Rechercher :"
@@ -1722,7 +1732,7 @@
msgid "Force runtime reload\n"
msgstr "Redémarrage du runtime forcé\n"
-#: ../editors/Viewer.py:1564
+#: ../editors/Viewer.py:1600
msgid "Force value"
msgstr "Forcer la valeur"
@@ -1730,28 +1740,28 @@
msgid "Forcing Variable Value"
msgstr "Forcer la valeur de la variable"
-#: ../dialogs/SFCTransitionDialog.py:179 ../dialogs/PouTransitionDialog.py:102
-#: ../dialogs/ProjectDialog.py:70 ../dialogs/PouActionDialog.py:94
-#: ../dialogs/PouDialog.py:116
+#: ../dialogs/SFCTransitionDialog.py:182 ../dialogs/PouTransitionDialog.py:97
+#: ../dialogs/ProjectDialog.py:73 ../dialogs/PouActionDialog.py:95
+#: ../dialogs/PouDialog.py:117
#, python-format
msgid "Form isn't complete. %s must be filled!"
msgstr "Le formulaire est incomplet. %s doit être complété !"
-#: ../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!"
msgstr "Le formulaire est incomplet. Le nom doit être complété !"
-#: ../dialogs/FBDBlockDialog.py:228
+#: ../dialogs/FBDBlockDialog.py:232
msgid "Form isn't complete. Valid block type must be selected!"
msgstr ""
"Le formulaire est incomplet. Un type de bloc valide doit être sélectionné !"
-#: ../dialogs/FindInPouDialog.py:74
+#: ../dialogs/FindInPouDialog.py:72
msgid "Forward"
msgstr "Vers le bas"
-#: ../dialogs/SearchInProjectDialog.py:36 ../IDEFrame.py:1745
+#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1749
msgid "Function"
msgstr "Fonction"
@@ -1759,37 +1769,37 @@
msgid "Function &Block"
msgstr "&Bloc Fonctionnel"
-#: ../dialogs/SearchInProjectDialog.py:37 ../IDEFrame.py:1744
-#: ../IDEFrame.py:1937
+#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1748
+#: ../IDEFrame.py:1941
msgid "Function Block"
msgstr "Bloc fonctionnel"
-#: ../controls/VariablePanel.py:837
+#: ../controls/VariablePanel.py:854
msgid "Function Block Types"
msgstr "Types de blocs fonctionnels"
-#: ../PLCControler.py:95
+#: ../PLCControler.py:97
msgid "Function Blocks"
msgstr "Blocs fonctionnels"
-#: ../editors/Viewer.py:248
+#: ../editors/Viewer.py:249
msgid "Function Blocks can't be used in Functions!"
msgstr "Les blocs fonctionnels ne peuvent être utilisés dans des functions !"
-#: ../PLCControler.py:2337
+#: ../PLCControler.py:2343
#, python-format
msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!"
msgstr "Le bloc fonctionnel \"%s\" ne peuvent être collés dans une function !"
-#: ../PLCControler.py:95
+#: ../PLCControler.py:97
msgid "Functions"
msgstr "Fonctions"
-#: ../PLCOpenEditor.py:115
+#: ../PLCOpenEditor.py:117
msgid "Generate Program"
msgstr "Générer le program"
-#: ../ProjectController.py:662
+#: ../ProjectController.py:703
msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n"
msgstr "Création du code ST/IL/SFC de l'automate IEC-61131 en cours...\n"
@@ -1801,7 +1811,7 @@
msgid "Go to current value"
msgstr "Aller à la valeur actuelle"
-#: ../controls/ProjectPropertiesPanel.py:173
+#: ../controls/ProjectPropertiesPanel.py:174
msgid "Graphics"
msgstr "Graphiques"
@@ -1813,15 +1823,15 @@
msgid "Greater than or equal to"
msgstr "Supérieur ou égal à"
-#: ../controls/ProjectPropertiesPanel.py:134
+#: ../controls/ProjectPropertiesPanel.py:135
msgid "Grid Resolution:"
msgstr "Résolution de la grille :"
-#: ../runtime/NevowServer.py:181
+#: ../runtime/NevowServer.py:182
msgid "HTTP interface port :"
msgstr "Port d'interface HTTP:"
-#: ../controls/ProjectPropertiesPanel.py:120
+#: ../controls/ProjectPropertiesPanel.py:121
msgid "Height:"
msgstr "Hauteur :"
@@ -1829,15 +1839,16 @@
msgid "Home Directory:"
msgstr "Répertoire utilisateur :"
-#: ../controls/ProjectPropertiesPanel.py:150
+#: ../controls/ProjectPropertiesPanel.py:151
msgid "Horizontal:"
msgstr "Horizontal :"
-#: ../dialogs/DurationEditorDialog.py:44
+#: ../dialogs/DurationEditorDialog.py:45
msgid "Hours:"
msgstr "Heures :"
-#: ../dialogs/PouActionDialog.py:31 ../dialogs/PouDialog.py:36
+#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32
+#: ../dialogs/PouDialog.py:37
msgid "IL"
msgstr "IL"
@@ -1845,20 +1856,20 @@
msgid "IP"
msgstr "IP"
-#: ../Beremiz_service.py:308 ../Beremiz_service.py:309
+#: ../Beremiz_service.py:310 ../Beremiz_service.py:311
msgid "IP is not valid!"
msgstr "l'IP est invalide !"
-#: ../svgui/svgui.py:42 ../svgui/svgui.py:43
+#: ../svgui/svgui.py:44 ../svgui/svgui.py:45
msgid "Import SVG"
msgstr "Importer un SVG"
-#: ../dialogs/FBDVariableDialog.py:38 ../editors/Viewer.py:1591
+#: ../dialogs/FBDVariableDialog.py:39 ../editors/Viewer.py:1629
#: ../controls/VariablePanel.py:71
msgid "InOut"
msgstr "Entrée-Sortie"
-#: ../editors/Viewer.py:1110
+#: ../editors/Viewer.py:431
msgid "Inactive"
msgstr "Inactif"
@@ -1877,11 +1888,15 @@
msgid "Incompatible size of data between \"{a1}\" and \"{a2}\""
msgstr "Taille de données incompatible entre \"{a1}\" et \"{a2}\""
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39
msgid "Indicator"
msgstr "Indicateur"
-#: ../editors/Viewer.py:552
+#: ../editors/CodeFileEditor.py:739
+msgid "Initial"
+msgstr ""
+
+#: ../editors/Viewer.py:611
msgid "Initial Step"
msgstr "Étape initiale"
@@ -1895,23 +1910,23 @@
msgid "Initial Value:"
msgstr "Valeur initiale :"
-#: ../svgui/svgui.py:46
+#: ../svgui/svgui.py:48
msgid "Inkscape"
msgstr "Inkscape"
-#: ../dialogs/SFCTransitionDialog.py:75 ../dialogs/ActionBlockDialog.py:42
+#: ../dialogs/SFCTransitionDialog.py:76 ../dialogs/ActionBlockDialog.py:43
msgid "Inline"
msgstr "Inline"
-#: ../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:1627 ../editors/TextViewer.py:307
#: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71
#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351
msgid "Input"
msgstr "Entrée"
-#: ../dialogs/FBDBlockDialog.py:93
+#: ../dialogs/FBDBlockDialog.py:96
msgid "Inputs:"
msgstr "Entrées :"
@@ -1919,7 +1934,7 @@
msgid "Insertion (into)"
msgstr "Insertion (au milieu)"
-#: ../plcopen/plcopen.py:1691
+#: ../plcopen/plcopen.py:1696
#, python-format
msgid "Instance with id %d doesn't exist!"
msgstr "L'instance dont l'id est %d n'existe pas !"
@@ -1940,7 +1955,7 @@
msgid "Interval"
msgstr "Interval"
-#: ../PLCControler.py:2325
+#: ../PLCControler.py:2331
msgid "Invalid plcopen element(s)!!!"
msgstr "Les éléments plcopen ne sont pas valides !!! "
@@ -1966,12 +1981,12 @@
msgid "Invalid value \"%s\" for variable grid element"
msgstr "Valeur \"%s\" invalide pour un élément de la grille de variables"
-#: ../editors/Viewer.py:233 ../editors/Viewer.py:236
+#: ../editors/Viewer.py:234 ../editors/Viewer.py:237
#, python-format
msgid "Invalid value \"%s\" for viewer block"
msgstr "Valeur \"%s\" invalide pour un élément graphique"
-#: ../dialogs/ForceVariableDialog.py:177
+#: ../dialogs/ForceVariableDialog.py:195
#, python-brace-format
msgid "Invalid value \"{a1}\" for \"{a2}\" variable!"
msgstr "Valeur invalide \"{a1}\" pour la variable \"{a2}\""
@@ -1984,12 +1999,12 @@
"Valeur invalide !\n"
"Vous devez rentrer une valeur numérique."
-#: ../editors/Viewer.py:557 ../editors/Viewer.py:2354
+#: ../editors/Viewer.py:616 ../editors/Viewer.py:2392
msgid "Jump"
msgstr "Renvoi"
-#: ../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
msgid "LD"
msgstr "LD"
@@ -1998,37 +2013,37 @@
msgid "Ladder element with id %d is on more than one rung."
msgstr "L'élément de LD dont l'id est %d apparait dans plusieurs échelons. "
-#: ../dialogs/PouTransitionDialog.py:91 ../dialogs/PouActionDialog.py:83
-#: ../dialogs/PouDialog.py:104
+#: ../dialogs/PouTransitionDialog.py:86 ../dialogs/PouActionDialog.py:84
+#: ../dialogs/PouDialog.py:105
msgid "Language"
msgstr "Langue"
-#: ../controls/ProjectPropertiesPanel.py:186
+#: ../controls/ProjectPropertiesPanel.py:187
msgid "Language (optional):"
msgstr "Langue (optionnel) :"
-#: ../dialogs/PouTransitionDialog.py:65 ../dialogs/PouActionDialog.py:56
+#: ../dialogs/PouTransitionDialog.py:60 ../dialogs/PouActionDialog.py:56
#: ../dialogs/PouDialog.py:73
msgid "Language:"
msgstr "Langue :"
-#: ../ProjectController.py:1756
+#: ../ProjectController.py:1797
msgid "Latest build already matches current target. Transfering anyway...\n"
msgstr "La dernière compilation correspond à la cible actuelle...\n"
-#: ../Beremiz_service.py:271
+#: ../Beremiz_service.py:273
msgid "Launch WX GUI inspector"
msgstr "Lancer un inspecteur d'IHM WX"
-#: ../Beremiz_service.py:270
+#: ../Beremiz_service.py:272
msgid "Launch a live Python shell"
msgstr "Lancer une console Python"
-#: ../editors/Viewer.py:485
+#: ../editors/Viewer.py:544
msgid "Left"
msgstr "Gauche"
-#: ../dialogs/LDPowerRailDialog.py:62
+#: ../dialogs/LDPowerRailDialog.py:63
msgid "Left PowerRail"
msgstr "Barre d'alimentation à gauche"
@@ -2056,19 +2071,19 @@
msgid "Limitation"
msgstr "Limitation"
-#: ../targets/toolchain_gcc.py:166
+#: ../targets/toolchain_gcc.py:202
msgid "Linking :\n"
msgstr "Linkage :\n"
-#: ../dialogs/DiscoveryDialog.py:111 ../controls/VariablePanel.py:72
+#: ../dialogs/DiscoveryDialog.py:112 ../controls/VariablePanel.py:72
msgid "Local"
msgstr "Locale"
-#: ../canfestival/canfestival.py:346
+#: ../canfestival/canfestival.py:348
msgid "Local entries"
msgstr "Entrées locales"
-#: ../ProjectController.py:1662
+#: ../ProjectController.py:1703
msgid "Local service discovery failed!\n"
msgstr "Echec de la sélection d'un service!\n"
@@ -2115,7 +2130,7 @@
msgid "Maximum:"
msgstr "Maximum :"
-#: ../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
msgid "Memory"
@@ -2125,15 +2140,15 @@
msgid "Menu ToolBar"
msgstr "Barre d'outils du menu principal"
-#: ../dialogs/DurationEditorDialog.py:48
+#: ../dialogs/DurationEditorDialog.py:49
msgid "Microseconds:"
msgstr "Microsecondes :"
-#: ../editors/Viewer.py:490
+#: ../editors/Viewer.py:549
msgid "Middle"
msgstr "Milieu"
-#: ../dialogs/DurationEditorDialog.py:47
+#: ../dialogs/DurationEditorDialog.py:48
msgid "Milliseconds:"
msgstr "Millisecondes :"
@@ -2145,11 +2160,11 @@
msgid "Minimum:"
msgstr "Minimum :"
-#: ../dialogs/DurationEditorDialog.py:45
+#: ../dialogs/DurationEditorDialog.py:46
msgid "Minutes:"
msgstr "Minutes :"
-#: ../controls/ProjectPropertiesPanel.py:210
+#: ../controls/ProjectPropertiesPanel.py:211
msgid "Miscellaneous"
msgstr "Divers"
@@ -2235,17 +2250,17 @@
msgstr "NOM"
#: ../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:739
+#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54
msgid "Name"
msgstr "Nom"
-#: ../Beremiz_service.py:332
+#: ../Beremiz_service.py:334
msgid "Name must not be null!"
msgstr "Le nom ne doit pas être vide !"
-#: ../dialogs/SFCStepDialog.py:56 ../dialogs/FBDBlockDialog.py:83
-#: ../dialogs/ConnectionDialog.py:75
+#: ../dialogs/SFCStepDialog.py:57 ../dialogs/FBDBlockDialog.py:86
+#: ../dialogs/ConnectionDialog.py:76
msgid "Name:"
msgstr "Nom :"
@@ -2253,20 +2268,20 @@
msgid "Natural logarithm"
msgstr "Logarithme népérien"
-#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:460
+#: ../dialogs/LDElementDialog.py:75 ../editors/Viewer.py:519
msgid "Negated"
msgstr "Inversé"
-#: ../Beremiz_service.py:578
+#: ../Beremiz_service.py:580
msgid "Nevow Web service failed. "
msgstr "Service Web Nevow échoué."
-#: ../Beremiz_service.py:554
+#: ../Beremiz_service.py:556
msgid "Nevow/Athena import failed :"
msgstr "Import Nevow/Athena échoué:"
-#: ../PLCOpenEditor.py:102 ../PLCOpenEditor.py:144 ../Beremiz.py:321
-#: ../Beremiz.py:356
+#: ../BeremizIDE.py:216 ../BeremizIDE.py:251 ../PLCOpenEditor.py:104
+#: ../PLCOpenEditor.py:146
msgid "New"
msgstr "Nouveau"
@@ -2274,11 +2289,11 @@
msgid "New item"
msgstr "Nouvel élément"
-#: ../editors/Viewer.py:459
+#: ../editors/Viewer.py:518
msgid "No Modifier"
msgstr "Pas de modificateur"
-#: ../ProjectController.py:1784
+#: ../ProjectController.py:1826
msgid "No PLC to transfer (did build succeed ?)\n"
msgstr "Aucun automate à transférer (la compilation a-t-elle réussi ?)\n"
@@ -2292,7 +2307,7 @@
msgid "No connector found corresponding to \"{a1}\" continuation in \"{a2}\" POU"
msgstr "Pas de connecteur correspondant à \"{a1}\" dans la continuité de \"{a2}\" POU"
-#: ../PLCOpenEditor.py:347
+#: ../PLCOpenEditor.py:357
msgid ""
"No documentation available.\n"
"Coming soon."
@@ -2318,7 +2333,7 @@
msgid "No search results available."
msgstr "Pas de résultat de recherche disponible."
-#: ../svgui/svgui.py:131
+#: ../svgui/svgui.py:134
#, python-format
msgid "No such SVG file: %s\n"
msgstr "Fichier SVG inconnu : %s\n"
@@ -2373,20 +2388,24 @@
msgid "Numerical"
msgstr "Numérique"
-#: ../dialogs/SearchInProjectDialog.py:86
+#: ../editors/CodeFileEditor.py:739
+msgid "OnChange"
+msgstr ""
+
+#: ../dialogs/SearchInProjectDialog.py:84
msgid "Only Elements"
msgstr "Uniquement les éléments"
-#: ../PLCOpenEditor.py:104 ../PLCOpenEditor.py:145 ../Beremiz.py:323
-#: ../Beremiz.py:357
+#: ../BeremizIDE.py:218 ../BeremizIDE.py:252 ../PLCOpenEditor.py:106
+#: ../PLCOpenEditor.py:147
msgid "Open"
msgstr "Ouvrir"
-#: ../svgui/svgui.py:140
+#: ../svgui/svgui.py:143
msgid "Open Inkscape"
msgstr "Ouverture de Inkscape"
-#: ../version.py:66
+#: ../version.py:77
msgid ""
"Open Source framework for automation, implemented IEC 61131 IDE with "
"constantly growing set of extensions and flexible PLC runtime."
@@ -2394,11 +2413,11 @@
"Cadriciel Open Source pour l'automatisme, IDE implémenté en IEC 61131 avec "
"un lot d'extensions constament croissant et un executable PLC flexible."
-#: ../ProjectController.py:1836
+#: ../ProjectController.py:1878
msgid "Open a file explorer to manage project files"
msgstr "Ouvrir un explorateur de fichier pour gérer les fichiers de projet"
-#: ../wxglade_hmi/wxglade_hmi.py:138
+#: ../wxglade_hmi/wxglade_hmi.py:155
msgid "Open wxGlade"
msgstr "Ouverture de wxGlade"
@@ -2406,11 +2425,11 @@
msgid "Option"
msgstr "Option"
-#: ../dialogs/FindInPouDialog.py:83
+#: ../dialogs/FindInPouDialog.py:81 ../editors/CodeFileEditor.py:739
msgid "Options"
msgstr "Options"
-#: ../controls/ProjectPropertiesPanel.py:97
+#: ../controls/ProjectPropertiesPanel.py:98
msgid "Organization (optional):"
msgstr "Groupe (optionnel) :"
@@ -2418,9 +2437,9 @@
msgid "Other Profile"
msgstr "Autre profil"
-#: ../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:1628 ../editors/TextViewer.py:307
#: ../controls/LocationCellEditor.py:98 ../controls/VariablePanel.py:71
#: ../controls/VariablePanel.py:291 ../controls/VariablePanel.py:351
msgid "Output"
@@ -2434,27 +2453,27 @@
msgid "PDO Transmit"
msgstr "PDO transmis"
-#: ../targets/toolchain_gcc.py:131
+#: ../targets/toolchain_gcc.py:167
msgid "PLC :\n"
msgstr "Automate :\n"
-#: ../Beremiz.py:453
+#: ../BeremizIDE.py:355
msgid "PLC Log"
msgstr "Log de l'automate"
-#: ../ProjectController.py:1013
+#: ../ProjectController.py:1054
msgid "PLC code generation failed !\n"
msgstr "Génération du code PLC échouée !\n"
-#: ../Beremiz_service.py:295
+#: ../Beremiz_service.py:297
msgid "PLC is empty or already started."
msgstr "Le PLC est vide ou déjà lancé."
-#: ../Beremiz_service.py:302
+#: ../Beremiz_service.py:304
msgid "PLC is not started."
msgstr "PLC non démarré"
-#: ../PLCOpenEditor.py:196 ../PLCOpenEditor.py:309
+#: ../PLCOpenEditor.py:206 ../PLCOpenEditor.py:319
#, python-brace-format
msgid ""
"PLC syntax error at line {a1}:\n"
@@ -2463,15 +2482,15 @@
"Erreur de syntaxe PLC à la ligne {a1}:\n"
"{a2}"
-#: ../PLCOpenEditor.py:292 ../PLCOpenEditor.py:373
+#: ../PLCOpenEditor.py:302 ../PLCOpenEditor.py:383
msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
msgstr "Fichiers PLCOpen (*.xml)|*.xml|Tous les fichiers|*.*"
-#: ../PLCOpenEditor.py:152 ../PLCOpenEditor.py:209
+#: ../PLCOpenEditor.py:154 ../PLCOpenEditor.py:219
msgid "PLCOpenEditor"
msgstr "PLCOpenEditor"
-#: ../PLCOpenEditor.py:355
+#: ../PLCOpenEditor.py:365
msgid ""
"PLCOpenEditor is part of Beremiz project.\n"
"\n"
@@ -2485,7 +2504,7 @@
msgid "PORT"
msgstr "PORT"
-#: ../dialogs/PouDialog.py:100
+#: ../dialogs/PouDialog.py:101
msgid "POU Name"
msgstr "Nom du POU"
@@ -2493,7 +2512,7 @@
msgid "POU Name:"
msgstr "Nom du POU :"
-#: ../dialogs/PouDialog.py:102
+#: ../dialogs/PouDialog.py:103
msgid "POU Type"
msgstr "Type du POU"
@@ -2511,15 +2530,15 @@
msgid "PYRO using certificates in '%s' \n"
msgstr "PYRO utilise les certificats dans '%s'\n"
-#: ../PLCOpenEditor.py:118 ../Beremiz.py:336
+#: ../BeremizIDE.py:231 ../PLCOpenEditor.py:120
msgid "Page Setup"
msgstr "Mise en page..."
-#: ../controls/ProjectPropertiesPanel.py:110
+#: ../controls/ProjectPropertiesPanel.py:111
msgid "Page Size (optional):"
msgstr "Taille de la page (optionnel) :"
-#: ../IDEFrame.py:2598
+#: ../IDEFrame.py:2613
#, python-format
msgid "Page: %d"
msgstr "Page: %d"
@@ -2528,11 +2547,11 @@
msgid "Parent instance"
msgstr "Instance parent"
-#: ../editors/Viewer.py:598 ../IDEFrame.py:372 ../IDEFrame.py:426
+#: ../editors/Viewer.py:657 ../IDEFrame.py:372 ../IDEFrame.py:426
msgid "Paste"
msgstr "Coller"
-#: ../IDEFrame.py:1864
+#: ../IDEFrame.py:1868
msgid "Paste POU"
msgstr "Coller un POU"
@@ -2540,11 +2559,11 @@
msgid "Pattern to search:"
msgstr "Modèle à rechercher :"
-#: ../dialogs/LDPowerRailDialog.py:73
+#: ../dialogs/LDPowerRailDialog.py:74
msgid "Pin number:"
msgstr "Nombre de pattes :"
-#: ../editors/Viewer.py:2717 ../editors/Viewer.py:2974
+#: ../editors/Viewer.py:2757 ../editors/Viewer.py:3014
#: ../editors/SFCViewer.py:770
msgid "Please choose a target"
msgstr "Choisissez une cible"
@@ -2553,7 +2572,7 @@
msgid "Please enter a block name"
msgstr "Entrer un nom de bloc s'il vous plaît"
-#: ../editors/Viewer.py:2587 ../editors/Viewer.py:3016
+#: ../editors/Viewer.py:2627 ../editors/Viewer.py:3056
msgid "Please enter comment text"
msgstr "Saisissez le texte du commentaire"
@@ -2562,7 +2581,7 @@
msgid "Please enter step name"
msgstr "Saisissez le nom de l'étape"
-#: ../Beremiz_service.py:194
+#: ../Beremiz_service.py:196
msgid "Please enter text"
msgstr "Saisissez le texte"
@@ -2571,23 +2590,23 @@
msgid "Please enter value for a \"%s\" variable:"
msgstr "Veuillez entrer la valeur pour une variable de type \"%s\" :"
-#: ../Beremiz_service.py:317
+#: ../Beremiz_service.py:319
msgid "Port number must be 0 <= port <= 65535!"
msgstr "Le numéro de port doit être compris entre 0 et 65535 !"
-#: ../Beremiz_service.py:317
+#: ../Beremiz_service.py:319
msgid "Port number must be an integer!"
msgstr "Le numéro de port doit être un entier !"
-#: ../editors/Viewer.py:536 ../editors/Viewer.py:2378
+#: ../editors/Viewer.py:595 ../editors/Viewer.py:2416
msgid "Power Rail"
msgstr "Barre d'alimentation"
-#: ../dialogs/LDPowerRailDialog.py:50
+#: ../dialogs/LDPowerRailDialog.py:51
msgid "Power Rail Properties"
msgstr "Propriétés de la barre d'alimentation"
-#: ../PLCOpenEditor.py:120 ../Beremiz.py:338
+#: ../BeremizIDE.py:233 ../PLCOpenEditor.py:122
msgid "Preview"
msgstr "Aperçu avant impression"
@@ -2595,12 +2614,12 @@
msgid "Preview:"
msgstr "Aperçu :"
-#: ../PLCOpenEditor.py:122 ../PLCOpenEditor.py:148 ../Beremiz.py:340
-#: ../Beremiz.py:360
+#: ../BeremizIDE.py:235 ../BeremizIDE.py:255 ../PLCOpenEditor.py:124
+#: ../PLCOpenEditor.py:150
msgid "Print"
msgstr "Imprimer"
-#: ../IDEFrame.py:1075
+#: ../IDEFrame.py:1079
msgid "Print preview"
msgstr "Aperçu avant impression"
@@ -2608,53 +2627,53 @@
msgid "Priority"
msgstr "Priorité"
-#: ../dialogs/SFCTransitionDialog.py:89
+#: ../dialogs/SFCTransitionDialog.py:90
msgid "Priority:"
msgstr "Priorité :"
-#: ../runtime/PLCObject.py:370
+#: ../runtime/PLCObject.py:369
#, python-format
msgid "Problem starting PLC : error %d"
msgstr "Problème au démarrage du PLC : erreur %d"
-#: ../dialogs/ProjectDialog.py:55
+#: ../dialogs/ProjectDialog.py:58
msgid "Product Name"
msgstr "Nom de produit"
-#: ../controls/ProjectPropertiesPanel.py:80
+#: ../controls/ProjectPropertiesPanel.py:81
msgid "Product Name (required):"
msgstr "Nom du produit (obligatoire) :"
-#: ../controls/ProjectPropertiesPanel.py:82
+#: ../controls/ProjectPropertiesPanel.py:83
msgid "Product Release (optional):"
msgstr "Publication du produit (optionnel) :"
-#: ../dialogs/ProjectDialog.py:56
+#: ../dialogs/ProjectDialog.py:59
msgid "Product Version"
msgstr "Version du produit"
-#: ../controls/ProjectPropertiesPanel.py:81
+#: ../controls/ProjectPropertiesPanel.py:82
msgid "Product Version (required):"
msgstr "Version du produit (obligatoire) :"
-#: ../dialogs/SearchInProjectDialog.py:38 ../IDEFrame.py:1743
-#: ../IDEFrame.py:1940
+#: ../dialogs/SearchInProjectDialog.py:39 ../IDEFrame.py:1747
+#: ../IDEFrame.py:1944
msgid "Program"
msgstr "Programme"
-#: ../PLCOpenEditor.py:337
+#: ../PLCOpenEditor.py:347
msgid "Program was successfully generated!"
msgstr "Le programme a été généré avec succès !"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98
msgid "Programs"
msgstr "Programmes"
-#: ../editors/Viewer.py:242
+#: ../editors/Viewer.py:243
msgid "Programs can't be used by other POUs!"
msgstr "Les programmes ne peuvent être utilisés par les autres POUs !"
-#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:584
+#: ../controls/ProjectPropertiesPanel.py:85 ../IDEFrame.py:584
msgid "Project"
msgstr "Projet"
@@ -2663,23 +2682,23 @@
msgid "Project '%s':"
msgstr "Projet '%s' :"
-#: ../ProjectController.py:1835
+#: ../ProjectController.py:1877
msgid "Project Files"
msgstr "Fichiers de projet"
-#: ../dialogs/ProjectDialog.py:54
+#: ../dialogs/ProjectDialog.py:57
msgid "Project Name"
msgstr "Nom du projet"
-#: ../controls/ProjectPropertiesPanel.py:78
+#: ../controls/ProjectPropertiesPanel.py:79
msgid "Project Name (required):"
msgstr "Nom du projet (obligatoire) :"
-#: ../controls/ProjectPropertiesPanel.py:79
+#: ../controls/ProjectPropertiesPanel.py:80
msgid "Project Version (optional):"
msgstr "Version du projet (optionnel) :"
-#: ../PLCControler.py:3158
+#: ../PLCControler.py:3164
msgid ""
"Project file syntax error:\n"
"\n"
@@ -2687,7 +2706,7 @@
"Erreur de syntaxe dans le fichier du projet :\n"
"\n"
-#: ../dialogs/ProjectDialog.py:32 ../editors/ProjectNodeEditor.py:37
+#: ../dialogs/ProjectDialog.py:33 ../editors/ProjectNodeEditor.py:37
msgid "Project properties"
msgstr "Propriétés du projet"
@@ -2696,15 +2715,15 @@
msgid "Project tree layout do not match confnode.xml {a1}!={a2} "
msgstr ""
-#: ../dialogs/ConnectionDialog.py:94
+#: ../dialogs/ConnectionDialog.py:98
msgid "Propagate Name"
msgstr "Propager le nom"
-#: ../PLCControler.py:97
+#: ../PLCControler.py:99
msgid "Properties"
msgstr "Propriétés"
-#: ../Beremiz_service.py:440
+#: ../Beremiz_service.py:442
msgid "Publishing service on local network"
msgstr ""
@@ -2713,11 +2732,11 @@
msgid "Pyro exception: %s\n"
msgstr ""
-#: ../Beremiz_service.py:427
+#: ../Beremiz_service.py:429
msgid "Pyro object's uri :"
msgstr ""
-#: ../Beremiz_service.py:426
+#: ../Beremiz_service.py:428
msgid "Pyro port :"
msgstr "Pyro port :"
@@ -2729,11 +2748,11 @@
msgid "Python file"
msgstr "Fichier Python"
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39
msgid "Qualifier"
msgstr "Qualificatif"
-#: ../PLCOpenEditor.py:128 ../Beremiz.py:343 ../Beremiz_service.py:273
+#: ../BeremizIDE.py:238 ../PLCOpenEditor.py:130 ../Beremiz_service.py:275
msgid "Quit"
msgstr "Quitter"
@@ -2741,11 +2760,11 @@
msgid "Range:"
msgstr "Echelle :"
-#: ../ProjectController.py:1831
+#: ../ProjectController.py:1873
msgid "Raw IEC code"
msgstr "Ajout code IEC"
-#: ../Beremiz.py:1143
+#: ../BeremizIDE.py:1047
#, python-format
msgid "Really delete node '%s'?"
msgstr "Êtes-vous sûr de vouloir supprimer le noeud '%s' ?"
@@ -2754,11 +2773,11 @@
msgid "Redo"
msgstr "Refaire"
-#: ../dialogs/SFCTransitionDialog.py:74
+#: ../dialogs/SFCTransitionDialog.py:75
msgid "Reference"
msgstr "Référence"
-#: ../dialogs/DiscoveryDialog.py:106 ../IDEFrame.py:432
+#: ../dialogs/DiscoveryDialog.py:107 ../IDEFrame.py:432
msgid "Refresh"
msgstr "Actualiser"
@@ -2766,11 +2785,11 @@
msgid "Regular expression"
msgstr "Expression régulière"
-#: ../dialogs/FindInPouDialog.py:98
+#: ../dialogs/FindInPouDialog.py:96
msgid "Regular expressions"
msgstr "Expressions régulières"
-#: ../editors/Viewer.py:1567
+#: ../editors/Viewer.py:1603
msgid "Release value"
msgstr "Relacher la valeur"
@@ -2778,16 +2797,16 @@
msgid "Remainder (modulo)"
msgstr "Modulo"
-#: ../Beremiz.py:1144
+#: ../BeremizIDE.py:1048
#, python-format
msgid "Remove %s node"
msgstr "Enlever un noeud %s"
-#: ../IDEFrame.py:2404
+#: ../IDEFrame.py:2419
msgid "Remove Datatype"
msgstr "Supprimer le Datatype"
-#: ../IDEFrame.py:2409
+#: ../IDEFrame.py:2424
msgid "Remove Pou"
msgstr "Supprimer le Pou"
@@ -2819,7 +2838,7 @@
msgid "Remove variable"
msgstr "Supprimer une variable"
-#: ../IDEFrame.py:1944
+#: ../IDEFrame.py:1948
msgid "Rename"
msgstr "Renommer"
@@ -2827,7 +2846,7 @@
msgid "Replace File"
msgstr "Remplacer un fichier"
-#: ../editors/Viewer.py:502
+#: ../editors/Viewer.py:561
msgid "Replace Wire by connections"
msgstr "Remplacer le fil par les connexions"
@@ -2839,7 +2858,7 @@
msgid "Reset"
msgstr "Mise à zéro"
-#: ../editors/Viewer.py:583
+#: ../editors/Viewer.py:642
msgid "Reset Execution Order"
msgstr "Réinitialiser l'order d'exécution"
@@ -2851,7 +2870,7 @@
msgid "Reset search result"
msgstr "Réinitialiser le résultat de la recherche"
-#: ../PLCControler.py:97 ../Beremiz.py:1075
+#: ../BeremizIDE.py:979 ../PLCControler.py:99
msgid "Resources"
msgstr "Ressources"
@@ -2863,15 +2882,15 @@
msgid "Return Type:"
msgstr "Type de retour :"
-#: ../editors/Viewer.py:487
+#: ../editors/Viewer.py:546
msgid "Right"
msgstr "Droite"
-#: ../dialogs/LDPowerRailDialog.py:63
+#: ../dialogs/LDPowerRailDialog.py:64
msgid "Right PowerRail"
msgstr "Barre d'alimentation à droite"
-#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:461
+#: ../dialogs/LDElementDialog.py:77 ../editors/Viewer.py:520
msgid "Rising Edge"
msgstr "Front montant"
@@ -2887,15 +2906,15 @@
msgid "Rounding up/down"
msgstr "Arrondi"
-#: ../ProjectController.py:1799
+#: ../ProjectController.py:1841
msgid "Run"
msgstr "Exécuter"
-#: ../ProjectController.py:1058
+#: ../ProjectController.py:1099
msgid "Runtime IO extensions C code generation failed !\n"
msgstr ""
-#: ../ProjectController.py:1067
+#: ../ProjectController.py:1108
msgid "Runtime library extensions C code generation failed !\n"
msgstr ""
@@ -2907,7 +2926,7 @@
msgid "SDO Server"
msgstr "Serveur SDO"
-#: ../dialogs/PouDialog.py:36 ../controls/ProjectPropertiesPanel.py:143
+#: ../dialogs/PouDialog.py:37 ../controls/ProjectPropertiesPanel.py:144
msgid "SFC"
msgstr "SFC"
@@ -2921,16 +2940,16 @@
msgid "SFC transition in POU \"%s\" must be connected."
msgstr ""
-#: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:31
-#: ../dialogs/PouDialog.py:36
+#: ../dialogs/PouTransitionDialog.py:36 ../dialogs/PouActionDialog.py:32
+#: ../dialogs/PouDialog.py:37
msgid "ST"
msgstr "ST"
-#: ../PLCOpenEditor.py:324
+#: ../PLCOpenEditor.py:334
msgid "ST files (*.st)|*.st|All files|*.*"
msgstr "Fichiers ST (*.st)|*.st|Tous les fichiers|*.*"
-#: ../svgui/svgui.py:125
+#: ../svgui/svgui.py:128
msgid "SVG files (*.svg)|*.svg|All files|*.*"
msgstr "Fichiers SVG (*.svg)|*.svg|Tous les fichiers|*.*"
@@ -2938,20 +2957,20 @@
msgid "SVGUI"
msgstr "SVGUI"
-#: ../PLCOpenEditor.py:111 ../PLCOpenEditor.py:146 ../Beremiz.py:327
-#: ../Beremiz.py:358
+#: ../BeremizIDE.py:222 ../BeremizIDE.py:253 ../PLCOpenEditor.py:113
+#: ../PLCOpenEditor.py:148
msgid "Save"
msgstr "Enregistrer"
-#: ../PLCOpenEditor.py:113 ../PLCOpenEditor.py:147 ../Beremiz.py:359
+#: ../BeremizIDE.py:254 ../PLCOpenEditor.py:115 ../PLCOpenEditor.py:149
msgid "Save As..."
msgstr "Enregistrer sous..."
-#: ../Beremiz.py:329
+#: ../BeremizIDE.py:224
msgid "Save as"
msgstr "Enregistrer sous..."
-#: ../ProjectController.py:470
+#: ../ProjectController.py:511
msgid "Save path is the same as path of a project! \n"
msgstr ""
@@ -2963,12 +2982,12 @@
msgid "Search"
msgstr "Rechercher"
-#: ../dialogs/SearchInProjectDialog.py:44 ../IDEFrame.py:382
+#: ../dialogs/SearchInProjectDialog.py:45 ../IDEFrame.py:382
#: ../IDEFrame.py:428
msgid "Search in Project"
msgstr "Rechercher dans le projet"
-#: ../dialogs/DurationEditorDialog.py:46
+#: ../dialogs/DurationEditorDialog.py:47
msgid "Seconds:"
msgstr "Secondes :"
@@ -2976,17 +2995,17 @@
msgid "Select All"
msgstr "Tout sélectionner"
-#: ../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:"
msgstr "Sélectionner une direction pour la variable :"
-#: ../ProjectController.py:1216
+#: ../ProjectController.py:1257
msgid "Select an editor:"
msgstr "Sélectionner un éditeur :"
-#: ../controls/PouInstanceVariablesPanel.py:276
+#: ../controls/PouInstanceVariablesPanel.py:281
msgid "Select an instance"
msgstr "Sélectionnez une instance"
@@ -2994,7 +3013,7 @@
msgid "Select an object"
msgstr "Sélectionner un objet"
-#: ../ProjectController.py:477
+#: ../ProjectController.py:518
msgid "Selected directory already contains another project. Overwrite? \n"
msgstr ""
@@ -3030,19 +3049,19 @@
msgid "Shift right"
msgstr "Décalage à droite"
-#: ../ProjectController.py:1825
+#: ../ProjectController.py:1867
msgid "Show IEC code generated by PLCGenerator"
msgstr "Afficher le code IEC généré par PLCGenerator"
-#: ../canfestival/canfestival.py:387
+#: ../canfestival/canfestival.py:389
msgid "Show Master"
msgstr "Afficher le maître"
-#: ../canfestival/canfestival.py:388
+#: ../canfestival/canfestival.py:390
msgid "Show Master generated by config_utils"
msgstr "Afficher le maître généré par config_utils"
-#: ../ProjectController.py:1823
+#: ../ProjectController.py:1865
msgid "Show code"
msgstr "Afficher le code"
@@ -3077,52 +3096,52 @@
msgid "Square root (base 2)"
msgstr "Racine carré (base 2)"
-#: ../plcopen/definitions.py:46
+#: ../plcopen/definitions.py:48
msgid "Standard function blocks"
msgstr "Blocs fonctionnels standards"
-#: ../ProjectController.py:1801 ../Beremiz_service.py:261
+#: ../ProjectController.py:1843 ../Beremiz_service.py:263
msgid "Start PLC"
msgstr "Démarrer l'automate"
-#: ../ProjectController.py:1005
+#: ../ProjectController.py:1046
#, python-format
msgid "Start build in %s\n"
msgstr "Début de la compilation dans %s\n"
-#: ../ProjectController.py:1319
+#: ../ProjectController.py:1360
msgid "Started"
msgstr "Démarré"
-#: ../ProjectController.py:1607
+#: ../ProjectController.py:1648
msgid "Starting PLC\n"
msgstr "Démarrer l'automate\n"
-#: ../Beremiz.py:463
+#: ../BeremizIDE.py:365
msgid "Status ToolBar"
msgstr "Barre d'outils de statut"
-#: ../editors/Viewer.py:553 ../editors/Viewer.py:2353
+#: ../editors/Viewer.py:612 ../editors/Viewer.py:2391
msgid "Step"
msgstr "Étape"
-#: ../ProjectController.py:1804
+#: ../ProjectController.py:1846
msgid "Stop"
msgstr "Arrêter"
-#: ../Beremiz_service.py:262
+#: ../Beremiz_service.py:264
msgid "Stop PLC"
msgstr "Arrêter l'automate"
-#: ../ProjectController.py:1806
+#: ../ProjectController.py:1848
msgid "Stop Running PLC"
msgstr "Arrêter l'automate en cours d'exécution"
-#: ../ProjectController.py:1320
+#: ../ProjectController.py:1361
msgid "Stopped"
msgstr "Arrêté"
-#: ../ProjectController.py:1579
+#: ../ProjectController.py:1620
msgid "Stopping debugger...\n"
msgstr "Arrêt du débogage en cours\n"
@@ -3138,7 +3157,7 @@
msgid "Subtraction"
msgstr "Soustraction"
-#: ../ProjectController.py:1044
+#: ../ProjectController.py:1085
msgid "Successfully built.\n"
msgstr "Compilé avec succès.\n"
@@ -3146,7 +3165,7 @@
msgid "Switch perspective"
msgstr ""
-#: ../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!"
msgstr ""
"Erreur de syntaxe dans l'expression régulière du modèle à rechercher !"
@@ -3171,6 +3190,18 @@
msgid "Temp"
msgstr "Temporaire"
+#: ../version.py:30
+msgid ""
+"The best place to ask questions about Beremiz/PLCOpenEditor\n"
+"is project's mailing list: beremiz-devel@lists.sourceforge.net\n"
+"\n"
+"This is the main community support channel.\n"
+"For posting it is required to be subscribed to the mailing list.\n"
+"\n"
+"You can subscribe to the list here:\n"
+"https://lists.sourceforge.net/lists/listinfo/beremiz-devel"
+msgstr ""
+
#: ../editors/FileManagementPanel.py:180
#, python-format
msgid ""
@@ -3184,11 +3215,11 @@
msgid "The group of block must be coherent!"
msgstr "Le groupe de blocs doit être cohérent !"
-#: ../Beremiz.py:640 ../IDEFrame.py:1011
+#: ../BeremizIDE.py:542 ../IDEFrame.py:1015
msgid "There are changes, do you want to save?"
msgstr "Le projet a été modifié. Voulez-vous l'enregistrer ?"
-#: ../IDEFrame.py:1654 ../IDEFrame.py:1673
+#: ../IDEFrame.py:1658 ../IDEFrame.py:1677
#, python-format
msgid ""
"There is a POU named \"%s\". This could cause a conflict. Do you wish to "
@@ -3197,7 +3228,7 @@
"Un POU a pour nom \"%s\". Cela peut générer des conflits. Voulez-vous "
"continuer ?"
-#: ../IDEFrame.py:1098
+#: ../IDEFrame.py:1102
msgid ""
"There was a problem printing.\n"
"Perhaps your current printer is not set correctly?"
@@ -3247,28 +3278,32 @@
msgid "Time-of-day subtraction"
msgstr "Soustraction d'horodatage"
-#: ../editors/Viewer.py:489
+#: ../dialogs/ForceVariableDialog.py:172
+msgid "Toggle value"
+msgstr ""
+
+#: ../editors/Viewer.py:548
msgid "Top"
msgstr "Haut"
-#: ../ProjectController.py:1813
+#: ../ProjectController.py:1855
msgid "Transfer"
msgstr "Transférer"
-#: ../ProjectController.py:1815
+#: ../ProjectController.py:1857
msgid "Transfer PLC"
msgstr "Transférer l'automate"
-#: ../ProjectController.py:1779
+#: ../ProjectController.py:1820
msgid "Transfer completed successfully.\n"
msgstr "Transfert effectué avec succès.\n"
-#: ../ProjectController.py:1781
+#: ../ProjectController.py:1823
msgid "Transfer failed\n"
msgstr "Le transfert a échoué\n"
-#: ../editors/Viewer.py:554 ../editors/Viewer.py:2355
-#: ../editors/Viewer.py:2382
+#: ../editors/Viewer.py:613 ../editors/Viewer.py:2393
+#: ../editors/Viewer.py:2420
msgid "Transition"
msgstr "Transition"
@@ -3281,11 +3316,11 @@
"Le code de la transition \"%s\" doit contenir une variable de sortie ou un "
"relai dont la référence est son nom"
-#: ../dialogs/PouTransitionDialog.py:89
+#: ../dialogs/PouTransitionDialog.py:84
msgid "Transition Name"
msgstr "Nom de la transition"
-#: ../dialogs/PouTransitionDialog.py:58
+#: ../dialogs/PouTransitionDialog.py:53
msgid "Transition Name:"
msgstr "Nom de la transition :"
@@ -3301,12 +3336,12 @@
"\"{a2}\" POU"
msgstr ""
-#: ../plcopen/plcopen.py:1318
+#: ../plcopen/plcopen.py:1323
#, python-format
msgid "Transition with name %s doesn't exist!"
msgstr "La transition nommée %s n'existe pas !"
-#: ../PLCControler.py:96
+#: ../PLCControler.py:98
msgid "Transitions"
msgstr "Transitions"
@@ -3318,17 +3353,17 @@
msgid "Triggering"
msgstr "Activation"
-#: ../Beremiz_service.py:476
+#: ../Beremiz_service.py:478
msgid "Twisted unavailable."
msgstr ""
-#: ../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:739
+#: ../controls/VariablePanel.py:53 ../controls/VariablePanel.py:54
msgid "Type"
msgstr "Type"
-#: ../dialogs/BrowseLocationsDialog.py:48
+#: ../dialogs/BrowseLocationsDialog.py:49
msgid "Type and derivated"
msgstr "Type et ses dérivés"
@@ -3345,13 +3380,13 @@
msgid "Type infos:"
msgstr "Propriétés du type :"
-#: ../dialogs/BrowseLocationsDialog.py:49
+#: ../dialogs/BrowseLocationsDialog.py:50
msgid "Type strict"
msgstr "Type uniquement"
-#: ../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
msgid "Type:"
msgstr "Type :"
@@ -3379,20 +3414,20 @@
msgid "Undo"
msgstr "Défaire"
-#: ../ProjectController.py:382
+#: ../ProjectController.py:423
msgid "Unknown"
msgstr "Inconnu"
-#: ../editors/Viewer.py:393
+#: ../editors/Viewer.py:394
#, python-format
msgid "Unknown variable \"%s\" for this POU!"
msgstr "Variable \"%s\" inconnue dans ce POU !"
-#: ../ProjectController.py:379 ../ProjectController.py:380
+#: ../ProjectController.py:420 ../ProjectController.py:421
msgid "Unnamed"
msgstr "SansNom"
-#: ../PLCControler.py:636
+#: ../PLCControler.py:638
#, python-format
msgid "Unnamed%d"
msgstr "Sansnom%d"
@@ -3402,7 +3437,7 @@
msgid "Unrecognized data size \"%s\""
msgstr "Taille de donnée \"%s\" non identifié !"
-#: ../editors/DataTypeEditor.py:632 ../controls/VariablePanel.py:810
+#: ../editors/DataTypeEditor.py:630 ../controls/VariablePanel.py:827
msgid "User Data Types"
msgstr "Types de donnée du projet"
@@ -3410,11 +3445,11 @@
msgid "User Type"
msgstr "Type utilisateur"
-#: ../PLCControler.py:95
+#: ../PLCControler.py:97
msgid "User-defined POUs"
msgstr "POUs du projet"
-#: ../dialogs/ActionBlockDialog.py:38
+#: ../dialogs/ActionBlockDialog.py:39
msgid "Value"
msgstr "Valeur"
@@ -3422,28 +3457,28 @@
msgid "Values:"
msgstr "Valeurs"
-#: ../dialogs/ActionBlockDialog.py:42 ../editors/Viewer.py:526
-#: ../editors/Viewer.py:2385
+#: ../dialogs/ActionBlockDialog.py:43 ../editors/Viewer.py:585
+#: ../editors/Viewer.py:2423
msgid "Variable"
msgstr "Variable"
-#: ../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
msgid "Variable Drop"
msgstr ""
-#: ../dialogs/FBDVariableDialog.py:63
+#: ../dialogs/FBDVariableDialog.py:64
msgid "Variable Properties"
msgstr "Propriétés de la variable"
-#: ../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 "Variable class"
msgstr "Direction de la variable"
-#: ../editors/Viewer.py:395 ../editors/TextViewer.py:387
+#: ../editors/Viewer.py:396 ../editors/TextViewer.py:387
msgid "Variable don't belong to this POU!"
msgstr "La variable n'appartient pas à ce POU !"
@@ -3455,11 +3490,11 @@
msgid "Variables"
msgstr "Variables"
-#: ../controls/ProjectPropertiesPanel.py:151
+#: ../controls/ProjectPropertiesPanel.py:152
msgid "Vertical:"
msgstr "Vertical :"
-#: ../Beremiz_service.py:586
+#: ../Beremiz_service.py:588
msgid "WAMP client startup failed. "
msgstr ""
@@ -3477,19 +3512,19 @@
msgid "WAMP connection to '%s' failed.\n"
msgstr ""
-#: ../Beremiz_service.py:562
+#: ../Beremiz_service.py:564
msgid "WAMP import failed :"
msgstr ""
-#: ../wxglade_hmi/wxglade_hmi.py:35
+#: ../wxglade_hmi/wxglade_hmi.py:37
msgid "WXGLADE GUI"
msgstr "IHM WXGlade"
-#: ../dialogs/PouDialog.py:128 ../editors/LDViewer.py:891
+#: ../dialogs/PouDialog.py:129 ../editors/LDViewer.py:891
msgid "Warning"
msgstr "Attention"
-#: ../ProjectController.py:666
+#: ../ProjectController.py:707
msgid "Warnings in ST/IL/SFC code generator :\n"
msgstr "Mises en garde du generateur de code ST/IL/SFC :\n"
@@ -3497,11 +3532,11 @@
msgid "Whole Project"
msgstr "Tout le projet"
-#: ../controls/ProjectPropertiesPanel.py:119
+#: ../controls/ProjectPropertiesPanel.py:120
msgid "Width:"
msgstr "Longueur :"
-#: ../dialogs/FindInPouDialog.py:93
+#: ../dialogs/FindInPouDialog.py:91
msgid "Wrap search"
msgstr "Boucler"
@@ -3513,7 +3548,7 @@
msgid "WxGlade GUI"
msgstr "Interface WxGlade"
-#: ../svgui/svgui.py:139
+#: ../svgui/svgui.py:142
msgid ""
"You don't have write permissions.\n"
"Open Inkscape anyway ?"
@@ -3521,7 +3556,7 @@
"Vous n'avez pas les permissions d'écriture.\n"
"Ouvrir Inkscape tout de même ?"
-#: ../wxglade_hmi/wxglade_hmi.py:137
+#: ../wxglade_hmi/wxglade_hmi.py:154
msgid ""
"You don't have write permissions.\n"
"Open wxGlade anyway ?"
@@ -3529,7 +3564,7 @@
"Vous n'avez pas les permissions d'écriture.\n"
"Ouvrir wxGlade tout de même ?"
-#: ../ProjectController.py:342
+#: ../ProjectController.py:371
msgid ""
"You must have permission to work on the project\n"
"Work on a project copy ?"
@@ -3554,7 +3589,7 @@
msgid "You must type a name!"
msgstr "Vous devez saisir un nom !"
-#: ../dialogs/ForceVariableDialog.py:175
+#: ../dialogs/ForceVariableDialog.py:193
msgid "You must type a value!"
msgstr "Vous devez saisir une valeur !"
@@ -3562,11 +3597,11 @@
msgid "Zoom"
msgstr "Zoom"
-#: ../dialogs/DurationEditorDialog.py:151
+#: ../dialogs/DurationEditorDialog.py:155
msgid "days"
msgstr "jours"
-#: ../PLCOpenEditor.py:333
+#: ../PLCOpenEditor.py:343
#, python-format
msgid "error: %s\n"
msgstr "erreur: %s\n"
@@ -3576,43 +3611,43 @@
msgid "exited with status {a1} (pid {a2})\n"
msgstr ""
-#: ../PLCOpenEditor.py:396 ../PLCOpenEditor.py:398
+#: ../PLCOpenEditor.py:406 ../PLCOpenEditor.py:408
msgid "file : "
msgstr "fichier :"
-#: ../dialogs/PouDialog.py:31
+#: ../dialogs/PouDialog.py:32
msgid "function"
msgstr "fonction"
-#: ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:409
msgid "function : "
msgstr "fonction :"
-#: ../dialogs/PouDialog.py:31
+#: ../dialogs/PouDialog.py:32
msgid "functionBlock"
msgstr "Bloc fonctionnel"
-#: ../dialogs/DurationEditorDialog.py:151
+#: ../dialogs/DurationEditorDialog.py:155
msgid "hours"
msgstr "heures"
-#: ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:409
msgid "line : "
msgstr "ligne :"
-#: ../dialogs/DurationEditorDialog.py:153
+#: ../dialogs/DurationEditorDialog.py:157
msgid "milliseconds"
msgstr ""
-#: ../dialogs/DurationEditorDialog.py:152
+#: ../dialogs/DurationEditorDialog.py:156
msgid "minutes"
msgstr "minutes"
-#: ../dialogs/PouDialog.py:31
+#: ../dialogs/PouDialog.py:32
msgid "program"
msgstr "programme"
-#: ../dialogs/DurationEditorDialog.py:152
+#: ../dialogs/DurationEditorDialog.py:156
msgid "seconds"
msgstr "secondes"
@@ -3628,16 +3663,16 @@
msgid "string right of"
msgstr "Caractères à droite de"
-#: ../Beremiz.py:126
+#: ../Beremiz.py:164
msgid "update info unavailable."
msgstr "Information de mise à jour non disponible."
-#: ../PLCOpenEditor.py:331
+#: ../PLCOpenEditor.py:341
#, python-format
msgid "warning: %s\n"
msgstr "attention: %s\n"
-#: ../PLCControler.py:970
+#: ../PLCControler.py:972
#, python-brace-format
msgid "{a1} \"{a2}\" can't be pasted as a {a3}."
msgstr ""
@@ -3704,9 +3739,6 @@
msgid "LDFLAGS"
msgstr "LDFLAGS"
-msgid "PLC"
-msgstr "PLC"
-
msgid "Linux"
msgstr "Linux"