--- a/i18n/Beremiz_fr_FR.po Tue Mar 26 23:25:18 2013 +0100
+++ b/i18n/Beremiz_fr_FR.po Tue Mar 26 23:26:13 2013 +0100
@@ -7,8 +7,8 @@
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-07 01:17+0200\n"
-"PO-Revision-Date: 2012-09-07 01:31+0100\n"
+"POT-Creation-Date: 2013-03-26 22:55+0100\n" +"PO-Revision-Date: 2013-03-26 23:08+0100\n" "Last-Translator: Laurent BESSARD <laurent.bessard@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,7 +16,7 @@
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../PLCOpenEditor.py:520
+#: ../PLCOpenEditor.py:405 "An error has occurred.\n"
@@ -38,7 +38,7 @@
@@ -87,7 +87,7 @@
-#: ../PLCOpenEditor.py:530
+#: ../PLCOpenEditor.py:415 @@ -99,7 +99,7 @@
-#: ../ProjectController.py:890
+#: ../ProjectController.py:917 msgid " generation failed !\n"
msgstr "la construction a échouée !\n"
@@ -123,8 +123,8 @@
msgid "\"%s\" can't use itself!"
msgstr "\"%s\" ne peut pas s'utiliser lui-même !"
msgid "\"%s\" config already exists!"
msgstr "La configuration \"%s\" existe déjà !"
@@ -134,46 +134,46 @@
msgid "\"%s\" configuration already exists !!!"
msgstr "La configuration \"%s\" existe déjà !!!"
msgid "\"%s\" data type already exists!"
msgstr "Le type de données \"%s\" existe déjà !"
-#: ../PLCControler.py:2040
-#: ../PLCControler.py:2044
+#: ../PLCControler.py:2165 +#: ../PLCControler.py:2169 msgid "\"%s\" element can't be pasted here!!!"
msgstr "L'élément \"%s\" ne peut être collé ici !!!"
-#: ../editors/TextViewer.py:305
-#: ../editors/TextViewer.py:325
-#: ../editors/Viewer.py:252
+#: ../editors/TextViewer.py:298 +#: ../editors/TextViewer.py:318 +#: ../editors/Viewer.py:250 #: ../dialogs/PouTransitionDialog.py:105
-#: ../dialogs/ConnectionDialog.py:150
+#: ../dialogs/ConnectionDialog.py:157 #: ../dialogs/PouActionDialog.py:102
#: ../dialogs/FBDBlockDialog.py:162
msgid "\"%s\" element for this pou already exists!"
msgstr "Un élément \"%s\" existe déjà dans ce POU !"
msgid "\"%s\" folder is not a valid Beremiz project\n"
msgstr "Le dossier \"%s\" ne contient pas de projet Beremiz valide\n"
-#: ../plcopen/structures.py:106
+#: ../plcopen/structures.py:105 msgid "\"%s\" function cancelled in \"%s\" POU: No input connected"
msgstr "L'appel à la fonction \"%s\" dans le POU \"%s\" a été abandonné : aucune entrée connectée"
-#: ../controls/VariablePanel.py:656
-#: ../editors/DataTypeEditor.py:548
-#: ../editors/DataTypeEditor.py:577
+#: ../controls/VariablePanel.py:659 +#: ../editors/DataTypeEditor.py:554 +#: ../editors/DataTypeEditor.py:583 #: ../dialogs/PouNameDialog.py:49
#: ../dialogs/PouTransitionDialog.py:101
#: ../dialogs/SFCStepNameDialog.py:51
-#: ../dialogs/ConnectionDialog.py:146
+#: ../dialogs/ConnectionDialog.py:153 #: ../dialogs/FBDVariableDialog.py:199
#: ../dialogs/PouActionDialog.py:98
#: ../dialogs/PouDialog.py:118
@@ -183,29 +183,29 @@
msgid "\"%s\" is a keyword. It can't be used!"
msgstr "\"%s\" est un mot réservé. Il ne peut être utilisé !"
-#: ../editors/Viewer.py:240
+#: ../editors/Viewer.py:238 msgid "\"%s\" is already used by \"%s\"!"
msgstr "\"%s\" est déjà utilisé par \"%s\" !"
-#: ../plcopen/plcopen.py:2786
+#: ../plcopen/plcopen.py:2836 msgid "\"%s\" is an invalid value!"
msgstr "\"%s\" n'est pas une valeur valide !"
-#: ../PLCOpenEditor.py:362
-#: ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:341 +#: ../PLCOpenEditor.py:378 msgid "\"%s\" is not a valid folder!"
msgstr "\"%s\" n'est pas un répertoire valide !"
-#: ../controls/VariablePanel.py:654
-#: ../editors/DataTypeEditor.py:572
+#: ../controls/VariablePanel.py:657 +#: ../editors/DataTypeEditor.py:578 #: ../dialogs/PouNameDialog.py:47
#: ../dialogs/PouTransitionDialog.py:99
#: ../dialogs/SFCStepNameDialog.py:49
-#: ../dialogs/ConnectionDialog.py:144
+#: ../dialogs/ConnectionDialog.py:151 #: ../dialogs/PouActionDialog.py:96
#: ../dialogs/PouDialog.py:116
#: ../dialogs/SFCStepDialog.py:120
@@ -214,22 +214,22 @@
msgid "\"%s\" is not a valid identifier!"
msgstr "\"%s\" n'est pas un identifiant valide !"
msgid "\"%s\" is used by one or more POUs. It can't be removed!"
msgstr "Le POU \"%s\" est utilisé par un ou plusieurs POUs. Il ne peut être supprimé !"
-#: ../controls/VariablePanel.py:311
-#: ../editors/TextViewer.py:303
-#: ../editors/TextViewer.py:323
-#: ../editors/TextViewer.py:360
-#: ../editors/Viewer.py:250
-#: ../editors/Viewer.py:295
-#: ../editors/Viewer.py:312
-#: ../dialogs/ConnectionDialog.py:148
+#: ../controls/VariablePanel.py:313 +#: ../editors/TextViewer.py:296 +#: ../editors/TextViewer.py:316 +#: ../editors/TextViewer.py:353 +#: ../editors/Viewer.py:248 +#: ../editors/Viewer.py:293 +#: ../editors/Viewer.py:311 +#: ../dialogs/ConnectionDialog.py:155 #: ../dialogs/PouDialog.py:120
#: ../dialogs/FBDBlockDialog.py:160
@@ -252,18 +252,18 @@
msgid "\"%s\" step already exists!"
msgstr "L'étape \"%s\" existe déjà !"
-#: ../editors/DataTypeEditor.py:543
+#: ../editors/DataTypeEditor.py:549 msgid "\"%s\" value already defined!"
msgstr "La valeur \"%s\" est déjà définie !"
-#: ../editors/DataTypeEditor.py:719
+#: ../editors/DataTypeEditor.py:744 #: ../dialogs/ArrayTypeDialog.py:97
msgid "\"%s\" value isn't a valid array dimension!"
msgstr "\"%s\" n'est pas une dimension de tableau valide !"
-#: ../editors/DataTypeEditor.py:726
+#: ../editors/DataTypeEditor.py:751 #: ../dialogs/ArrayTypeDialog.py:103
@@ -273,12 +273,12 @@
"\"%s\" n'est pas une dimension de tableau valide !\n"
"La valeur de droite doit être supérieur à celle de gauche."
-#: ../PLCControler.py:793
+#: ../PLCControler.py:847 msgid "%s \"%s\" can't be pasted as a %s."
msgstr "Le %s \"%s\" ne peut être collé en tant que %s."
-#: ../PLCControler.py:1422
+#: ../PLCControler.py:1476 msgstr "Types de données de %s"
@@ -288,90 +288,90 @@
-#: ../PLCControler.py:1417
+#: ../PLCControler.py:1471 -#: ../canfestival/SlaveEditor.py:42
-#: ../canfestival/NetworkEditor.py:72
+#: ../canfestival/SlaveEditor.py:46 +#: ../canfestival/NetworkEditor.py:67 -#: ../plcopen/plcopen.py:1780
#: ../plcopen/plcopen.py:1790
#: ../plcopen/plcopen.py:1800
#: ../plcopen/plcopen.py:1810
-#: ../plcopen/plcopen.py:1819
+#: ../plcopen/plcopen.py:1820 +#: ../plcopen/plcopen.py:1829 msgid "%s body don't have instances!"
msgstr "Le code d'un %s n'a pas d'instances !"
-#: ../plcopen/plcopen.py:1842
-#: ../plcopen/plcopen.py:1849
+#: ../plcopen/plcopen.py:1852 +#: ../plcopen/plcopen.py:1859 msgid "%s body don't have text!"
msgstr "Le code d'un %s n'a pas de texte !"
msgstr "&Ajouter un élément"
-#: ../PLCOpenEditor.py:148
+#: ../PLCOpenEditor.py:129
-#: ../controls/SearchResultPanel.py:237
+#: ../controls/SearchResultPanel.py:252 msgid "'%s' - %d match in project"
msgstr "'%s' - %d correspondance dans le projet"
-#: ../controls/SearchResultPanel.py:239
+#: ../controls/SearchResultPanel.py:254 msgid "'%s' - %d matches in project"
msgstr "'%s' - %d correspondances dans le projet"
@@ -381,14 +381,14 @@
msgid "'%s' is located at %s\n"
msgstr "'%s' is disponible à l'adresse %s\n"
-#: ../controls/SearchResultPanel.py:289
+#: ../controls/SearchResultPanel.py:304 msgstr "(%d correspondances)"
-#: ../PLCOpenEditor.py:508
-#: ../PLCOpenEditor.py:510
-#: ../PLCOpenEditor.py:511
+#: ../PLCOpenEditor.py:393 +#: ../PLCOpenEditor.py:395 +#: ../PLCOpenEditor.py:396 @@ -400,25 +400,25 @@
-#: ../PLCOpenEditor.py:506
+#: ../PLCOpenEditor.py:391 -#: ../ProjectController.py:1268
+#: ../ProjectController.py:1294 msgid "... debugger recovered\n"
msgstr "... déboggueur operationel\n"
#: ../dialogs/PouDialog.py:122
msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?"
msgstr "Un POU a un élément nommé \"%s\". Cela peut générer des conflits. Voulez-vous continuer ?"
-#: ../controls/VariablePanel.py:658
+#: ../controls/VariablePanel.py:661 #: ../dialogs/PouNameDialog.py:51
#: ../dialogs/PouTransitionDialog.py:103
#: ../dialogs/SFCStepNameDialog.py:53
@@ -428,34 +428,34 @@
msgid "A POU named \"%s\" already exists!"
msgstr "Un POU nommé \"%s\" existe déjà !"
-#: ../ConfigTreeNode.py:371
+#: ../ConfigTreeNode.py:388 msgid "A child named \"%s\" already exist -> \"%s\"\n"
msgstr "Un noeud enfant nommé \"%s\" existe déjà -> \"%s\"\n"
-#: ../dialogs/BrowseLocationsDialog.py:175
+#: ../dialogs/BrowseLocationsDialog.py:212 msgid "A location must be selected!"
msgstr "Une adresse doit être sélectionné !"
-#: ../controls/VariablePanel.py:660
+#: ../controls/VariablePanel.py:663 #: ../dialogs/SFCStepNameDialog.py:55
#: ../dialogs/SFCStepDialog.py:126
msgid "A variable with \"%s\" as name already exists in this pou!"
msgstr "Une variable nommée \"%s\" existe déjà dans ce POU !"
-#: ../PLCOpenEditor.py:181
+#: ../PLCOpenEditor.py:162
msgstr "A propos de Beremiz"
-#: ../PLCOpenEditor.py:376
+#: ../PLCOpenEditor.py:355 msgid "About PLCOpenEditor"
msgstr "A propos de PLCOpenEditor"
@@ -468,7 +468,7 @@
-#: ../editors/Viewer.py:495
+#: ../editors/Viewer.py:494 msgstr "Ajouter un bloc fonctionnel"
@@ -480,7 +480,7 @@
msgstr "Nom de l'action :"
-#: ../plcopen/plcopen.py:1480
+#: ../plcopen/plcopen.py:1490 msgid "Action with name %s doesn't exist!"
msgstr "L'action nommée %s n'existe pas !"
@@ -493,30 +493,35 @@
-#: ../canfestival/SlaveEditor.py:54
-#: ../canfestival/NetworkEditor.py:84
+#: ../editors/Viewer.py:999 +#: ../canfestival/SlaveEditor.py:57 +#: ../canfestival/NetworkEditor.py:78 #: ../editors/Viewer.py:527
msgstr "Ajouter une action"
msgid "Add C code accessing located variables synchronously"
msgstr "Ajoute un code C ayant accès à des variables localisées de façon synchrone"
msgid "Add Configuration"
msgstr "Ajouter une configuration"
msgstr "Ajouter un type de donnée"
-#: ../editors/Viewer.py:453
+#: ../editors/Viewer.py:452 msgid "Add Divergence Branch"
msgstr "Ajouter une branche à la divergence"
@@ -524,25 +529,25 @@
msgid "Add Python code executed asynchronously"
msgstr "Ajoute un code Python executé de façon asynchone"
msgstr "Ajouter une resource"
msgstr "Ajouter une transition"
-#: ../editors/Viewer.py:442
+#: ../editors/Viewer.py:441 msgstr "Ajouter un segment au fil"
@@ -550,7 +555,7 @@
msgid "Add a new initial step"
msgstr "Ajouter une nouvelle étape initiale"
-#: ../editors/Viewer.py:2289
+#: ../editors/Viewer.py:2363 #: ../editors/SFCViewer.py:696
msgstr "Ajouter un nouveau renvoi"
@@ -559,7 +564,7 @@
msgstr "Ajouter une nouvelle étape"
msgid "Add a simple WxGlade based GUI."
msgstr "Ajoute une interface simple utilisant WxGlade"
@@ -567,23 +572,24 @@
msgstr "Ajouter une action"
-#: ../editors/DataTypeEditor.py:345
+#: ../editors/DataTypeEditor.py:351 msgstr "Ajouter un élément"
-#: ../editors/ResourceEditor.py:251
+#: ../editors/ResourceEditor.py:259 msgstr "Ajouter une instance"
-#: ../canfestival/NetworkEditor.py:86
+#: ../canfestival/NetworkEditor.py:80 msgstr "Ajouter un esclave"
-#: ../editors/ResourceEditor.py:222
+#: ../editors/ResourceEditor.py:230 msgstr "Ajouter une tâche"
-#: ../controls/VariablePanel.py:378
+#: ../controls/VariablePanel.py:380 +#: ../c_ext/CFileEditor.py:517 msgstr "Ajouter une variable"
@@ -591,33 +597,43 @@
-#: ../plcopen/structures.py:250
+#: ../plcopen/structures.py:249 msgid "Additional function blocks"
msgstr "Blocs fonctionnels additionnels"
-#: ../editors/Viewer.py:1395
+#: ../editors/Viewer.py:510 +msgid "Adjust Block Size" +msgstr "Ajuster la taille des blocs" +#: ../editors/Viewer.py:1458 #: ../controls/VariablePanel.py:75
-#: ../dialogs/BrowseLocationsDialog.py:35
-#: ../dialogs/BrowseLocationsDialog.py:116
+#: ../dialogs/BrowseLocationsDialog.py:34 +#: ../dialogs/BrowseLocationsDialog.py:43 +#: ../dialogs/BrowseLocationsDialog.py:136 +#: ../dialogs/BrowseLocationsDialog.py:139
#: ../editors/FileManagementPanel.py:35
msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv"
msgstr "Tous les fichiers|*.*|Fichiers CSV (*.csv)|*.csv"
-#: ../ProjectController.py:1335
+#: ../ProjectController.py:1373 msgid "Already connected. Please disconnect\n"
msgstr "Déjà connecté. Veuillez déconnecter\n"
-#: ../editors/DataTypeEditor.py:587
+#: ../editors/DataTypeEditor.py:593 msgid "An element named \"%s\" already exists in this structure!"
msgstr "Un élément nommé \"%s\" existe déjà dans la structure !"
+#: ../dialogs/ConnectionDialog.py:98 +msgid "Apply name modification to all continuations with the same name" +msgstr "Appliquer la modification de nom à toutes les prolongements portant ce même nom" #: ../plcopen/iec_std.csv:31
@@ -634,8 +650,9 @@
-#: ../controls/VariablePanel.py:729
-#: ../editors/DataTypeEditor.py:52
+#: ../controls/VariablePanel.py:732 +#: ../editors/DataTypeEditor.py:54 +#: ../editors/DataTypeEditor.py:634 @@ -673,19 +690,19 @@
msgid "Bad location size : %s"
msgstr "Mauvaise taille d'adresse : %s"
-#: ../editors/DataTypeEditor.py:168
-#: ../editors/DataTypeEditor.py:198
-#: ../editors/DataTypeEditor.py:290
+#: ../editors/DataTypeEditor.py:174 +#: ../editors/DataTypeEditor.py:204 +#: ../editors/DataTypeEditor.py:296 #: ../dialogs/ArrayTypeDialog.py:55
-#: ../controls/VariablePanel.py:699
-#: ../editors/DataTypeEditor.py:617
+#: ../controls/VariablePanel.py:702 +#: ../editors/DataTypeEditor.py:624
@@ -717,7 +734,7 @@
msgid "Bitwise inverting"
msgstr "Inversion bit à bit"
-#: ../editors/Viewer.py:465
+#: ../editors/Viewer.py:464 @@ -725,7 +742,7 @@
msgstr "Propriétés du bloc"
-#: ../editors/Viewer.py:434
+#: ../editors/Viewer.py:433 @@ -734,31 +751,35 @@
msgid "Browse %s values library"
msgstr "Explorer la liste des valeurs du paramètre '%s'"
-#: ../dialogs/BrowseLocationsDialog.py:55
+#: ../dialogs/BrowseLocationsDialog.py:61 msgstr "Naviger dans les adresses"
-#: ../ProjectController.py:1484
+#: ../ProjectController.py:1519 -#: ../ProjectController.py:1051
+#: ../ProjectController.py:1079 msgid "Build directory already clean\n"
msgstr "Le répertoire de compilation est déjà nettoyé\n"
-#: ../ProjectController.py:1485
+#: ../ProjectController.py:1520 msgid "Build project into build folder"
msgstr "Compiler le projet dans le répertoire ce compilation"
-#: ../ProjectController.py:910
+#: ../ProjectController.py:937 msgid "C Build crashed !\n"
msgstr "La compilation du C a mal fonctionné !\n"
-#: ../ProjectController.py:907
+#: ../ProjectController.py:934 msgid "C Build failed.\n"
msgstr "La compilation du C a échouée !\n"
-#: ../ProjectController.py:895
+#: ../c_ext/CFileEditor.py:731 +#: ../ProjectController.py:922 msgid "C code generated successfully.\n"
msgstr "Code C généré avec succès.\n"
@@ -767,18 +788,26 @@
msgid "C compilation of %s failed.\n"
msgstr "La compilation C de %s a échouée.\n"
+#: ../canfestival/NetworkEditor.py:29 +#: ../canfestival/SlaveEditor.py:21 +msgstr "Esclave CANOpen" -#: ../plcopen/plcopen.py:1722
-#: ../plcopen/plcopen.py:1736
-#: ../plcopen/plcopen.py:1757
-#: ../plcopen/plcopen.py:1773
+#: ../plcopen/plcopen.py:1732 +#: ../plcopen/plcopen.py:1746 +#: ../plcopen/plcopen.py:1767 +#: ../plcopen/plcopen.py:1783 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 !"
@@ -786,7 +815,7 @@
msgid "Can only give a location to local or global variables"
msgstr "Une adresse ne peut être affecté qu'à des variables locales ou globales"
-#: ../PLCOpenEditor.py:357
+#: ../PLCOpenEditor.py:336 msgid "Can't generate program to file %s!"
msgstr "Le programme n'a pu être généré dans le fichier \"%s\" !"
@@ -795,21 +824,21 @@
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:397
+#: ../PLCOpenEditor.py:376 msgid "Can't save project to file %s!"
msgstr "Le projet n'a pu être sauvé dans le fichier \"%s\" !"
-#: ../controls/VariablePanel.py:298
+#: ../controls/VariablePanel.py:300 msgid "Can't set an initial value to a function block instance"
msgstr "Une valeur initiale ne peut être affectée une instance de Function Block"
-#: ../ConfigTreeNode.py:470
+#: ../ConfigTreeNode.py:490 msgid "Cannot create child %s of type %s "
msgstr "Impossible d'ajouter un élément \"%s\" de type \"%s\""
-#: ../ConfigTreeNode.py:400
+#: ../ConfigTreeNode.py:417 msgid "Cannot find lower free IEC channel than %d\n"
msgstr "Impossible de trouver un numéro IEC inférieur à %d libre\n"
@@ -818,7 +847,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:715
+#: ../ProjectController.py:737 msgid "Cannot open/parse VARIABLES.csv!\n"
msgstr "Impossible d'ouvrir ou d'analyser le fichier VARIABLES.csv !\n"
@@ -832,27 +861,27 @@
msgstr "Respecter la casse"
-#: ../editors/Viewer.py:429
+#: ../editors/Viewer.py:428 -#: ../Beremiz_service.py:322
+#: ../Beremiz_service.py:326 msgid "Change IP of interface to bind"
msgstr "Changer l'adresse IP de l'interface à lier"
-#: ../Beremiz_service.py:321
+#: ../Beremiz_service.py:325
msgid "Change POU Type To"
msgstr "Changer le type du POU pour"
-#: ../Beremiz_service.py:325
+#: ../Beremiz_service.py:327 msgid "Change Port Number"
msgstr "Changer le numéro de port"
-#: ../Beremiz_service.py:327
+#: ../Beremiz_service.py:328 msgid "Change working directory"
msgstr "Changer le dossier de travail"
@@ -864,19 +893,19 @@
msgid "Choose a SVG file"
msgstr "Choisissez un fichier SVG"
-#: ../ProjectController.py:353
+#: ../ProjectController.py:364 msgid "Choose a directory to save project"
msgstr "Choisissez un dossier où enregistrer le projet"
-#: ../canfestival/canfestival.py:118
-#: ../PLCOpenEditor.py:313
-#: ../PLCOpenEditor.py:347
-#: ../PLCOpenEditor.py:391
+#: ../canfestival/canfestival.py:136 +#: ../PLCOpenEditor.py:294 +#: ../PLCOpenEditor.py:326 +#: ../PLCOpenEditor.py:370 msgstr "Choisissez un fichier"
msgstr "Choisissez un projet"
@@ -885,15 +914,15 @@
msgid "Choose a value for %s:"
msgstr "Choisissez une valeur pour le paramètre %s :"
-#: ../Beremiz_service.py:373
+#: ../Beremiz_service.py:378 msgid "Choose a working directory "
msgstr "Choisissez un dossier de travail"
-#: ../ProjectController.py:281
+#: ../ProjectController.py:288 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:247
+#: ../ProjectController.py:255 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 nouveau projet !"
@@ -902,7 +931,7 @@
-#: ../controls/VariablePanel.py:369
+#: ../controls/VariablePanel.py:371 msgstr "Filtre de classe :"
@@ -910,19 +939,19 @@
-#: ../ProjectController.py:1488
+#: ../ProjectController.py:1523 -#: ../ProjectController.py:1490
+#: ../ProjectController.py:1525 msgid "Clean project build folder"
msgstr "Nettoyer le répertoire de compilation"
-#: ../ProjectController.py:1048
+#: ../ProjectController.py:1076 msgid "Cleaning the build directory\n"
msgstr "Répertoire de compilation en cours de nettoyage\n"
msgstr "Effacer les erreurs"
@@ -934,29 +963,29 @@
msgid "Clear the graph values"
msgstr "Vider les valeurs du graphique"
-#: ../PLCOpenEditor.py:221
+#: ../PLCOpenEditor.py:202 msgid "Close Application"
msgstr "Fermer l'application"
-#: ../PLCOpenEditor.py:131
+#: ../PLCOpenEditor.py:112 msgstr "Fermer le projet"
-#: ../PLCOpenEditor.py:129
+#: ../PLCOpenEditor.py:110 -#: ../editors/Viewer.py:481
+#: ../editors/Viewer.py:480 -#: ../editors/Viewer.py:501
-#: ../editors/LDViewer.py:503
+#: ../editors/Viewer.py:500 +#: ../editors/LDViewer.py:506 @@ -972,7 +1001,7 @@
-#: ../ProjectController.py:538
+#: ../ProjectController.py:552 msgid "Compiling IEC Program into C code...\n"
msgstr "Compilation du program en IEC vers du code C en cours...\n"
@@ -980,6 +1009,14 @@
+#: ../editors/ConfTreeNodeEditor.py:249 +#: ../editors/ProjectNodeEditor.py:13 +msgid "Config variables" +msgstr "Variables de configuration" #: ../dialogs/SearchInProjectDialog.py:47
@@ -988,20 +1025,25 @@
-#: ../ProjectController.py:1503
+#: ../ProjectController.py:1538 -#: ../ProjectController.py:1504
+#: ../ProjectController.py:1539 msgid "Connect to the target PLC"
msgstr "Connecter à l'automate cible"
+#: ../ProjectController.py:1125 +msgid "Connected to URI: %s" +msgstr "Connecté à l'URI : %s" #: ../connectors/PYRO/__init__.py:40
msgid "Connecting to URI : %s\n"
msgstr "Connection à l'URI %s en cours...\n"
-#: ../editors/Viewer.py:467
+#: ../editors/Viewer.py:466 #: ../dialogs/SFCTransitionDialog.py:76
@@ -1010,11 +1052,11 @@
msgid "Connection Properties"
msgstr "Propriétés de la connexion"
-#: ../ProjectController.py:1359
+#: ../ProjectController.py:1397 msgid "Connection canceled!\n"
msgstr "La connection a été abandonnée !\n"
-#: ../ProjectController.py:1384
+#: ../ProjectController.py:1422 msgid "Connection failed to %s!\n"
msgstr "La connection à \"%s\" a échouée !\n"
@@ -1024,6 +1066,7 @@
msgid "Connection to '%s' failed.\n"
msgstr "La connexion à l'adresse '%s' a échouée.\n"
+#: ../editors/Viewer.py:1426 #: ../dialogs/ConnectionDialog.py:56
@@ -1032,11 +1075,15 @@
#: ../controls/VariablePanel.py:65
-#: ../editors/Viewer.py:477
+#: ../editors/Viewer.py:476 @@ -1044,6 +1091,7 @@
msgid "Content Description (optional):"
msgstr "Description du contenu (optionel) :"
+#: ../editors/Viewer.py:1427 #: ../dialogs/ConnectionDialog.py:61
@@ -1064,21 +1112,21 @@
msgid "Conversion to time-of-day"
msgstr "Conversion en heure de la journée"
#: ../editors/Viewer.py:536
-#: ../editors/FileManagementPanel.py:283
+#: ../editors/FileManagementPanel.py:65 msgid "Copy file from left folder to right"
msgstr "Copier un fichier du dossier de gauche vers celui de droite"
-#: ../editors/FileManagementPanel.py:282
+#: ../editors/FileManagementPanel.py:64 msgid "Copy file from right folder to left"
msgstr "Copier un fichier du dossier de droite vers celui de gauche"
@@ -1086,7 +1134,7 @@
-#: ../ConfigTreeNode.py:582
+#: ../ConfigTreeNode.py:602 "Could not add child \"%s\", type %s :\n"
@@ -1095,7 +1143,7 @@
"Impossible d'ajouter le noeud enfant \"%s\", de type %s :\n"
-#: ../ConfigTreeNode.py:559
+#: ../ConfigTreeNode.py:579 "Couldn't load confnode base parameters %s :\n"
@@ -1104,7 +1152,7 @@
"Impossible de charger les paramètres de base du plugin %s :\n"
-#: ../ConfigTreeNode.py:570
+#: ../ConfigTreeNode.py:590 "Couldn't load confnode parameters %s :\n"
@@ -1113,20 +1161,20 @@
"Impossible de charger les paramètres du plugin %s :\n"
-#: ../PLCControler.py:765
-#: ../PLCControler.py:802
+#: ../PLCControler.py:819 +#: ../PLCControler.py:856 msgid "Couldn't paste non-POU object."
msgstr "Impossible de coller autre chose qu'un POU."
-#: ../ProjectController.py:1317
+#: ../ProjectController.py:1344 msgid "Couldn't start PLC !\n"
msgstr "Impossible de démarrer l'automate !\n"
-#: ../ProjectController.py:1325
+#: ../ProjectController.py:1352 msgid "Couldn't stop PLC !\n"
msgstr "Impossible d'arrêter l'automate !\n"
-#: ../ProjectController.py:1295
+#: ../ProjectController.py:1321 msgid "Couldn't stop debugger.\n"
msgstr "Impossible d'arrêter le débogage de l'automate !\n"
@@ -1142,42 +1190,42 @@
msgid "Create a new action"
msgstr "Créer une nouvelle action"
msgid "Create a new action block"
msgstr "Créer un nouveau bloc d'actions"
msgid "Create a new block"
msgstr "Créer un nouveau bloc"
msgid "Create a new branch"
msgstr "Créer une nouvelle branche"
msgid "Create a new coil"
msgstr "Créer un nouveau relai"
msgid "Create a new comment"
msgstr "Créer un nouveau copmmentaire"
msgid "Create a new connection"
msgstr "Créer une nouvelle connexion"
msgid "Create a new contact"
msgstr "Créer un nouveau contact"
msgid "Create a new divergence"
msgstr "Créer une nouvelle divergence"
@@ -1185,45 +1233,45 @@
msgid "Create a new divergence or convergence"
msgstr "Créer une nouvelle divergence ou convergence"
msgid "Create a new initial step"
msgstr "Créer une nouvelle étape initiale"
msgid "Create a new jump"
msgstr "Créer un nouveau renvoi"
msgid "Create a new power rail"
msgstr "Créer une nouvelle barre d'alimentation"
msgid "Create a new rung"
msgstr "Créer un nouvel échelon"
msgid "Create a new step"
msgstr "Créer une nouvelle étape"
#: ../dialogs/PouTransitionDialog.py:42
msgid "Create a new transition"
msgstr "Créer une nouvelle transition"
msgid "Create a new variable"
msgstr "Créer une nouvelle variable"
#: ../editors/Viewer.py:535
-#: ../editors/ResourceEditor.py:71
+#: ../editors/ResourceEditor.py:72 @@ -1239,13 +1287,13 @@
-#: ../canfestival/SlaveEditor.py:50
-#: ../canfestival/NetworkEditor.py:80
+#: ../canfestival/SlaveEditor.py:53 +#: ../canfestival/NetworkEditor.py:74 -#: ../canfestival/SlaveEditor.py:51
-#: ../canfestival/NetworkEditor.py:81
+#: ../canfestival/SlaveEditor.py:54 +#: ../canfestival/NetworkEditor.py:75 @@ -1282,60 +1330,61 @@
-#: ../ProjectController.py:1405
-msgid "Debug connect matching running PLC\n"
-msgstr "L'automate connecté correspond au project ouvert.\n"
-#: ../ProjectController.py:1408
-msgid "Debug do not match PLC - stop/transfert/start to re-enable\n"
-msgstr "L'automate connecté ne correspond pas au project ouvert - Arrêter/transférez/démarrer pour pouvoir débogguer.\n"
-#: ../controls/PouInstanceVariablesPanel.py:52
+#: ../ProjectController.py:1444 +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é - Arrêter/transférez/démarrer pour pouvoir débogguer.\n" +#: ../controls/PouInstanceVariablesPanel.py:59 msgstr "Déboguer l'instance"
-#: ../editors/Viewer.py:3222
+#: ../editors/Viewer.py:1016 +#: ../editors/Viewer.py:3326
-#: ../ProjectController.py:1122
+#: ../ProjectController.py:1153 msgid "Debug: Unknown variable '%s'\n"
msgstr "Débogage : Variable '%s' inconnue\n"
-#: ../ProjectController.py:1120
+#: ../ProjectController.py:1151 msgid "Debug: Unsupported type to debug '%s'\n"
msgstr "Débogage : Type non supporté dans le débogage '%'\n"
-#: ../ProjectController.py:1285
+#: ../ProjectController.py:1311 msgid "Debugger disabled\n"
msgstr "Débogueur désactivé\n"
-#: ../ProjectController.py:1297
+#: ../ProjectController.py:1441 +msgid "Debugger ready\n" +#: ../ProjectController.py:1323 msgid "Debugger stopped.\n"
msgstr "Débogueur désactivé\n"
#: ../editors/Viewer.py:511
-#: ../editors/Viewer.py:454
+#: ../editors/Viewer.py:453 msgid "Delete Divergence Branch"
msgstr "Supprimer une branche de divergence"
-#: ../editors/FileManagementPanel.py:371
+#: ../editors/FileManagementPanel.py:153 msgstr "Supprimer un fichier"
-#: ../editors/Viewer.py:443
+#: ../editors/Viewer.py:442 msgid "Delete Wire Segment"
msgstr "Supprimer un segment de fil"
@@ -1347,11 +1396,11 @@
msgid "Deletion (within)"
msgstr "Suppression (au milieu)"
-#: ../editors/DataTypeEditor.py:146
+#: ../editors/DataTypeEditor.py:152 msgstr "Type de dérivation :"
-#: ../plcopen/structures.py:264
+#: ../plcopen/structures.py:263 "The derivative function block produces an output XOUT proportional to the rate of change of the input XIN."
@@ -1359,11 +1408,11 @@
"Le Function Block derivative produit une sortie XOUT proportionnelle au rapport de changement de l'entrée XIN."
-#: ../controls/VariablePanel.py:360
+#: ../controls/VariablePanel.py:362 -#: ../editors/DataTypeEditor.py:314
+#: ../editors/DataTypeEditor.py:320 #: ../dialogs/ArrayTypeDialog.py:61
@@ -1372,23 +1421,23 @@
-#: ../dialogs/BrowseLocationsDialog.py:78
+#: ../dialogs/BrowseLocationsDialog.py:86 -#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 -#: ../ProjectController.py:1512
+#: ../ProjectController.py:1547 -#: ../ProjectController.py:1514
+#: ../ProjectController.py:1549 msgid "Disconnect from PLC"
msgstr "Déconnecter l'automate"
-#: ../editors/Viewer.py:496
+#: ../editors/Viewer.py:495 @@ -1396,7 +1445,7 @@
-#: ../editors/FileManagementPanel.py:370
+#: ../editors/FileManagementPanel.py:152 msgid "Do you really want to delete the file '%s'?"
msgstr "Êtes-vous sûr de vouloir supprimer le fichier '%s' ?"
@@ -1406,11 +1455,11 @@
-#: ../PLCOpenEditor.py:351
+#: ../PLCOpenEditor.py:330 -#: ../plcopen/structures.py:227
+#: ../plcopen/structures.py:226 "The down-counter can be used to signal when a count has reached zero, on counting down from a preset value."
@@ -1422,11 +1471,11 @@
-#: ../canfestival/canfestival.py:118
+#: ../canfestival/canfestival.py:139 msgid "EDS files (*.eds)|*.eds|All files|*.*"
msgstr "Fichiers EDS (*.eds)|*.eds|Tous les fichiers|*.*"
-#: ../editors/Viewer.py:510
+#: ../editors/Viewer.py:509 @@ -1458,14 +1507,14 @@
msgid "Edit array type properties"
msgstr "Editer les propriétés d'un type de données tableau"
-#: ../editors/Viewer.py:2112
-#: ../editors/Viewer.py:2114
-#: ../editors/Viewer.py:2630
-#: ../editors/Viewer.py:2632
+#: ../editors/Viewer.py:2186 +#: ../editors/Viewer.py:2188 +#: ../editors/Viewer.py:2706 +#: ../editors/Viewer.py:2708 msgstr "Editer le commentaire"
-#: ../editors/FileManagementPanel.py:284
+#: ../editors/FileManagementPanel.py:66 msgstr "Editer un fichier"
@@ -1473,11 +1522,11 @@
msgstr "Editer l'élément"
-#: ../editors/Viewer.py:2594
+#: ../editors/Viewer.py:2670 msgstr "Editer la cible du renvoi"
-#: ../ProjectController.py:1526
+#: ../ProjectController.py:1561 msgid "Edit raw IEC code added to code generated by PLCGenerator"
msgstr "Editer le code IEC ajouté au code généré par PLCGenerator"
@@ -1489,35 +1538,35 @@
msgstr "Editer la transition"
msgstr "Barre d'outils d'édition"
-#: ../ProjectController.py:1013
+#: ../ProjectController.py:1039 msgstr "Selection d'un éditeur"
-#: ../editors/DataTypeEditor.py:341
+#: ../editors/DataTypeEditor.py:347
msgstr "Activer Défaire/Refaire"
-#: ../Beremiz_service.py:380
+#: ../Beremiz_service.py:385 msgstr "Saisissez un nom"
-#: ../Beremiz_service.py:365
+#: ../Beremiz_service.py:370 msgid "Enter a port number "
msgstr "Saisissez un numéro de port"
-#: ../Beremiz_service.py:355
+#: ../Beremiz_service.py:360 msgid "Enter the IP of the interface to bind"
msgstr "Saisissez l'adresse IP de l'interface à lier"
-#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 @@ -1525,43 +1574,41 @@
-#: ../Beremiz_service.py:270
-#: ../Beremiz_service.py:394
-#: ../controls/VariablePanel.py:330
-#: ../controls/VariablePanel.py:678
-#: ../controls/DebugVariablePanel.py:164
-#: ../PLCOpenEditor.py:358
-#: ../PLCOpenEditor.py:363
-#: ../PLCOpenEditor.py:531
-#: ../PLCOpenEditor.py:541
-#: ../editors/TextViewer.py:376
-#: ../editors/DataTypeEditor.py:543
-#: ../editors/DataTypeEditor.py:548
-#: ../editors/DataTypeEditor.py:572
-#: ../editors/DataTypeEditor.py:577
-#: ../editors/DataTypeEditor.py:587
-#: ../editors/DataTypeEditor.py:719
-#: ../editors/DataTypeEditor.py:726
-#: ../editors/Viewer.py:366
-#: ../editors/LDViewer.py:663
-#: ../editors/LDViewer.py:879
-#: ../editors/LDViewer.py:883
-#: ../editors/FileManagementPanel.py:210
-#: ../ProjectController.py:221
+#: ../Beremiz_service.py:271 +#: ../controls/VariablePanel.py:332 +#: ../controls/VariablePanel.py:681 +#: ../controls/DebugVariablePanel.py:379 +#: ../PLCOpenEditor.py:337 +#: ../PLCOpenEditor.py:342 +#: ../PLCOpenEditor.py:416 +#: ../PLCOpenEditor.py:426 +#: ../editors/TextViewer.py:369 +#: ../editors/DataTypeEditor.py:549 +#: ../editors/DataTypeEditor.py:554 +#: ../editors/DataTypeEditor.py:578 +#: ../editors/DataTypeEditor.py:583 +#: ../editors/DataTypeEditor.py:593 +#: ../editors/DataTypeEditor.py:744 +#: ../editors/DataTypeEditor.py:751 +#: ../editors/Viewer.py:365 +#: ../editors/LDViewer.py:666 +#: ../editors/LDViewer.py:882 +#: ../editors/LDViewer.py:886 +#: ../ProjectController.py:225 #: ../dialogs/PouNameDialog.py:53
#: ../dialogs/PouTransitionDialog.py:107
-#: ../dialogs/BrowseLocationsDialog.py:175
+#: ../dialogs/BrowseLocationsDialog.py:212 #: ../dialogs/ProjectDialog.py:71
#: ../dialogs/SFCStepNameDialog.py:59
-#: ../dialogs/ConnectionDialog.py:152
+#: ../dialogs/ConnectionDialog.py:159 #: ../dialogs/FBDVariableDialog.py:201
#: ../dialogs/PouActionDialog.py:104
#: ../dialogs/BrowseValuesLibraryDialog.py:83
@@ -1574,20 +1621,20 @@
#: ../dialogs/ArrayTypeDialog.py:97
#: ../dialogs/ArrayTypeDialog.py:103
#: ../dialogs/FBDBlockDialog.py:164
-#: ../dialogs/ForceVariableDialog.py:169
+#: ../dialogs/ForceVariableDialog.py:179 -#: ../ProjectController.py:587
+#: ../ProjectController.py:601 msgid "Error : At least one configuration and one resource must be declared in PLC !\n"
msgstr "Erreur : Au moins une configuration ou une ressource doit être déclarée dans l'automate !\n"
-#: ../ProjectController.py:579
+#: ../ProjectController.py:593 msgid "Error : IEC to C compiler returned %d\n"
msgstr "Erreur : Le compilateur d'IEC en C a retourné %d\n"
-#: ../ProjectController.py:520
+#: ../ProjectController.py:534 "Error in ST/IL/SFC code generator :\n"
@@ -1596,24 +1643,24 @@
"Erreur dans le générateur de code ST/IL/SFC :\n"
-#: ../ConfigTreeNode.py:182
+#: ../ConfigTreeNode.py:183 msgid "Error while saving \"%s\"\n"
msgstr "Erreur lors de l'enregistrement de \"%s\"\n"
-#: ../canfestival/canfestival.py:122
+#: ../canfestival/canfestival.py:144 msgid "Error: Export slave failed\n"
msgstr "Erreur : L'export de l'esclave a échoué\n"
-#: ../canfestival/canfestival.py:270
+#: ../canfestival/canfestival.py:345 msgid "Error: No Master generated\n"
msgstr "Erreur : Aucun maître généré\n"
-#: ../canfestival/canfestival.py:265
+#: ../canfestival/canfestival.py:340 msgid "Error: No PLC built\n"
msgstr "Erreur : Aucun automate compilé\n"
-#: ../ProjectController.py:1378
+#: ../ProjectController.py:1416 msgid "Exception while connecting %s!\n"
msgstr "Une exception est apparu au cours de la connexion %s !\n"
@@ -1627,7 +1674,7 @@
msgstr "Ordre d'exécution :"
msgid "Experimental web based HMI"
msgstr "IHM expérimentale utilisant les technologies web"
@@ -1639,15 +1686,16 @@
-#: ../canfestival/canfestival.py:128
+#: ../canfestival/canfestival.py:150 msgid "Export CanOpen slave to EDS file"
msgstr "Exporter un esclave CANopen sous la forme d'un fichier EDS"
+#: ../controls/DebugVariablePanel.py:1472 #: ../editors/GraphicViewer.py:144
msgid "Export graph values to clipboard"
msgstr "Exporter les valeurs du graphique vers le presse-papier"
-#: ../canfestival/canfestival.py:127
+#: ../canfestival/canfestival.py:149 msgstr "Exporter un esclave"
@@ -1659,7 +1707,7 @@
-#: ../ProjectController.py:591
+#: ../ProjectController.py:605 msgid "Extracting Located Variables...\n"
msgstr "Extraction des variables adressées en cours...\n"
@@ -1670,16 +1718,16 @@
-#: ../ProjectController.py:1445
+#: ../ProjectController.py:1480 msgid "Failed : Must build before transfer.\n"
msgstr "Echec : Le projet doit être compilé avant d'être transféré.\n"
-#: ../editors/Viewer.py:405
+#: ../editors/Viewer.py:404 #: ../dialogs/LDElementDialog.py:84
msgstr "Front descendant"
-#: ../plcopen/structures.py:217
+#: ../plcopen/structures.py:216 "Falling edge detector\n"
"The output produces a single pulse when a falling edge is detected."
@@ -1687,7 +1735,7 @@
"Détecteur de front descendant\n"
"La sortie produit une impulsion unique lorsqu'un front descendant est détecté."
-#: ../ProjectController.py:900
+#: ../ProjectController.py:927 msgid "Fatal : cannot get builder.\n"
msgstr "Erreur fatale : impossible de trouver un compilateur.\n"
@@ -1701,22 +1749,17 @@
msgid "Fields %s haven't a valid value!"
msgstr "Les champs %s n'ont pas une valeur valide !"
-#: ../editors/FileManagementPanel.py:209
-msgid "File '%s' already exists!"
-msgstr "Le fichier '%s' existe déjà !"
#: ../dialogs/FindInPouDialog.py:30
#: ../dialogs/FindInPouDialog.py:99
msgstr "Recherche suivante"
msgstr "Recherche précédente"
@@ -1732,12 +1775,12 @@
msgid "Force runtime reload\n"
msgstr "Redémarrage du runtime forcé\n"
-#: ../controls/DebugVariablePanel.py:295
-#: ../editors/Viewer.py:1353
+#: ../controls/DebugVariablePanel.py:1934 +#: ../editors/Viewer.py:1385 msgstr "Forcer la valeur"
-#: ../dialogs/ForceVariableDialog.py:152
+#: ../dialogs/ForceVariableDialog.py:162 msgid "Forcing Variable Value"
msgstr "Forcer la valeur de la variable"
@@ -1750,7 +1793,7 @@
msgid "Form isn't complete. %s must be filled!"
msgstr "Le formulaire est incomplet. %s doit être complété !"
-#: ../dialogs/ConnectionDialog.py:142
+#: ../dialogs/ConnectionDialog.py:149 #: ../dialogs/FBDBlockDialog.py:154
msgid "Form isn't complete. Name must be filled!"
msgstr "Le formulaire est incomplet. Le nom doit être complété !"
@@ -1771,16 +1814,16 @@
msgstr "&Bloc Fonctionnel"
#: ../dialogs/SearchInProjectDialog.py:45
msgstr "Bloc fonctionnel"
-#: ../controls/VariablePanel.py:741
+#: ../controls/VariablePanel.py:744 msgid "Function Block Types"
msgstr "Types de blocs fonctionnels"
@@ -1792,11 +1835,7 @@
msgid "Function Blocks can't be used in Functions!"
msgstr "Les blocs fonctionnels ne peuvent être utilisés dans des functions !"
-#: ../editors/Viewer.py:238
-msgid "Function Blocks can't be used in Transitions!"
-msgstr "Les blocs fonctionnels ne peuvent être utilisés dans des transitions"
-#: ../PLCControler.py:2055
+#: ../PLCControler.py:2180 msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!"
msgstr "Le bloc fonctionnel \"%s\" ne peuvent être collés dans une function !"
@@ -1805,11 +1844,11 @@
-#: ../PLCOpenEditor.py:138
+#: ../PLCOpenEditor.py:119 msgstr "Générer le program"
-#: ../ProjectController.py:510
+#: ../ProjectController.py:524 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"
@@ -1817,6 +1856,7 @@
+#: ../controls/DebugVariablePanel.py:1471 #: ../editors/GraphicViewer.py:131
msgid "Go to current value"
msgstr "Aller à la valeur actuelle"
@@ -1841,7 +1881,7 @@
-#: ../editors/FileManagementPanel.py:303
+#: ../editors/FileManagementPanel.py:85 msgstr "Répertoire utilisateur :"
@@ -1853,7 +1893,7 @@
-#: ../plcopen/structures.py:279
+#: ../plcopen/structures.py:278 "The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2."
@@ -1861,7 +1901,7 @@
"Le bloc functionnel hystérésis fourni un booléen en sortie suivant une courbe d'hystérésis entre les deux entrées réelles (REAL) XIN1 et XIN2."
-#: ../ProjectController.py:827
+#: ../ProjectController.py:851 msgid "IEC-61131-3 code generation failed !\n"
msgstr "La création du code IEC-61131-3 a échouée !\n"
@@ -1871,8 +1911,8 @@
-#: ../Beremiz_service.py:356
-#: ../Beremiz_service.py:357
+#: ../Beremiz_service.py:361 +#: ../Beremiz_service.py:362 msgstr "l'IP est invalide !"
@@ -1882,11 +1922,16 @@
#: ../controls/VariablePanel.py:76
+#: ../editors/Viewer.py:1412 #: ../dialogs/FBDVariableDialog.py:34
-#: ../controls/VariablePanel.py:263
+#: ../editors/Viewer.py:999 +#: ../controls/VariablePanel.py:265 msgid "Incompatible data types between \"%s\" and \"%s\""
msgstr "Types de donnée imcompatible entre \"%s\" et \"%s\""
@@ -1905,20 +1950,20 @@
-#: ../editors/Viewer.py:492
+#: ../editors/Viewer.py:491 #: ../controls/VariablePanel.py:58
#: ../controls/VariablePanel.py:59
-#: ../editors/DataTypeEditor.py:48
+#: ../editors/DataTypeEditor.py:50 -#: ../editors/DataTypeEditor.py:178
-#: ../editors/DataTypeEditor.py:209
-#: ../editors/DataTypeEditor.py:265
-#: ../editors/DataTypeEditor.py:303
+#: ../editors/DataTypeEditor.py:184 +#: ../editors/DataTypeEditor.py:215 +#: ../editors/DataTypeEditor.py:271 +#: ../editors/DataTypeEditor.py:309 msgstr "Valeur initiale :"
@@ -1933,7 +1978,8 @@
#: ../controls/VariablePanel.py:76
-#: ../dialogs/BrowseLocationsDialog.py:36
+#: ../editors/Viewer.py:1410 +#: ../dialogs/BrowseLocationsDialog.py:35 #: ../dialogs/FBDVariableDialog.py:33
#: ../dialogs/SFCStepDialog.py:61
@@ -1947,16 +1993,16 @@
msgstr "Insertion (au milieu)"
-#: ../plcopen/plcopen.py:1833
+#: ../plcopen/plcopen.py:1843 msgid "Instance with id %d doesn't exist!"
msgstr "L'instance dont l'id est %d n'existe pas !"
-#: ../editors/ResourceEditor.py:247
+#: ../editors/ResourceEditor.py:255 -#: ../plcopen/structures.py:259
+#: ../plcopen/structures.py:258 "The integral function block integrates the value of input XIN over time."
@@ -1968,16 +2014,16 @@
-#: ../editors/ResourceEditor.py:71
+#: ../editors/ResourceEditor.py:72 -#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 -#: ../PLCControler.py:2032
-#: ../PLCControler.py:2070
+#: ../PLCControler.py:2157 +#: ../PLCControler.py:2195 msgid "Invalid plcopen element(s)!!!"
msgstr "Les éléments plcopen ne sont pas valides !!! "
@@ -1987,13 +2033,13 @@
msgid "Invalid type \"%s\"-> %d != %d for location\"%s\""
msgstr "Type invalide \"%s\"-> %d != %d pour cette adresse \"%s\""
-#: ../dialogs/ForceVariableDialog.py:167
+#: ../dialogs/ForceVariableDialog.py:177 msgid "Invalid value \"%s\" for \"%s\" variable!"
msgstr "Valeur \"%s\" invalide pour une variable de type \"%s\" !"
-#: ../controls/DebugVariablePanel.py:153
-#: ../controls/DebugVariablePanel.py:156
+#: ../controls/DebugVariablePanel.py:319 +#: ../controls/DebugVariablePanel.py:322 msgid "Invalid value \"%s\" for debug variable"
msgstr "Chemin de variable à déboguer \"%s\" invalide"
@@ -2018,7 +2064,7 @@
"Vous devez rentrer une valeur numérique."
-#: ../editors/Viewer.py:497
+#: ../editors/Viewer.py:496 @@ -2051,19 +2097,19 @@
-#: ../ProjectController.py:1451
+#: ../ProjectController.py:1486 msgid "Latest build already matches current target. Transfering anyway...\n"
msgstr "La dernière compilation correspond à la cible actuelle...\n"
-#: ../Beremiz_service.py:324
+#: ../Beremiz_service.py:331 msgid "Launch WX GUI inspector"
msgstr "Lancer un inspecteur d'IHM WX"
-#: ../Beremiz_service.py:323
+#: ../Beremiz_service.py:330 msgid "Launch a live Python shell"
msgstr "Lancer une console Python"
-#: ../editors/Viewer.py:428
+#: ../editors/Viewer.py:427 @@ -2083,7 +2129,7 @@
msgid "Less than or equal to"
msgstr "Inférieur ou égal à"
@@ -2100,7 +2146,11 @@
-#: ../ProjectController.py:1353
+#: ../canfestival/canfestival.py:322 +msgstr "Entrées locales" +#: ../ProjectController.py:1391 msgid "Local service discovery failed!\n"
msgstr "Echec de la sélection d'un service!\n"
@@ -2108,14 +2158,10 @@
-#: ../dialogs/BrowseLocationsDialog.py:61
+#: ../dialogs/BrowseLocationsDialog.py:68 msgid "Locations available:"
msgstr "Adresses disponibles :"
#: ../plcopen/iec_std.csv:25
msgid "Logarithm to base 10"
msgstr "Logarithme de base 10"
@@ -2125,20 +2171,20 @@
msgid "MDNS resolution failure for '%s'\n"
msgstr "Echec de la résolution MDNS pour '%s'\n"
-#: ../canfestival/SlaveEditor.py:37
-#: ../canfestival/NetworkEditor.py:67
+#: ../canfestival/SlaveEditor.py:41 +#: ../canfestival/NetworkEditor.py:62 msgstr "Variable mappable"
msgid "Map located variables over CANopen"
msgstr "Mappe des variables localisées sur un bus CANopen"
-#: ../canfestival/NetworkEditor.py:89
+#: ../canfestival/NetworkEditor.py:83 -#: ../ConfigTreeNode.py:480
+#: ../ConfigTreeNode.py:500 msgid "Max count (%d) reached for this confnode of type %s "
msgstr "Nombre limite(%d) atteint pour les plugin de type %s"
@@ -2147,15 +2193,15 @@
-#: ../editors/DataTypeEditor.py:232
+#: ../editors/DataTypeEditor.py:238 -#: ../dialogs/BrowseLocationsDialog.py:38
+#: ../dialogs/BrowseLocationsDialog.py:37
msgstr "Barre d'outils du menu principal"
@@ -2163,7 +2209,7 @@
-#: ../editors/Viewer.py:433
+#: ../editors/Viewer.py:432 @@ -2175,7 +2221,7 @@
-#: ../editors/DataTypeEditor.py:219
+#: ../editors/DataTypeEditor.py:225 @@ -2191,8 +2237,8 @@
-#: ../PLCGenerator.py:703
-#: ../PLCGenerator.py:936
+#: ../PLCGenerator.py:732 +#: ../PLCGenerator.py:975 msgid "More than one connector found corresponding to \"%s\" continuation in \"%s\" POU"
msgstr "Plusieurs connecteurs trouvés pour le prolongement \"%s\" dans le POU \"%s\""
@@ -2205,11 +2251,11 @@
msgstr "Déplacer une action vers le haut"
-#: ../controls/DebugVariablePanel.py:185
+#: ../controls/DebugVariablePanel.py:1532 msgid "Move debug variable down"
msgstr "Déplacer une variable à déboguer vers le bas"
-#: ../controls/DebugVariablePanel.py:184
+#: ../controls/DebugVariablePanel.py:1531 msgid "Move debug variable up"
msgstr "Déplacer une variable à déboguer vers le haut"
@@ -2217,34 +2263,34 @@
msgstr "Déplacer vers le haut"
-#: ../editors/DataTypeEditor.py:348
+#: ../editors/DataTypeEditor.py:354 msgid "Move element down"
msgstr "Déplcer un élément vers le bas"
-#: ../editors/DataTypeEditor.py:347
+#: ../editors/DataTypeEditor.py:353 msgstr "Déplacer un élément vers le haut"
-#: ../editors/ResourceEditor.py:254
+#: ../editors/ResourceEditor.py:262 msgid "Move instance down"
msgstr "Déplacer une instance vers le bas"
-#: ../editors/ResourceEditor.py:253
+#: ../editors/ResourceEditor.py:261 msgstr "Déplacer une instance vers le haut"
-#: ../editors/ResourceEditor.py:225
+#: ../editors/ResourceEditor.py:233 msgstr "Déplcer une tâche vers le bas"
-#: ../editors/ResourceEditor.py:224
+#: ../editors/ResourceEditor.py:232 msgstr "Déplacer une tâche vers le haut"
@@ -2252,11 +2298,13 @@
msgstr "Déplacer vers le bas"
-#: ../controls/VariablePanel.py:381
+#: ../controls/VariablePanel.py:383 +#: ../c_ext/CFileEditor.py:520 msgid "Move variable down"
msgstr "Déplacer une variable vers le bas"
-#: ../controls/VariablePanel.py:380
+#: ../controls/VariablePanel.py:382 +#: ../c_ext/CFileEditor.py:519 msgstr "Déplacer une variable vers le haut"
@@ -2268,19 +2316,19 @@
-#: ../editors/FileManagementPanel.py:301
+#: ../editors/FileManagementPanel.py:83 msgstr "Poste de travail :"
#: ../controls/VariablePanel.py:58
#: ../controls/VariablePanel.py:59
-#: ../editors/DataTypeEditor.py:48
-#: ../editors/ResourceEditor.py:67
-#: ../editors/ResourceEditor.py:76
+#: ../editors/DataTypeEditor.py:50 +#: ../editors/ResourceEditor.py:68 +#: ../editors/ResourceEditor.py:77 -#: ../Beremiz_service.py:381
+#: ../Beremiz_service.py:386 msgid "Name must not be null!"
msgstr "Le nom ne doit pas être vide !"
@@ -2296,15 +2344,15 @@
msgid "Natural logarithm"
msgstr "Logarithme népérien"
-#: ../editors/Viewer.py:403
+#: ../editors/Viewer.py:402 #: ../dialogs/LDElementDialog.py:67
-#: ../PLCOpenEditor.py:125
-#: ../PLCOpenEditor.py:167
+#: ../PLCOpenEditor.py:106 +#: ../PLCOpenEditor.py:148 @@ -2312,30 +2360,30 @@
-#: ../editors/Viewer.py:402
+#: ../editors/Viewer.py:401 msgstr "Pas de modificateur"
-#: ../PLCControler.py:2929
+#: ../PLCControler.py:3054 msgid "No PLC project found"
msgstr "Pas de projet d'automate trouvé"
-#: ../ProjectController.py:1478
+#: ../ProjectController.py:1513 msgid "No PLC to transfer (did build succeed ?)\n"
msgstr "Aucun automate à transférer (la compilation a-t-elle réussi ?)\n"
-#: ../PLCGenerator.py:1321
+#: ../PLCGenerator.py:1360 msgid "No body defined in \"%s\" POU"
msgstr "Pas de code défini dans le POU \"%s\""
-#: ../PLCGenerator.py:722
-#: ../PLCGenerator.py:945
+#: ../PLCGenerator.py:751 +#: ../PLCGenerator.py:984 msgid "No connector found corresponding to \"%s\" continuation in \"%s\" POU"
msgstr "Pas de connecteur trouvé pour le prolongement \"%s\" dans le POU \"%s\""
-#: ../PLCOpenEditor.py:370
+#: ../PLCOpenEditor.py:349 "No documentation available.\n"
@@ -2343,19 +2391,15 @@
"Pas de documentation.\n"
-#: ../PLCGenerator.py:744
+#: ../PLCGenerator.py:773 msgid "No informations found for \"%s\" block"
msgstr "Aucune information trouvée pour le block \"%s\""
-#: ../plcopen/structures.py:167
+#: ../plcopen/structures.py:166 msgid "No output variable found"
msgstr "Pas de variable de sortie trouvée."
-#: ../Beremiz_service.py:394
-msgstr "Aucun automate en cours d'exécution"
#: ../controls/SearchResultPanel.py:169
msgid "No search results available."
msgstr "Pas de résultat de recherche disponible."
@@ -2379,16 +2423,11 @@
msgid "No valid value selected!"
msgstr "Aucune valeur valide sélectionnée !"
-#: ../PLCGenerator.py:1319
+#: ../PLCGenerator.py:1358 msgid "No variable defined in \"%s\" POU"
msgstr "Pas de varaibles définies dans le POU \"%s\""
-#: ../canfestival/SlaveEditor.py:49
-#: ../canfestival/NetworkEditor.py:79
-msgstr "Propriétés du noeud"
#: ../canfestival/config_utils.py:354
msgid "Non existing node ID : %d (variable %s)"
@@ -2419,7 +2458,7 @@
-#: ../plcopen/structures.py:247
+#: ../plcopen/structures.py:246 "The off-delay timer can be used to delay setting an output false, for fixed period after input goes false."
@@ -2427,7 +2466,7 @@
"Temporisation avec retard à l'extinction\n"
"La temporisation avec retard à l'extinction peut être utilisé pour retarder le passage de la sortie à l'état faux, d'une période fixe après le passage de l'entrée à l'état faux"
-#: ../plcopen/structures.py:242
+#: ../plcopen/structures.py:241 "The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true."
@@ -2439,10 +2478,10 @@
msgstr "Uniquement les éléments"
-#: ../PLCOpenEditor.py:127
-#: ../PLCOpenEditor.py:168
+#: ../PLCOpenEditor.py:108 +#: ../PLCOpenEditor.py:149 @@ -2450,7 +2489,7 @@
msgstr "Ouverture de Inkscape"
-#: ../ProjectController.py:1530
+#: ../ProjectController.py:1565 msgid "Open a file explorer to manage project files"
msgstr "Ouvrir un explorateur de fichier pour gérer les fichiers de projet"
@@ -2471,29 +2510,30 @@
msgid "Organization (optional):"
msgstr "Groupe (optionnel) :"
-#: ../canfestival/SlaveEditor.py:47
-#: ../canfestival/NetworkEditor.py:77
+#: ../canfestival/SlaveEditor.py:51 +#: ../canfestival/NetworkEditor.py:72 #: ../controls/VariablePanel.py:76
-#: ../dialogs/BrowseLocationsDialog.py:37
+#: ../editors/Viewer.py:1411 +#: ../dialogs/BrowseLocationsDialog.py:36 #: ../dialogs/FBDVariableDialog.py:35
#: ../dialogs/SFCStepDialog.py:65
-#: ../canfestival/SlaveEditor.py:36
-#: ../canfestival/NetworkEditor.py:66
+#: ../canfestival/SlaveEditor.py:40 +#: ../canfestival/NetworkEditor.py:61 -#: ../canfestival/SlaveEditor.py:35
-#: ../canfestival/NetworkEditor.py:65
+#: ../canfestival/SlaveEditor.py:39 +#: ../canfestival/NetworkEditor.py:60 -#: ../plcopen/structures.py:269
+#: ../plcopen/structures.py:268 "The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control."
@@ -2505,19 +2545,17 @@
-#: ../ProjectController.py:1096
-#: ../ProjectController.py:1398
-msgstr "L'automate est dans l'état %s\n"
-#: ../PLCOpenEditor.py:313
-#: ../PLCOpenEditor.py:391
+msgstr "Log de l'automate" +#: ../PLCOpenEditor.py:294 +#: ../PLCOpenEditor.py:370 msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
msgstr "Fichiers PLCOpen (*.xml)|*.xml|Tous les fichiers|*.*"
-#: ../PLCOpenEditor.py:175
-#: ../PLCOpenEditor.py:231
+#: ../PLCOpenEditor.py:156 +#: ../PLCOpenEditor.py:212 @@ -2537,8 +2575,8 @@
-#: ../PLCOpenEditor.py:141
+#: ../PLCOpenEditor.py:122 @@ -2546,22 +2584,22 @@
msgid "Page Size (optional):"
msgstr "Taille de la page (optionnel) :"
-#: ../PLCOpenEditor.py:476
-#: ../controls/PouInstanceVariablesPanel.py:41
+#: ../controls/PouInstanceVariablesPanel.py:48
#: ../editors/Viewer.py:537
@@ -2573,16 +2611,16 @@
msgstr "Nombre de pattes :"
-#: ../editors/Viewer.py:2289
-#: ../editors/Viewer.py:2594
+#: ../editors/Viewer.py:2363 +#: ../editors/Viewer.py:2670 #: ../editors/SFCViewer.py:696
msgid "Please choose a target"
msgstr "Choisissez une cible"
-#: ../editors/Viewer.py:2112
-#: ../editors/Viewer.py:2114
-#: ../editors/Viewer.py:2630
-#: ../editors/Viewer.py:2632
+#: ../editors/Viewer.py:2186 +#: ../editors/Viewer.py:2188 +#: ../editors/Viewer.py:2706 +#: ../editors/Viewer.py:2708 msgid "Please enter comment text"
msgstr "Saisissez le texte du commentaire"
@@ -2592,16 +2630,16 @@
msgid "Please enter step name"
msgstr "Saisissez le nom de l'étape"
-#: ../dialogs/ForceVariableDialog.py:153
+#: ../dialogs/ForceVariableDialog.py:163 msgid "Please enter value for a \"%s\" variable:"
msgstr "Veuillez entrer la valeur pour une variable de type \"%s\" :"
-#: ../Beremiz_service.py:366
+#: ../Beremiz_service.py:371 msgid "Port number must be 0 <= port <= 65535!"
msgstr "Le numéro de port doit être compris entre 0 et 65535 !"
-#: ../Beremiz_service.py:366
+#: ../Beremiz_service.py:371 msgid "Port number must be an integer!"
msgstr "Le numéro de port doit être un entier !"
@@ -2609,7 +2647,7 @@
-#: ../editors/Viewer.py:476
+#: ../editors/Viewer.py:475 msgstr "Barre d'alimentation"
@@ -2617,8 +2655,8 @@
msgid "Power Rail Properties"
msgstr "Propriétés de la barre d'alimentation"
-#: ../PLCOpenEditor.py:143
+#: ../PLCOpenEditor.py:124 msgstr "Aperçu avant impression"
@@ -2633,18 +2671,18 @@
-#: ../PLCOpenEditor.py:145
-#: ../PLCOpenEditor.py:171
+#: ../PLCOpenEditor.py:126 +#: ../PLCOpenEditor.py:152
msgstr "Aperçu avant impression"
-#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 @@ -2652,6 +2690,11 @@
+#: ../runtime/PLCObject.py:318 +msgid "Problem starting PLC : error %d" +msgstr "Problème au démarrage du PLC : erreur %d" #: ../controls/ProjectPropertiesPanel.py:80
msgid "Product Name (required):"
msgstr "Nom du produit (obligatoire) :"
@@ -2664,12 +2707,12 @@
msgid "Product Version (required):"
msgstr "Version du produit (obligatoire) :"
#: ../dialogs/SearchInProjectDialog.py:46
-#: ../PLCOpenEditor.py:360
+#: ../PLCOpenEditor.py:339 msgid "Program was successfully generated!"
msgstr "Le programme a été généré avec succès !"
@@ -2682,7 +2725,7 @@
msgstr "Les programmes ne peuvent être utilisés par les autres POUs !"
#: ../controls/ProjectPropertiesPanel.py:84
@@ -2691,7 +2734,7 @@
-#: ../ProjectController.py:1529
+#: ../ProjectController.py:1564 msgstr "Fichiers de projet"
@@ -2703,7 +2746,7 @@
msgid "Project Version (optional):"
msgstr "Version du projet (optionnel) :"
-#: ../PLCControler.py:2916
+#: ../PLCControler.py:3041 "Project file syntax error:\n"
@@ -2711,20 +2754,25 @@
"Erreur de syntaxe dans le fichier du projet :\n"
+#: ../editors/ProjectNodeEditor.py:14 #: ../dialogs/ProjectDialog.py:32
msgid "Project properties"
msgstr "Propriétés du projet"
-#: ../ConfigTreeNode.py:506
+#: ../ConfigTreeNode.py:526 msgid "Project tree layout do not match confnode.xml %s!=%s "
msgstr "L'organisation du projet ne correspond pas à plugin.xml %s!=%s"
+#: ../dialogs/ConnectionDialog.py:96 +msgstr "Propager le nom" -#: ../plcopen/structures.py:237
+#: ../plcopen/structures.py:236 "The pulse timer can be used to generate output pulses of a given time duration."
@@ -2732,7 +2780,11 @@
"Temporisation à impulsion\n"
"La temporisation à impulsion peut être utilisée pour générer sur la sortie des impulsions d'une durée déterminée."
+#: ../py_ext/PythonEditor.py:61 @@ -2740,13 +2792,13 @@
-#: ../Beremiz_service.py:328
-#: ../PLCOpenEditor.py:151
+#: ../Beremiz_service.py:333 +#: ../PLCOpenEditor.py:132 -#: ../plcopen/structures.py:202
+#: ../plcopen/structures.py:201 "The RS bistable is a latch where the Reset dominates."
@@ -2754,7 +2806,7 @@
"La bascule RS est une bascule où le Reset est dominant."
-#: ../plcopen/structures.py:274
+#: ../plcopen/structures.py:273 "The RAMP function block is modelled on example given in the standard."
@@ -2762,15 +2814,16 @@
"Le bloc fonctionnel RAMP est basé sur l'exemple du standard."
+#: ../controls/DebugVariablePanel.py:1462 #: ../editors/GraphicViewer.py:89
-#: ../ProjectController.py:1525
+#: ../ProjectController.py:1560 -#: ../plcopen/structures.py:254
+#: ../plcopen/structures.py:253 "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."
@@ -2778,13 +2831,13 @@
"L'horloge temps réel est utilisée dans de nombreux cas tels que l'horodatage, la définition des dates et heures dans des rapports de commandes, dans des messages d'alarme et bien d'autres."
msgid "Really delete node '%s'?"
msgstr "Êtes-vous sûr de vouloir supprimer le noeud '%s' ?"
@@ -2793,7 +2846,7 @@
#: ../dialogs/DiscoveryDialog.py:105
@@ -2806,8 +2859,8 @@
msgid "Regular expressions"
msgstr "Expressions régulières"
-#: ../controls/DebugVariablePanel.py:299
-#: ../editors/Viewer.py:1356
+#: ../controls/DebugVariablePanel.py:1938 +#: ../editors/Viewer.py:1388 msgstr "Relacher la valeur"
@@ -2815,7 +2868,7 @@
msgid "Remainder (modulo)"
msgstr "Enlever un noeud %s"
@@ -2824,39 +2877,40 @@
msgstr "Supprimer une action"
-#: ../controls/DebugVariablePanel.py:183
+#: ../controls/DebugVariablePanel.py:1530 msgid "Remove debug variable"
msgstr "Supprimer une variable à déboguer"
-#: ../editors/DataTypeEditor.py:346
+#: ../editors/DataTypeEditor.py:352 msgstr "Supprimer un élément"
-#: ../editors/FileManagementPanel.py:281
+#: ../editors/FileManagementPanel.py:63 msgid "Remove file from left folder"
msgstr "Supprimer un fichier du dossier de gauche"
-#: ../editors/ResourceEditor.py:252
+#: ../editors/ResourceEditor.py:260 msgstr "Supprimer une instance"
-#: ../canfestival/NetworkEditor.py:87
+#: ../canfestival/NetworkEditor.py:81 msgstr "Enlever l'esclave"
-#: ../editors/ResourceEditor.py:223
+#: ../editors/ResourceEditor.py:231 msgstr "Supprimer la tâche"
-#: ../controls/VariablePanel.py:379
+#: ../controls/VariablePanel.py:381 +#: ../c_ext/CFileEditor.py:518 msgstr "Supprimer une variable"
-#: ../editors/FileManagementPanel.py:399
+#: ../editors/FileManagementPanel.py:181 msgstr "Remplacer un fichier"
@@ -2872,7 +2926,7 @@
msgid "Reset Execution Order"
msgstr "Réinitialiser l'order d'exécution"
msgid "Reset Perspective"
msgstr "Réinitialiser l'interface"
@@ -2892,11 +2946,11 @@
-#: ../controls/VariablePanel.py:352
+#: ../controls/VariablePanel.py:354 msgstr "Type de retour :"
-#: ../editors/Viewer.py:430
+#: ../editors/Viewer.py:429 @@ -2904,12 +2958,12 @@
msgstr "Barre d'alimentation à droite"
-#: ../editors/Viewer.py:404
+#: ../editors/Viewer.py:403 #: ../dialogs/LDElementDialog.py:80
-#: ../plcopen/structures.py:212
+#: ../plcopen/structures.py:211 "The output produces a single pulse when a rising edge is detected."
@@ -2929,22 +2983,22 @@
-#: ../ProjectController.py:1493
+#: ../ProjectController.py:1528 -#: ../ProjectController.py:841
-#: ../ProjectController.py:850
+#: ../ProjectController.py:865 +#: ../ProjectController.py:874 msgid "Runtime extensions C code generation failed !\n"
msgstr "La génération du code des plugins a échoué !\n"
-#: ../canfestival/SlaveEditor.py:34
-#: ../canfestival/NetworkEditor.py:64
+#: ../canfestival/SlaveEditor.py:38 +#: ../canfestival/NetworkEditor.py:59 -#: ../canfestival/SlaveEditor.py:33
-#: ../canfestival/NetworkEditor.py:63
+#: ../canfestival/SlaveEditor.py:37 +#: ../canfestival/NetworkEditor.py:58 @@ -2953,7 +3007,7 @@
-#: ../plcopen/structures.py:197
+#: ../plcopen/structures.py:196 "The SR bistable is a latch where the Set dominates."
@@ -2967,7 +3021,7 @@
-#: ../PLCOpenEditor.py:347
+#: ../PLCOpenEditor.py:326 msgid "ST files (*.st)|*.st|All files|*.*"
msgstr "Fichiers ST (*.st)|*.st|Tous les fichiers|*.*"
@@ -2975,24 +3029,24 @@
msgid "SVG files (*.svg)|*.svg|All files|*.*"
msgstr "Fichiers SVG (*.svg)|*.svg|Tous les fichiers|*.*"
-#: ../PLCOpenEditor.py:134
-#: ../PLCOpenEditor.py:169
+#: ../PLCOpenEditor.py:115 +#: ../PLCOpenEditor.py:150
-#: ../PLCOpenEditor.py:136
-#: ../PLCOpenEditor.py:170
+#: ../PLCOpenEditor.py:117 +#: ../PLCOpenEditor.py:151 msgstr "Enregistrer sous..."
msgstr "Enregistrer sous..."
@@ -3000,13 +3054,13 @@
#: ../dialogs/SearchInProjectDialog.py:105
#: ../dialogs/SearchInProjectDialog.py:52
msgid "Search in Project"
msgstr "Rechercher dans le projet"
@@ -3015,25 +3069,26 @@
msgstr "Tout sélectionner"
+#: ../controls/LocationCellEditor.py:97 #: ../controls/VariablePanel.py:277
-#: ../editors/TextViewer.py:330
-#: ../editors/Viewer.py:277
+#: ../editors/TextViewer.py:323 +#: ../editors/Viewer.py:275 msgid "Select a variable class:"
msgstr "Sélectionner une direction pour la variable :"
-#: ../ProjectController.py:1013
+#: ../ProjectController.py:1039 msgid "Select an editor:"
msgstr "Sélectionner un éditeur :"
-#: ../controls/PouInstanceVariablesPanel.py:197
+#: ../controls/PouInstanceVariablesPanel.py:209 msgid "Select an instance"
msgstr "Sélectionnez une instance"
msgstr "Sélectionner un objet"
@@ -3049,7 +3104,7 @@
msgid "Selection Divergence"
msgstr "Divergence simple"
-#: ../plcopen/structures.py:207
+#: ../plcopen/structures.py:206 "The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources."
@@ -3073,19 +3128,19 @@
msgstr "Décalage à droite"
-#: ../ProjectController.py:1519
+#: ../ProjectController.py:1554 msgid "Show IEC code generated by PLCGenerator"
msgstr "Afficher le code IEC généré par PLCGenerator"
-#: ../canfestival/canfestival.py:288
+#: ../canfestival/canfestival.py:363 msgstr "Afficher le maître"
-#: ../canfestival/canfestival.py:289
+#: ../canfestival/canfestival.py:364 msgid "Show Master generated by config_utils"
msgstr "Afficher le maître généré par config_utils"
-#: ../ProjectController.py:1517
+#: ../ProjectController.py:1552 msgstr "Afficher le code"
@@ -3101,7 +3156,7 @@
-#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 @@ -3109,53 +3164,53 @@
msgid "Square root (base 2)"
msgstr "Racine carré (base 2)"
-#: ../plcopen/structures.py:193
+#: ../plcopen/structures.py:192 msgid "Standard function blocks"
msgstr "Blocs fonctionnels standards"
-#: ../Beremiz_service.py:319
-#: ../ProjectController.py:1495
+#: ../Beremiz_service.py:321 +#: ../ProjectController.py:1530 msgstr "Démarrer l'automate"
-#: ../ProjectController.py:819
+#: ../ProjectController.py:843 msgid "Start build in %s\n"
msgstr "Début de la compilation dans %s\n"
-#: ../ProjectController.py:1314
+#: ../ProjectController.py:1341 msgstr "Démarrer l'automate\n"
msgstr "Barre d'outils de statut"
-#: ../editors/Viewer.py:493
+#: ../editors/Viewer.py:492 -#: ../ProjectController.py:1498
+#: ../ProjectController.py:1533 -#: ../Beremiz_service.py:320
+#: ../Beremiz_service.py:322 msgstr "Arrêter l'automate"
-#: ../ProjectController.py:1500
+#: ../ProjectController.py:1535 msgstr "Arrêter l'automate en cours d'exécution"
-#: ../ProjectController.py:1292
+#: ../ProjectController.py:1318 msgid "Stopping debugger...\n"
msgstr "Arrêt du débogage en cours\n"
-#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 -#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 @@ -3163,7 +3218,7 @@
-#: ../ProjectController.py:915
+#: ../ProjectController.py:942 msgid "Successfully built.\n"
msgstr "Compilé avec succès.\n"
@@ -3175,11 +3230,11 @@
-#: ../editors/ResourceEditor.py:76
+#: ../editors/ResourceEditor.py:77 -#: ../editors/ResourceEditor.py:218
+#: ../editors/ResourceEditor.py:226 @@ -3187,7 +3242,7 @@
-#: ../editors/FileManagementPanel.py:398
+#: ../editors/FileManagementPanel.py:180 "The file '%s' already exist.\n"
@@ -3196,22 +3251,22 @@
"Le fichier '%s' existe déjà.\n"
"Voulez-vous le remplacer ?"
-#: ../editors/LDViewer.py:879
+#: ../editors/LDViewer.py:882 msgid "The group of block must be coherent!"
msgstr "Le groupe de blocs doit être cohérent !"
msgid "There are changes, do you want to save?"
msgstr "Le projet a été modifié. Voulez-vous l'enregistrer ?"
msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?"
msgstr "Un POU a pour nom \"%s\". Cela peut générer des conflits. Voulez-vous continuer ?"
"There was a problem printing.\n"
"Perhaps your current printer is not set correctly?"
@@ -3219,7 +3274,7 @@
"Un problème est apparu lors de l'impression.\n"
"Peut-être que votre imprimante n'est pas correctement configurée ?"
-#: ../editors/LDViewer.py:888
+#: ../editors/LDViewer.py:891 msgid "This option isn't available yet!"
msgstr "Cette option n'a pas encore disponible"
@@ -3267,31 +3322,31 @@
msgid "Time-of-day subtraction"
msgstr "Soustraction d'horodatage"
-#: ../editors/Viewer.py:432
+#: ../editors/Viewer.py:431 -#: ../ProjectController.py:1507
+#: ../ProjectController.py:1542 -#: ../ProjectController.py:1509
+#: ../ProjectController.py:1544 msgstr "Transférer l'automate"
-#: ../ProjectController.py:1474
+#: ../ProjectController.py:1509 msgid "Transfer completed successfully.\n"
msgstr "Transfert effectué avec succès.\n"
-#: ../ProjectController.py:1476
+#: ../ProjectController.py:1511 msgid "Transfer failed\n"
msgstr "Le transfert a échoué\n"
-#: ../editors/Viewer.py:494
+#: ../editors/Viewer.py:493 -#: ../PLCGenerator.py:1212
+#: ../PLCGenerator.py:1252 msgid "Transition \"%s\" body must contain an output variable or coil referring to its name"
msgstr "Le code de la transition \"%s\" doit contenir une variable de sortie ou un relai dont la référence est son nom"
@@ -3304,17 +3359,17 @@
msgstr "Nom de la transition :"
-#: ../PLCGenerator.py:1301
+#: ../PLCGenerator.py:1340 msgid "Transition with content \"%s\" not connected to a next step in \"%s\" POU"
msgstr "La transition contenant \"%s\" n'est pas connectée à une étape en sortie dans le POU \"%s\" !"
-#: ../PLCGenerator.py:1292
+#: ../PLCGenerator.py:1331 msgid "Transition with content \"%s\" not connected to a previous step in \"%s\" POU"
msgstr "La transition contenant \"%s\" n'est pas connectée à une étape en entrée dans le POU \"%s\" !"
-#: ../plcopen/plcopen.py:1442
+#: ../plcopen/plcopen.py:1447 msgid "Transition with name %s doesn't exist!"
msgstr "La transition nommée %s n'existe pas !"
@@ -3323,18 +3378,22 @@
-#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 #: ../controls/VariablePanel.py:58
#: ../controls/VariablePanel.py:59
-#: ../editors/DataTypeEditor.py:48
-#: ../editors/ResourceEditor.py:76
+#: ../editors/DataTypeEditor.py:50 +#: ../editors/ResourceEditor.py:77 #: ../dialogs/ActionBlockDialog.py:37
+#: ../dialogs/BrowseLocationsDialog.py:44 +msgid "Type and derivated" +msgstr "Type et ses dérivés" #: ../canfestival/config_utils.py:335
#: ../canfestival/config_utils.py:617
@@ -3345,12 +3404,17 @@
msgstr "Conversion de type"
-#: ../editors/DataTypeEditor.py:155
+#: ../editors/DataTypeEditor.py:161 msgstr "Propriétés du type :"
+#: ../dialogs/BrowseLocationsDialog.py:45 +msgstr "Type uniquement" #: ../dialogs/SFCDivergenceDialog.py:51
#: ../dialogs/LDPowerRailDialog.py:51
+#: ../dialogs/BrowseLocationsDialog.py:95 #: ../dialogs/ConnectionDialog.py:52
#: ../dialogs/SFCTransitionDialog.py:53
#: ../dialogs/FBDBlockDialog.py:48
@@ -3368,33 +3432,33 @@
msgid "Unable to get Xenomai's %s \n"
msgstr "Unable to get Xenomai's %s \n"
-#: ../PLCGenerator.py:865
-#: ../PLCGenerator.py:924
+#: ../PLCGenerator.py:904 +#: ../PLCGenerator.py:963 msgid "Undefined block type \"%s\" in \"%s\" POU"
msgstr "Type de block \"%s\" indéfini dans le POU \"%s\""
-#: ../PLCGenerator.py:240
+#: ../PLCGenerator.py:252 msgid "Undefined pou type \"%s\""
msgstr "Type de POU \"%s\" indéterminé !"
-#: ../ProjectController.py:254
+#: ../ProjectController.py:262 -#: ../editors/Viewer.py:336
+#: ../editors/Viewer.py:335 msgid "Unknown variable \"%s\" for this POU!"
msgstr "Variable \"%s\" inconnue dans ce POU !"
-#: ../ProjectController.py:251
-#: ../ProjectController.py:252
+#: ../ProjectController.py:259 +#: ../ProjectController.py:260 @@ -3408,7 +3472,7 @@
msgid "Unrecognized data size \"%s\""
msgstr "Taille de donnée \"%s\" non identifié !"
-#: ../plcopen/structures.py:222
+#: ../plcopen/structures.py:221 "The up-counter can be used to signal when a count has reached a maximum value."
@@ -3416,7 +3480,7 @@
"Le compteur incrémental peut être utilisé pour signaler lorsque le compteur a atteint la valeur maximale."
-#: ../plcopen/structures.py:232
+#: ../plcopen/structures.py:231 "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."
@@ -3424,13 +3488,13 @@
"Compteur bidirectionnel\n"
"Le compteur bidirectionnel a deux entrées CU et CD. Il peut être utilisé pour compter de façon incrémentale ou décrémentale sur l'une ou l'autre des entrées."
-#: ../controls/VariablePanel.py:709
-#: ../editors/DataTypeEditor.py:623
+#: ../controls/VariablePanel.py:712 +#: ../editors/DataTypeEditor.py:631 msgstr "Types de donnée du projet"
-#: ../canfestival/SlaveEditor.py:38
-#: ../canfestival/NetworkEditor.py:68
+#: ../canfestival/SlaveEditor.py:42 +#: ../canfestival/NetworkEditor.py:63 msgstr "Type utilisateur"
@@ -3438,7 +3502,7 @@
msgid "User-defined POUs"
-#: ../controls/DebugVariablePanel.py:40
+#: ../controls/DebugVariablePanel.py:58 #: ../dialogs/ActionBlockDialog.py:37
@@ -3447,12 +3511,12 @@
-#: ../editors/DataTypeEditor.py:252
+#: ../editors/DataTypeEditor.py:258 -#: ../controls/DebugVariablePanel.py:40
-#: ../editors/Viewer.py:466
+#: ../controls/DebugVariablePanel.py:58 +#: ../editors/Viewer.py:465 #: ../dialogs/ActionBlockDialog.py:41
@@ -3461,14 +3525,15 @@
msgid "Variable Properties"
msgstr "Propriétés de la variable"
+#: ../controls/LocationCellEditor.py:97 #: ../controls/VariablePanel.py:277
-#: ../editors/TextViewer.py:330
-#: ../editors/Viewer.py:277
+#: ../editors/TextViewer.py:323 +#: ../editors/Viewer.py:275 msgstr "Direction de la variable"
-#: ../editors/TextViewer.py:374
-#: ../editors/Viewer.py:338
+#: ../editors/TextViewer.py:367 +#: ../editors/Viewer.py:337 msgid "Variable don't belong to this POU!"
msgstr "La variable n'appartient pas à ce POU !"
@@ -3484,16 +3549,16 @@
-#: ../ProjectController.py:1276
+#: ../ProjectController.py:1302 msgid "Waiting debugger to recover...\n"
msgstr "En attente de la mise en route du déboggueur...\n"
-#: ../editors/LDViewer.py:888
+#: ../editors/LDViewer.py:891 #: ../dialogs/PouDialog.py:126
-#: ../ProjectController.py:515
+#: ../ProjectController.py:529 msgid "Warnings in ST/IL/SFC code generator :\n"
msgstr "Mises en garde du generateur de code ST/IL/SFC :\n"
@@ -3509,7 +3574,7 @@
msgstr "Interface WxGlade"
@@ -3529,7 +3594,7 @@
"Vous n'avez pas les permissions d'écriture.\n"
"Ouvrir wxGlade tout de même ?"
-#: ../ProjectController.py:220
+#: ../ProjectController.py:224 "You must have permission to work on the project\n"
"Work on a project copy ?"
@@ -3537,11 +3602,11 @@
"Vous n'avez pas la permission de travailler sur le projet.\n"
"Travailler sur une copie du projet ?"
-#: ../editors/LDViewer.py:883
+#: ../editors/LDViewer.py:886 msgid "You must select the block or group of blocks around which a branch should be added!"
msgstr "Vous devez sélectionné le bloc ou le group autour duquel un ebranche doit être ajoutée !"
-#: ../editors/LDViewer.py:663
+#: ../editors/LDViewer.py:666 msgid "You must select the wire where a contact should be added!"
msgstr "Vous devez sélectionner le fil sur lequel le contact doit être ajouté !"
@@ -3551,11 +3616,11 @@
msgid "You must type a name!"
msgstr "Vous devez saisir un nom !"
-#: ../dialogs/ForceVariableDialog.py:165
+#: ../dialogs/ForceVariableDialog.py:175 msgid "You must type a value!"
msgstr "Vous devez saisir une valeur !"
@@ -3563,7 +3628,7 @@
-#: ../PLCOpenEditor.py:356
+#: ../PLCOpenEditor.py:335 @@ -3573,8 +3638,8 @@
msgid "exited with status %s (pid %s)\n"
msgstr "a quitté avec le status %s (pid %s)\n"
-#: ../PLCOpenEditor.py:508
-#: ../PLCOpenEditor.py:510
+#: ../PLCOpenEditor.py:393 +#: ../PLCOpenEditor.py:395 @@ -3582,7 +3647,7 @@
-#: ../PLCOpenEditor.py:511
+#: ../PLCOpenEditor.py:396 @@ -3590,7 +3655,7 @@
msgstr "Bloc fonctionnel"
-#: ../PLCOpenEditor.py:511
+#: ../PLCOpenEditor.py:396 @@ -3610,7 +3675,7 @@
msgstr "Caractères à droite de"
-#: ../PLCOpenEditor.py:354
+#: ../PLCOpenEditor.py:333 @@ -3646,9 +3711,6 @@
-msgstr "Mode de débogage"
@@ -3700,6 +3762,28 @@
msgid "Disable_Extensions"
msgstr "Disable_Extensions"
+#~ msgid "Debug connect matching running PLC\n" +#~ msgstr "L'automate connecté correspond au project ouvert.\n" +#~ msgid "File '%s' already exists!" +#~ msgstr "Le fichier '%s' existe déjà !" +#~ msgid "Function Blocks can't be used in Transitions!" +#~ "Les blocs fonctionnels ne peuvent être utilisés dans des transitions" +#~ msgid "No running PLC" +#~ msgstr "Aucun automate en cours d'exécution" +#~ msgstr "Propriétés du noeud" +#~ msgstr "L'automate est dans l'état %s\n" +#~ msgstr "Mode de débogage" #~ msgid "Close Project\tCTRL+SHIFT+W"
@@ -3814,9 +3898,6 @@
#~ msgstr "Types de blocs"
#~ msgstr "Supprimer une tâche"
@@ -3844,9 +3925,6 @@
#~ msgid "Create a new POU from"
#~ msgstr "Créer un nouveau POU à partir de"
--- a/i18n/messages.pot Tue Mar 26 23:25:18 2013 +0100
+++ b/i18n/messages.pot Tue Mar 26 23:26:13 2013 +0100
@@ -8,7 +8,7 @@
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-07 01:17+0200\n"
+"POT-Creation-Date: 2013-03-26 22:55+0100\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"
@@ -17,7 +17,7 @@
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../PLCOpenEditor.py:520
+#: ../PLCOpenEditor.py:405 "An error has occurred.\n"
@@ -30,7 +30,7 @@
@@ -69,7 +69,7 @@
-#: ../PLCOpenEditor.py:530
+#: ../PLCOpenEditor.py:415 @@ -79,7 +79,7 @@
-#: ../ProjectController.py:890
+#: ../ProjectController.py:917 msgid " generation failed !\n"
@@ -103,7 +103,7 @@
msgid "\"%s\" can't use itself!"
-#: ../IDEFrame.py:1706 ../IDEFrame.py:1725
+#: ../IDEFrame.py:1587 ../IDEFrame.py:1606 msgid "\"%s\" config already exists!"
@@ -113,38 +113,38 @@
msgid "\"%s\" configuration already exists !!!"
msgid "\"%s\" data type already exists!"
-#: ../PLCControler.py:2040 ../PLCControler.py:2044
+#: ../PLCControler.py:2165 ../PLCControler.py:2169 msgid "\"%s\" element can't be pasted here!!!"
-#: ../editors/TextViewer.py:305 ../editors/TextViewer.py:325
-#: ../editors/Viewer.py:252 ../dialogs/PouTransitionDialog.py:105
-#: ../dialogs/ConnectionDialog.py:150 ../dialogs/PouActionDialog.py:102
+#: ../editors/TextViewer.py:298 ../editors/TextViewer.py:318 +#: ../editors/Viewer.py:250 ../dialogs/PouTransitionDialog.py:105 +#: ../dialogs/ConnectionDialog.py:157 ../dialogs/PouActionDialog.py:102 #: ../dialogs/FBDBlockDialog.py:162
msgid "\"%s\" element for this pou already exists!"
msgid "\"%s\" folder is not a valid Beremiz project\n"
-#: ../plcopen/structures.py:106
+#: ../plcopen/structures.py:105 msgid "\"%s\" function cancelled in \"%s\" POU: No input connected"
-#: ../controls/VariablePanel.py:656 ../IDEFrame.py:1651
-#: ../editors/DataTypeEditor.py:548 ../editors/DataTypeEditor.py:577
+#: ../controls/VariablePanel.py:659 ../IDEFrame.py:1532 +#: ../editors/DataTypeEditor.py:554 ../editors/DataTypeEditor.py:583 #: ../dialogs/PouNameDialog.py:49 ../dialogs/PouTransitionDialog.py:101
-#: ../dialogs/SFCStepNameDialog.py:51 ../dialogs/ConnectionDialog.py:146
+#: ../dialogs/SFCStepNameDialog.py:51 ../dialogs/ConnectionDialog.py:153 #: ../dialogs/FBDVariableDialog.py:199 ../dialogs/PouActionDialog.py:98
#: ../dialogs/PouDialog.py:118 ../dialogs/SFCStepDialog.py:122
#: ../dialogs/FBDBlockDialog.py:158
@@ -152,41 +152,41 @@
msgid "\"%s\" is a keyword. It can't be used!"
-#: ../editors/Viewer.py:240
+#: ../editors/Viewer.py:238 msgid "\"%s\" is already used by \"%s\"!"
-#: ../plcopen/plcopen.py:2786
+#: ../plcopen/plcopen.py:2836 msgid "\"%s\" is an invalid value!"
-#: ../PLCOpenEditor.py:362 ../PLCOpenEditor.py:399
+#: ../PLCOpenEditor.py:341 ../PLCOpenEditor.py:378 msgid "\"%s\" is not a valid folder!"
-#: ../controls/VariablePanel.py:654 ../IDEFrame.py:1649
-#: ../editors/DataTypeEditor.py:572 ../dialogs/PouNameDialog.py:47
+#: ../controls/VariablePanel.py:657 ../IDEFrame.py:1530 +#: ../editors/DataTypeEditor.py:578 ../dialogs/PouNameDialog.py:47 #: ../dialogs/PouTransitionDialog.py:99 ../dialogs/SFCStepNameDialog.py:49
-#: ../dialogs/ConnectionDialog.py:144 ../dialogs/PouActionDialog.py:96
+#: ../dialogs/ConnectionDialog.py:151 ../dialogs/PouActionDialog.py:96 #: ../dialogs/PouDialog.py:116 ../dialogs/SFCStepDialog.py:120
#: ../dialogs/FBDBlockDialog.py:156
msgid "\"%s\" is not a valid identifier!"
-#: ../IDEFrame.py:214 ../IDEFrame.py:2445 ../IDEFrame.py:2464
+#: ../IDEFrame.py:221 ../IDEFrame.py:2313 ../IDEFrame.py:2332 msgid "\"%s\" is used by one or more POUs. It can't be removed!"
-#: ../controls/VariablePanel.py:311 ../IDEFrame.py:1669
-#: ../editors/TextViewer.py:303 ../editors/TextViewer.py:323
-#: ../editors/TextViewer.py:360 ../editors/Viewer.py:250
-#: ../editors/Viewer.py:295 ../editors/Viewer.py:312
-#: ../dialogs/ConnectionDialog.py:148 ../dialogs/PouDialog.py:120
+#: ../controls/VariablePanel.py:313 ../IDEFrame.py:1550 +#: ../editors/TextViewer.py:296 ../editors/TextViewer.py:316 +#: ../editors/TextViewer.py:353 ../editors/Viewer.py:248 +#: ../editors/Viewer.py:293 ../editors/Viewer.py:311 +#: ../dialogs/ConnectionDialog.py:155 ../dialogs/PouDialog.py:120 #: ../dialogs/FBDBlockDialog.py:160
msgid "\"%s\" pou already exists!"
@@ -207,29 +207,29 @@
msgid "\"%s\" step already exists!"
-#: ../editors/DataTypeEditor.py:543
+#: ../editors/DataTypeEditor.py:549 msgid "\"%s\" value already defined!"
-#: ../editors/DataTypeEditor.py:719 ../dialogs/ArrayTypeDialog.py:97
+#: ../editors/DataTypeEditor.py:744 ../dialogs/ArrayTypeDialog.py:97 msgid "\"%s\" value isn't a valid array dimension!"
-#: ../editors/DataTypeEditor.py:726 ../dialogs/ArrayTypeDialog.py:103
+#: ../editors/DataTypeEditor.py:751 ../dialogs/ArrayTypeDialog.py:103 "\"%s\" value isn't a valid array dimension!\n"
"Right value must be greater than left value."
-#: ../PLCControler.py:793
+#: ../PLCControler.py:847 msgid "%s \"%s\" can't be pasted as a %s."
-#: ../PLCControler.py:1422
+#: ../PLCControler.py:1476 @@ -239,86 +239,86 @@
-#: ../PLCControler.py:1417
+#: ../PLCControler.py:1471 -#: ../canfestival/SlaveEditor.py:42 ../canfestival/NetworkEditor.py:72
+#: ../canfestival/SlaveEditor.py:46 ../canfestival/NetworkEditor.py:67 -#: ../plcopen/plcopen.py:1780 ../plcopen/plcopen.py:1790
-#: ../plcopen/plcopen.py:1800 ../plcopen/plcopen.py:1810
-#: ../plcopen/plcopen.py:1819
+#: ../plcopen/plcopen.py:1790 ../plcopen/plcopen.py:1800 +#: ../plcopen/plcopen.py:1810 ../plcopen/plcopen.py:1820 +#: ../plcopen/plcopen.py:1829 msgid "%s body don't have instances!"
-#: ../plcopen/plcopen.py:1842 ../plcopen/plcopen.py:1849
+#: ../plcopen/plcopen.py:1852 ../plcopen/plcopen.py:1859 msgid "%s body don't have text!"
-#: ../PLCOpenEditor.py:148
+#: ../PLCOpenEditor.py:129
-#: ../controls/SearchResultPanel.py:237
+#: ../controls/SearchResultPanel.py:252 msgid "'%s' - %d match in project"
-#: ../controls/SearchResultPanel.py:239
+#: ../controls/SearchResultPanel.py:254 msgid "'%s' - %d matches in project"
@@ -328,12 +328,12 @@
msgid "'%s' is located at %s\n"
-#: ../controls/SearchResultPanel.py:289
+#: ../controls/SearchResultPanel.py:304 -#: ../PLCOpenEditor.py:508 ../PLCOpenEditor.py:510 ../PLCOpenEditor.py:511
+#: ../PLCOpenEditor.py:393 ../PLCOpenEditor.py:395 ../PLCOpenEditor.py:396 @@ -343,21 +343,21 @@
-#: ../PLCOpenEditor.py:506
+#: ../PLCOpenEditor.py:391 -#: ../ProjectController.py:1268
+#: ../ProjectController.py:1294 msgid "... debugger recovered\n"
-#: ../IDEFrame.py:1672 ../IDEFrame.py:1714 ../IDEFrame.py:1733
+#: ../IDEFrame.py:1553 ../IDEFrame.py:1595 ../IDEFrame.py:1614 #: ../dialogs/PouDialog.py:122
msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?"
-#: ../controls/VariablePanel.py:658 ../IDEFrame.py:1684 ../IDEFrame.py:1695
+#: ../controls/VariablePanel.py:661 ../IDEFrame.py:1565 ../IDEFrame.py:1576 #: ../dialogs/PouNameDialog.py:51 ../dialogs/PouTransitionDialog.py:103
#: ../dialogs/SFCStepNameDialog.py:53 ../dialogs/PouActionDialog.py:100
#: ../dialogs/SFCStepDialog.py:124
@@ -365,30 +365,30 @@
msgid "A POU named \"%s\" already exists!"
-#: ../ConfigTreeNode.py:371
+#: ../ConfigTreeNode.py:388 msgid "A child named \"%s\" already exist -> \"%s\"\n"
-#: ../dialogs/BrowseLocationsDialog.py:175
+#: ../dialogs/BrowseLocationsDialog.py:212 msgid "A location must be selected!"
-#: ../controls/VariablePanel.py:660 ../IDEFrame.py:1686 ../IDEFrame.py:1697
+#: ../controls/VariablePanel.py:663 ../IDEFrame.py:1567 ../IDEFrame.py:1578 #: ../dialogs/SFCStepNameDialog.py:55 ../dialogs/SFCStepDialog.py:126
msgid "A variable with \"%s\" as name already exists in this pou!"
-#: ../Beremiz.py:362 ../PLCOpenEditor.py:181
+#: ../Beremiz.py:364 ../PLCOpenEditor.py:162
-#: ../PLCOpenEditor.py:376
+#: ../PLCOpenEditor.py:355 msgid "About PLCOpenEditor"
@@ -400,7 +400,7 @@
-#: ../editors/Viewer.py:495
+#: ../editors/Viewer.py:494 @@ -412,7 +412,7 @@
-#: ../plcopen/plcopen.py:1480
+#: ../plcopen/plcopen.py:1490 msgid "Action with name %s doesn't exist!"
@@ -425,28 +425,32 @@
-#: ../canfestival/SlaveEditor.py:54 ../canfestival/NetworkEditor.py:84
-#: ../editors/Viewer.py:527
+#: ../editors/Viewer.py:999 +#: ../canfestival/SlaveEditor.py:57 ../canfestival/NetworkEditor.py:78 +#: ../Beremiz.py:987 ../editors/Viewer.py:527 -#: ../IDEFrame.py:1925 ../IDEFrame.py:1956
+#: ../IDEFrame.py:1801 ../IDEFrame.py:1832
msgid "Add C code accessing located variables synchronously"
msgid "Add Configuration"
-#: ../editors/Viewer.py:453
+#: ../editors/Viewer.py:452 msgid "Add Divergence Branch"
@@ -454,23 +458,23 @@
msgid "Add Python code executed asynchronously"
-#: ../IDEFrame.py:1936 ../IDEFrame.py:1982
+#: ../IDEFrame.py:1812 ../IDEFrame.py:1858 -#: ../IDEFrame.py:1914 ../IDEFrame.py:1953
+#: ../IDEFrame.py:1790 ../IDEFrame.py:1829 -#: ../editors/Viewer.py:442
+#: ../editors/Viewer.py:441 @@ -478,7 +482,7 @@
msgid "Add a new initial step"
-#: ../editors/Viewer.py:2289 ../editors/SFCViewer.py:696
+#: ../editors/Viewer.py:2363 ../editors/SFCViewer.py:696 @@ -486,7 +490,7 @@
msgid "Add a simple WxGlade based GUI."
@@ -494,23 +498,23 @@
-#: ../editors/DataTypeEditor.py:345
+#: ../editors/DataTypeEditor.py:351 -#: ../editors/ResourceEditor.py:251
+#: ../editors/ResourceEditor.py:259 -#: ../canfestival/NetworkEditor.py:86
+#: ../canfestival/NetworkEditor.py:80 -#: ../editors/ResourceEditor.py:222
+#: ../editors/ResourceEditor.py:230 -#: ../controls/VariablePanel.py:378
+#: ../controls/VariablePanel.py:380 ../c_ext/CFileEditor.py:517 @@ -518,16 +522,22 @@
-#: ../plcopen/structures.py:250
+#: ../plcopen/structures.py:249 msgid "Additional function blocks"
-#: ../editors/Viewer.py:1395
+#: ../editors/Viewer.py:510 +msgid "Adjust Block Size" +#: ../editors/Viewer.py:1458 -#: ../controls/VariablePanel.py:75 ../dialogs/BrowseLocationsDialog.py:35
-#: ../dialogs/BrowseLocationsDialog.py:116
+#: ../controls/VariablePanel.py:75 ../dialogs/BrowseLocationsDialog.py:34 +#: ../dialogs/BrowseLocationsDialog.py:43 +#: ../dialogs/BrowseLocationsDialog.py:136 +#: ../dialogs/BrowseLocationsDialog.py:139 @@ -535,15 +545,19 @@
msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv"
-#: ../ProjectController.py:1335
+#: ../ProjectController.py:1373 msgid "Already connected. Please disconnect\n"
-#: ../editors/DataTypeEditor.py:587
+#: ../editors/DataTypeEditor.py:593 msgid "An element named \"%s\" already exists in this structure!"
+#: ../dialogs/ConnectionDialog.py:98 +msgid "Apply name modification to all continuations with the same name" #: ../plcopen/iec_std.csv:31
@@ -560,7 +574,8 @@
-#: ../controls/VariablePanel.py:729 ../editors/DataTypeEditor.py:52
+#: ../controls/VariablePanel.py:732 ../editors/DataTypeEditor.py:54 +#: ../editors/DataTypeEditor.py:634 @@ -597,16 +612,16 @@
msgid "Bad location size : %s"
-#: ../editors/DataTypeEditor.py:168 ../editors/DataTypeEditor.py:198
-#: ../editors/DataTypeEditor.py:290 ../dialogs/ArrayTypeDialog.py:55
+#: ../editors/DataTypeEditor.py:174 ../editors/DataTypeEditor.py:204 +#: ../editors/DataTypeEditor.py:296 ../dialogs/ArrayTypeDialog.py:55 -#: ../controls/VariablePanel.py:699 ../editors/DataTypeEditor.py:617
+#: ../controls/VariablePanel.py:702 ../editors/DataTypeEditor.py:624
@@ -638,7 +653,7 @@
msgid "Bitwise inverting"
-#: ../editors/Viewer.py:465
+#: ../editors/Viewer.py:464 @@ -646,7 +661,7 @@
-#: ../editors/Viewer.py:434
+#: ../editors/Viewer.py:433 @@ -655,31 +670,35 @@
msgid "Browse %s values library"
-#: ../dialogs/BrowseLocationsDialog.py:55
+#: ../dialogs/BrowseLocationsDialog.py:61 -#: ../ProjectController.py:1484
+#: ../ProjectController.py:1519 -#: ../ProjectController.py:1051
+#: ../ProjectController.py:1079 msgid "Build directory already clean\n"
-#: ../ProjectController.py:1485
+#: ../ProjectController.py:1520 msgid "Build project into build folder"
-#: ../ProjectController.py:910
+#: ../ProjectController.py:937 msgid "C Build crashed !\n"
-#: ../ProjectController.py:907
+#: ../ProjectController.py:934 msgid "C Build failed.\n"
-#: ../ProjectController.py:895
+#: ../c_ext/CFileEditor.py:731 +#: ../ProjectController.py:922 msgid "C code generated successfully.\n"
@@ -688,16 +707,24 @@
msgid "C compilation of %s failed.\n"
+#: ../canfestival/NetworkEditor.py:29 +#: ../canfestival/SlaveEditor.py:21 -#: ../plcopen/plcopen.py:1722 ../plcopen/plcopen.py:1736
-#: ../plcopen/plcopen.py:1757 ../plcopen/plcopen.py:1773
+#: ../plcopen/plcopen.py:1732 ../plcopen/plcopen.py:1746 +#: ../plcopen/plcopen.py:1767 ../plcopen/plcopen.py:1783 msgid "Can only generate execution order on FBD networks!"
@@ -705,7 +732,7 @@
msgid "Can only give a location to local or global variables"
-#: ../PLCOpenEditor.py:357
+#: ../PLCOpenEditor.py:336 msgid "Can't generate program to file %s!"
@@ -714,21 +741,21 @@
msgid "Can't give a location to a function block instance"
-#: ../PLCOpenEditor.py:397
+#: ../PLCOpenEditor.py:376 msgid "Can't save project to file %s!"
-#: ../controls/VariablePanel.py:298
+#: ../controls/VariablePanel.py:300 msgid "Can't set an initial value to a function block instance"
-#: ../ConfigTreeNode.py:470
+#: ../ConfigTreeNode.py:490 msgid "Cannot create child %s of type %s "
-#: ../ConfigTreeNode.py:400
+#: ../ConfigTreeNode.py:417 msgid "Cannot find lower free IEC channel than %d\n"
@@ -737,7 +764,7 @@
msgid "Cannot get PLC status - connection failed.\n"
-#: ../ProjectController.py:715
+#: ../ProjectController.py:737 msgid "Cannot open/parse VARIABLES.csv!\n"
@@ -750,27 +777,27 @@
-#: ../editors/Viewer.py:429
+#: ../editors/Viewer.py:428 -#: ../Beremiz_service.py:322
+#: ../Beremiz_service.py:326 msgid "Change IP of interface to bind"
-#: ../Beremiz_service.py:321
-msgid "Change POU Type To"
#: ../Beremiz_service.py:325
-msgid "Change Port Number"
+msgid "Change POU Type To" #: ../Beremiz_service.py:327
+msgid "Change Port Number" +#: ../Beremiz_service.py:328 msgid "Change working directory"
@@ -782,16 +809,16 @@
msgid "Choose a SVG file"
-#: ../ProjectController.py:353
+#: ../ProjectController.py:364 msgid "Choose a directory to save project"
-#: ../canfestival/canfestival.py:118 ../PLCOpenEditor.py:313
-#: ../PLCOpenEditor.py:347 ../PLCOpenEditor.py:391
+#: ../canfestival/canfestival.py:136 ../PLCOpenEditor.py:294 +#: ../PLCOpenEditor.py:326 ../PLCOpenEditor.py:370 -#: ../Beremiz.py:831 ../Beremiz.py:866
+#: ../Beremiz.py:858 ../Beremiz.py:893 @@ -800,15 +827,15 @@
msgid "Choose a value for %s:"
-#: ../Beremiz_service.py:373
+#: ../Beremiz_service.py:378 msgid "Choose a working directory "
-#: ../ProjectController.py:281
+#: ../ProjectController.py:288 msgid "Chosen folder doesn't contain a program. It's not a valid project!"
-#: ../ProjectController.py:247
+#: ../ProjectController.py:255 msgid "Chosen folder isn't empty. You can't use it for a new project!"
@@ -816,7 +843,7 @@
-#: ../controls/VariablePanel.py:369
+#: ../controls/VariablePanel.py:371 @@ -824,19 +851,19 @@
-#: ../ProjectController.py:1488
+#: ../ProjectController.py:1523 -#: ../ProjectController.py:1490
+#: ../ProjectController.py:1525 msgid "Clean project build folder"
-#: ../ProjectController.py:1048
+#: ../ProjectController.py:1076 msgid "Cleaning the build directory\n"
@@ -848,24 +875,24 @@
msgid "Clear the graph values"
-#: ../Beremiz.py:598 ../PLCOpenEditor.py:221
+#: ../Beremiz.py:633 ../PLCOpenEditor.py:202 msgid "Close Application"
-#: ../IDEFrame.py:1089 ../Beremiz.py:319 ../Beremiz.py:552
-#: ../PLCOpenEditor.py:131
+#: ../IDEFrame.py:972 ../Beremiz.py:321 ../Beremiz.py:587 +#: ../PLCOpenEditor.py:112 -#: ../Beremiz.py:317 ../PLCOpenEditor.py:129
+#: ../Beremiz.py:319 ../PLCOpenEditor.py:110 -#: ../editors/Viewer.py:481
+#: ../editors/Viewer.py:480 -#: ../editors/Viewer.py:501 ../editors/LDViewer.py:503
+#: ../editors/Viewer.py:500 ../editors/LDViewer.py:506 @@ -881,7 +908,7 @@
-#: ../ProjectController.py:538
+#: ../ProjectController.py:552 msgid "Compiling IEC Program into C code...\n"
@@ -889,6 +916,14 @@
+#: ../editors/ConfTreeNodeEditor.py:249 +#: ../editors/ProjectNodeEditor.py:13 +msgid "Config variables" #: ../dialogs/SearchInProjectDialog.py:47
@@ -897,20 +932,25 @@
-#: ../ProjectController.py:1503
+#: ../ProjectController.py:1538 -#: ../ProjectController.py:1504
+#: ../ProjectController.py:1539 msgid "Connect to the target PLC"
+#: ../ProjectController.py:1125 +msgid "Connected to URI: %s" #: ../connectors/PYRO/__init__.py:40
msgid "Connecting to URI : %s\n"
-#: ../editors/Viewer.py:467 ../dialogs/SFCTransitionDialog.py:76
+#: ../editors/Viewer.py:466 ../dialogs/SFCTransitionDialog.py:76 @@ -918,11 +958,11 @@
msgid "Connection Properties"
-#: ../ProjectController.py:1359
+#: ../ProjectController.py:1397 msgid "Connection canceled!\n"
-#: ../ProjectController.py:1384
+#: ../ProjectController.py:1422 msgid "Connection failed to %s!\n"
@@ -932,7 +972,7 @@
msgid "Connection to '%s' failed.\n"
-#: ../dialogs/ConnectionDialog.py:56
+#: ../editors/Viewer.py:1426 ../dialogs/ConnectionDialog.py:56 @@ -940,11 +980,15 @@
#: ../controls/VariablePanel.py:65
-#: ../editors/Viewer.py:477
+#: ../editors/Viewer.py:476 @@ -952,7 +996,7 @@
msgid "Content Description (optional):"
-#: ../dialogs/ConnectionDialog.py:61
+#: ../editors/Viewer.py:1427 ../dialogs/ConnectionDialog.py:61 @@ -972,19 +1016,19 @@
msgid "Conversion to time-of-day"
-#: ../IDEFrame.py:348 ../IDEFrame.py:401 ../editors/Viewer.py:536
+#: ../IDEFrame.py:353 ../IDEFrame.py:406 ../editors/Viewer.py:536
-#: ../editors/FileManagementPanel.py:283
+#: ../editors/FileManagementPanel.py:65 msgid "Copy file from left folder to right"
-#: ../editors/FileManagementPanel.py:282
+#: ../editors/FileManagementPanel.py:64 msgid "Copy file from right folder to left"
@@ -992,40 +1036,40 @@
-#: ../ConfigTreeNode.py:582
+#: ../ConfigTreeNode.py:602 "Could not add child \"%s\", type %s :\n"
-#: ../ConfigTreeNode.py:559
+#: ../ConfigTreeNode.py:579 "Couldn't load confnode base parameters %s :\n"
-#: ../ConfigTreeNode.py:570
+#: ../ConfigTreeNode.py:590 "Couldn't load confnode parameters %s :\n"
-#: ../PLCControler.py:765 ../PLCControler.py:802
+#: ../PLCControler.py:819 ../PLCControler.py:856 msgid "Couldn't paste non-POU object."
-#: ../ProjectController.py:1317
+#: ../ProjectController.py:1344 msgid "Couldn't start PLC !\n"
-#: ../ProjectController.py:1325
+#: ../ProjectController.py:1352 msgid "Couldn't stop PLC !\n"
-#: ../ProjectController.py:1295
+#: ../ProjectController.py:1321 msgid "Couldn't stop debugger.\n"
@@ -1041,35 +1085,35 @@
msgid "Create a new action"
msgid "Create a new action block"
-#: ../IDEFrame.py:84 ../IDEFrame.py:114 ../IDEFrame.py:147
+#: ../IDEFrame.py:91 ../IDEFrame.py:121 ../IDEFrame.py:154 msgid "Create a new block"
msgid "Create a new branch"
msgid "Create a new coil"
-#: ../IDEFrame.py:78 ../IDEFrame.py:93 ../IDEFrame.py:123
+#: ../IDEFrame.py:85 ../IDEFrame.py:100 ../IDEFrame.py:130 msgid "Create a new comment"
-#: ../IDEFrame.py:87 ../IDEFrame.py:117 ../IDEFrame.py:150
+#: ../IDEFrame.py:94 ../IDEFrame.py:124 ../IDEFrame.py:157 msgid "Create a new connection"
-#: ../IDEFrame.py:105 ../IDEFrame.py:156
+#: ../IDEFrame.py:112 ../IDEFrame.py:163 msgid "Create a new contact"
msgid "Create a new divergence"
@@ -1077,39 +1121,39 @@
msgid "Create a new divergence or convergence"
msgid "Create a new initial step"
msgid "Create a new jump"
-#: ../IDEFrame.py:96 ../IDEFrame.py:153
+#: ../IDEFrame.py:103 ../IDEFrame.py:160 msgid "Create a new power rail"
msgid "Create a new rung"
msgid "Create a new step"
-#: ../IDEFrame.py:132 ../dialogs/PouTransitionDialog.py:42
+#: ../IDEFrame.py:139 ../dialogs/PouTransitionDialog.py:42 msgid "Create a new transition"
-#: ../IDEFrame.py:81 ../IDEFrame.py:111 ../IDEFrame.py:144
+#: ../IDEFrame.py:88 ../IDEFrame.py:118 ../IDEFrame.py:151 msgid "Create a new variable"
-#: ../IDEFrame.py:346 ../IDEFrame.py:400 ../editors/Viewer.py:535
+#: ../IDEFrame.py:351 ../IDEFrame.py:405 ../editors/Viewer.py:535 -#: ../editors/ResourceEditor.py:71
+#: ../editors/ResourceEditor.py:72 @@ -1121,11 +1165,11 @@
-#: ../canfestival/SlaveEditor.py:50 ../canfestival/NetworkEditor.py:80
+#: ../canfestival/SlaveEditor.py:53 ../canfestival/NetworkEditor.py:74 -#: ../canfestival/SlaveEditor.py:51 ../canfestival/NetworkEditor.py:81
+#: ../canfestival/SlaveEditor.py:54 ../canfestival/NetworkEditor.py:75 @@ -1158,58 +1202,58 @@
-#: ../ProjectController.py:1405
-msgid "Debug connect matching running PLC\n"
-#: ../ProjectController.py:1408
-msgid "Debug do not match PLC - stop/transfert/start to re-enable\n"
-#: ../controls/PouInstanceVariablesPanel.py:52
+#: ../ProjectController.py:1444 +msgid "Debug does not match PLC - stop/transfert/start to re-enable\n" +#: ../controls/PouInstanceVariablesPanel.py:59 -#: ../editors/Viewer.py:3222
+#: ../editors/Viewer.py:1016 ../editors/Viewer.py:3326 -#: ../ProjectController.py:1122
+#: ../ProjectController.py:1153 msgid "Debug: Unknown variable '%s'\n"
-#: ../ProjectController.py:1120
+#: ../ProjectController.py:1151 msgid "Debug: Unsupported type to debug '%s'\n"
-#: ../ProjectController.py:1285
+#: ../ProjectController.py:1311 msgid "Debugger disabled\n"
-#: ../ProjectController.py:1297
+#: ../ProjectController.py:1441 +msgid "Debugger ready\n" +#: ../ProjectController.py:1323 msgid "Debugger stopped.\n"
-#: ../IDEFrame.py:1990 ../Beremiz.py:958 ../editors/Viewer.py:511
+#: ../IDEFrame.py:1866 ../Beremiz.py:991 ../editors/Viewer.py:511 -#: ../editors/Viewer.py:454
+#: ../editors/Viewer.py:453 msgid "Delete Divergence Branch"
-#: ../editors/FileManagementPanel.py:371
+#: ../editors/FileManagementPanel.py:153 -#: ../editors/Viewer.py:443
+#: ../editors/Viewer.py:442 msgid "Delete Wire Segment"
@@ -1221,21 +1265,21 @@
msgid "Deletion (within)"
-#: ../editors/DataTypeEditor.py:146
+#: ../editors/DataTypeEditor.py:152 -#: ../plcopen/structures.py:264
+#: ../plcopen/structures.py:263 "The derivative function block produces an output XOUT proportional to the rate of change of the input XIN."
-#: ../controls/VariablePanel.py:360
+#: ../controls/VariablePanel.py:362 -#: ../editors/DataTypeEditor.py:314 ../dialogs/ArrayTypeDialog.py:61
+#: ../editors/DataTypeEditor.py:320 ../dialogs/ArrayTypeDialog.py:61 @@ -1243,23 +1287,23 @@
-#: ../dialogs/BrowseLocationsDialog.py:78
+#: ../dialogs/BrowseLocationsDialog.py:86 -#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 -#: ../ProjectController.py:1512
+#: ../ProjectController.py:1547 -#: ../ProjectController.py:1514
+#: ../ProjectController.py:1549 msgid "Disconnect from PLC"
-#: ../editors/Viewer.py:496
+#: ../editors/Viewer.py:495 @@ -1267,7 +1311,7 @@
-#: ../editors/FileManagementPanel.py:370
+#: ../editors/FileManagementPanel.py:152 msgid "Do you really want to delete the file '%s'?"
@@ -1276,11 +1320,11 @@
-#: ../PLCOpenEditor.py:351
+#: ../PLCOpenEditor.py:330 -#: ../plcopen/structures.py:227
+#: ../plcopen/structures.py:226 "The down-counter can be used to signal when a count has reached zero, on counting down from a preset value."
@@ -1290,11 +1334,11 @@
-#: ../canfestival/canfestival.py:118
+#: ../canfestival/canfestival.py:139 msgid "EDS files (*.eds)|*.eds|All files|*.*"
-#: ../editors/Viewer.py:510
+#: ../editors/Viewer.py:509 @@ -1326,12 +1370,12 @@
msgid "Edit array type properties"
-#: ../editors/Viewer.py:2112 ../editors/Viewer.py:2114
-#: ../editors/Viewer.py:2630 ../editors/Viewer.py:2632
+#: ../editors/Viewer.py:2186 ../editors/Viewer.py:2188 +#: ../editors/Viewer.py:2706 ../editors/Viewer.py:2708 -#: ../editors/FileManagementPanel.py:284
+#: ../editors/FileManagementPanel.py:66 @@ -1339,11 +1383,11 @@
-#: ../editors/Viewer.py:2594
+#: ../editors/Viewer.py:2670 -#: ../ProjectController.py:1526
+#: ../ProjectController.py:1561 msgid "Edit raw IEC code added to code generated by PLCGenerator"
@@ -1355,35 +1399,35 @@
-#: ../ProjectController.py:1013
+#: ../ProjectController.py:1039 -#: ../editors/DataTypeEditor.py:341
+#: ../editors/DataTypeEditor.py:347
-#: ../Beremiz_service.py:380
+#: ../Beremiz_service.py:385 -#: ../Beremiz_service.py:365
+#: ../Beremiz_service.py:370 msgid "Enter a port number "
-#: ../Beremiz_service.py:355
+#: ../Beremiz_service.py:360 msgid "Enter the IP of the interface to bind"
-#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 @@ -1391,23 +1435,22 @@
-#: ../Beremiz_service.py:270 ../Beremiz_service.py:394
-#: ../controls/VariablePanel.py:330 ../controls/VariablePanel.py:678
-#: ../controls/DebugVariablePanel.py:164 ../IDEFrame.py:1083
-#: ../IDEFrame.py:1672 ../IDEFrame.py:1709 ../IDEFrame.py:1714
-#: ../IDEFrame.py:1728 ../IDEFrame.py:1733 ../IDEFrame.py:2422
-#: ../Beremiz.py:1083 ../PLCOpenEditor.py:358 ../PLCOpenEditor.py:363
-#: ../PLCOpenEditor.py:531 ../PLCOpenEditor.py:541
-#: ../editors/TextViewer.py:376 ../editors/DataTypeEditor.py:543
-#: ../editors/DataTypeEditor.py:548 ../editors/DataTypeEditor.py:572
-#: ../editors/DataTypeEditor.py:577 ../editors/DataTypeEditor.py:587
-#: ../editors/DataTypeEditor.py:719 ../editors/DataTypeEditor.py:726
-#: ../editors/Viewer.py:366 ../editors/LDViewer.py:663
-#: ../editors/LDViewer.py:879 ../editors/LDViewer.py:883
-#: ../editors/FileManagementPanel.py:210 ../ProjectController.py:221
-#: ../dialogs/PouNameDialog.py:53 ../dialogs/PouTransitionDialog.py:107
-#: ../dialogs/BrowseLocationsDialog.py:175 ../dialogs/ProjectDialog.py:71
-#: ../dialogs/SFCStepNameDialog.py:59 ../dialogs/ConnectionDialog.py:152
+#: ../Beremiz_service.py:271 ../controls/VariablePanel.py:332 +#: ../controls/VariablePanel.py:681 ../controls/DebugVariablePanel.py:379 +#: ../IDEFrame.py:966 ../IDEFrame.py:1553 ../IDEFrame.py:1590 +#: ../IDEFrame.py:1595 ../IDEFrame.py:1609 ../IDEFrame.py:1614 +#: ../IDEFrame.py:2290 ../Beremiz.py:1131 ../PLCOpenEditor.py:337 +#: ../PLCOpenEditor.py:342 ../PLCOpenEditor.py:416 ../PLCOpenEditor.py:426 +#: ../editors/TextViewer.py:369 ../editors/DataTypeEditor.py:549 +#: ../editors/DataTypeEditor.py:554 ../editors/DataTypeEditor.py:578 +#: ../editors/DataTypeEditor.py:583 ../editors/DataTypeEditor.py:593 +#: ../editors/DataTypeEditor.py:744 ../editors/DataTypeEditor.py:751 +#: ../editors/Viewer.py:365 ../editors/LDViewer.py:666 +#: ../editors/LDViewer.py:882 ../editors/LDViewer.py:886 +#: ../ProjectController.py:225 ../dialogs/PouNameDialog.py:53 +#: ../dialogs/PouTransitionDialog.py:107 +#: ../dialogs/BrowseLocationsDialog.py:212 ../dialogs/ProjectDialog.py:71 +#: ../dialogs/SFCStepNameDialog.py:59 ../dialogs/ConnectionDialog.py:159 #: ../dialogs/FBDVariableDialog.py:201 ../dialogs/PouActionDialog.py:104
#: ../dialogs/BrowseValuesLibraryDialog.py:83 ../dialogs/PouDialog.py:132
#: ../dialogs/SFCTransitionDialog.py:147
@@ -1415,44 +1458,44 @@
#: ../dialogs/DurationEditorDialog.py:163
#: ../dialogs/SearchInProjectDialog.py:157 ../dialogs/SFCStepDialog.py:130
#: ../dialogs/ArrayTypeDialog.py:97 ../dialogs/ArrayTypeDialog.py:103
-#: ../dialogs/FBDBlockDialog.py:164 ../dialogs/ForceVariableDialog.py:169
+#: ../dialogs/FBDBlockDialog.py:164 ../dialogs/ForceVariableDialog.py:179 -#: ../ProjectController.py:587
+#: ../ProjectController.py:601 msgid "Error : At least one configuration and one resource must be declared in PLC !\n"
-#: ../ProjectController.py:579
+#: ../ProjectController.py:593 msgid "Error : IEC to C compiler returned %d\n"
-#: ../ProjectController.py:520
+#: ../ProjectController.py:534 "Error in ST/IL/SFC code generator :\n"
-#: ../ConfigTreeNode.py:182
+#: ../ConfigTreeNode.py:183 msgid "Error while saving \"%s\"\n"
-#: ../canfestival/canfestival.py:122
+#: ../canfestival/canfestival.py:144 msgid "Error: Export slave failed\n"
-#: ../canfestival/canfestival.py:270
+#: ../canfestival/canfestival.py:345 msgid "Error: No Master generated\n"
-#: ../canfestival/canfestival.py:265
+#: ../canfestival/canfestival.py:340 msgid "Error: No PLC built\n"
-#: ../ProjectController.py:1378
+#: ../ProjectController.py:1416 msgid "Exception while connecting %s!\n"
@@ -1465,7 +1508,7 @@
msgid "Experimental web based HMI"
@@ -1477,15 +1520,15 @@
-#: ../canfestival/canfestival.py:128
+#: ../canfestival/canfestival.py:150 msgid "Export CanOpen slave to EDS file"
-#: ../editors/GraphicViewer.py:144
+#: ../controls/DebugVariablePanel.py:1472 ../editors/GraphicViewer.py:144 msgid "Export graph values to clipboard"
-#: ../canfestival/canfestival.py:127
+#: ../canfestival/canfestival.py:149 @@ -1497,7 +1540,7 @@
-#: ../ProjectController.py:591
+#: ../ProjectController.py:605 msgid "Extracting Located Variables...\n"
@@ -1507,21 +1550,21 @@
-#: ../ProjectController.py:1445
+#: ../ProjectController.py:1480 msgid "Failed : Must build before transfer.\n"
-#: ../editors/Viewer.py:405 ../dialogs/LDElementDialog.py:84
+#: ../editors/Viewer.py:404 ../dialogs/LDElementDialog.py:84 -#: ../plcopen/structures.py:217
+#: ../plcopen/structures.py:216 "Falling edge detector\n"
"The output produces a single pulse when a falling edge is detected."
-#: ../ProjectController.py:900
+#: ../ProjectController.py:927 msgid "Fatal : cannot get builder.\n"
@@ -1535,21 +1578,16 @@
msgid "Fields %s haven't a valid value!"
-#: ../editors/FileManagementPanel.py:209
-msgid "File '%s' already exists!"
-#: ../IDEFrame.py:353 ../dialogs/FindInPouDialog.py:30
+#: ../IDEFrame.py:358 ../dialogs/FindInPouDialog.py:30 #: ../dialogs/FindInPouDialog.py:99
@@ -1565,11 +1603,11 @@
msgid "Force runtime reload\n"
-#: ../controls/DebugVariablePanel.py:295 ../editors/Viewer.py:1353
+#: ../controls/DebugVariablePanel.py:1934 ../editors/Viewer.py:1385 -#: ../dialogs/ForceVariableDialog.py:152
+#: ../dialogs/ForceVariableDialog.py:162 msgid "Forcing Variable Value"
@@ -1580,7 +1618,7 @@
msgid "Form isn't complete. %s must be filled!"
-#: ../dialogs/ConnectionDialog.py:142 ../dialogs/FBDBlockDialog.py:154
+#: ../dialogs/ConnectionDialog.py:149 ../dialogs/FBDBlockDialog.py:154 msgid "Form isn't complete. Name must be filled!"
@@ -1600,15 +1638,15 @@
-#: ../IDEFrame.py:1969 ../dialogs/SearchInProjectDialog.py:45
+#: ../IDEFrame.py:1845 ../dialogs/SearchInProjectDialog.py:45 -#: ../controls/VariablePanel.py:741
+#: ../controls/VariablePanel.py:744 msgid "Function Block Types"
@@ -1620,11 +1658,7 @@
msgid "Function Blocks can't be used in Functions!"
-#: ../editors/Viewer.py:238
-msgid "Function Blocks can't be used in Transitions!"
-#: ../PLCControler.py:2055
+#: ../PLCControler.py:2180 msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!"
@@ -1633,11 +1667,11 @@
-#: ../PLCOpenEditor.py:138
+#: ../PLCOpenEditor.py:119 -#: ../ProjectController.py:510
+#: ../ProjectController.py:524 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n"
@@ -1645,7 +1679,7 @@
-#: ../editors/GraphicViewer.py:131
+#: ../controls/DebugVariablePanel.py:1471 ../editors/GraphicViewer.py:131 msgid "Go to current value"
@@ -1669,7 +1703,7 @@
-#: ../editors/FileManagementPanel.py:303
+#: ../editors/FileManagementPanel.py:85 @@ -1681,13 +1715,13 @@
-#: ../plcopen/structures.py:279
+#: ../plcopen/structures.py:278 "The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2."
-#: ../ProjectController.py:827
+#: ../ProjectController.py:851 msgid "IEC-61131-3 code generation failed !\n"
@@ -1696,7 +1730,7 @@
-#: ../Beremiz_service.py:356 ../Beremiz_service.py:357
+#: ../Beremiz_service.py:361 ../Beremiz_service.py:362 @@ -1704,11 +1738,16 @@
-#: ../controls/VariablePanel.py:76 ../dialogs/FBDVariableDialog.py:34
+#: ../controls/VariablePanel.py:76 ../editors/Viewer.py:1412 +#: ../dialogs/FBDVariableDialog.py:34 -#: ../controls/VariablePanel.py:263
+#: ../editors/Viewer.py:999 +#: ../controls/VariablePanel.py:265 msgid "Incompatible data types between \"%s\" and \"%s\""
@@ -1727,17 +1766,17 @@
-#: ../editors/Viewer.py:492
+#: ../editors/Viewer.py:491 #: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59
-#: ../editors/DataTypeEditor.py:48
+#: ../editors/DataTypeEditor.py:50 -#: ../editors/DataTypeEditor.py:178 ../editors/DataTypeEditor.py:209
-#: ../editors/DataTypeEditor.py:265 ../editors/DataTypeEditor.py:303
+#: ../editors/DataTypeEditor.py:184 ../editors/DataTypeEditor.py:215 +#: ../editors/DataTypeEditor.py:271 ../editors/DataTypeEditor.py:309 @@ -1750,8 +1789,9 @@
-#: ../controls/VariablePanel.py:76 ../dialogs/BrowseLocationsDialog.py:36
-#: ../dialogs/FBDVariableDialog.py:33 ../dialogs/SFCStepDialog.py:61
+#: ../controls/VariablePanel.py:76 ../editors/Viewer.py:1410 +#: ../dialogs/BrowseLocationsDialog.py:35 ../dialogs/FBDVariableDialog.py:33 +#: ../dialogs/SFCStepDialog.py:61 @@ -1763,16 +1803,16 @@
-#: ../plcopen/plcopen.py:1833
+#: ../plcopen/plcopen.py:1843 msgid "Instance with id %d doesn't exist!"
-#: ../editors/ResourceEditor.py:247
+#: ../editors/ResourceEditor.py:255 -#: ../plcopen/structures.py:259
+#: ../plcopen/structures.py:258 "The integral function block integrates the value of input XIN over time."
@@ -1782,15 +1822,15 @@
-#: ../editors/ResourceEditor.py:71
+#: ../editors/ResourceEditor.py:72 -#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 -#: ../PLCControler.py:2032 ../PLCControler.py:2070
+#: ../PLCControler.py:2157 ../PLCControler.py:2195 msgid "Invalid plcopen element(s)!!!"
@@ -1799,12 +1839,12 @@
msgid "Invalid type \"%s\"-> %d != %d for location\"%s\""
-#: ../dialogs/ForceVariableDialog.py:167
+#: ../dialogs/ForceVariableDialog.py:177 msgid "Invalid value \"%s\" for \"%s\" variable!"
-#: ../controls/DebugVariablePanel.py:153 ../controls/DebugVariablePanel.py:156
+#: ../controls/DebugVariablePanel.py:319 ../controls/DebugVariablePanel.py:322 msgid "Invalid value \"%s\" for debug variable"
@@ -1825,7 +1865,7 @@
"You must fill a numeric value."
-#: ../editors/Viewer.py:497
+#: ../editors/Viewer.py:496 @@ -1854,19 +1894,19 @@
-#: ../ProjectController.py:1451
+#: ../ProjectController.py:1486 msgid "Latest build already matches current target. Transfering anyway...\n"
-#: ../Beremiz_service.py:324
+#: ../Beremiz_service.py:331 msgid "Launch WX GUI inspector"
-#: ../Beremiz_service.py:323
+#: ../Beremiz_service.py:330 msgid "Launch a live Python shell"
-#: ../editors/Viewer.py:428
+#: ../editors/Viewer.py:427 @@ -1886,7 +1926,7 @@
msgid "Less than or equal to"
@@ -1902,7 +1942,11 @@
-#: ../ProjectController.py:1353
+#: ../canfestival/canfestival.py:322 +#: ../ProjectController.py:1391 msgid "Local service discovery failed!\n"
@@ -1910,14 +1954,10 @@
-#: ../dialogs/BrowseLocationsDialog.py:61
+#: ../dialogs/BrowseLocationsDialog.py:68 msgid "Locations available:"
#: ../plcopen/iec_std.csv:25
msgid "Logarithm to base 10"
@@ -1927,19 +1967,19 @@
msgid "MDNS resolution failure for '%s'\n"
-#: ../canfestival/SlaveEditor.py:37 ../canfestival/NetworkEditor.py:67
+#: ../canfestival/SlaveEditor.py:41 ../canfestival/NetworkEditor.py:62
msgid "Map located variables over CANopen"
-#: ../canfestival/NetworkEditor.py:89
+#: ../canfestival/NetworkEditor.py:83 -#: ../ConfigTreeNode.py:480
+#: ../ConfigTreeNode.py:500 msgid "Max count (%d) reached for this confnode of type %s "
@@ -1948,15 +1988,15 @@
-#: ../editors/DataTypeEditor.py:232
+#: ../editors/DataTypeEditor.py:238 -#: ../dialogs/BrowseLocationsDialog.py:38
+#: ../dialogs/BrowseLocationsDialog.py:37
@@ -1964,7 +2004,7 @@
-#: ../editors/Viewer.py:433
+#: ../editors/Viewer.py:432 @@ -1976,7 +2016,7 @@
-#: ../editors/DataTypeEditor.py:219
+#: ../editors/DataTypeEditor.py:225 @@ -1992,7 +2032,7 @@
-#: ../PLCGenerator.py:703 ../PLCGenerator.py:936
+#: ../PLCGenerator.py:732 ../PLCGenerator.py:975 msgid "More than one connector found corresponding to \"%s\" continuation in \"%s\" POU"
@@ -2005,11 +2045,11 @@
-#: ../controls/DebugVariablePanel.py:185
+#: ../controls/DebugVariablePanel.py:1532 msgid "Move debug variable down"
-#: ../controls/DebugVariablePanel.py:184
+#: ../controls/DebugVariablePanel.py:1531 msgid "Move debug variable up"
@@ -2017,31 +2057,31 @@
-#: ../editors/DataTypeEditor.py:348
+#: ../editors/DataTypeEditor.py:354 msgid "Move element down"
-#: ../editors/DataTypeEditor.py:347
+#: ../editors/DataTypeEditor.py:353 -#: ../editors/ResourceEditor.py:254
+#: ../editors/ResourceEditor.py:262 msgid "Move instance down"
-#: ../editors/ResourceEditor.py:253
+#: ../editors/ResourceEditor.py:261 -#: ../editors/ResourceEditor.py:225
+#: ../editors/ResourceEditor.py:233 -#: ../editors/ResourceEditor.py:224
+#: ../editors/ResourceEditor.py:232 -#: ../IDEFrame.py:75 ../IDEFrame.py:90 ../IDEFrame.py:120 ../IDEFrame.py:161
+#: ../IDEFrame.py:82 ../IDEFrame.py:97 ../IDEFrame.py:127 ../IDEFrame.py:168 @@ -2049,11 +2089,11 @@
-#: ../controls/VariablePanel.py:381
+#: ../controls/VariablePanel.py:383 ../c_ext/CFileEditor.py:520 msgid "Move variable down"
-#: ../controls/VariablePanel.py:380
+#: ../controls/VariablePanel.py:382 ../c_ext/CFileEditor.py:519 @@ -2065,17 +2105,17 @@
-#: ../editors/FileManagementPanel.py:301
+#: ../editors/FileManagementPanel.py:83 #: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59
-#: ../editors/DataTypeEditor.py:48 ../editors/ResourceEditor.py:67
-#: ../editors/ResourceEditor.py:76
+#: ../editors/DataTypeEditor.py:50 ../editors/ResourceEditor.py:68 +#: ../editors/ResourceEditor.py:77 -#: ../Beremiz_service.py:381
+#: ../Beremiz_service.py:386 msgid "Name must not be null!"
@@ -2089,12 +2129,12 @@
msgid "Natural logarithm"
-#: ../editors/Viewer.py:403 ../dialogs/LDElementDialog.py:67
+#: ../editors/Viewer.py:402 ../dialogs/LDElementDialog.py:67 -#: ../Beremiz.py:307 ../Beremiz.py:342 ../PLCOpenEditor.py:125
-#: ../PLCOpenEditor.py:167
+#: ../Beremiz.py:309 ../Beremiz.py:344 ../PLCOpenEditor.py:106 +#: ../PLCOpenEditor.py:148 @@ -2102,47 +2142,43 @@
-#: ../editors/Viewer.py:402
+#: ../editors/Viewer.py:401 -#: ../PLCControler.py:2929
+#: ../PLCControler.py:3054 msgid "No PLC project found"
-#: ../ProjectController.py:1478
+#: ../ProjectController.py:1513 msgid "No PLC to transfer (did build succeed ?)\n"
-#: ../PLCGenerator.py:1321
+#: ../PLCGenerator.py:1360 msgid "No body defined in \"%s\" POU"
-#: ../PLCGenerator.py:722 ../PLCGenerator.py:945
+#: ../PLCGenerator.py:751 ../PLCGenerator.py:984 msgid "No connector found corresponding to \"%s\" continuation in \"%s\" POU"
-#: ../PLCOpenEditor.py:370
+#: ../PLCOpenEditor.py:349 "No documentation available.\n"
-#: ../PLCGenerator.py:744
+#: ../PLCGenerator.py:773 msgid "No informations found for \"%s\" block"
-#: ../plcopen/structures.py:167
+#: ../plcopen/structures.py:166 msgid "No output variable found"
-#: ../Beremiz_service.py:394
#: ../controls/SearchResultPanel.py:169
msgid "No search results available."
@@ -2166,15 +2202,11 @@
msgid "No valid value selected!"
-#: ../PLCGenerator.py:1319
+#: ../PLCGenerator.py:1358 msgid "No variable defined in \"%s\" POU"
-#: ../canfestival/SlaveEditor.py:49 ../canfestival/NetworkEditor.py:79
#: ../canfestival/config_utils.py:354
msgid "Non existing node ID : %d (variable %s)"
@@ -2205,13 +2237,13 @@
-#: ../plcopen/structures.py:247
+#: ../plcopen/structures.py:246 "The off-delay timer can be used to delay setting an output false, for fixed period after input goes false."
-#: ../plcopen/structures.py:242
+#: ../plcopen/structures.py:241 "The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true."
@@ -2221,8 +2253,8 @@
-#: ../Beremiz.py:309 ../Beremiz.py:343 ../PLCOpenEditor.py:127
-#: ../PLCOpenEditor.py:168
+#: ../Beremiz.py:311 ../Beremiz.py:345 ../PLCOpenEditor.py:108 +#: ../PLCOpenEditor.py:149 @@ -2230,7 +2262,7 @@
-#: ../ProjectController.py:1530
+#: ../ProjectController.py:1565 msgid "Open a file explorer to manage project files"
@@ -2250,24 +2282,25 @@
msgid "Organization (optional):"
-#: ../canfestival/SlaveEditor.py:47 ../canfestival/NetworkEditor.py:77
+#: ../canfestival/SlaveEditor.py:51 ../canfestival/NetworkEditor.py:72 -#: ../controls/VariablePanel.py:76 ../dialogs/BrowseLocationsDialog.py:37
-#: ../dialogs/FBDVariableDialog.py:35 ../dialogs/SFCStepDialog.py:65
+#: ../controls/VariablePanel.py:76 ../editors/Viewer.py:1411 +#: ../dialogs/BrowseLocationsDialog.py:36 ../dialogs/FBDVariableDialog.py:35 +#: ../dialogs/SFCStepDialog.py:65 -#: ../canfestival/SlaveEditor.py:36 ../canfestival/NetworkEditor.py:66
+#: ../canfestival/SlaveEditor.py:40 ../canfestival/NetworkEditor.py:61 -#: ../canfestival/SlaveEditor.py:35 ../canfestival/NetworkEditor.py:65
+#: ../canfestival/SlaveEditor.py:39 ../canfestival/NetworkEditor.py:60 -#: ../plcopen/structures.py:269
+#: ../plcopen/structures.py:268 "The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control."
@@ -2277,16 +2310,15 @@
-#: ../ProjectController.py:1096 ../ProjectController.py:1398
-#: ../PLCOpenEditor.py:313 ../PLCOpenEditor.py:391
+#: ../PLCOpenEditor.py:294 ../PLCOpenEditor.py:370 msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
-#: ../PLCOpenEditor.py:175 ../PLCOpenEditor.py:231
+#: ../PLCOpenEditor.py:156 ../PLCOpenEditor.py:212 @@ -2306,7 +2338,7 @@
-#: ../Beremiz.py:322 ../PLCOpenEditor.py:141
+#: ../Beremiz.py:324 ../PLCOpenEditor.py:122 @@ -2314,20 +2346,20 @@
msgid "Page Size (optional):"
-#: ../PLCOpenEditor.py:476
-#: ../controls/PouInstanceVariablesPanel.py:41
+#: ../controls/PouInstanceVariablesPanel.py:48 -#: ../IDEFrame.py:350 ../IDEFrame.py:402 ../editors/Viewer.py:537
+#: ../IDEFrame.py:355 ../IDEFrame.py:407 ../editors/Viewer.py:537
@@ -2339,13 +2371,13 @@
-#: ../editors/Viewer.py:2289 ../editors/Viewer.py:2594
+#: ../editors/Viewer.py:2363 ../editors/Viewer.py:2670 #: ../editors/SFCViewer.py:696
msgid "Please choose a target"
-#: ../editors/Viewer.py:2112 ../editors/Viewer.py:2114
-#: ../editors/Viewer.py:2630 ../editors/Viewer.py:2632
+#: ../editors/Viewer.py:2186 ../editors/Viewer.py:2188 +#: ../editors/Viewer.py:2706 ../editors/Viewer.py:2708 msgid "Please enter comment text"
@@ -2354,16 +2386,16 @@
msgid "Please enter step name"
-#: ../dialogs/ForceVariableDialog.py:153
+#: ../dialogs/ForceVariableDialog.py:163 msgid "Please enter value for a \"%s\" variable:"
-#: ../Beremiz_service.py:366
+#: ../Beremiz_service.py:371 msgid "Port number must be 0 <= port <= 65535!"
-#: ../Beremiz_service.py:366
+#: ../Beremiz_service.py:371 msgid "Port number must be an integer!"
@@ -2371,7 +2403,7 @@
-#: ../editors/Viewer.py:476
+#: ../editors/Viewer.py:475 @@ -2379,7 +2411,7 @@
msgid "Power Rail Properties"
-#: ../Beremiz.py:324 ../PLCOpenEditor.py:143
+#: ../Beremiz.py:326 ../PLCOpenEditor.py:124 @@ -2390,16 +2422,16 @@
-#: ../Beremiz.py:326 ../Beremiz.py:346 ../PLCOpenEditor.py:145
-#: ../PLCOpenEditor.py:171
+#: ../Beremiz.py:328 ../Beremiz.py:348 ../PLCOpenEditor.py:126 +#: ../PLCOpenEditor.py:152
-#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 @@ -2407,6 +2439,11 @@
+#: ../runtime/PLCObject.py:318 +msgid "Problem starting PLC : error %d" #: ../controls/ProjectPropertiesPanel.py:80
msgid "Product Name (required):"
@@ -2419,11 +2456,11 @@
msgid "Product Version (required):"
-#: ../IDEFrame.py:1972 ../dialogs/SearchInProjectDialog.py:46
+#: ../IDEFrame.py:1848 ../dialogs/SearchInProjectDialog.py:46 -#: ../PLCOpenEditor.py:360
+#: ../PLCOpenEditor.py:339 msgid "Program was successfully generated!"
@@ -2435,7 +2472,7 @@
msgid "Programs can't be used by other POUs!"
-#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:553
+#: ../controls/ProjectPropertiesPanel.py:84 ../IDEFrame.py:557 @@ -2444,7 +2481,7 @@
-#: ../ProjectController.py:1529
+#: ../ProjectController.py:1564 @@ -2456,32 +2493,40 @@
msgid "Project Version (optional):"
-#: ../PLCControler.py:2916
+#: ../PLCControler.py:3041 "Project file syntax error:\n"
-#: ../dialogs/ProjectDialog.py:32
+#: ../editors/ProjectNodeEditor.py:14 ../dialogs/ProjectDialog.py:32 msgid "Project properties"
-#: ../ConfigTreeNode.py:506
+#: ../ConfigTreeNode.py:526 msgid "Project tree layout do not match confnode.xml %s!=%s "
+#: ../dialogs/ConnectionDialog.py:96 -#: ../plcopen/structures.py:237
+#: ../plcopen/structures.py:236 "The pulse timer can be used to generate output pulses of a given time duration."
+#: ../py_ext/PythonEditor.py:61 @@ -2489,42 +2534,42 @@
-#: ../Beremiz_service.py:328 ../Beremiz.py:329 ../PLCOpenEditor.py:151
+#: ../Beremiz_service.py:333 ../Beremiz.py:331 ../PLCOpenEditor.py:132 -#: ../plcopen/structures.py:202
+#: ../plcopen/structures.py:201 "The RS bistable is a latch where the Reset dominates."
-#: ../plcopen/structures.py:274
+#: ../plcopen/structures.py:273 "The RAMP function block is modelled on example given in the standard."
-#: ../editors/GraphicViewer.py:89
+#: ../controls/DebugVariablePanel.py:1462 ../editors/GraphicViewer.py:89 -#: ../ProjectController.py:1525
+#: ../ProjectController.py:1560 -#: ../plcopen/structures.py:254
+#: ../plcopen/structures.py:253 "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 "Really delete node '%s'?"
-#: ../IDEFrame.py:340 ../IDEFrame.py:398
+#: ../IDEFrame.py:345 ../IDEFrame.py:403 @@ -2532,7 +2577,7 @@
-#: ../IDEFrame.py:408 ../dialogs/DiscoveryDialog.py:105
+#: ../IDEFrame.py:413 ../dialogs/DiscoveryDialog.py:105 @@ -2544,7 +2589,7 @@
msgid "Regular expressions"
-#: ../controls/DebugVariablePanel.py:299 ../editors/Viewer.py:1356
+#: ../controls/DebugVariablePanel.py:1938 ../editors/Viewer.py:1388 @@ -2552,7 +2597,7 @@
msgid "Remainder (modulo)"
@@ -2561,39 +2606,39 @@
-#: ../controls/DebugVariablePanel.py:183
+#: ../controls/DebugVariablePanel.py:1530 msgid "Remove debug variable"
-#: ../editors/DataTypeEditor.py:346
+#: ../editors/DataTypeEditor.py:352 -#: ../editors/FileManagementPanel.py:281
+#: ../editors/FileManagementPanel.py:63 msgid "Remove file from left folder"
-#: ../editors/ResourceEditor.py:252
+#: ../editors/ResourceEditor.py:260 -#: ../canfestival/NetworkEditor.py:87
+#: ../canfestival/NetworkEditor.py:81 -#: ../editors/ResourceEditor.py:223
+#: ../editors/ResourceEditor.py:231 -#: ../controls/VariablePanel.py:379
+#: ../controls/VariablePanel.py:381 ../c_ext/CFileEditor.py:518
-#: ../editors/FileManagementPanel.py:399
+#: ../editors/FileManagementPanel.py:181 @@ -2609,7 +2654,7 @@
msgid "Reset Execution Order"
msgid "Reset Perspective"
@@ -2629,11 +2674,11 @@
-#: ../controls/VariablePanel.py:352
+#: ../controls/VariablePanel.py:354 -#: ../editors/Viewer.py:430
+#: ../editors/Viewer.py:429 @@ -2641,11 +2686,11 @@
-#: ../editors/Viewer.py:404 ../dialogs/LDElementDialog.py:80
+#: ../editors/Viewer.py:403 ../dialogs/LDElementDialog.py:80 -#: ../plcopen/structures.py:212
+#: ../plcopen/structures.py:211 "The output produces a single pulse when a rising edge is detected."
@@ -2663,19 +2708,19 @@
-#: ../ProjectController.py:1493
+#: ../ProjectController.py:1528 -#: ../ProjectController.py:841 ../ProjectController.py:850
+#: ../ProjectController.py:865 ../ProjectController.py:874 msgid "Runtime extensions C code generation failed !\n"
-#: ../canfestival/SlaveEditor.py:34 ../canfestival/NetworkEditor.py:64
+#: ../canfestival/SlaveEditor.py:38 ../canfestival/NetworkEditor.py:59 -#: ../canfestival/SlaveEditor.py:33 ../canfestival/NetworkEditor.py:63
+#: ../canfestival/SlaveEditor.py:37 ../canfestival/NetworkEditor.py:58 @@ -2683,7 +2728,7 @@
-#: ../plcopen/structures.py:197
+#: ../plcopen/structures.py:196 "The SR bistable is a latch where the Set dominates."
@@ -2694,7 +2739,7 @@
-#: ../PLCOpenEditor.py:347
+#: ../PLCOpenEditor.py:326 msgid "ST files (*.st)|*.st|All files|*.*"
@@ -2702,20 +2747,20 @@
msgid "SVG files (*.svg)|*.svg|All files|*.*"
-#: ../Beremiz.py:313 ../Beremiz.py:344 ../PLCOpenEditor.py:134
-#: ../PLCOpenEditor.py:169
+#: ../Beremiz.py:315 ../Beremiz.py:346 ../PLCOpenEditor.py:115 +#: ../PLCOpenEditor.py:150 -#: ../Beremiz.py:345 ../PLCOpenEditor.py:136 ../PLCOpenEditor.py:170
+#: ../Beremiz.py:347 ../PLCOpenEditor.py:117 ../PLCOpenEditor.py:151
@@ -2723,11 +2768,11 @@
-#: ../IDEFrame.py:592 ../dialogs/SearchInProjectDialog.py:105
+#: ../IDEFrame.py:596 ../dialogs/SearchInProjectDialog.py:105 -#: ../IDEFrame.py:360 ../IDEFrame.py:404
+#: ../IDEFrame.py:365 ../IDEFrame.py:409 #: ../dialogs/SearchInProjectDialog.py:52
msgid "Search in Project"
@@ -2736,24 +2781,24 @@
-#: ../controls/VariablePanel.py:277 ../editors/TextViewer.py:330
-#: ../editors/Viewer.py:277
+#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:277 +#: ../editors/TextViewer.py:323 ../editors/Viewer.py:275 msgid "Select a variable class:"
-#: ../ProjectController.py:1013
+#: ../ProjectController.py:1039 msgid "Select an editor:"
-#: ../controls/PouInstanceVariablesPanel.py:197
+#: ../controls/PouInstanceVariablesPanel.py:209 msgid "Select an instance"
@@ -2769,7 +2814,7 @@
msgid "Selection Divergence"
-#: ../plcopen/structures.py:207
+#: ../plcopen/structures.py:206 "The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources."
@@ -2791,19 +2836,19 @@
-#: ../ProjectController.py:1519
+#: ../ProjectController.py:1554 msgid "Show IEC code generated by PLCGenerator"
-#: ../canfestival/canfestival.py:288
+#: ../canfestival/canfestival.py:363 -#: ../canfestival/canfestival.py:289
+#: ../canfestival/canfestival.py:364 msgid "Show Master generated by config_utils"
-#: ../ProjectController.py:1517
+#: ../ProjectController.py:1552 @@ -2819,7 +2864,7 @@
-#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 @@ -2827,52 +2872,52 @@
msgid "Square root (base 2)"
-#: ../plcopen/structures.py:193
+#: ../plcopen/structures.py:192 msgid "Standard function blocks"
-#: ../Beremiz_service.py:319 ../ProjectController.py:1495
+#: ../Beremiz_service.py:321 ../ProjectController.py:1530 -#: ../ProjectController.py:819
+#: ../ProjectController.py:843 msgid "Start build in %s\n"
-#: ../ProjectController.py:1314
+#: ../ProjectController.py:1341
-#: ../editors/Viewer.py:493
+#: ../editors/Viewer.py:492 -#: ../ProjectController.py:1498
+#: ../ProjectController.py:1533 -#: ../Beremiz_service.py:320
+#: ../Beremiz_service.py:322 -#: ../ProjectController.py:1500
+#: ../ProjectController.py:1535 -#: ../ProjectController.py:1292
+#: ../ProjectController.py:1318 msgid "Stopping debugger...\n"
-#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 -#: ../editors/DataTypeEditor.py:52
+#: ../editors/DataTypeEditor.py:54 @@ -2880,7 +2925,7 @@
-#: ../ProjectController.py:915
+#: ../ProjectController.py:942 msgid "Successfully built.\n"
@@ -2892,11 +2937,11 @@
-#: ../editors/ResourceEditor.py:76
+#: ../editors/ResourceEditor.py:77 -#: ../editors/ResourceEditor.py:218
+#: ../editors/ResourceEditor.py:226 @@ -2904,33 +2949,33 @@
-#: ../editors/FileManagementPanel.py:398
+#: ../editors/FileManagementPanel.py:180 "The file '%s' already exist.\n"
"Do you want to replace it?"
-#: ../editors/LDViewer.py:879
+#: ../editors/LDViewer.py:882 msgid "The group of block must be coherent!"
-#: ../IDEFrame.py:1091 ../Beremiz.py:555
+#: ../IDEFrame.py:974 ../Beremiz.py:590 msgid "There are changes, do you want to save?"
-#: ../IDEFrame.py:1709 ../IDEFrame.py:1728
+#: ../IDEFrame.py:1590 ../IDEFrame.py:1609 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?"
-#: ../editors/LDViewer.py:888
+#: ../editors/LDViewer.py:891 msgid "This option isn't available yet!"
@@ -2971,31 +3016,31 @@
msgid "Time-of-day subtraction"
-#: ../editors/Viewer.py:432
+#: ../editors/Viewer.py:431 -#: ../ProjectController.py:1507
+#: ../ProjectController.py:1542 +#: ../ProjectController.py:1544 #: ../ProjectController.py:1509
-#: ../ProjectController.py:1474
msgid "Transfer completed successfully.\n"
-#: ../ProjectController.py:1476
+#: ../ProjectController.py:1511 msgid "Transfer failed\n"
-#: ../editors/Viewer.py:494
+#: ../editors/Viewer.py:493 -#: ../PLCGenerator.py:1212
+#: ../PLCGenerator.py:1252 msgid "Transition \"%s\" body must contain an output variable or coil referring to its name"
@@ -3008,17 +3053,17 @@
-#: ../PLCGenerator.py:1301
+#: ../PLCGenerator.py:1340 msgid "Transition with content \"%s\" not connected to a next step in \"%s\" POU"
-#: ../PLCGenerator.py:1292
+#: ../PLCGenerator.py:1331 msgid "Transition with content \"%s\" not connected to a previous step in \"%s\" POU"
-#: ../plcopen/plcopen.py:1442
+#: ../plcopen/plcopen.py:1447 msgid "Transition with name %s doesn't exist!"
@@ -3027,16 +3072,20 @@
-#: ../editors/ResourceEditor.py:67
+#: ../editors/ResourceEditor.py:68 #: ../controls/VariablePanel.py:58 ../controls/VariablePanel.py:59
-#: ../editors/DataTypeEditor.py:48 ../editors/ResourceEditor.py:76
+#: ../editors/DataTypeEditor.py:50 ../editors/ResourceEditor.py:77 #: ../dialogs/ActionBlockDialog.py:37
+#: ../dialogs/BrowseLocationsDialog.py:44 +msgid "Type and derivated" #: ../canfestival/config_utils.py:335 ../canfestival/config_utils.py:617
msgid "Type conflict for location \"%s\""
@@ -3046,13 +3095,17 @@
-#: ../editors/DataTypeEditor.py:155
+#: ../editors/DataTypeEditor.py:161 +#: ../dialogs/BrowseLocationsDialog.py:45 #: ../dialogs/SFCDivergenceDialog.py:51 ../dialogs/LDPowerRailDialog.py:51
-#: ../dialogs/ConnectionDialog.py:52 ../dialogs/SFCTransitionDialog.py:53
-#: ../dialogs/FBDBlockDialog.py:48
+#: ../dialogs/BrowseLocationsDialog.py:95 ../dialogs/ConnectionDialog.py:52 +#: ../dialogs/SFCTransitionDialog.py:53 ../dialogs/FBDBlockDialog.py:48 @@ -3066,30 +3119,30 @@
msgid "Unable to get Xenomai's %s \n"
-#: ../PLCGenerator.py:865 ../PLCGenerator.py:924
+#: ../PLCGenerator.py:904 ../PLCGenerator.py:963 msgid "Undefined block type \"%s\" in \"%s\" POU"
-#: ../PLCGenerator.py:240
+#: ../PLCGenerator.py:252 msgid "Undefined pou type \"%s\""
-#: ../IDEFrame.py:338 ../IDEFrame.py:397
+#: ../IDEFrame.py:343 ../IDEFrame.py:402 -#: ../ProjectController.py:254
+#: ../ProjectController.py:262 -#: ../editors/Viewer.py:336
+#: ../editors/Viewer.py:335 msgid "Unknown variable \"%s\" for this POU!"
-#: ../ProjectController.py:251 ../ProjectController.py:252
+#: ../ProjectController.py:259 ../ProjectController.py:260 @@ -3103,23 +3156,23 @@
msgid "Unrecognized data size \"%s\""
-#: ../plcopen/structures.py:222
+#: ../plcopen/structures.py:221 "The up-counter can be used to signal when a count has reached a maximum value."
-#: ../plcopen/structures.py:232
+#: ../plcopen/structures.py:231 "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."
-#: ../controls/VariablePanel.py:709 ../editors/DataTypeEditor.py:623
+#: ../controls/VariablePanel.py:712 ../editors/DataTypeEditor.py:631 -#: ../canfestival/SlaveEditor.py:38 ../canfestival/NetworkEditor.py:68
+#: ../canfestival/SlaveEditor.py:42 ../canfestival/NetworkEditor.py:63 @@ -3127,7 +3180,7 @@
msgid "User-defined POUs"
-#: ../controls/DebugVariablePanel.py:40 ../dialogs/ActionBlockDialog.py:37
+#: ../controls/DebugVariablePanel.py:58 ../dialogs/ActionBlockDialog.py:37 @@ -3135,11 +3188,11 @@
-#: ../editors/DataTypeEditor.py:252
+#: ../editors/DataTypeEditor.py:258 -#: ../controls/DebugVariablePanel.py:40 ../editors/Viewer.py:466
+#: ../controls/DebugVariablePanel.py:58 ../editors/Viewer.py:465 #: ../dialogs/ActionBlockDialog.py:41
@@ -3148,12 +3201,12 @@
msgid "Variable Properties"
-#: ../controls/VariablePanel.py:277 ../editors/TextViewer.py:330
-#: ../editors/Viewer.py:277
+#: ../controls/LocationCellEditor.py:97 ../controls/VariablePanel.py:277 +#: ../editors/TextViewer.py:323 ../editors/Viewer.py:275 -#: ../editors/TextViewer.py:374 ../editors/Viewer.py:338
+#: ../editors/TextViewer.py:367 ../editors/Viewer.py:337 msgid "Variable don't belong to this POU!"
@@ -3169,15 +3222,15 @@
-#: ../ProjectController.py:1276
+#: ../ProjectController.py:1302 msgid "Waiting debugger to recover...\n"
-#: ../editors/LDViewer.py:888 ../dialogs/PouDialog.py:126
+#: ../editors/LDViewer.py:891 ../dialogs/PouDialog.py:126 -#: ../ProjectController.py:515
+#: ../ProjectController.py:529 msgid "Warnings in ST/IL/SFC code generator :\n"
@@ -3193,7 +3246,7 @@
@@ -3209,17 +3262,17 @@
-#: ../ProjectController.py:220
+#: ../ProjectController.py:224 "You must have permission to work on the project\n"
"Work on a project copy ?"
-#: ../editors/LDViewer.py:883
+#: ../editors/LDViewer.py:886 msgid "You must select the block or group of blocks around which a branch should be added!"
-#: ../editors/LDViewer.py:663
+#: ../editors/LDViewer.py:666 msgid "You must select the wire where a contact should be added!"
@@ -3228,11 +3281,11 @@
msgid "You must type a name!"
-#: ../dialogs/ForceVariableDialog.py:165
+#: ../dialogs/ForceVariableDialog.py:175 msgid "You must type a value!"
@@ -3240,7 +3293,7 @@
-#: ../PLCOpenEditor.py:356
+#: ../PLCOpenEditor.py:335 @@ -3250,7 +3303,7 @@
msgid "exited with status %s (pid %s)\n"
-#: ../PLCOpenEditor.py:508 ../PLCOpenEditor.py:510
+#: ../PLCOpenEditor.py:393 ../PLCOpenEditor.py:395 @@ -3258,7 +3311,7 @@
-#: ../PLCOpenEditor.py:511
+#: ../PLCOpenEditor.py:396 @@ -3266,7 +3319,7 @@
-#: ../PLCOpenEditor.py:511
+#: ../PLCOpenEditor.py:396 @@ -3286,7 +3339,7 @@
-#: ../PLCOpenEditor.py:354
+#: ../PLCOpenEditor.py:333 @@ -3323,9 +3376,6 @@