--- a/PLCControler.py Fri Sep 09 17:19:35 2011 +0200
+++ b/PLCControler.py Tue Sep 13 13:01:04 2011 +0200
@@ -574,6 +574,8 @@
# Add the datatype to project
self.Project.appenddataType(datatype_name)
self.BufferProject()
+ return self.ComputeDataTypeName(datatype_name)
+ return None
# Remove a Data Type from project
def ProjectRemoveDataType(self, datatype_name):
@@ -589,6 +591,8 @@
if pou_type == "function":
self.SetPouInterfaceReturnType(pou_name, "BOOL")
self.BufferProject()
+ return self.ComputePouName(pou_name)
+ return None
def ProjectChangePouType(self, name, pou_type):
if self.Project is not None:
@@ -658,6 +662,8 @@
if self.Project is not None:
self.Project.addconfiguration(config_name)
self.BufferProject()
+ return self.ComputeConfigurationName(config_name)
+ return None
# Remove a configuration from project
def ProjectRemoveConfiguration(self, config_name):
@@ -670,6 +676,8 @@
if self.Project is not None:
self.Project.addconfigurationResource(config_name, resource_name)
self.BufferProject()
+ return self.ComputeConfigurationResourceName(config_name, resource_name)
+ return None
# Remove a resource from a configuration of the project
def ProjectRemoveConfigurationResource(self, config_name, resource_name):
@@ -684,6 +692,8 @@
if pou is not None:
pou.addtransition(transition_name, transition_type)
self.BufferProject()
+ return self.ComputePouTransitionName(pou_name, transition_name)
+ return None
# Remove a Transition from a Project Pou
def ProjectRemovePouTransition(self, pou_name, transition_name):
@@ -701,6 +711,8 @@
if pou is not None:
pou.addaction(action_name, action_type)
self.BufferProject()
+ return self.ComputePouActionName(pou_name, action_name)
+ return None
# Remove an Action from a Project Pou
def ProjectRemovePouAction(self, pou_name, action_name):
--- a/PLCOpenEditor.py Fri Sep 09 17:19:35 2011 +0200
+++ b/PLCOpenEditor.py Tue Sep 13 13:01:04 2011 +0200
@@ -2194,8 +2194,10 @@
dialog = DataTypeDialog(self, _("Add a new data type"), _("Please enter data type name"), "", wx.OK|wx.CANCEL)
dialog.SetDataTypeNames(self.Controler.GetProjectDataTypeNames())
if dialog.ShowModal() == wx.ID_OK:
- self.Controler.ProjectAddDataType(dialog.GetValue())
- self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE)
+ tagname = self.Controler.ProjectAddDataType(dialog.GetValue())
+ if tagname is not None:
+ self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE)
+ self.EditProjectElement(ITEM_DATATYPE, tagname)
dialog.Destroy()
def GenerateAddPouFunction(self, pou_type):
@@ -2205,8 +2207,10 @@
dialog.SetPouElementNames(self.Controler.GetProjectPouVariables())
if dialog.ShowModal() == wx.ID_OK:
values = dialog.GetValues()
- self.Controler.ProjectAddPou(values["pouName"], values["pouType"], values["language"])
- self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE, LIBRARYTREE)
+ tagname = self.Controler.ProjectAddPou(values["pouName"], values["pouType"], values["language"])
+ if tagname is not None:
+ self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE, LIBRARYTREE)
+ self.EditProjectElement(ITEM_POU, tagname)
dialog.Destroy()
return OnAddPouMenu
@@ -2217,9 +2221,11 @@
dialog.SetPouElementNames(self.Controler.GetProjectPouVariables(pou_name))
if dialog.ShowModal() == wx.ID_OK:
values = dialog.GetValues()
- self.Controler.ProjectAddPouTransition(pou_name, values["transitionName"], values["language"])
- self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE)
- dialog.Destroy()
+ tagname = self.Controler.ProjectAddPouTransition(pou_name, values["transitionName"], values["language"])
+ if tagname is not None:
+ self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE)
+ self.EditProjectElement(ITEM_TRANSITION, tagname)
+ dialog.Destroy()
return OnAddTransitionMenu
def GenerateAddActionFunction(self, pou_name):
@@ -2229,8 +2235,10 @@
dialog.SetPouElementNames(self.Controler.GetProjectPouVariables(pou_name))
if dialog.ShowModal() == wx.ID_OK:
values = dialog.GetValues()
- self.Controler.ProjectAddPouAction(pou_name, values["actionName"], values["language"])
- self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE)
+ tagname = self.Controler.ProjectAddPouAction(pou_name, values["actionName"], values["language"])
+ if tagname is not None:
+ self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE)
+ self.EditProjectElement(ITEM_ACTION, tagname)
dialog.Destroy()
return OnAddActionMenu
@@ -2240,8 +2248,10 @@
dialog.SetPouElementNames(self.Controler.GetProjectPouVariables())
if dialog.ShowModal() == wx.ID_OK:
value = dialog.GetValue()
- self.Controler.ProjectAddConfiguration(value)
- self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE, INSTANCESTREE)
+ tagname = self.Controler.ProjectAddConfiguration(value)
+ if tagname is not None:
+ self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE, INSTANCESTREE)
+ self.EditProjectElement(ITEM_CONFIGURATION, tagname)
dialog.Destroy()
def GenerateAddResourceFunction(self, config_name):
@@ -2251,8 +2261,10 @@
dialog.SetPouElementNames(self.Controler.GetProjectPouVariables())
if dialog.ShowModal() == wx.ID_OK:
value = dialog.GetValue()
- self.Controler.ProjectAddConfigurationResource(config_name, value)
- self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE, INSTANCESTREE)
+ tagname = self.Controler.ProjectAddConfigurationResource(config_name, value)
+ if tagname is not None:
+ self._Refresh(TITLE, FILEMENU, EDITMENU, TYPESTREE, INSTANCESTREE)
+ self.EditProjectElement(ITEM_RESOURCE, tagname)
dialog.Destroy()
return OnAddResourceMenu
@@ -2264,15 +2276,6 @@
self._Refresh(TITLE, TOOLBAR, FILEMENU, EDITMENU, TYPESTREE, LIBRARYTREE)
return OnChangePouTypeMenu
- def OnCreatePouFromMenu(self, event):
- selected = self.TypesTree.GetSelection()
- if self.TypesTree.GetPyData(selected) == ITEM_POU:
- dialog = PouNameDialog(self, _("Please enter POU name"), _("Create a new POU from"), "", wx.OK|wx.CANCEL)
- dialog.SetPouNames(self.Controler.GetProjectPouNames())
- if dialog.ShowModal() == wx.ID_OK:
- self.Controler.ProjectCreatePouFrom(dialog.GetValue(), self.TypesTree.GetItemText(selected))
- self._Refresh(TITLE, TOOLBAR, FILEMENU, EDITMENU, TYPESTREE, LIBRARYTREE)
-
def OnCopyPou(self, event):
selected = self.TypesTree.GetSelection()
pou_name = self.TypesTree.GetItemText(selected)
@@ -2735,7 +2738,7 @@
size=wx.Size(0, 0), style=wx.TAB_TRAVERSAL)
self.staticText1 = wx.StaticText(id=ID_SCALINGPANELSTATICTEXT1,
- label=_('X Scale:'), name='staticText1', parent=self,
+ label=_('Horizontal:'), name='staticText1', parent=self,
pos=wx.Point(0, 0), size=wx.DefaultSize, style=0)
self.XScale = wx.SpinCtrl(id=ID_SCALINGPANELXSCALE,
@@ -2743,7 +2746,7 @@
size=wx.Size(0, 24), style=0, min=0, max=2**16)
self.staticText2 = wx.StaticText(id=ID_SCALINGPANELSTATICTEXT2,
- label=_('Y Scale:'), name='staticText2', parent=self,
+ label=_('Vertical:'), name='staticText2', parent=self,
pos=wx.Point(0, 0), size=wx.DefaultSize, style=0)
self.YScale = wx.SpinCtrl(id=ID_SCALINGPANELYSCALE,
@@ -3008,7 +3011,7 @@
size=wx.Size(0, 24), style=0, min=0, max=2**16)
self.staticText15 = wx.StaticText(id=ID_PROJECTDIALOGSTATICTEXT15,
- label=_('Scaling:'), name='staticText15', parent=self.GraphicsPanel,
+ label=_('Grid Resolution:'), name='staticText15', parent=self.GraphicsPanel,
pos=wx.Point(0, 0), size=wx.DefaultSize, style=0)
self.ScalingNotebook = wx.Notebook(id=ID_PROJECTDIALOGSCALINGNOTEBOOK,
--- a/i18n/PLCOpenEditor_fr_FR.po Fri Sep 09 17:19:35 2011 +0200
+++ b/i18n/PLCOpenEditor_fr_FR.po Tue Sep 13 13:01:04 2011 +0200
@@ -7,15 +7,16 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-12-16 10:48+0100\n"
-"PO-Revision-Date: 2009-12-16 13:35+0100\n"
-"Last-Translator: \n"
+"POT-Creation-Date: 2011-09-13 12:41+0200\n"
+"PO-Revision-Date: 2011-09-13 12:55+0100\n"
+"Last-Translator: Laurent BESSARD <laurent.bessard@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../PLCOpenEditor.py:4345
+#: ../PLCOpenEditor.py:4406
msgid ""
"\n"
"An error has occurred.\n"
@@ -37,53 +38,53 @@
"\n"
"Erreur:\n"
-#: ../VariablePanel.py:71
+#: ../VariablePanel.py:72
msgid " External"
msgstr " Externe"
-#: ../VariablePanel.py:70
+#: ../VariablePanel.py:71
msgid " InOut"
msgstr " Entrée-Sortie"
-#: ../VariablePanel.py:70
+#: ../VariablePanel.py:71
msgid " Input"
msgstr " Entrée"
-#: ../VariablePanel.py:71
+#: ../VariablePanel.py:72
msgid " Local"
msgstr " Locale"
-#: ../VariablePanel.py:70
+#: ../VariablePanel.py:71
msgid " Output"
msgstr " Sortie"
-#: ../VariablePanel.py:72
+#: ../VariablePanel.py:73
msgid " Temp"
msgstr " Temporaire"
-#: ../PLCOpenEditor.py:4355
+#: ../PLCOpenEditor.py:4416
msgid " : "
msgstr " : "
-#: ../PLCOpenEditor.py:3294
-#: ../PLCOpenEditor.py:3457
-#: ../PLCOpenEditor.py:3601
+#: ../PLCOpenEditor.py:3332
+#: ../PLCOpenEditor.py:3495
+#: ../PLCOpenEditor.py:3639
#: ../dialogs/SFCTransitionDialog.py:206
#, python-format
msgid " and %s"
msgstr " et %s"
-#: ../plcopen/plcopen.py:907
+#: ../plcopen/plcopen.py:926
#, python-format
msgid "\"%s\" Data Type doesn't exist !!!"
msgstr "Le type de donnée \"%s\" n'existe pas !!!"
-#: ../plcopen/plcopen.py:925
+#: ../plcopen/plcopen.py:944
#, python-format
msgid "\"%s\" POU already exists !!!"
msgstr "Le POU \"%s\" existe déjà !!!"
-#: ../plcopen/plcopen.py:946
+#: ../plcopen/plcopen.py:965
#, python-format
msgid "\"%s\" POU doesn't exist !!!"
msgstr "Le POU \"%s\" n'existe pas !!!"
@@ -93,8 +94,8 @@
msgid "\"%s\" can't use itself!"
msgstr "\"%s\" ne peut pas s'utiliser lui-même !"
-#: ../PLCOpenEditor.py:1404
-#: ../PLCOpenEditor.py:1424
+#: ../PLCOpenEditor.py:1422
+#: ../PLCOpenEditor.py:1442
#, python-format
msgid "\"%s\" config already exists!"
msgstr "La configuration \"%s\" existe déjà !"
@@ -104,41 +105,42 @@
msgid "\"%s\" configuration already exists !!!"
msgstr "La configuration \"%s\" existe déjà !!!"
-#: ../PLCOpenEditor.py:1358
-#: ../PLCOpenEditor.py:3156
+#: ../PLCOpenEditor.py:1376
+#: ../PLCOpenEditor.py:3194
#, python-format
msgid "\"%s\" data type already exists!"
msgstr "Le type de données \"%s\" existe déjà !"
-#: ../PLCControler.py:1704
-#: ../PLCControler.py:1708
+#: ../PLCControler.py:1786
+#: ../PLCControler.py:1790
#, python-format
msgid "\"%s\" element can't be pasted here!!!"
msgstr "L'élément \"%s\" ne peut être collé ici !!!"
-#: ../PLCOpenEditor.py:3476
-#: ../PLCOpenEditor.py:3620
+#: ../PLCOpenEditor.py:3514
+#: ../PLCOpenEditor.py:3658
#: ../Viewer.py:250
-#: ../TextViewer.py:231
+#: ../TextViewer.py:245
+#: ../TextViewer.py:262
#: ../dialogs/ConnectionDialog.py:215
#: ../dialogs/FBDBlockDialog.py:260
#, python-format
msgid "\"%s\" element for this pou already exists!"
msgstr "Un élément \"%s\" existe déjà dans ce POU !"
-#: ../plcopen/structures.py:97
+#: ../plcopen/structures.py:96
#, python-format
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"
-#: ../PLCOpenEditor.py:1349
-#: ../PLCOpenEditor.py:3152
-#: ../PLCOpenEditor.py:3305
-#: ../PLCOpenEditor.py:3468
-#: ../PLCOpenEditor.py:3612
-#: ../PLCOpenEditor.py:3683
-#: ../PLCOpenEditor.py:3746
-#: ../VariablePanel.py:714
+#: ../PLCOpenEditor.py:1367
+#: ../PLCOpenEditor.py:3190
+#: ../PLCOpenEditor.py:3343
+#: ../PLCOpenEditor.py:3506
+#: ../PLCOpenEditor.py:3650
+#: ../PLCOpenEditor.py:3721
+#: ../PLCOpenEditor.py:3784
+#: ../VariablePanel.py:735
#: ../dialogs/ConnectionDialog.py:207
#: ../dialogs/FBDBlockDialog.py:252
#: ../dialogs/FBDVariableDialog.py:268
@@ -156,25 +158,25 @@
msgid "\"%s\" is already used by \"%s\"!"
msgstr "\"%s\" est déjà utilisé par \"%s\" !"
-#: ../plcopen/plcopen.py:2366
+#: ../plcopen/plcopen.py:2386
#, python-format
msgid "\"%s\" is an invalid value!"
msgstr "\"%s\" n'est pas une valeur valide !"
-#: ../PLCOpenEditor.py:2637
-#: ../PLCOpenEditor.py:2665
+#: ../PLCOpenEditor.py:2673
+#: ../PLCOpenEditor.py:2702
#, python-format
msgid "\"%s\" is not a valid folder!"
msgstr "\"%s\" n'est pas un répertoire valide !"
-#: ../PLCOpenEditor.py:1347
-#: ../PLCOpenEditor.py:3148
-#: ../PLCOpenEditor.py:3301
-#: ../PLCOpenEditor.py:3464
-#: ../PLCOpenEditor.py:3608
-#: ../PLCOpenEditor.py:3679
-#: ../PLCOpenEditor.py:3742
-#: ../VariablePanel.py:709
+#: ../PLCOpenEditor.py:1365
+#: ../PLCOpenEditor.py:3186
+#: ../PLCOpenEditor.py:3339
+#: ../PLCOpenEditor.py:3502
+#: ../PLCOpenEditor.py:3646
+#: ../PLCOpenEditor.py:3717
+#: ../PLCOpenEditor.py:3780
+#: ../VariablePanel.py:730
#: ../dialogs/ConnectionDialog.py:203
#: ../dialogs/FBDBlockDialog.py:248
#: ../dialogs/PouNameDialog.py:59
@@ -185,18 +187,19 @@
msgid "\"%s\" is not a valid identifier!"
msgstr "\"%s\" n'est pas un identifiant valide !"
-#: ../PLCOpenEditor.py:283
-#: ../PLCOpenEditor.py:2302
+#: ../PLCOpenEditor.py:288
#: ../PLCOpenEditor.py:2322
+#: ../PLCOpenEditor.py:2342
#, python-format
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é !"
-#: ../PLCOpenEditor.py:1367
-#: ../PLCOpenEditor.py:3309
+#: ../PLCOpenEditor.py:1385
+#: ../PLCOpenEditor.py:3347
#: ../Viewer.py:248
#: ../Viewer.py:274
-#: ../TextViewer.py:229
+#: ../TextViewer.py:243
+#: ../TextViewer.py:260
#: ../dialogs/ConnectionDialog.py:211
#: ../dialogs/FBDBlockDialog.py:256
#, python-format
@@ -238,7 +241,7 @@
"\"%s\" n'est pas une dimension de tableau valide !\n"
"La valeur de droite doit être supérieur à celle de gauche."
-#: ../PLCControler.py:629
+#: ../PLCControler.py:634
#, python-format
msgid "%s \"%s\" can't be pasted as a %s."
msgstr "Le %s \"%s\" ne peut être collé en tant que %s."
@@ -248,56 +251,56 @@
msgid "%s Graphics"
msgstr "Graphique %s"
-#: ../plcopen/plcopen.py:1465
-#: ../plcopen/plcopen.py:1475
-#: ../plcopen/plcopen.py:1485
-#: ../plcopen/plcopen.py:1495
+#: ../plcopen/plcopen.py:1484
+#: ../plcopen/plcopen.py:1494
#: ../plcopen/plcopen.py:1504
+#: ../plcopen/plcopen.py:1514
+#: ../plcopen/plcopen.py:1523
#, python-format
msgid "%s body don't have instances!"
msgstr "Le code d'un %s n'a pas d'instances !"
-#: ../plcopen/plcopen.py:1527
-#: ../plcopen/plcopen.py:1534
+#: ../plcopen/plcopen.py:1546
+#: ../plcopen/plcopen.py:1553
#, python-format
msgid "%s body don't have text!"
msgstr "Le code d'un %s n'a pas de texte !"
-#: ../PLCOpenEditor.py:4333
-#: ../PLCOpenEditor.py:4335
-#: ../PLCOpenEditor.py:4336
+#: ../PLCOpenEditor.py:4394
+#: ../PLCOpenEditor.py:4396
+#: ../PLCOpenEditor.py:4397
msgid ", "
msgstr ", "
-#: ../PLCOpenEditor.py:3296
-#: ../PLCOpenEditor.py:3459
-#: ../PLCOpenEditor.py:3603
+#: ../PLCOpenEditor.py:3334
+#: ../PLCOpenEditor.py:3497
+#: ../PLCOpenEditor.py:3641
#: ../dialogs/SFCTransitionDialog.py:208
#, python-format
msgid ", %s"
msgstr ", %s"
-#: ../PLCOpenEditor.py:4331
+#: ../PLCOpenEditor.py:4392
msgid ". "
msgstr ". "
-#: ../PLCOpenEditor.py:1370
-#: ../PLCOpenEditor.py:1412
-#: ../PLCOpenEditor.py:1432
-#: ../PLCOpenEditor.py:3313
-#: ../PLCOpenEditor.py:3691
-#: ../PLCOpenEditor.py:3754
+#: ../PLCOpenEditor.py:1388
+#: ../PLCOpenEditor.py:1430
+#: ../PLCOpenEditor.py:1450
+#: ../PLCOpenEditor.py:3351
+#: ../PLCOpenEditor.py:3729
+#: ../PLCOpenEditor.py:3792
#, python-format
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 ?"
-#: ../PLCOpenEditor.py:1383
-#: ../PLCOpenEditor.py:1394
-#: ../PLCOpenEditor.py:3472
-#: ../PLCOpenEditor.py:3616
-#: ../PLCOpenEditor.py:3687
-#: ../PLCOpenEditor.py:3750
-#: ../VariablePanel.py:719
+#: ../PLCOpenEditor.py:1401
+#: ../PLCOpenEditor.py:1412
+#: ../PLCOpenEditor.py:3510
+#: ../PLCOpenEditor.py:3654
+#: ../PLCOpenEditor.py:3725
+#: ../PLCOpenEditor.py:3788
+#: ../VariablePanel.py:740
#: ../dialogs/PouNameDialog.py:67
#: ../dialogs/SFCStepDialog.py:187
#: ../dialogs/SFCStepNameDialog.py:69
@@ -305,24 +308,24 @@
msgid "A POU named \"%s\" already exists!"
msgstr "Un POU nommé \"%s\" existe déjà !"
-#: ../VariablePanel.py:1201
+#: ../VariablePanel.py:1239
msgid "A location must be selected!"
msgstr "Une adresse doit être sélectionné !"
-#: ../PLCOpenEditor.py:1385
-#: ../PLCOpenEditor.py:1396
-#: ../VariablePanel.py:724
+#: ../PLCOpenEditor.py:1403
+#: ../PLCOpenEditor.py:1414
+#: ../VariablePanel.py:745
#: ../dialogs/SFCStepDialog.py:191
#: ../dialogs/SFCStepNameDialog.py:73
#, python-format
msgid "A variable with \"%s\" as name already exists in this pou!"
msgstr "Une variable nommée \"%s\" existe déjà dans ce POU !"
-#: ../PLCOpenEditor.py:2494
+#: ../PLCOpenEditor.py:2514
msgid "About"
msgstr "A propos"
-#: ../PLCOpenEditor.py:2397
+#: ../PLCOpenEditor.py:2417
msgid "About PLCOpenEditor"
msgstr "A propos de PLCOpenEditor"
@@ -335,15 +338,15 @@
msgid "Action"
msgstr "Action"
-#: ../PLCOpenEditor.py:3592
+#: ../PLCOpenEditor.py:3630
msgid "Action Name"
msgstr "Nom de l'action"
-#: ../PLCOpenEditor.py:3559
+#: ../PLCOpenEditor.py:3597
msgid "Action Name:"
msgstr "Nom de l'action :"
-#: ../plcopen/plcopen.py:1213
+#: ../plcopen/plcopen.py:1232
#, python-format
msgid "Action with name %s doesn't exist!"
msgstr "L'action nommée %s n'existe pas !"
@@ -356,30 +359,30 @@
msgid "Actions:"
msgstr "Actions :"
-#: ../VariablePanel.py:483
+#: ../VariablePanel.py:499
#: ../dialogs/ActionBlockDialog.py:274
#: ../DataTypeEditor.py:539
msgid "Add"
msgstr "Ajouter"
-#: ../PLCOpenEditor.py:1589
-#: ../PLCOpenEditor.py:1672
+#: ../PLCOpenEditor.py:1606
+#: ../PLCOpenEditor.py:1689
msgid "Add Action"
msgstr "Ajouter une action"
-#: ../PLCOpenEditor.py:1655
+#: ../PLCOpenEditor.py:1672
msgid "Add Configuration"
msgstr "Ajouter une configuration"
-#: ../PLCOpenEditor.py:1635
+#: ../PLCOpenEditor.py:1652
msgid "Add DataType"
msgstr "Ajouter un type de donnée"
-#: ../Viewer.py:436
+#: ../Viewer.py:401
msgid "Add Divergence Branch"
msgstr "Ajouter une branche à la divergence"
-#: ../PLCOpenEditor.py:328
+#: ../PLCOpenEditor.py:333
msgid "Add Element"
msgstr "Ajouter un élément"
@@ -387,12 +390,12 @@
msgid "Add Instance"
msgstr "Ajouter une instance"
-#: ../PLCOpenEditor.py:1642
+#: ../PLCOpenEditor.py:1659
msgid "Add POU"
msgstr "Ajouter un POU"
-#: ../PLCOpenEditor.py:1618
-#: ../PLCOpenEditor.py:1683
+#: ../PLCOpenEditor.py:1635
+#: ../PLCOpenEditor.py:1700
msgid "Add Resource"
msgstr "Ajouter une resource"
@@ -400,16 +403,16 @@
msgid "Add Task"
msgstr "Ajouter une tâche"
-#: ../PLCOpenEditor.py:1586
-#: ../PLCOpenEditor.py:1661
+#: ../PLCOpenEditor.py:1603
+#: ../PLCOpenEditor.py:1678
msgid "Add Transition"
msgstr "Ajouter une transition"
-#: ../Viewer.py:431
+#: ../Viewer.py:396
msgid "Add Wire Segment"
msgstr "Ajouter un segment au fil"
-#: ../PLCOpenEditor.py:2177
+#: ../PLCOpenEditor.py:2194
msgid "Add a new data type"
msgstr "Ajouter un nouveau type de données"
@@ -417,7 +420,7 @@
msgid "Add a new initial step"
msgstr "Ajouter une nouvelle étape initiale"
-#: ../Viewer.py:2032
+#: ../Viewer.py:2020
#: ../SFCViewer.py:698
msgid "Add a new jump"
msgstr "Ajouter un nouveau renvoi"
@@ -426,11 +429,11 @@
msgid "Add a new step"
msgstr "Ajouter une nouvelle étape"
-#: ../PLCOpenEditor.py:2221
+#: ../PLCOpenEditor.py:2246
msgid "Add new configuration"
msgstr "Ajouter une nouvelle configuration"
-#: ../PLCOpenEditor.py:2232
+#: ../PLCOpenEditor.py:2259
msgid "Add new resource"
msgstr "Ajouter une nouvelle resource"
@@ -438,17 +441,17 @@
msgid "Addition"
msgstr "Addition"
-#: ../plcopen/structures.py:222
+#: ../plcopen/structures.py:221
msgid "Additional function blocks"
msgstr "Blocs fonctionnels additionnels"
-#: ../Viewer.py:445
+#: ../Viewer.py:410
msgid "Alignment"
msgstr "Alignement"
-#: ../VariablePanel.py:69
-#: ../VariablePanel.py:1018
-#: ../VariablePanel.py:1135
+#: ../VariablePanel.py:70
+#: ../VariablePanel.py:1056
+#: ../VariablePanel.py:1173
msgid "All"
msgstr "Toutes"
@@ -473,11 +476,12 @@
msgid "Arithmetic"
msgstr "Arithmétique"
+#: ../VariablePanel.py:798
#: ../DataTypeEditor.py:236
msgid "Array"
msgstr "Tableau"
-#: ../plcopen/iec_std.csv:50
+#: ../plcopen/iec_std.csv:39
msgid "Assignment"
msgstr "Assignation"
@@ -485,11 +489,11 @@
msgid "At least a variable or an expression must be selected!"
msgstr "Au moins une variable ou une expression doit être sélectionné !"
-#: ../PLCOpenEditor.py:2947
+#: ../PLCOpenEditor.py:2985
msgid "Author"
msgstr "Auteur"
-#: ../PLCOpenEditor.py:2932
+#: ../PLCOpenEditor.py:2970
msgid "Author Name (optional):"
msgstr "Nom de l'auteur (optionel) :"
@@ -499,36 +503,36 @@
msgid "Base Type:"
msgstr "Type de base :"
-#: ../VariablePanel.py:758
+#: ../VariablePanel.py:778
#: ../DataTypeEditor.py:801
msgid "Base Types"
msgstr "Types de base"
-#: ../plcopen/iec_std.csv:59
+#: ../plcopen/iec_std.csv:70
msgid "Binary selection (1 of 2)"
msgstr "Selection binaire (sélectionne 1 sur 2)"
-#: ../plcopen/iec_std.csv:51
+#: ../plcopen/iec_std.csv:62
msgid "Bit-shift"
msgstr "Décalage de bit"
-#: ../plcopen/iec_std.csv:55
+#: ../plcopen/iec_std.csv:66
msgid "Bitwise"
msgstr "Bit à bit"
-#: ../plcopen/iec_std.csv:55
+#: ../plcopen/iec_std.csv:66
msgid "Bitwise AND"
msgstr "ET bit à bit"
-#: ../plcopen/iec_std.csv:56
+#: ../plcopen/iec_std.csv:67
msgid "Bitwise OR"
msgstr "OU bit à bit"
-#: ../plcopen/iec_std.csv:57
+#: ../plcopen/iec_std.csv:68
msgid "Bitwise XOR"
msgstr "OU exclusif bit à bit"
-#: ../plcopen/iec_std.csv:58
+#: ../plcopen/iec_std.csv:69
msgid "Bitwise inverting"
msgstr "Inversion bit à bit"
@@ -536,72 +540,72 @@
msgid "Block Properties"
msgstr "Propriétés du bloc"
-#: ../PLCOpenEditor.py:1896
+#: ../PLCOpenEditor.py:1913
#: ../dialogs/FBDBlockDialog.py:268
msgid "Block Types"
msgstr "Types de blocs"
-#: ../Viewer.py:403
+#: ../Viewer.py:368
msgid "Bottom"
msgstr "Bas"
-#: ../VariablePanel.py:1077
+#: ../VariablePanel.py:1115
msgid "Browse Locations"
msgstr "Naviger dans les adresses"
-#: ../PLCOpenEditor.py:1837
+#: ../PLCOpenEditor.py:1854
msgid "CSV Log"
msgstr "Log CVS"
-#: ../plcopen/plcopen.py:1407
-#: ../plcopen/plcopen.py:1421
-#: ../plcopen/plcopen.py:1442
-#: ../plcopen/plcopen.py:1458
+#: ../plcopen/plcopen.py:1426
+#: ../plcopen/plcopen.py:1440
+#: ../plcopen/plcopen.py:1461
+#: ../plcopen/plcopen.py:1477
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 !"
-#: ../VariablePanel.py:311
+#: ../VariablePanel.py:327
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:2632
+#: ../PLCOpenEditor.py:2668
#, python-format
msgid "Can't generate program to file %s!"
msgstr "Le programme n'a pu être généré dans le fichier \"%s\" !"
-#: ../VariablePanel.py:309
+#: ../VariablePanel.py:325
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:2663
+#: ../PLCOpenEditor.py:2700
#, python-format
msgid "Can't save project to file %s!"
msgstr "Le projet n'a pu être sauvé dans le fichier \"%s\" !"
-#: ../Viewer.py:394
+#: ../Viewer.py:359
msgid "Center"
msgstr "Centre"
-#: ../PLCOpenEditor.py:1607
+#: ../PLCOpenEditor.py:1624
msgid "Change POU Type To"
msgstr "Changer le type du POU pour"
-#: ../plcopen/iec_std.csv:70
+#: ../plcopen/iec_std.csv:81
msgid "Character string"
msgstr "Chaîne de caractères"
-#: ../PLCOpenEditor.py:2598
-#: ../PLCOpenEditor.py:2622
-#: ../PLCOpenEditor.py:2657
+#: ../PLCOpenEditor.py:2630
+#: ../PLCOpenEditor.py:2658
+#: ../PLCOpenEditor.py:2694
msgid "Choose a file"
msgstr "Choisissez un fichier"
-#: ../VariablePanel.py:52
#: ../VariablePanel.py:53
+#: ../VariablePanel.py:54
msgid "Class"
msgstr "Classe"
-#: ../VariablePanel.py:475
+#: ../VariablePanel.py:491
msgid "Class Filter:"
msgstr "Filtre de classe :"
@@ -609,48 +613,48 @@
msgid "Class:"
msgstr "Classe :"
-#: ../PLCOpenEditor.py:367
+#: ../PLCOpenEditor.py:372
msgid "Clear Errors\tCTRL+K"
msgstr "Effacer les erreurs\tCTRL+K"
-#: ../Viewer.py:441
+#: ../Viewer.py:406
msgid "Clear Execution Order"
msgstr "Effacer l'ordre d'exécution"
-#: ../PLCOpenEditor.py:2522
+#: ../PLCOpenEditor.py:2548
msgid "Close Application"
msgstr "Fermer l'application"
-#: ../PLCOpenEditor.py:871
-#: ../PLCOpenEditor.py:2450
+#: ../PLCOpenEditor.py:887
+#: ../PLCOpenEditor.py:2470
msgid "Close Project"
msgstr "Fermer le projet"
-#: ../PLCOpenEditor.py:2448
+#: ../PLCOpenEditor.py:2468
msgid "Close Tab\tCTRL+W"
msgstr "Fermer l'onglet\tCTRL+W"
-#: ../LDViewer.py:478
+#: ../LDViewer.py:505
msgid "Comment"
msgstr "Commentaire"
-#: ../PLCOpenEditor.py:2916
+#: ../PLCOpenEditor.py:2954
msgid "Company Name (required):"
msgstr "Nom de l'entreprise (obligatoire) :"
-#: ../PLCOpenEditor.py:2924
+#: ../PLCOpenEditor.py:2962
msgid "Company URL (optional):"
msgstr "URL de l'entreprise (optionel) :"
-#: ../plcopen/iec_std.csv:64
+#: ../plcopen/iec_std.csv:75
msgid "Comparison"
msgstr "Comparaison"
-#: ../plcopen/iec_std.csv:74
+#: ../plcopen/iec_std.csv:85
msgid "Concatenation"
msgstr "Concaténation"
-#: ../PLCOpenEditor.py:338
+#: ../PLCOpenEditor.py:343
msgid "Configuration"
msgstr "Configuration"
@@ -674,11 +678,11 @@
msgid "Connectors:"
msgstr "Connecteurs :"
-#: ../VariablePanel.py:59
+#: ../VariablePanel.py:60
msgid "Constant"
msgstr "Constante"
-#: ../PLCOpenEditor.py:3006
+#: ../PLCOpenEditor.py:3044
msgid "Content Description (optional):"
msgstr "Description du contenu (optionel) :"
@@ -702,11 +706,11 @@
msgid "Conversion to time-of-day"
msgstr "Conversion en heure de la journée"
-#: ../PLCOpenEditor.py:323
+#: ../PLCOpenEditor.py:328
msgid "Copy\tCTRL+C"
msgstr "Copier\tCtrl+C"
-#: ../PLCOpenEditor.py:1594
+#: ../PLCOpenEditor.py:1611
msgid "Copy POU"
msgstr "Copier ce POU"
@@ -714,59 +718,55 @@
msgid "Cosine"
msgstr "Cosinus"
-#: ../PLCControler.py:615
-#: ../PLCControler.py:647
+#: ../PLCControler.py:620
+#: ../PLCControler.py:652
msgid "Couldn't paste non-POU object."
msgstr "Impossible de coller autre chose qu'un POU."
-#: ../PLCOpenEditor.py:3234
+#: ../PLCOpenEditor.py:3272
msgid "Create a new POU"
msgstr "Créer un nouveau POU"
-#: ../PLCOpenEditor.py:2253
-msgid "Create a new POU from"
-msgstr "Créer un nouveau POU à partir de"
-
-#: ../PLCOpenEditor.py:3555
+#: ../PLCOpenEditor.py:3593
msgid "Create a new action"
msgstr "Créer une nouvelle action"
-#: ../PLCOpenEditor.py:215
+#: ../PLCOpenEditor.py:220
msgid "Create a new action block"
msgstr "Créer un nouveau bloc d'actions"
-#: ../PLCOpenEditor.py:170
-#: ../PLCOpenEditor.py:197
-#: ../PLCOpenEditor.py:227
+#: ../PLCOpenEditor.py:175
+#: ../PLCOpenEditor.py:202
+#: ../PLCOpenEditor.py:232
msgid "Create a new block"
msgstr "Créer un nouveau bloc"
-#: ../PLCOpenEditor.py:191
+#: ../PLCOpenEditor.py:196
msgid "Create a new branch"
msgstr "Créer une nouvelle branche"
-#: ../PLCOpenEditor.py:185
+#: ../PLCOpenEditor.py:190
msgid "Create a new coil"
msgstr "Créer un nouveau relai"
-#: ../PLCOpenEditor.py:164
-#: ../PLCOpenEditor.py:176
-#: ../PLCOpenEditor.py:203
+#: ../PLCOpenEditor.py:169
+#: ../PLCOpenEditor.py:181
+#: ../PLCOpenEditor.py:208
msgid "Create a new comment"
msgstr "Créer un nouveau copmmentaire"
-#: ../PLCOpenEditor.py:173
-#: ../PLCOpenEditor.py:200
-#: ../PLCOpenEditor.py:230
+#: ../PLCOpenEditor.py:178
+#: ../PLCOpenEditor.py:205
+#: ../PLCOpenEditor.py:235
msgid "Create a new connection"
msgstr "Créer une nouvelle connexion"
-#: ../PLCOpenEditor.py:188
-#: ../PLCOpenEditor.py:236
+#: ../PLCOpenEditor.py:193
+#: ../PLCOpenEditor.py:241
msgid "Create a new contact"
msgstr "Créer un nouveau contact"
-#: ../PLCOpenEditor.py:218
+#: ../PLCOpenEditor.py:223
msgid "Create a new divergence"
msgstr "Créer une nouvelle divergence"
@@ -774,43 +774,55 @@
msgid "Create a new divergence or convergence"
msgstr "Créer une nouvelle divergence ou convergence"
-#: ../PLCOpenEditor.py:206
+#: ../PLCOpenEditor.py:211
msgid "Create a new initial step"
msgstr "Créer une nouvelle étape initiale"
-#: ../PLCOpenEditor.py:221
+#: ../PLCOpenEditor.py:226
msgid "Create a new jump"
msgstr "Créer un nouveau renvoi"
-#: ../PLCOpenEditor.py:179
-#: ../PLCOpenEditor.py:233
+#: ../PLCOpenEditor.py:184
+#: ../PLCOpenEditor.py:238
msgid "Create a new power rail"
msgstr "Créer une nouvelle barre d'alimentation"
-#: ../PLCOpenEditor.py:182
+#: ../PLCOpenEditor.py:187
msgid "Create a new rung"
msgstr "Créer un nouvel échelon"
-#: ../PLCOpenEditor.py:209
+#: ../PLCOpenEditor.py:214
msgid "Create a new step"
msgstr "Créer une nouvelle étape"
-#: ../PLCOpenEditor.py:212
-#: ../PLCOpenEditor.py:3411
+#: ../PLCOpenEditor.py:217
+#: ../PLCOpenEditor.py:3449
msgid "Create a new transition"
msgstr "Créer une nouvelle transition"
-#: ../PLCOpenEditor.py:167
-#: ../PLCOpenEditor.py:194
-#: ../PLCOpenEditor.py:224
+#: ../PLCOpenEditor.py:172
+#: ../PLCOpenEditor.py:199
+#: ../PLCOpenEditor.py:229
msgid "Create a new variable"
msgstr "Créer une nouvelle variable"
-#: ../PLCOpenEditor.py:321
+#: ../PLCOpenEditor.py:326
msgid "Cut\tCTRL+X"
msgstr "Couper\tCTRL+X"
-#: ../PLCOpenEditor.py:330
+#: ../plcopen/iec_std.csv:42
+#: ../plcopen/iec_std.csv:44
+#: ../plcopen/iec_std.csv:46
+#: ../plcopen/iec_std.csv:50
+#: ../plcopen/iec_std.csv:52
+#: ../plcopen/iec_std.csv:54
+#: ../plcopen/iec_std.csv:56
+#: ../plcopen/iec_std.csv:58
+#: ../plcopen/iec_std.csv:60
+msgid "DEPRECATED"
+msgstr ""
+
+#: ../PLCOpenEditor.py:335
msgid "Data Type"
msgstr "Type de donnée"
@@ -822,41 +834,45 @@
msgid "Data type conversion"
msgstr "Conversion entre types de donnée"
-#: ../plcopen/iec_std.csv:36
+#: ../plcopen/iec_std.csv:44
+#: ../plcopen/iec_std.csv:45
msgid "Date addition"
msgstr "Addition de dates"
-#: ../plcopen/iec_std.csv:44
-#: ../plcopen/iec_std.csv:45
+#: ../plcopen/iec_std.csv:56
+#: ../plcopen/iec_std.csv:57
+#: ../plcopen/iec_std.csv:58
+#: ../plcopen/iec_std.csv:59
msgid "Date and time subtraction"
msgstr "Soustraction entre horodatage"
-#: ../plcopen/iec_std.csv:41
+#: ../plcopen/iec_std.csv:50
+#: ../plcopen/iec_std.csv:51
msgid "Date subtraction"
msgstr "Soustraction de date"
-#: ../Viewer.py:2885
+#: ../Viewer.py:2873
#, python-format
msgid "Debug: %s"
msgstr "Déboggage : %s"
-#: ../PLCOpenEditor.py:618
+#: ../PLCOpenEditor.py:623
msgid "Debugger"
msgstr "Déboggueur"
-#: ../PLCOpenEditor.py:342
-#: ../PLCOpenEditor.py:1612
-#: ../PLCOpenEditor.py:1621
-#: ../PLCOpenEditor.py:1627
-#: ../PLCOpenEditor.py:4121
-#: ../Viewer.py:450
-#: ../VariablePanel.py:488
+#: ../PLCOpenEditor.py:347
+#: ../PLCOpenEditor.py:1629
+#: ../PLCOpenEditor.py:1638
+#: ../PLCOpenEditor.py:1644
+#: ../PLCOpenEditor.py:4164
+#: ../Viewer.py:415
+#: ../VariablePanel.py:504
#: ../dialogs/ActionBlockDialog.py:279
#: ../DataTypeEditor.py:544
msgid "Delete"
msgstr "Supprimer"
-#: ../Viewer.py:438
+#: ../Viewer.py:403
msgid "Delete Divergence Branch"
msgstr "Supprimer une branche de divergence"
@@ -868,7 +884,7 @@
msgid "Delete Task"
msgstr "Supprimer une tâche"
-#: ../Viewer.py:433
+#: ../Viewer.py:398
msgid "Delete Wire Segment"
msgstr "Supprimer un segment de fil"
@@ -877,7 +893,7 @@
msgid "Delete item"
msgstr "Supprimer un élément"
-#: ../plcopen/iec_std.csv:77
+#: ../plcopen/iec_std.csv:88
msgid "Deletion (within)"
msgstr "Suppression (au milieu)"
@@ -885,7 +901,7 @@
msgid "Derivation Type:"
msgstr "Type de dérivation :"
-#: ../plcopen/structures.py:236
+#: ../plcopen/structures.py:235
msgid ""
"Derivative\n"
"The derivative function block produces an output XOUT proportional to the rate of change of the input XIN."
@@ -897,7 +913,7 @@
msgid "Dimensions:"
msgstr "Dimensions :"
-#: ../VariablePanel.py:1094
+#: ../VariablePanel.py:1132
msgid "Direction:"
msgstr "Direction :"
@@ -905,24 +921,24 @@
msgid "Directly"
msgstr "Direct"
-#: ../PLCOpenEditor.py:306
+#: ../PLCOpenEditor.py:311
msgid "Display"
msgstr "Affichage"
-#: ../plcopen/iec_std.csv:46
+#: ../plcopen/iec_std.csv:36
msgid "Division"
msgstr "Division"
-#: ../VariablePanel.py:52
#: ../VariablePanel.py:53
+#: ../VariablePanel.py:54
msgid "Documentation"
msgstr "Documentation"
-#: ../PLCOpenEditor.py:2626
+#: ../PLCOpenEditor.py:2662
msgid "Done"
msgstr "Terminé"
-#: ../plcopen/structures.py:199
+#: ../plcopen/structures.py:198
msgid ""
"Down-counter\n"
"The down-counter can be used to signal when a count has reached zero, on counting down from a preset value."
@@ -934,11 +950,11 @@
msgid "Duration"
msgstr "Durée"
-#: ../PLCOpenEditor.py:305
+#: ../PLCOpenEditor.py:310
msgid "Edit"
msgstr "Editer"
-#: ../Viewer.py:448
+#: ../Viewer.py:413
msgid "Edit Block"
msgstr "Editer le block"
@@ -958,10 +974,10 @@
msgid "Edit action block properties"
msgstr "Editer les propriétés du block d'actions"
-#: ../Viewer.py:1857
-#: ../Viewer.py:1859
-#: ../Viewer.py:2358
-#: ../Viewer.py:2360
+#: ../Viewer.py:1845
+#: ../Viewer.py:1847
+#: ../Viewer.py:2346
+#: ../Viewer.py:2348
msgid "Edit comment"
msgstr "Editer le commentaire"
@@ -970,7 +986,7 @@
msgid "Edit item"
msgstr "Editer l'élément"
-#: ../Viewer.py:2323
+#: ../Viewer.py:2311
msgid "Edit jump target"
msgstr "Editer la cible du renvoi"
@@ -986,7 +1002,7 @@
msgid "Elements :"
msgstr "Eléments :"
-#: ../PLCOpenEditor.py:318
+#: ../PLCOpenEditor.py:323
msgid "Enable Undo/Redo"
msgstr "Activer Défaire/Refaire"
@@ -994,60 +1010,60 @@
msgid "Enumerated"
msgstr "Enumération"
-#: ../plcopen/iec_std.csv:66
+#: ../plcopen/iec_std.csv:77
msgid "Equal to"
msgstr "Egal à"
-#: ../PLCOpenEditor.py:865
-#: ../PLCOpenEditor.py:1370
-#: ../PLCOpenEditor.py:1407
-#: ../PLCOpenEditor.py:1412
-#: ../PLCOpenEditor.py:1427
-#: ../PLCOpenEditor.py:1432
-#: ../PLCOpenEditor.py:2280
-#: ../PLCOpenEditor.py:2633
-#: ../PLCOpenEditor.py:2638
-#: ../PLCOpenEditor.py:3052
-#: ../PLCOpenEditor.py:3144
-#: ../PLCOpenEditor.py:3148
-#: ../PLCOpenEditor.py:3152
-#: ../PLCOpenEditor.py:3156
-#: ../PLCOpenEditor.py:3297
-#: ../PLCOpenEditor.py:3301
-#: ../PLCOpenEditor.py:3305
-#: ../PLCOpenEditor.py:3309
-#: ../PLCOpenEditor.py:3460
-#: ../PLCOpenEditor.py:3464
-#: ../PLCOpenEditor.py:3468
-#: ../PLCOpenEditor.py:3472
-#: ../PLCOpenEditor.py:3476
-#: ../PLCOpenEditor.py:3604
-#: ../PLCOpenEditor.py:3608
-#: ../PLCOpenEditor.py:3612
-#: ../PLCOpenEditor.py:3616
-#: ../PLCOpenEditor.py:3620
-#: ../PLCOpenEditor.py:3675
-#: ../PLCOpenEditor.py:3679
-#: ../PLCOpenEditor.py:3683
-#: ../PLCOpenEditor.py:3687
-#: ../PLCOpenEditor.py:3738
-#: ../PLCOpenEditor.py:3742
-#: ../PLCOpenEditor.py:3746
-#: ../PLCOpenEditor.py:3750
-#: ../PLCOpenEditor.py:4053
-#: ../PLCOpenEditor.py:4356
-#: ../PLCOpenEditor.py:4366
-#: ../Viewer.py:369
-#: ../TextViewer.py:250
-#: ../LDViewer.py:628
-#: ../LDViewer.py:850
-#: ../LDViewer.py:854
-#: ../VariablePanel.py:358
-#: ../VariablePanel.py:709
-#: ../VariablePanel.py:714
-#: ../VariablePanel.py:719
-#: ../VariablePanel.py:724
-#: ../VariablePanel.py:1201
+#: ../PLCOpenEditor.py:881
+#: ../PLCOpenEditor.py:1388
+#: ../PLCOpenEditor.py:1425
+#: ../PLCOpenEditor.py:1430
+#: ../PLCOpenEditor.py:1445
+#: ../PLCOpenEditor.py:1450
+#: ../PLCOpenEditor.py:2300
+#: ../PLCOpenEditor.py:2669
+#: ../PLCOpenEditor.py:2674
+#: ../PLCOpenEditor.py:3090
+#: ../PLCOpenEditor.py:3182
+#: ../PLCOpenEditor.py:3186
+#: ../PLCOpenEditor.py:3190
+#: ../PLCOpenEditor.py:3194
+#: ../PLCOpenEditor.py:3335
+#: ../PLCOpenEditor.py:3339
+#: ../PLCOpenEditor.py:3343
+#: ../PLCOpenEditor.py:3347
+#: ../PLCOpenEditor.py:3498
+#: ../PLCOpenEditor.py:3502
+#: ../PLCOpenEditor.py:3506
+#: ../PLCOpenEditor.py:3510
+#: ../PLCOpenEditor.py:3514
+#: ../PLCOpenEditor.py:3642
+#: ../PLCOpenEditor.py:3646
+#: ../PLCOpenEditor.py:3650
+#: ../PLCOpenEditor.py:3654
+#: ../PLCOpenEditor.py:3658
+#: ../PLCOpenEditor.py:3713
+#: ../PLCOpenEditor.py:3717
+#: ../PLCOpenEditor.py:3721
+#: ../PLCOpenEditor.py:3725
+#: ../PLCOpenEditor.py:3776
+#: ../PLCOpenEditor.py:3780
+#: ../PLCOpenEditor.py:3784
+#: ../PLCOpenEditor.py:3788
+#: ../PLCOpenEditor.py:4091
+#: ../PLCOpenEditor.py:4417
+#: ../PLCOpenEditor.py:4427
+#: ../Viewer.py:334
+#: ../TextViewer.py:281
+#: ../LDViewer.py:665
+#: ../LDViewer.py:881
+#: ../LDViewer.py:885
+#: ../VariablePanel.py:374
+#: ../VariablePanel.py:730
+#: ../VariablePanel.py:735
+#: ../VariablePanel.py:740
+#: ../VariablePanel.py:745
+#: ../VariablePanel.py:1239
#: ../dialogs/ConnectionDialog.py:199
#: ../dialogs/ConnectionDialog.py:203
#: ../dialogs/ConnectionDialog.py:207
@@ -1061,8 +1077,8 @@
#: ../dialogs/FBDBlockDialog.py:260
#: ../dialogs/FBDVariableDialog.py:264
#: ../dialogs/FBDVariableDialog.py:268
-#: ../dialogs/ForceVariableDialog.py:92
-#: ../dialogs/ForceVariableDialog.py:96
+#: ../dialogs/ForceVariableDialog.py:170
+#: ../dialogs/ForceVariableDialog.py:174
#: ../dialogs/PouNameDialog.py:55
#: ../dialogs/PouNameDialog.py:59
#: ../dialogs/PouNameDialog.py:63
@@ -1099,7 +1115,7 @@
msgid "Execution Order:"
msgstr "Ordre d'exécution :"
-#: ../plcopen/iec_std.csv:49
+#: ../plcopen/iec_std.csv:38
msgid "Exponent"
msgstr "Exposant"
@@ -1111,24 +1127,24 @@
msgid "Expression:"
msgstr "Expression :"
-#: ../VariablePanel.py:71
+#: ../VariablePanel.py:72
msgid "External"
msgstr "Externe"
-#: ../PLCOpenEditor.py:2984
-#: ../PLCOpenEditor.py:3179
-#: ../PLCOpenEditor.py:3189
-#: ../PLCOpenEditor.py:3368
-#: ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3022
+#: ../PLCOpenEditor.py:3217
+#: ../PLCOpenEditor.py:3227
+#: ../PLCOpenEditor.py:3406
+#: ../PLCOpenEditor.py:3550
msgid "FBD"
msgstr "FBD"
-#: ../Viewer.py:428
+#: ../Viewer.py:393
#: ../dialogs/LDElementDialog.py:155
msgid "Falling Edge"
msgstr "Front descendant"
-#: ../plcopen/structures.py:189
+#: ../plcopen/structures.py:188
msgid ""
"Falling edge detector\n"
"The output produces a single pulse when a falling edge is detected."
@@ -1136,27 +1152,27 @@
"Détecteur de front descendant\n"
"La sortie produit une impulsion unique lorsqu'un front descendant est détecté."
-#: ../PLCOpenEditor.py:304
+#: ../PLCOpenEditor.py:309
msgid "File"
msgstr "Fichier"
-#: ../plcopen/iec_std.csv:79
+#: ../plcopen/iec_std.csv:90
msgid "Find position"
msgstr "Trouver la position"
-#: ../PLCOpenEditor.py:4184
-#: ../Viewer.py:1130
+#: ../PLCOpenEditor.py:4232
+#: ../Viewer.py:1095
msgid "Force value"
msgstr "Forcer la valeur"
-#: ../dialogs/ForceVariableDialog.py:77
+#: ../dialogs/ForceVariableDialog.py:155
msgid "Forcing Variable Value"
msgstr "Forcer la valeur de la variable"
-#: ../PLCOpenEditor.py:3052
-#: ../PLCOpenEditor.py:3297
-#: ../PLCOpenEditor.py:3460
-#: ../PLCOpenEditor.py:3604
+#: ../PLCOpenEditor.py:3090
+#: ../PLCOpenEditor.py:3335
+#: ../PLCOpenEditor.py:3498
+#: ../PLCOpenEditor.py:3642
#: ../dialogs/SFCTransitionDialog.py:209
#, python-format
msgid "Form isn't complete. %s must be filled!"
@@ -1171,16 +1187,16 @@
msgid "Form isn't complete. Valid block type must be selected!"
msgstr "Le formulaire est incomplet. Un type de bloc valide doit être sélectionné !"
-#: ../PLCOpenEditor.py:332
+#: ../PLCOpenEditor.py:337
msgid "Function"
msgstr "Fonction"
-#: ../PLCOpenEditor.py:334
-#: ../PLCOpenEditor.py:1602
+#: ../PLCOpenEditor.py:339
+#: ../PLCOpenEditor.py:1619
msgid "Function Block"
msgstr "Bloc fonctionnel"
-#: ../VariablePanel.py:786
+#: ../VariablePanel.py:810
msgid "Function Block Types"
msgstr "Types de blocs fonctionnels"
@@ -1196,7 +1212,7 @@
msgid "Function Blocks can't be used in Transitions!"
msgstr "Les blocs fonctionnels ne peuvent être utilisés dans des transitions"
-#: ../PLCControler.py:1719
+#: ../PLCControler.py:1801
#, python-format
msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!"
msgstr "Le bloc fonctionnel \"%s\" ne peuvent être collés dans une function !"
@@ -1205,67 +1221,75 @@
msgid "Functions"
msgstr "Fonctions"
-#: ../PLCOpenEditor.py:2457
+#: ../PLCOpenEditor.py:2477
msgid "Generate Program\tCTRL+G"
msgstr "Générer le program\tCTRL+G"
-#: ../VariablePanel.py:72
+#: ../VariablePanel.py:73
msgid "Global"
msgstr "Globale"
-#: ../PLCOpenEditor.py:1834
+#: ../PLCOpenEditor.py:1851
msgid "Graphic Panel"
msgstr "Graphique"
-#: ../PLCOpenEditor.py:2989
+#: ../PLCOpenEditor.py:3027
msgid "Graphics"
msgstr "Graphiques"
-#: ../plcopen/iec_std.csv:64
+#: ../plcopen/iec_std.csv:75
msgid "Greater than"
msgstr "Supérieur à"
-#: ../plcopen/iec_std.csv:65
+#: ../plcopen/iec_std.csv:76
msgid "Greater than or equal to"
msgstr "Supérieur ou égal à"
-#: ../PLCOpenEditor.py:2968
+#: ../PLCOpenEditor.py:3014
+msgid "Grid Resolution:"
+msgstr "Résolution de la grille :"
+
+#: ../PLCOpenEditor.py:3006
msgid "Height:"
msgstr "Hauteur :"
-#: ../PLCOpenEditor.py:307
+#: ../PLCOpenEditor.py:312
msgid "Help"
msgstr "Aide"
-#: ../plcopen/structures.py:251
+#: ../PLCOpenEditor.py:2741
+msgid "Horizontal:"
+msgstr "Horizontal :"
+
+#: ../plcopen/structures.py:250
msgid ""
"Hysteresis\n"
"The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2."
msgstr ""
-#: ../PLCOpenEditor.py:3179
-#: ../PLCOpenEditor.py:3189
-#: ../PLCOpenEditor.py:3368
-#: ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3217
+#: ../PLCOpenEditor.py:3227
+#: ../PLCOpenEditor.py:3406
+#: ../PLCOpenEditor.py:3550
msgid "IL"
msgstr "IL"
-#: ../VariablePanel.py:70
+#: ../VariablePanel.py:71
#: ../dialogs/FBDVariableDialog.py:42
msgid "InOut"
msgstr "Entrée-Sortie"
-#: ../VariablePanel.py:328
+#: ../VariablePanel.py:344
#, python-format
msgid "Incompatible data types between \"%s\" and \"%s\""
msgstr "Types de donnée imcompatible entre \"%s\" et \"%s\""
-#: ../VariablePanel.py:339
+#: ../VariablePanel.py:355
#, python-format
msgid "Incompatible size of data between \"%s\" and \"%s\""
msgstr "Taille de donnée incompatible entre \"%s\" et \"%s\""
-#: ../VariablePanel.py:335
+#: ../VariablePanel.py:351
#, python-format
msgid "Incompatible size of data between \"%s\" and \"BOOL\""
msgstr "Taille de donnée incompatible entre \"%s\" et \"BOOL\""
@@ -1274,8 +1298,8 @@
msgid "Indicator"
msgstr "Indicateur"
-#: ../VariablePanel.py:52
#: ../VariablePanel.py:53
+#: ../VariablePanel.py:54
#: ../DataTypeEditor.py:46
msgid "Initial Value"
msgstr "Valeur initiale"
@@ -1293,8 +1317,8 @@
msgid "Inline"
msgstr "Inline"
-#: ../VariablePanel.py:70
-#: ../VariablePanel.py:1019
+#: ../VariablePanel.py:71
+#: ../VariablePanel.py:1057
#: ../dialogs/FBDVariableDialog.py:41
#: ../dialogs/SFCStepDialog.py:122
msgid "Input"
@@ -1304,16 +1328,16 @@
msgid "Inputs:"
msgstr "Entrées :"
-#: ../plcopen/iec_std.csv:76
+#: ../plcopen/iec_std.csv:87
msgid "Insertion (into)"
msgstr "Insertion (au milieu)"
-#: ../plcopen/plcopen.py:1518
+#: ../plcopen/plcopen.py:1537
#, python-format
msgid "Instance with id %d doesn't exist!"
msgstr "L'instance dont l'id est %d n'existe pas !"
-#: ../PLCOpenEditor.py:559
+#: ../PLCOpenEditor.py:564
msgid "Instances"
msgstr "Instances"
@@ -1321,7 +1345,7 @@
msgid "Instances:"
msgstr "Instances :"
-#: ../plcopen/structures.py:231
+#: ../plcopen/structures.py:230
msgid ""
"Integral\n"
"The integral function block integrates the value of input XIN over time."
@@ -1329,7 +1353,7 @@
"Intégrale\n"
"Le bloc fonctionnel INTEGRAL intègre les valeurs de l'entrée XIN en fonction du temps."
-#: ../VariablePanel.py:69
+#: ../VariablePanel.py:70
msgid "Interface"
msgstr "Interface"
@@ -1337,24 +1361,24 @@
msgid "Interval"
msgstr "Interval"
-#: ../PLCControler.py:1696
-#: ../PLCControler.py:1734
+#: ../PLCControler.py:1778
+#: ../PLCControler.py:1816
msgid "Invalid plcopen element(s)!!!"
msgstr "Les éléments plcopen ne sont pas valides !!! "
-#: ../dialogs/ForceVariableDialog.py:96
+#: ../dialogs/ForceVariableDialog.py:174
#, python-format
msgid "Invalid value \"%s\" for \"%s\" variable!"
msgstr "Valeur \"%s\" invalide pour une variable de type \"%s\" !"
-#: ../PLCOpenEditor.py:4042
-#: ../PLCOpenEditor.py:4045
+#: ../PLCOpenEditor.py:4080
+#: ../PLCOpenEditor.py:4083
#, python-format
msgid "Invalid value \"%s\" for debug variable"
msgstr "Chemin de variable à déboguer \"%s\" invalide"
-#: ../VariablePanel.py:316
-#: ../VariablePanel.py:319
+#: ../VariablePanel.py:332
+#: ../VariablePanel.py:335
#, python-format
msgid "Invalid value \"%s\" for location"
msgstr "Adresse \"%s\" invalide "
@@ -1365,37 +1389,37 @@
msgid "Invalid value \"%s\" for viewer block"
msgstr "Valeur \"%s\" invalide pour un élément graphique"
-#: ../PLCOpenEditor.py:2984
-#: ../PLCOpenEditor.py:3179
-#: ../PLCOpenEditor.py:3189
-#: ../PLCOpenEditor.py:3368
-#: ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3022
+#: ../PLCOpenEditor.py:3217
+#: ../PLCOpenEditor.py:3227
+#: ../PLCOpenEditor.py:3406
+#: ../PLCOpenEditor.py:3550
msgid "LD"
msgstr "LD"
-#: ../LDViewer.py:213
-#: ../LDViewer.py:228
+#: ../LDViewer.py:215
+#: ../LDViewer.py:231
#, python-format
msgid "Ladder element with id %d is on more than one rung."
msgstr "L'élément de LD dont l'id est %d apparait dans plusieurs échelons. "
-#: ../PLCOpenEditor.py:3287
-#: ../PLCOpenEditor.py:3450
-#: ../PLCOpenEditor.py:3594
+#: ../PLCOpenEditor.py:3325
+#: ../PLCOpenEditor.py:3488
+#: ../PLCOpenEditor.py:3632
msgid "Language"
msgstr "Langue"
-#: ../PLCOpenEditor.py:2998
+#: ../PLCOpenEditor.py:3036
msgid "Language (optional):"
msgstr "Langue (optionnel) :"
-#: ../PLCOpenEditor.py:3255
-#: ../PLCOpenEditor.py:3423
-#: ../PLCOpenEditor.py:3567
+#: ../PLCOpenEditor.py:3293
+#: ../PLCOpenEditor.py:3461
+#: ../PLCOpenEditor.py:3605
msgid "Language:"
msgstr "Langue :"
-#: ../Viewer.py:392
+#: ../Viewer.py:357
msgid "Left"
msgstr "Gauche"
@@ -1403,35 +1427,35 @@
msgid "Left PowerRail"
msgstr "Barre d'alimentation à gauche"
-#: ../plcopen/iec_std.csv:70
+#: ../plcopen/iec_std.csv:81
msgid "Length of string"
msgstr "Longueur de la chaîne"
-#: ../plcopen/iec_std.csv:67
+#: ../plcopen/iec_std.csv:78
msgid "Less than"
msgstr "Inférieur à"
-#: ../plcopen/iec_std.csv:68
+#: ../plcopen/iec_std.csv:79
msgid "Less than or equal to"
msgstr "Inférieur ou égal à"
-#: ../PLCOpenEditor.py:594
+#: ../PLCOpenEditor.py:599
msgid "Library"
msgstr "Librairie"
-#: ../plcopen/iec_std.csv:62
+#: ../plcopen/iec_std.csv:73
msgid "Limitation"
msgstr "Limitation"
-#: ../VariablePanel.py:71
+#: ../VariablePanel.py:72
msgid "Local"
msgstr "Locale"
-#: ../VariablePanel.py:52
+#: ../VariablePanel.py:53
msgid "Location"
msgstr "Adresse"
-#: ../VariablePanel.py:1080
+#: ../VariablePanel.py:1118
msgid "Locations available:"
msgstr "Adresses disponibles :"
@@ -1439,7 +1463,7 @@
msgid "Logarithm to base 10"
msgstr "Logarithme de base 10"
-#: ../plcopen/iec_std.csv:60
+#: ../plcopen/iec_std.csv:71
msgid "Maximum"
msgstr "Maximum"
@@ -1447,15 +1471,15 @@
msgid "Maximum:"
msgstr "Maximum :"
-#: ../VariablePanel.py:1021
+#: ../VariablePanel.py:1059
msgid "Memory"
msgstr "Mémoire"
-#: ../Viewer.py:401
+#: ../Viewer.py:366
msgid "Middle"
msgstr "Milieu"
-#: ../plcopen/iec_std.csv:61
+#: ../plcopen/iec_std.csv:72
msgid "Minimum"
msgstr "Minimum"
@@ -1463,7 +1487,7 @@
msgid "Minimum:"
msgstr "Minimum :"
-#: ../PLCOpenEditor.py:3013
+#: ../PLCOpenEditor.py:3051
msgid "Miscellaneous"
msgstr "Divers"
@@ -1471,8 +1495,8 @@
msgid "Modifier:"
msgstr "Modificateur :"
-#: ../PLCGenerator.py:682
-#: ../PLCGenerator.py:886
+#: ../PLCGenerator.py:724
+#: ../PLCGenerator.py:948
#, python-format
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\""
@@ -1487,18 +1511,18 @@
msgid "Move up"
msgstr "Déplacer vers le bas"
-#: ../plcopen/iec_std.csv:63
+#: ../plcopen/iec_std.csv:74
msgid "Multiplexer (select 1 of N)"
msgstr "Multipléxeur (sélection 1 sur N)"
-#: ../plcopen/iec_std.csv:37
+#: ../plcopen/iec_std.csv:34
msgid "Multiplication"
msgstr "Multiplication"
#: ../RessourceEditor.py:82
#: ../RessourceEditor.py:86
-#: ../VariablePanel.py:52
#: ../VariablePanel.py:53
+#: ../VariablePanel.py:54
#: ../DataTypeEditor.py:46
msgid "Name"
msgstr "Nom"
@@ -1515,12 +1539,12 @@
msgid "Natural logarithm"
msgstr "Logarithme népérien"
-#: ../Viewer.py:424
+#: ../Viewer.py:389
#: ../dialogs/LDElementDialog.py:135
msgid "Negated"
msgstr "Inversé"
-#: ../PLCOpenEditor.py:2444
+#: ../PLCOpenEditor.py:2464
msgid "New\tCTRL+N"
msgstr "Nouveau\tCTRL+N"
@@ -1529,26 +1553,26 @@
msgid "New item"
msgstr "Nouvel élément"
-#: ../Viewer.py:422
+#: ../Viewer.py:387
msgid "No Modifier"
msgstr "Pas de modificateur"
-#: ../PLCControler.py:2578
+#: ../PLCControler.py:2663
msgid "No PLC project found"
msgstr "Pas de projet d'automate trouvé"
-#: ../PLCGenerator.py:1267
+#: ../PLCGenerator.py:1331
#, python-format
msgid "No body defined in \"%s\" POU"
msgstr "Pas de code défini dans le POU \"%s\""
-#: ../PLCGenerator.py:701
-#: ../PLCGenerator.py:895
+#: ../PLCGenerator.py:743
+#: ../PLCGenerator.py:957
#, python-format
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:2391
+#: ../PLCOpenEditor.py:2411
msgid ""
"No documentation available.\n"
"Coming soon."
@@ -1556,21 +1580,21 @@
"Pas de documentation.\n"
"Bientôt disponible."
-#: ../PLCGenerator.py:753
+#: ../PLCGenerator.py:765
#, python-format
msgid "No informations found for \"%s\" block"
msgstr "Aucune information trouvée pour le block \"%s\""
-#: ../plcopen/structures.py:139
+#: ../plcopen/structures.py:138
msgid "No output variable found"
msgstr "Pas de variable de sortie trouvée."
-#: ../PLCGenerator.py:1265
+#: ../PLCGenerator.py:1329
#, python-format
msgid "No variable defined in \"%s\" POU"
msgstr "Pas de varaibles définies dans le POU \"%s\""
-#: ../VariablePanel.py:63
+#: ../VariablePanel.py:64
msgid "Non-Retain"
msgstr "Non-Persistante"
@@ -1578,7 +1602,7 @@
msgid "Normal"
msgstr "Normal"
-#: ../plcopen/iec_std.csv:69
+#: ../plcopen/iec_std.csv:80
msgid "Not equal to"
msgstr "Non égal à"
@@ -1590,39 +1614,39 @@
msgid "Numerical"
msgstr "Numérique"
-#: ../plcopen/structures.py:219
+#: ../plcopen/structures.py:218
msgid ""
"Off-delay timer\n"
"The off-delay timer can be used to delay setting an output false, for fixed period after input goes false."
msgstr ""
-#: ../plcopen/structures.py:214
+#: ../plcopen/structures.py:213
msgid ""
"On-delay timer\n"
"The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true."
msgstr ""
-#: ../PLCOpenEditor.py:2446
+#: ../PLCOpenEditor.py:2466
msgid "Open\tCTRL+O"
msgstr "Ouvrir\tCTRL+O"
-#: ../VariablePanel.py:52
#: ../VariablePanel.py:53
+#: ../VariablePanel.py:54
msgid "Option"
msgstr "Option"
-#: ../PLCOpenEditor.py:2940
+#: ../PLCOpenEditor.py:2978
msgid "Organization (optional):"
msgstr "Groupe (optionnel) :"
-#: ../VariablePanel.py:70
-#: ../VariablePanel.py:1020
+#: ../VariablePanel.py:71
+#: ../VariablePanel.py:1058
#: ../dialogs/FBDVariableDialog.py:43
#: ../dialogs/SFCStepDialog.py:127
msgid "Output"
msgstr "Sortie"
-#: ../plcopen/structures.py:241
+#: ../plcopen/structures.py:240
msgid ""
"PID\n"
"The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control."
@@ -1630,53 +1654,53 @@
"PID\n"
"Le bloc fonctionnel PID (Proportionnel, Intégrale, Dérivée) fournit un controller de boucle fermé classique à trois paramètres."
-#: ../PLCOpenEditor.py:2598
-#: ../PLCOpenEditor.py:2657
+#: ../PLCOpenEditor.py:2630
+#: ../PLCOpenEditor.py:2694
msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
msgstr "Fichiers PLCOpen (*.xml)|*.xml|Tous les fichiers|*.*"
-#: ../PLCOpenEditor.py:2530
+#: ../PLCOpenEditor.py:2559
msgid "PLCOpenEditor"
msgstr "PLCOpenEditor"
-#: ../PLCOpenEditor.py:2488
+#: ../PLCOpenEditor.py:2508
msgid "PLCOpenEditor\tF1"
msgstr "PLCOpenEditor\tF1"
-#: ../PLCOpenEditor.py:3283
+#: ../PLCOpenEditor.py:3321
msgid "POU Name"
msgstr "Nom du POU"
-#: ../PLCOpenEditor.py:3238
+#: ../PLCOpenEditor.py:3276
msgid "POU Name:"
msgstr "Nom du POU :"
-#: ../PLCOpenEditor.py:3285
+#: ../PLCOpenEditor.py:3323
msgid "POU Type"
msgstr "Type du POU"
-#: ../PLCOpenEditor.py:3246
+#: ../PLCOpenEditor.py:3284
msgid "POU Type:"
msgstr "Type du POU :"
-#: ../PLCOpenEditor.py:2460
+#: ../PLCOpenEditor.py:2480
msgid "Page Setup"
msgstr "Mise en page..."
-#: ../PLCOpenEditor.py:2956
+#: ../PLCOpenEditor.py:2994
msgid "Page Size (optional):"
msgstr "Taille de la page (optionnel) :"
-#: ../PLCOpenEditor.py:4301
+#: ../PLCOpenEditor.py:4362
#, python-format
msgid "Page: %d"
msgstr "Page: %d"
-#: ../PLCOpenEditor.py:325
+#: ../PLCOpenEditor.py:330
msgid "Paste\tCTRL+V"
msgstr "Coller\tCTRL+V"
-#: ../PLCOpenEditor.py:1646
+#: ../PLCOpenEditor.py:1663
msgid "Paste POU"
msgstr "Coller un POU"
@@ -1684,34 +1708,30 @@
msgid "Pin number:"
msgstr "Nombre de pattes :"
-#: ../Viewer.py:2032
-#: ../Viewer.py:2323
+#: ../Viewer.py:2020
+#: ../Viewer.py:2311
#: ../SFCViewer.py:698
msgid "Please choose a target"
msgstr "Choisissez une cible"
-#: ../PLCOpenEditor.py:2253
-msgid "Please enter POU name"
-msgstr "Saisissez le nom du POU"
-
-#: ../Viewer.py:1857
-#: ../Viewer.py:1859
-#: ../Viewer.py:2358
-#: ../Viewer.py:2360
+#: ../Viewer.py:1845
+#: ../Viewer.py:1847
+#: ../Viewer.py:2346
+#: ../Viewer.py:2348
msgid "Please enter comment text"
msgstr "Saisissez le texte du commentaire"
-#: ../PLCOpenEditor.py:2221
-#: ../PLCOpenEditor.py:3658
+#: ../PLCOpenEditor.py:2246
+#: ../PLCOpenEditor.py:3696
msgid "Please enter configuration name"
msgstr "Saisissez le nom de la configuration"
-#: ../PLCOpenEditor.py:2177
+#: ../PLCOpenEditor.py:2194
msgid "Please enter data type name"
msgstr "Saisissez le nom du type de donnée"
-#: ../PLCOpenEditor.py:2232
-#: ../PLCOpenEditor.py:3721
+#: ../PLCOpenEditor.py:2259
+#: ../PLCOpenEditor.py:3759
msgid "Please enter resource name"
msgstr "Saisissez le nom de la ressource"
@@ -1721,16 +1741,16 @@
msgid "Please enter step name"
msgstr "Saisissez le nom de l'étape"
-#: ../PLCOpenEditor.py:3129
+#: ../PLCOpenEditor.py:3167
msgid "Please enter text"
msgstr "Saisissez le texte"
-#: ../dialogs/ForceVariableDialog.py:78
+#: ../dialogs/ForceVariableDialog.py:156
#, python-format
msgid "Please enter value for a \"%s\" variable:"
msgstr "Veuillez entrer la valeur pour une variable de type \"%s\" :"
-#: ../VariablePanel.py:1147
+#: ../VariablePanel.py:1185
msgid "Plugins"
msgstr "Plugins"
@@ -1742,7 +1762,7 @@
msgid "Power Rail Properties"
msgstr "Propriétés de la barre d'alimentation"
-#: ../PLCOpenEditor.py:2462
+#: ../PLCOpenEditor.py:2482
msgid "Preview"
msgstr "Aperçu avant impression"
@@ -1757,11 +1777,11 @@
msgid "Preview:"
msgstr "Aperçu :"
-#: ../PLCOpenEditor.py:2464
+#: ../PLCOpenEditor.py:2484
msgid "Print"
msgstr "Imprimer"
-#: ../PLCOpenEditor.py:934
+#: ../PLCOpenEditor.py:950
msgid "Print preview"
msgstr "Aperçu avant impression"
@@ -1773,24 +1793,24 @@
msgid "Priority:"
msgstr "Priorité :"
-#: ../PLCOpenEditor.py:2884
+#: ../PLCOpenEditor.py:2922
msgid "Product Name (required):"
msgstr "Nom du produit (obligatoire) :"
-#: ../PLCOpenEditor.py:2900
+#: ../PLCOpenEditor.py:2938
msgid "Product Release (optional):"
msgstr "Publication du produit (optionnel) :"
-#: ../PLCOpenEditor.py:2892
+#: ../PLCOpenEditor.py:2930
msgid "Product Version (required):"
msgstr "Version du produit (obligatoire) :"
-#: ../PLCOpenEditor.py:336
-#: ../PLCOpenEditor.py:1605
+#: ../PLCOpenEditor.py:341
+#: ../PLCOpenEditor.py:1622
msgid "Program"
msgstr "Programme"
-#: ../PLCOpenEditor.py:2635
+#: ../PLCOpenEditor.py:2671
msgid "Program was successfully generated!"
msgstr "Le programme a été généré avec succès !"
@@ -1802,29 +1822,37 @@
msgid "Programs can't be used by other POUs!"
msgstr "Les programmes ne peuvent être utilisés par les autres POUs !"
-#: ../PLCOpenEditor.py:437
-#: ../PLCOpenEditor.py:2907
+#: ../PLCOpenEditor.py:442
+#: ../PLCOpenEditor.py:2945
msgid "Project"
msgstr "Projet"
-#: ../PLCOpenEditor.py:2868
+#: ../PLCOpenEditor.py:2906
msgid "Project Name (required):"
msgstr "Nom du projet (obligatoire) :"
-#: ../PLCOpenEditor.py:2876
+#: ../PLCOpenEditor.py:2914
msgid "Project Version (optional):"
msgstr "Version du projet (optionnel) :"
-#: ../PLCOpenEditor.py:2854
+#: ../PLCControler.py:2650
+msgid ""
+"Project file syntax error:\n"
+"\n"
+msgstr ""
+"Erreur de syntaxe dans le fichier du projet :\n"
+"\n"
+
+#: ../PLCOpenEditor.py:2892
msgid "Project properties"
msgstr "Propriétés du projet"
-#: ../PLCOpenEditor.py:2467
+#: ../PLCOpenEditor.py:2487
#: ../PLCControler.py:91
msgid "Properties"
msgstr "Propriétés"
-#: ../plcopen/structures.py:209
+#: ../plcopen/structures.py:208
msgid ""
"Pulse timer\n"
"The pulse timer can be used to generate output pulses of a given time duration."
@@ -1834,11 +1862,11 @@
msgid "Qualifier"
msgstr "Qualificatif"
-#: ../PLCOpenEditor.py:2470
+#: ../PLCOpenEditor.py:2490
msgid "Quit\tCTRL+Q"
msgstr "Quitter\tCTRL+Q"
-#: ../plcopen/structures.py:174
+#: ../plcopen/structures.py:173
msgid ""
"RS bistable\n"
"The RS bistable is a latch where the Reset dominates."
@@ -1846,7 +1874,7 @@
"Bascule RS\n"
"La bascule RS est une bascule où le Reset est dominant."
-#: ../plcopen/structures.py:246
+#: ../plcopen/structures.py:245
msgid ""
"Ramp\n"
"The RAMP function block is modelled on example given in the standard but with the addition of a 'Holdback' feature."
@@ -1858,7 +1886,7 @@
msgid "Range:"
msgstr "Echelle :"
-#: ../PLCOpenEditor.py:316
+#: ../PLCOpenEditor.py:321
msgid "Redo\tCTRL+Y"
msgstr "Refaire\tCTRL+Y"
@@ -1867,24 +1895,24 @@
msgid "Reference"
msgstr "Référence"
-#: ../PLCOpenEditor.py:364
+#: ../PLCOpenEditor.py:369
msgid "Refresh\tF5"
msgstr "Actualiser\tF5"
-#: ../PLCOpenEditor.py:4187
-#: ../Viewer.py:1133
+#: ../PLCOpenEditor.py:4235
+#: ../Viewer.py:1098
msgid "Release value"
msgstr "Relacher la valeur"
-#: ../plcopen/iec_std.csv:48
+#: ../plcopen/iec_std.csv:37
msgid "Remainder (modulo)"
msgstr "Modulo"
-#: ../PLCOpenEditor.py:1609
+#: ../PLCOpenEditor.py:1626
msgid "Rename"
msgstr "Renommer"
-#: ../plcopen/iec_std.csv:78
+#: ../plcopen/iec_std.csv:89
msgid "Replacement (within)"
msgstr "Remplacement (au milieu)"
@@ -1892,7 +1920,7 @@
msgid "Reset"
msgstr "Mise à zéro"
-#: ../Viewer.py:443
+#: ../Viewer.py:408
msgid "Reset Execution Order"
msgstr "Réinitialiser l'order d'exécution"
@@ -1900,15 +1928,15 @@
msgid "Resources"
msgstr "Ressources"
-#: ../VariablePanel.py:61
+#: ../VariablePanel.py:62
msgid "Retain"
msgstr "Persistante"
-#: ../VariablePanel.py:466
+#: ../VariablePanel.py:482
msgid "Return Type:"
msgstr "Type de retour :"
-#: ../Viewer.py:396
+#: ../Viewer.py:361
msgid "Right"
msgstr "Droite"
@@ -1916,12 +1944,12 @@
msgid "Right PowerRail"
msgstr "Barre d'alimentation à droite"
-#: ../Viewer.py:426
+#: ../Viewer.py:391
#: ../dialogs/LDElementDialog.py:150
msgid "Rising Edge"
msgstr "Front montant"
-#: ../plcopen/structures.py:184
+#: ../plcopen/structures.py:183
msgid ""
"Rising edge detector\n"
"The output produces a single pulse when a rising edge is detected."
@@ -1929,11 +1957,11 @@
"Détecteur de front montant\n"
"La sortie produit une impulsion unique lorsqu'un front montant est détecté."
-#: ../plcopen/iec_std.csv:54
+#: ../plcopen/iec_std.csv:65
msgid "Rotate left"
msgstr "Rotation à gauche"
-#: ../plcopen/iec_std.csv:53
+#: ../plcopen/iec_std.csv:64
msgid "Rotate right"
msgstr "Rotation à droite"
@@ -1941,12 +1969,12 @@
msgid "Rounding up/down"
msgstr "Arrondi"
-#: ../PLCOpenEditor.py:2984
-#: ../PLCOpenEditor.py:3189
+#: ../PLCOpenEditor.py:3022
+#: ../PLCOpenEditor.py:3227
msgid "SFC"
msgstr "SFC"
-#: ../plcopen/structures.py:169
+#: ../plcopen/structures.py:168
msgid ""
"SR bistable\n"
"The SR bistable is a latch where the Set dominates."
@@ -1954,43 +1982,39 @@
"Bascule SR\n"
"La bascule SR est une bascule où le Set est dominant."
-#: ../PLCOpenEditor.py:3179
-#: ../PLCOpenEditor.py:3189
-#: ../PLCOpenEditor.py:3368
-#: ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3217
+#: ../PLCOpenEditor.py:3227
+#: ../PLCOpenEditor.py:3406
+#: ../PLCOpenEditor.py:3550
msgid "ST"
msgstr "ST"
-#: ../PLCOpenEditor.py:2622
+#: ../PLCOpenEditor.py:2658
msgid "ST files (*.st)|*.st|All files|*.*"
msgstr "Fichiers ST (*.st)|*.st|Tous les fichiers|*.*"
-#: ../PLCOpenEditor.py:2453
+#: ../PLCOpenEditor.py:2473
msgid "Save\tCTRL+S"
msgstr "Enregistrer\tCTRL+S"
-#: ../PLCOpenEditor.py:2455
+#: ../PLCOpenEditor.py:2475
msgid "Save As...\tCTRL+SHIFT+S"
msgstr "Enregistrer sous...\tCTRL+SHIFT+S"
-#: ../PLCOpenEditor.py:2976
-msgid "Scaling:"
-msgstr "Echelle :"
-
-#: ../PLCOpenEditor.py:340
+#: ../PLCOpenEditor.py:345
msgid "Select All\tCTRL+A"
msgstr "Tout sélectionner\tCTRL+A"
-#: ../VariablePanel.py:341
+#: ../VariablePanel.py:357
msgid "Select a variable class:"
msgstr "Sélectionner une direction pour la variable :"
-#: ../PLCOpenEditor.py:570
-#: ../PLCOpenEditor.py:582
+#: ../PLCOpenEditor.py:575
+#: ../PLCOpenEditor.py:587
msgid "Select an object"
msgstr "Sélectionner un objet"
-#: ../plcopen/iec_std.csv:59
+#: ../plcopen/iec_std.csv:70
msgid "Selection"
msgstr "Sélection"
@@ -2002,7 +2026,7 @@
msgid "Selection Divergence"
msgstr "Divergence simple"
-#: ../plcopen/structures.py:179
+#: ../plcopen/structures.py:178
msgid ""
"Semaphore\n"
"The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources."
@@ -2014,11 +2038,11 @@
msgid "Set"
msgstr "Mise à 1"
-#: ../plcopen/iec_std.csv:51
+#: ../plcopen/iec_std.csv:62
msgid "Shift left"
msgstr "Décalage à gauche"
-#: ../plcopen/iec_std.csv:52
+#: ../plcopen/iec_std.csv:63
msgid "Shift right"
msgstr "Décalage à droite"
@@ -2042,7 +2066,7 @@
msgid "Square root (base 2)"
msgstr "Racine carré (base 2)"
-#: ../plcopen/structures.py:165
+#: ../plcopen/structures.py:164
msgid "Standard function blocks"
msgstr "Blocs fonctionnels standards"
@@ -2054,7 +2078,7 @@
msgid "Subrange"
msgstr "Sous-ensemble"
-#: ../plcopen/iec_std.csv:39
+#: ../plcopen/iec_std.csv:35
msgid "Subtraction"
msgstr "Soustraction"
@@ -2070,25 +2094,25 @@
msgid "Tasks:"
msgstr "Tâches :"
-#: ../VariablePanel.py:72
+#: ../VariablePanel.py:73
msgid "Temp"
msgstr "Temporaire"
-#: ../LDViewer.py:850
+#: ../LDViewer.py:881
msgid "The group of block must be coherent!"
msgstr "Le groupe de blocs doit être cohérent !"
-#: ../PLCOpenEditor.py:873
+#: ../PLCOpenEditor.py:889
msgid "There are changes, do you want to save?"
msgstr "Le projet a été modifié. Voulez-vous l'enregistrer ?"
-#: ../PLCOpenEditor.py:1407
-#: ../PLCOpenEditor.py:1427
+#: ../PLCOpenEditor.py:1425
+#: ../PLCOpenEditor.py:1445
#, python-format
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 ?"
-#: ../PLCOpenEditor.py:953
+#: ../PLCOpenEditor.py:969
msgid ""
"There was a problem printing.\n"
"Perhaps your current printer is not set correctly?"
@@ -2096,7 +2120,7 @@
"Un problème est apparu lors de l'impression.\n"
"Peut-être que votre imprimante n'est pas correctement configurée ?"
-#: ../LDViewer.py:859
+#: ../LDViewer.py:890
msgid "This option isn't available yet!"
msgstr "Cette option n'a pas encore disponible"
@@ -2104,62 +2128,73 @@
msgid "Tick"
msgstr "Tick"
-#: ../plcopen/iec_std.csv:34
+#: ../plcopen/iec_std.csv:40
+msgid "Time"
+msgstr "Temps"
+
+#: ../plcopen/iec_std.csv:40
+#: ../plcopen/iec_std.csv:41
msgid "Time addition"
msgstr "Addition de durée"
-#: ../plcopen/iec_std.csv:75
+#: ../plcopen/iec_std.csv:86
msgid "Time concatenation"
msgstr "Concaténation de date et de durée"
-#: ../plcopen/iec_std.csv:47
+#: ../plcopen/iec_std.csv:60
+#: ../plcopen/iec_std.csv:61
msgid "Time division"
msgstr "Division de durée"
-#: ../plcopen/iec_std.csv:38
+#: ../plcopen/iec_std.csv:46
+#: ../plcopen/iec_std.csv:47
msgid "Time multiplication"
msgstr "Multiplication de durée"
-#: ../plcopen/iec_std.csv:40
+#: ../plcopen/iec_std.csv:48
+#: ../plcopen/iec_std.csv:49
msgid "Time subtraction"
msgstr "Soustraction de durée"
-#: ../plcopen/iec_std.csv:35
+#: ../plcopen/iec_std.csv:42
+#: ../plcopen/iec_std.csv:43
msgid "Time-of-day addition"
msgstr "Addition d'horodatage"
-#: ../plcopen/iec_std.csv:42
-#: ../plcopen/iec_std.csv:43
+#: ../plcopen/iec_std.csv:52
+#: ../plcopen/iec_std.csv:53
+#: ../plcopen/iec_std.csv:54
+#: ../plcopen/iec_std.csv:55
msgid "Time-of-day subtraction"
msgstr "Soustraction d'horodatage"
-#: ../PLCOpenEditor.py:574
+#: ../PLCOpenEditor.py:579
msgid "Toolbar"
msgstr "Barre d'outils"
-#: ../Viewer.py:399
+#: ../Viewer.py:364
msgid "Top"
msgstr "Haut"
-#: ../PLCOpenEditor.py:3448
+#: ../PLCOpenEditor.py:3486
msgid "Transition Name"
msgstr "Nom de la transition"
-#: ../PLCOpenEditor.py:3415
+#: ../PLCOpenEditor.py:3453
msgid "Transition Name:"
msgstr "Nom de la transition :"
-#: ../PLCGenerator.py:1247
+#: ../PLCGenerator.py:1311
#, python-format
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:1238
+#: ../PLCGenerator.py:1302
#, python-format
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:1175
+#: ../plcopen/plcopen.py:1194
#, python-format
msgid "Transition with name %s doesn't exist!"
msgstr "La transition nommée %s n'existe pas !"
@@ -2169,8 +2204,8 @@
msgstr "Transitions"
#: ../RessourceEditor.py:86
-#: ../VariablePanel.py:52
#: ../VariablePanel.py:53
+#: ../VariablePanel.py:54
#: ../dialogs/ActionBlockDialog.py:33
#: ../DataTypeEditor.py:46
msgid "Type"
@@ -2192,7 +2227,7 @@
msgid "Type:"
msgstr "Type :"
-#: ../PLCOpenEditor.py:540
+#: ../PLCOpenEditor.py:545
msgid "Types"
msgstr "Types"
@@ -2201,11 +2236,11 @@
msgid "Undefined pou type \"%s\""
msgstr "Type de POU \"%s\" indéterminé !"
-#: ../PLCOpenEditor.py:314
+#: ../PLCOpenEditor.py:319
msgid "Undo\tCTRL+Z"
msgstr "Défaire\tCTRL+Z"
-#: ../Viewer.py:320
+#: ../Viewer.py:304
#, python-format
msgid "Unknown variable \"%s\" for this POU!"
msgstr "Variable \"%s\" inconnue dans ce POU !"
@@ -2215,12 +2250,12 @@
msgid "Unnamed%d"
msgstr "Sansnom%d"
-#: ../VariablePanel.py:337
+#: ../VariablePanel.py:353
#, python-format
msgid "Unrecognized data size \"%s\""
msgstr "Taille de donnée \"%s\" non identifié !"
-#: ../plcopen/structures.py:194
+#: ../plcopen/structures.py:193
msgid ""
"Up-counter\n"
"The up-counter can be used to signal when a count has reached a maximum value."
@@ -2228,7 +2263,7 @@
"Compteur incrémental\n"
"Le compteur incrémental peut être utilisé pour signaler lorsque le compteur a atteint la valeur maximale."
-#: ../plcopen/structures.py:204
+#: ../plcopen/structures.py:203
msgid ""
"Up-down counter\n"
"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."
@@ -2236,7 +2271,7 @@
"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."
-#: ../VariablePanel.py:770
+#: ../VariablePanel.py:790
#: ../DataTypeEditor.py:807
msgid "User Data Types"
msgstr "Types de donnée du projet"
@@ -2245,7 +2280,7 @@
msgid "User-defined POUs"
msgstr "POUs du projet"
-#: ../PLCOpenEditor.py:3857
+#: ../PLCOpenEditor.py:3895
#: ../dialogs/ActionBlockDialog.py:33
msgid "Value"
msgstr "Valeur"
@@ -2258,7 +2293,7 @@
msgid "Values:"
msgstr "Valeurs"
-#: ../PLCOpenEditor.py:3857
+#: ../PLCOpenEditor.py:3895
#: ../dialogs/ActionBlockDialog.py:37
msgid "Variable"
msgstr "Variable"
@@ -2267,125 +2302,139 @@
msgid "Variable Properties"
msgstr "Propriétés de la variable"
-#: ../VariablePanel.py:341
+#: ../VariablePanel.py:357
msgid "Variable class"
msgstr "Direction de la variable"
-#: ../Viewer.py:322
-#: ../TextViewer.py:248
+#: ../Viewer.py:306
+#: ../TextViewer.py:279
msgid "Variable don't belong to this POU!"
msgstr "La variable n'appartient pas à ce POU !"
-#: ../PLCOpenEditor.py:589
-#: ../VariablePanel.py:71
+#: ../PLCOpenEditor.py:594
+#: ../VariablePanel.py:72
msgid "Variables"
msgstr "Variables"
-#: ../PLCOpenEditor.py:3313
-#: ../PLCOpenEditor.py:3691
-#: ../PLCOpenEditor.py:3754
-#: ../LDViewer.py:859
+#: ../PLCOpenEditor.py:2749
+msgid "Vertical:"
+msgstr "Vertical :"
+
+#: ../PLCOpenEditor.py:3351
+#: ../PLCOpenEditor.py:3729
+#: ../PLCOpenEditor.py:3792
+#: ../LDViewer.py:890
msgid "Warning"
msgstr "Attention"
-#: ../PLCOpenEditor.py:2960
+#: ../PLCOpenEditor.py:2998
msgid "Width:"
msgstr "Longueur :"
-#: ../PLCOpenEditor.py:2703
-msgid "X Scale:"
-msgstr "Echelle X :"
-
-#: ../PLCOpenEditor.py:2711
-msgid "Y Scale:"
-msgstr "Echelle Y :"
-
-#: ../LDViewer.py:854
+#: ../LDViewer.py:885
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 !"
-#: ../LDViewer.py:628
+#: ../LDViewer.py:665
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é !"
-#: ../PLCOpenEditor.py:3144
-#: ../PLCOpenEditor.py:3675
-#: ../PLCOpenEditor.py:3738
+#: ../PLCOpenEditor.py:3182
+#: ../PLCOpenEditor.py:3713
+#: ../PLCOpenEditor.py:3776
#: ../dialogs/PouNameDialog.py:55
#: ../dialogs/SFCStepDialog.py:175
#: ../dialogs/SFCStepNameDialog.py:57
msgid "You must type a name!"
msgstr "Vous devez saisir un nom !"
-#: ../dialogs/ForceVariableDialog.py:92
+#: ../dialogs/ForceVariableDialog.py:170
msgid "You must type a value!"
msgstr "Vous devez saisir une valeur !"
-#: ../PLCOpenEditor.py:370
+#: ../PLCOpenEditor.py:375
msgid "Zoom"
msgstr "Zoom"
-#: ../PLCOpenEditor.py:2631
+#: ../PLCOpenEditor.py:2667
#, python-format
msgid "error: %s\n"
msgstr "erreur: %s\n"
-#: ../PLCOpenEditor.py:4333
-#: ../PLCOpenEditor.py:4335
+#: ../PLCOpenEditor.py:4394
+#: ../PLCOpenEditor.py:4396
msgid "file : "
msgstr "fichier :"
-#: ../PLCOpenEditor.py:3184
+#: ../PLCOpenEditor.py:3222
msgid "function"
msgstr "fonction"
-#: ../PLCOpenEditor.py:4336
+#: ../PLCOpenEditor.py:4397
msgid "function : "
msgstr "fonction :"
-#: ../PLCOpenEditor.py:3184
+#: ../PLCOpenEditor.py:3222
msgid "functionBlock"
msgstr "Bloc fonctionnel"
-#: ../PLCOpenEditor.py:4336
+#: ../PLCOpenEditor.py:4397
msgid "line : "
msgstr "ligne :"
-#: ../PLCOpenEditor.py:3184
+#: ../PLCOpenEditor.py:3222
msgid "program"
msgstr "programme"
-#: ../plcopen/iec_std.csv:73
+#: ../plcopen/iec_std.csv:84
msgid "string from the middle"
msgstr "Caractères du milieu"
-#: ../plcopen/iec_std.csv:71
+#: ../plcopen/iec_std.csv:82
msgid "string left of"
msgstr "Caractères à gauche de"
-#: ../plcopen/iec_std.csv:72
+#: ../plcopen/iec_std.csv:83
msgid "string right of"
msgstr "Caractères à droite de"
-#: ../PLCOpenEditor.py:2629
+#: ../PLCOpenEditor.py:2665
#, python-format
msgid "warning: %s\n"
msgstr "attention: %s\n"
+#~ msgid "Create a new POU from"
+#~ msgstr "Créer un nouveau POU à partir de"
+
+#~ msgid "Please enter POU name"
+#~ msgstr "Saisissez le nom du POU"
+
+#~ msgid "Scaling:"
+#~ msgstr "Echelle :"
+
+#~ msgid "X Scale:"
+#~ msgstr "Echelle X :"
+
+#~ msgid "Y Scale:"
+#~ msgstr "Echelle Y :"
+
#~ msgid "No"
#~ msgstr "Non"
+
#~ msgid "Yes"
#~ msgstr "Oui"
#, fuzzy
#~ msgid "A pou with \"%s\" as name exists!"
#~ msgstr "Un POU nommé \"%s\" existe déjà !"
+
#~ msgid "Close\tCTRL+Q"
#~ msgstr "Fermer\tCTRL+Q"
+
#~ msgid ""
#~ "A variable is defined with \"%s\" as name. It can generate a conflict. Do "
#~ "you wish to continue?"
#~ msgstr "Une variable"
+
#~ msgid "Create A New POU From"
#~ msgstr "Créer un nouveau POU à partir de"
-
--- a/i18n/messages.pot Fri Sep 09 17:19:35 2011 +0200
+++ b/i18n/messages.pot Tue Sep 13 13:01:04 2011 +0200
@@ -8,15 +8,16 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-12-16 10:48+0100\n"
+"POT-Creation-Date: 2011-09-13 12:41+0200\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"
+"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: ../PLCOpenEditor.py:4345
+#: ../PLCOpenEditor.py:4406
msgid ""
"\n"
"An error has occurred.\n"
@@ -29,51 +30,51 @@
"Error:\n"
msgstr ""
+#: ../VariablePanel.py:72
+msgid " External"
+msgstr ""
+
#: ../VariablePanel.py:71
-msgid " External"
-msgstr ""
-
-#: ../VariablePanel.py:70
msgid " InOut"
msgstr ""
-#: ../VariablePanel.py:70
+#: ../VariablePanel.py:71
msgid " Input"
msgstr ""
+#: ../VariablePanel.py:72
+msgid " Local"
+msgstr ""
+
#: ../VariablePanel.py:71
-msgid " Local"
-msgstr ""
-
-#: ../VariablePanel.py:70
msgid " Output"
msgstr ""
-#: ../VariablePanel.py:72
+#: ../VariablePanel.py:73
msgid " Temp"
msgstr ""
-#: ../PLCOpenEditor.py:4355
+#: ../PLCOpenEditor.py:4416
msgid " : "
msgstr ""
-#: ../PLCOpenEditor.py:3294 ../PLCOpenEditor.py:3457 ../PLCOpenEditor.py:3601
+#: ../PLCOpenEditor.py:3332 ../PLCOpenEditor.py:3495 ../PLCOpenEditor.py:3639
#: ../dialogs/SFCTransitionDialog.py:206
#, python-format
msgid " and %s"
msgstr ""
-#: ../plcopen/plcopen.py:907
+#: ../plcopen/plcopen.py:926
#, python-format
msgid "\"%s\" Data Type doesn't exist !!!"
msgstr ""
-#: ../plcopen/plcopen.py:925
+#: ../plcopen/plcopen.py:944
#, python-format
msgid "\"%s\" POU already exists !!!"
msgstr ""
-#: ../plcopen/plcopen.py:946
+#: ../plcopen/plcopen.py:965
#, python-format
msgid "\"%s\" POU doesn't exist !!!"
msgstr ""
@@ -83,7 +84,7 @@
msgid "\"%s\" can't use itself!"
msgstr ""
-#: ../PLCOpenEditor.py:1404 ../PLCOpenEditor.py:1424
+#: ../PLCOpenEditor.py:1422 ../PLCOpenEditor.py:1442
#, python-format
msgid "\"%s\" config already exists!"
msgstr ""
@@ -93,31 +94,31 @@
msgid "\"%s\" configuration already exists !!!"
msgstr ""
-#: ../PLCOpenEditor.py:1358 ../PLCOpenEditor.py:3156
+#: ../PLCOpenEditor.py:1376 ../PLCOpenEditor.py:3194
#, python-format
msgid "\"%s\" data type already exists!"
msgstr ""
-#: ../PLCControler.py:1704 ../PLCControler.py:1708
+#: ../PLCControler.py:1786 ../PLCControler.py:1790
#, python-format
msgid "\"%s\" element can't be pasted here!!!"
msgstr ""
-#: ../PLCOpenEditor.py:3476 ../PLCOpenEditor.py:3620 ../Viewer.py:250
-#: ../TextViewer.py:231 ../dialogs/ConnectionDialog.py:215
-#: ../dialogs/FBDBlockDialog.py:260
+#: ../PLCOpenEditor.py:3514 ../PLCOpenEditor.py:3658 ../Viewer.py:250
+#: ../TextViewer.py:245 ../TextViewer.py:262
+#: ../dialogs/ConnectionDialog.py:215 ../dialogs/FBDBlockDialog.py:260
#, python-format
msgid "\"%s\" element for this pou already exists!"
msgstr ""
-#: ../plcopen/structures.py:97
+#: ../plcopen/structures.py:96
#, python-format
msgid "\"%s\" function cancelled in \"%s\" POU: No input connected"
msgstr ""
-#: ../PLCOpenEditor.py:1349 ../PLCOpenEditor.py:3152 ../PLCOpenEditor.py:3305
-#: ../PLCOpenEditor.py:3468 ../PLCOpenEditor.py:3612 ../PLCOpenEditor.py:3683
-#: ../PLCOpenEditor.py:3746 ../VariablePanel.py:714
+#: ../PLCOpenEditor.py:1367 ../PLCOpenEditor.py:3190 ../PLCOpenEditor.py:3343
+#: ../PLCOpenEditor.py:3506 ../PLCOpenEditor.py:3650 ../PLCOpenEditor.py:3721
+#: ../PLCOpenEditor.py:3784 ../VariablePanel.py:735
#: ../dialogs/ConnectionDialog.py:207 ../dialogs/FBDBlockDialog.py:252
#: ../dialogs/FBDVariableDialog.py:268 ../dialogs/PouNameDialog.py:63
#: ../dialogs/SFCStepDialog.py:183 ../dialogs/SFCStepNameDialog.py:65
@@ -131,19 +132,19 @@
msgid "\"%s\" is already used by \"%s\"!"
msgstr ""
-#: ../plcopen/plcopen.py:2366
+#: ../plcopen/plcopen.py:2386
#, python-format
msgid "\"%s\" is an invalid value!"
msgstr ""
-#: ../PLCOpenEditor.py:2637 ../PLCOpenEditor.py:2665
+#: ../PLCOpenEditor.py:2673 ../PLCOpenEditor.py:2702
#, python-format
msgid "\"%s\" is not a valid folder!"
msgstr ""
-#: ../PLCOpenEditor.py:1347 ../PLCOpenEditor.py:3148 ../PLCOpenEditor.py:3301
-#: ../PLCOpenEditor.py:3464 ../PLCOpenEditor.py:3608 ../PLCOpenEditor.py:3679
-#: ../PLCOpenEditor.py:3742 ../VariablePanel.py:709
+#: ../PLCOpenEditor.py:1365 ../PLCOpenEditor.py:3186 ../PLCOpenEditor.py:3339
+#: ../PLCOpenEditor.py:3502 ../PLCOpenEditor.py:3646 ../PLCOpenEditor.py:3717
+#: ../PLCOpenEditor.py:3780 ../VariablePanel.py:730
#: ../dialogs/ConnectionDialog.py:203 ../dialogs/FBDBlockDialog.py:248
#: ../dialogs/PouNameDialog.py:59 ../dialogs/SFCStepDialog.py:179
#: ../dialogs/SFCStepNameDialog.py:61 ../DataTypeEditor.py:760
@@ -151,14 +152,14 @@
msgid "\"%s\" is not a valid identifier!"
msgstr ""
-#: ../PLCOpenEditor.py:283 ../PLCOpenEditor.py:2302 ../PLCOpenEditor.py:2322
+#: ../PLCOpenEditor.py:288 ../PLCOpenEditor.py:2322 ../PLCOpenEditor.py:2342
#, python-format
msgid "\"%s\" is used by one or more POUs. It can't be removed!"
msgstr ""
-#: ../PLCOpenEditor.py:1367 ../PLCOpenEditor.py:3309 ../Viewer.py:248
-#: ../Viewer.py:274 ../TextViewer.py:229 ../dialogs/ConnectionDialog.py:211
-#: ../dialogs/FBDBlockDialog.py:256
+#: ../PLCOpenEditor.py:1385 ../PLCOpenEditor.py:3347 ../Viewer.py:248
+#: ../Viewer.py:274 ../TextViewer.py:243 ../TextViewer.py:260
+#: ../dialogs/ConnectionDialog.py:211 ../dialogs/FBDBlockDialog.py:256
#, python-format
msgid "\"%s\" pou already exists!"
msgstr ""
@@ -195,7 +196,7 @@
"Right value must be greater than left value."
msgstr ""
-#: ../PLCControler.py:629
+#: ../PLCControler.py:634
#, python-format
msgid "%s \"%s\" can't be pasted as a %s."
msgstr ""
@@ -205,61 +206,61 @@
msgid "%s Graphics"
msgstr ""
-#: ../plcopen/plcopen.py:1465 ../plcopen/plcopen.py:1475
-#: ../plcopen/plcopen.py:1485 ../plcopen/plcopen.py:1495
-#: ../plcopen/plcopen.py:1504
+#: ../plcopen/plcopen.py:1484 ../plcopen/plcopen.py:1494
+#: ../plcopen/plcopen.py:1504 ../plcopen/plcopen.py:1514
+#: ../plcopen/plcopen.py:1523
#, python-format
msgid "%s body don't have instances!"
msgstr ""
-#: ../plcopen/plcopen.py:1527 ../plcopen/plcopen.py:1534
+#: ../plcopen/plcopen.py:1546 ../plcopen/plcopen.py:1553
#, python-format
msgid "%s body don't have text!"
msgstr ""
-#: ../PLCOpenEditor.py:4333 ../PLCOpenEditor.py:4335 ../PLCOpenEditor.py:4336
+#: ../PLCOpenEditor.py:4394 ../PLCOpenEditor.py:4396 ../PLCOpenEditor.py:4397
msgid ", "
msgstr ""
-#: ../PLCOpenEditor.py:3296 ../PLCOpenEditor.py:3459 ../PLCOpenEditor.py:3603
+#: ../PLCOpenEditor.py:3334 ../PLCOpenEditor.py:3497 ../PLCOpenEditor.py:3641
#: ../dialogs/SFCTransitionDialog.py:208
#, python-format
msgid ", %s"
msgstr ""
-#: ../PLCOpenEditor.py:4331
+#: ../PLCOpenEditor.py:4392
msgid ". "
msgstr ""
-#: ../PLCOpenEditor.py:1370 ../PLCOpenEditor.py:1412 ../PLCOpenEditor.py:1432
-#: ../PLCOpenEditor.py:3313 ../PLCOpenEditor.py:3691 ../PLCOpenEditor.py:3754
+#: ../PLCOpenEditor.py:1388 ../PLCOpenEditor.py:1430 ../PLCOpenEditor.py:1450
+#: ../PLCOpenEditor.py:3351 ../PLCOpenEditor.py:3729 ../PLCOpenEditor.py:3792
#, python-format
msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?"
msgstr ""
-#: ../PLCOpenEditor.py:1383 ../PLCOpenEditor.py:1394 ../PLCOpenEditor.py:3472
-#: ../PLCOpenEditor.py:3616 ../PLCOpenEditor.py:3687 ../PLCOpenEditor.py:3750
-#: ../VariablePanel.py:719 ../dialogs/PouNameDialog.py:67
+#: ../PLCOpenEditor.py:1401 ../PLCOpenEditor.py:1412 ../PLCOpenEditor.py:3510
+#: ../PLCOpenEditor.py:3654 ../PLCOpenEditor.py:3725 ../PLCOpenEditor.py:3788
+#: ../VariablePanel.py:740 ../dialogs/PouNameDialog.py:67
#: ../dialogs/SFCStepDialog.py:187 ../dialogs/SFCStepNameDialog.py:69
#, python-format
msgid "A POU named \"%s\" already exists!"
msgstr ""
-#: ../VariablePanel.py:1201
+#: ../VariablePanel.py:1239
msgid "A location must be selected!"
msgstr ""
-#: ../PLCOpenEditor.py:1385 ../PLCOpenEditor.py:1396 ../VariablePanel.py:724
+#: ../PLCOpenEditor.py:1403 ../PLCOpenEditor.py:1414 ../VariablePanel.py:745
#: ../dialogs/SFCStepDialog.py:191 ../dialogs/SFCStepNameDialog.py:73
#, python-format
msgid "A variable with \"%s\" as name already exists in this pou!"
msgstr ""
-#: ../PLCOpenEditor.py:2494
+#: ../PLCOpenEditor.py:2514
msgid "About"
msgstr ""
-#: ../PLCOpenEditor.py:2397
+#: ../PLCOpenEditor.py:2417
msgid "About PLCOpenEditor"
msgstr ""
@@ -271,15 +272,15 @@
msgid "Action"
msgstr ""
-#: ../PLCOpenEditor.py:3592
+#: ../PLCOpenEditor.py:3630
msgid "Action Name"
msgstr ""
-#: ../PLCOpenEditor.py:3559
+#: ../PLCOpenEditor.py:3597
msgid "Action Name:"
msgstr ""
-#: ../plcopen/plcopen.py:1213
+#: ../plcopen/plcopen.py:1232
#, python-format
msgid "Action with name %s doesn't exist!"
msgstr ""
@@ -292,28 +293,28 @@
msgid "Actions:"
msgstr ""
-#: ../VariablePanel.py:483 ../dialogs/ActionBlockDialog.py:274
+#: ../VariablePanel.py:499 ../dialogs/ActionBlockDialog.py:274
#: ../DataTypeEditor.py:539
msgid "Add"
msgstr ""
-#: ../PLCOpenEditor.py:1589 ../PLCOpenEditor.py:1672
+#: ../PLCOpenEditor.py:1606 ../PLCOpenEditor.py:1689
msgid "Add Action"
msgstr ""
-#: ../PLCOpenEditor.py:1655
+#: ../PLCOpenEditor.py:1672
msgid "Add Configuration"
msgstr ""
-#: ../PLCOpenEditor.py:1635
+#: ../PLCOpenEditor.py:1652
msgid "Add DataType"
msgstr ""
-#: ../Viewer.py:436
+#: ../Viewer.py:401
msgid "Add Divergence Branch"
msgstr ""
-#: ../PLCOpenEditor.py:328
+#: ../PLCOpenEditor.py:333
msgid "Add Element"
msgstr ""
@@ -321,11 +322,11 @@
msgid "Add Instance"
msgstr ""
-#: ../PLCOpenEditor.py:1642
+#: ../PLCOpenEditor.py:1659
msgid "Add POU"
msgstr ""
-#: ../PLCOpenEditor.py:1618 ../PLCOpenEditor.py:1683
+#: ../PLCOpenEditor.py:1635 ../PLCOpenEditor.py:1700
msgid "Add Resource"
msgstr ""
@@ -333,15 +334,15 @@
msgid "Add Task"
msgstr ""
-#: ../PLCOpenEditor.py:1586 ../PLCOpenEditor.py:1661
+#: ../PLCOpenEditor.py:1603 ../PLCOpenEditor.py:1678
msgid "Add Transition"
msgstr ""
-#: ../Viewer.py:431
+#: ../Viewer.py:396
msgid "Add Wire Segment"
msgstr ""
-#: ../PLCOpenEditor.py:2177
+#: ../PLCOpenEditor.py:2194
msgid "Add a new data type"
msgstr ""
@@ -349,7 +350,7 @@
msgid "Add a new initial step"
msgstr ""
-#: ../Viewer.py:2032 ../SFCViewer.py:698
+#: ../Viewer.py:2020 ../SFCViewer.py:698
msgid "Add a new jump"
msgstr ""
@@ -357,11 +358,11 @@
msgid "Add a new step"
msgstr ""
-#: ../PLCOpenEditor.py:2221
+#: ../PLCOpenEditor.py:2246
msgid "Add new configuration"
msgstr ""
-#: ../PLCOpenEditor.py:2232
+#: ../PLCOpenEditor.py:2259
msgid "Add new resource"
msgstr ""
@@ -369,15 +370,15 @@
msgid "Addition"
msgstr ""
-#: ../plcopen/structures.py:222
+#: ../plcopen/structures.py:221
msgid "Additional function blocks"
msgstr ""
-#: ../Viewer.py:445
+#: ../Viewer.py:410
msgid "Alignment"
msgstr ""
-#: ../VariablePanel.py:69 ../VariablePanel.py:1018 ../VariablePanel.py:1135
+#: ../VariablePanel.py:70 ../VariablePanel.py:1056 ../VariablePanel.py:1173
msgid "All"
msgstr ""
@@ -402,11 +403,11 @@
msgid "Arithmetic"
msgstr ""
-#: ../DataTypeEditor.py:236
+#: ../VariablePanel.py:798 ../DataTypeEditor.py:236
msgid "Array"
msgstr ""
-#: ../plcopen/iec_std.csv:50
+#: ../plcopen/iec_std.csv:39
msgid "Assignment"
msgstr ""
@@ -414,11 +415,11 @@
msgid "At least a variable or an expression must be selected!"
msgstr ""
-#: ../PLCOpenEditor.py:2947
+#: ../PLCOpenEditor.py:2985
msgid "Author"
msgstr ""
-#: ../PLCOpenEditor.py:2932
+#: ../PLCOpenEditor.py:2970
msgid "Author Name (optional):"
msgstr ""
@@ -426,35 +427,35 @@
msgid "Base Type:"
msgstr ""
-#: ../VariablePanel.py:758 ../DataTypeEditor.py:801
+#: ../VariablePanel.py:778 ../DataTypeEditor.py:801
msgid "Base Types"
msgstr ""
-#: ../plcopen/iec_std.csv:59
+#: ../plcopen/iec_std.csv:70
msgid "Binary selection (1 of 2)"
msgstr ""
-#: ../plcopen/iec_std.csv:51
+#: ../plcopen/iec_std.csv:62
msgid "Bit-shift"
msgstr ""
-#: ../plcopen/iec_std.csv:55
+#: ../plcopen/iec_std.csv:66
msgid "Bitwise"
msgstr ""
-#: ../plcopen/iec_std.csv:55
+#: ../plcopen/iec_std.csv:66
msgid "Bitwise AND"
msgstr ""
-#: ../plcopen/iec_std.csv:56
+#: ../plcopen/iec_std.csv:67
msgid "Bitwise OR"
msgstr ""
-#: ../plcopen/iec_std.csv:57
+#: ../plcopen/iec_std.csv:68
msgid "Bitwise XOR"
msgstr ""
-#: ../plcopen/iec_std.csv:58
+#: ../plcopen/iec_std.csv:69
msgid "Bitwise inverting"
msgstr ""
@@ -462,66 +463,66 @@
msgid "Block Properties"
msgstr ""
-#: ../PLCOpenEditor.py:1896 ../dialogs/FBDBlockDialog.py:268
+#: ../PLCOpenEditor.py:1913 ../dialogs/FBDBlockDialog.py:268
msgid "Block Types"
msgstr ""
-#: ../Viewer.py:403
+#: ../Viewer.py:368
msgid "Bottom"
msgstr ""
-#: ../VariablePanel.py:1077
+#: ../VariablePanel.py:1115
msgid "Browse Locations"
msgstr ""
-#: ../PLCOpenEditor.py:1837
+#: ../PLCOpenEditor.py:1854
msgid "CSV Log"
msgstr ""
-#: ../plcopen/plcopen.py:1407 ../plcopen/plcopen.py:1421
-#: ../plcopen/plcopen.py:1442 ../plcopen/plcopen.py:1458
+#: ../plcopen/plcopen.py:1426 ../plcopen/plcopen.py:1440
+#: ../plcopen/plcopen.py:1461 ../plcopen/plcopen.py:1477
msgid "Can only generate execution order on FBD networks!"
msgstr ""
-#: ../VariablePanel.py:311
+#: ../VariablePanel.py:327
msgid "Can only give a location to local or global variables"
msgstr ""
-#: ../PLCOpenEditor.py:2632
+#: ../PLCOpenEditor.py:2668
#, python-format
msgid "Can't generate program to file %s!"
msgstr ""
-#: ../VariablePanel.py:309
+#: ../VariablePanel.py:325
msgid "Can't give a location to a function block instance"
msgstr ""
-#: ../PLCOpenEditor.py:2663
+#: ../PLCOpenEditor.py:2700
#, python-format
msgid "Can't save project to file %s!"
msgstr ""
-#: ../Viewer.py:394
+#: ../Viewer.py:359
msgid "Center"
msgstr ""
-#: ../PLCOpenEditor.py:1607
+#: ../PLCOpenEditor.py:1624
msgid "Change POU Type To"
msgstr ""
-#: ../plcopen/iec_std.csv:70
+#: ../plcopen/iec_std.csv:81
msgid "Character string"
msgstr ""
-#: ../PLCOpenEditor.py:2598 ../PLCOpenEditor.py:2622 ../PLCOpenEditor.py:2657
+#: ../PLCOpenEditor.py:2630 ../PLCOpenEditor.py:2658 ../PLCOpenEditor.py:2694
msgid "Choose a file"
msgstr ""
-#: ../VariablePanel.py:52 ../VariablePanel.py:53
+#: ../VariablePanel.py:53 ../VariablePanel.py:54
msgid "Class"
msgstr ""
-#: ../VariablePanel.py:475
+#: ../VariablePanel.py:491
msgid "Class Filter:"
msgstr ""
@@ -529,47 +530,47 @@
msgid "Class:"
msgstr ""
-#: ../PLCOpenEditor.py:367
+#: ../PLCOpenEditor.py:372
msgid "Clear Errors\tCTRL+K"
msgstr ""
-#: ../Viewer.py:441
+#: ../Viewer.py:406
msgid "Clear Execution Order"
msgstr ""
-#: ../PLCOpenEditor.py:2522
+#: ../PLCOpenEditor.py:2548
msgid "Close Application"
msgstr ""
-#: ../PLCOpenEditor.py:871 ../PLCOpenEditor.py:2450
+#: ../PLCOpenEditor.py:887 ../PLCOpenEditor.py:2470
msgid "Close Project"
msgstr ""
-#: ../PLCOpenEditor.py:2448
+#: ../PLCOpenEditor.py:2468
msgid "Close Tab\tCTRL+W"
msgstr ""
-#: ../LDViewer.py:478
+#: ../LDViewer.py:505
msgid "Comment"
msgstr ""
-#: ../PLCOpenEditor.py:2916
+#: ../PLCOpenEditor.py:2954
msgid "Company Name (required):"
msgstr ""
-#: ../PLCOpenEditor.py:2924
+#: ../PLCOpenEditor.py:2962
msgid "Company URL (optional):"
msgstr ""
-#: ../plcopen/iec_std.csv:64
+#: ../plcopen/iec_std.csv:75
msgid "Comparison"
msgstr ""
-#: ../plcopen/iec_std.csv:74
+#: ../plcopen/iec_std.csv:85
msgid "Concatenation"
msgstr ""
-#: ../PLCOpenEditor.py:338
+#: ../PLCOpenEditor.py:343
msgid "Configuration"
msgstr ""
@@ -593,11 +594,11 @@
msgid "Connectors:"
msgstr ""
-#: ../VariablePanel.py:59
+#: ../VariablePanel.py:60
msgid "Constant"
msgstr ""
-#: ../PLCOpenEditor.py:3006
+#: ../PLCOpenEditor.py:3044
msgid "Content Description (optional):"
msgstr ""
@@ -621,11 +622,11 @@
msgid "Conversion to time-of-day"
msgstr ""
-#: ../PLCOpenEditor.py:323
+#: ../PLCOpenEditor.py:328
msgid "Copy\tCTRL+C"
msgstr ""
-#: ../PLCOpenEditor.py:1594
+#: ../PLCOpenEditor.py:1611
msgid "Copy POU"
msgstr ""
@@ -633,51 +634,47 @@
msgid "Cosine"
msgstr ""
-#: ../PLCControler.py:615 ../PLCControler.py:647
+#: ../PLCControler.py:620 ../PLCControler.py:652
msgid "Couldn't paste non-POU object."
msgstr ""
-#: ../PLCOpenEditor.py:3234
+#: ../PLCOpenEditor.py:3272
msgid "Create a new POU"
msgstr ""
-#: ../PLCOpenEditor.py:2253
-msgid "Create a new POU from"
-msgstr ""
-
-#: ../PLCOpenEditor.py:3555
+#: ../PLCOpenEditor.py:3593
msgid "Create a new action"
msgstr ""
-#: ../PLCOpenEditor.py:215
+#: ../PLCOpenEditor.py:220
msgid "Create a new action block"
msgstr ""
-#: ../PLCOpenEditor.py:170 ../PLCOpenEditor.py:197 ../PLCOpenEditor.py:227
+#: ../PLCOpenEditor.py:175 ../PLCOpenEditor.py:202 ../PLCOpenEditor.py:232
msgid "Create a new block"
msgstr ""
-#: ../PLCOpenEditor.py:191
+#: ../PLCOpenEditor.py:196
msgid "Create a new branch"
msgstr ""
-#: ../PLCOpenEditor.py:185
+#: ../PLCOpenEditor.py:190
msgid "Create a new coil"
msgstr ""
-#: ../PLCOpenEditor.py:164 ../PLCOpenEditor.py:176 ../PLCOpenEditor.py:203
+#: ../PLCOpenEditor.py:169 ../PLCOpenEditor.py:181 ../PLCOpenEditor.py:208
msgid "Create a new comment"
msgstr ""
-#: ../PLCOpenEditor.py:173 ../PLCOpenEditor.py:200 ../PLCOpenEditor.py:230
+#: ../PLCOpenEditor.py:178 ../PLCOpenEditor.py:205 ../PLCOpenEditor.py:235
msgid "Create a new connection"
msgstr ""
-#: ../PLCOpenEditor.py:188 ../PLCOpenEditor.py:236
+#: ../PLCOpenEditor.py:193 ../PLCOpenEditor.py:241
msgid "Create a new contact"
msgstr ""
-#: ../PLCOpenEditor.py:218
+#: ../PLCOpenEditor.py:223
msgid "Create a new divergence"
msgstr ""
@@ -685,39 +682,47 @@
msgid "Create a new divergence or convergence"
msgstr ""
-#: ../PLCOpenEditor.py:206
+#: ../PLCOpenEditor.py:211
msgid "Create a new initial step"
msgstr ""
-#: ../PLCOpenEditor.py:221
+#: ../PLCOpenEditor.py:226
msgid "Create a new jump"
msgstr ""
-#: ../PLCOpenEditor.py:179 ../PLCOpenEditor.py:233
+#: ../PLCOpenEditor.py:184 ../PLCOpenEditor.py:238
msgid "Create a new power rail"
msgstr ""
-#: ../PLCOpenEditor.py:182
+#: ../PLCOpenEditor.py:187
msgid "Create a new rung"
msgstr ""
-#: ../PLCOpenEditor.py:209
+#: ../PLCOpenEditor.py:214
msgid "Create a new step"
msgstr ""
-#: ../PLCOpenEditor.py:212 ../PLCOpenEditor.py:3411
+#: ../PLCOpenEditor.py:217 ../PLCOpenEditor.py:3449
msgid "Create a new transition"
msgstr ""
-#: ../PLCOpenEditor.py:167 ../PLCOpenEditor.py:194 ../PLCOpenEditor.py:224
+#: ../PLCOpenEditor.py:172 ../PLCOpenEditor.py:199 ../PLCOpenEditor.py:229
msgid "Create a new variable"
msgstr ""
-#: ../PLCOpenEditor.py:321
+#: ../PLCOpenEditor.py:326
msgid "Cut\tCTRL+X"
msgstr ""
-#: ../PLCOpenEditor.py:330
+#: ../plcopen/iec_std.csv:42 ../plcopen/iec_std.csv:44
+#: ../plcopen/iec_std.csv:46 ../plcopen/iec_std.csv:50
+#: ../plcopen/iec_std.csv:52 ../plcopen/iec_std.csv:54
+#: ../plcopen/iec_std.csv:56 ../plcopen/iec_std.csv:58
+#: ../plcopen/iec_std.csv:60
+msgid "DEPRECATED"
+msgstr ""
+
+#: ../PLCOpenEditor.py:335
msgid "Data Type"
msgstr ""
@@ -729,35 +734,36 @@
msgid "Data type conversion"
msgstr ""
-#: ../plcopen/iec_std.csv:36
+#: ../plcopen/iec_std.csv:44 ../plcopen/iec_std.csv:45
msgid "Date addition"
msgstr ""
-#: ../plcopen/iec_std.csv:44 ../plcopen/iec_std.csv:45
+#: ../plcopen/iec_std.csv:56 ../plcopen/iec_std.csv:57
+#: ../plcopen/iec_std.csv:58 ../plcopen/iec_std.csv:59
msgid "Date and time subtraction"
msgstr ""
-#: ../plcopen/iec_std.csv:41
+#: ../plcopen/iec_std.csv:50 ../plcopen/iec_std.csv:51
msgid "Date subtraction"
msgstr ""
-#: ../Viewer.py:2885
+#: ../Viewer.py:2873
#, python-format
msgid "Debug: %s"
msgstr ""
-#: ../PLCOpenEditor.py:618
+#: ../PLCOpenEditor.py:623
msgid "Debugger"
msgstr ""
-#: ../PLCOpenEditor.py:342 ../PLCOpenEditor.py:1612 ../PLCOpenEditor.py:1621
-#: ../PLCOpenEditor.py:1627 ../PLCOpenEditor.py:4121 ../Viewer.py:450
-#: ../VariablePanel.py:488 ../dialogs/ActionBlockDialog.py:279
+#: ../PLCOpenEditor.py:347 ../PLCOpenEditor.py:1629 ../PLCOpenEditor.py:1638
+#: ../PLCOpenEditor.py:1644 ../PLCOpenEditor.py:4164 ../Viewer.py:415
+#: ../VariablePanel.py:504 ../dialogs/ActionBlockDialog.py:279
#: ../DataTypeEditor.py:544
msgid "Delete"
msgstr ""
-#: ../Viewer.py:438
+#: ../Viewer.py:403
msgid "Delete Divergence Branch"
msgstr ""
@@ -769,7 +775,7 @@
msgid "Delete Task"
msgstr ""
-#: ../Viewer.py:433
+#: ../Viewer.py:398
msgid "Delete Wire Segment"
msgstr ""
@@ -777,7 +783,7 @@
msgid "Delete item"
msgstr ""
-#: ../plcopen/iec_std.csv:77
+#: ../plcopen/iec_std.csv:88
msgid "Deletion (within)"
msgstr ""
@@ -785,7 +791,7 @@
msgid "Derivation Type:"
msgstr ""
-#: ../plcopen/structures.py:236
+#: ../plcopen/structures.py:235
msgid ""
"Derivative\n"
"The derivative function block produces an output XOUT proportional to the rate of change of the input XIN."
@@ -795,7 +801,7 @@
msgid "Dimensions:"
msgstr ""
-#: ../VariablePanel.py:1094
+#: ../VariablePanel.py:1132
msgid "Direction:"
msgstr ""
@@ -803,23 +809,23 @@
msgid "Directly"
msgstr ""
-#: ../PLCOpenEditor.py:306
+#: ../PLCOpenEditor.py:311
msgid "Display"
msgstr ""
-#: ../plcopen/iec_std.csv:46
+#: ../plcopen/iec_std.csv:36
msgid "Division"
msgstr ""
-#: ../VariablePanel.py:52 ../VariablePanel.py:53
+#: ../VariablePanel.py:53 ../VariablePanel.py:54
msgid "Documentation"
msgstr ""
-#: ../PLCOpenEditor.py:2626
+#: ../PLCOpenEditor.py:2662
msgid "Done"
msgstr ""
-#: ../plcopen/structures.py:199
+#: ../plcopen/structures.py:198
msgid ""
"Down-counter\n"
"The down-counter can be used to signal when a count has reached zero, on counting down from a preset value."
@@ -829,11 +835,11 @@
msgid "Duration"
msgstr ""
-#: ../PLCOpenEditor.py:305
+#: ../PLCOpenEditor.py:310
msgid "Edit"
msgstr ""
-#: ../Viewer.py:448
+#: ../Viewer.py:413
msgid "Edit Block"
msgstr ""
@@ -853,7 +859,7 @@
msgid "Edit action block properties"
msgstr ""
-#: ../Viewer.py:1857 ../Viewer.py:1859 ../Viewer.py:2358 ../Viewer.py:2360
+#: ../Viewer.py:1845 ../Viewer.py:1847 ../Viewer.py:2346 ../Viewer.py:2348
msgid "Edit comment"
msgstr ""
@@ -861,7 +867,7 @@
msgid "Edit item"
msgstr ""
-#: ../Viewer.py:2323
+#: ../Viewer.py:2311
msgid "Edit jump target"
msgstr ""
@@ -877,7 +883,7 @@
msgid "Elements :"
msgstr ""
-#: ../PLCOpenEditor.py:318
+#: ../PLCOpenEditor.py:323
msgid "Enable Undo/Redo"
msgstr ""
@@ -885,34 +891,34 @@
msgid "Enumerated"
msgstr ""
-#: ../plcopen/iec_std.csv:66
+#: ../plcopen/iec_std.csv:77
msgid "Equal to"
msgstr ""
-#: ../PLCOpenEditor.py:865 ../PLCOpenEditor.py:1370 ../PLCOpenEditor.py:1407
-#: ../PLCOpenEditor.py:1412 ../PLCOpenEditor.py:1427 ../PLCOpenEditor.py:1432
-#: ../PLCOpenEditor.py:2280 ../PLCOpenEditor.py:2633 ../PLCOpenEditor.py:2638
-#: ../PLCOpenEditor.py:3052 ../PLCOpenEditor.py:3144 ../PLCOpenEditor.py:3148
-#: ../PLCOpenEditor.py:3152 ../PLCOpenEditor.py:3156 ../PLCOpenEditor.py:3297
-#: ../PLCOpenEditor.py:3301 ../PLCOpenEditor.py:3305 ../PLCOpenEditor.py:3309
-#: ../PLCOpenEditor.py:3460 ../PLCOpenEditor.py:3464 ../PLCOpenEditor.py:3468
-#: ../PLCOpenEditor.py:3472 ../PLCOpenEditor.py:3476 ../PLCOpenEditor.py:3604
-#: ../PLCOpenEditor.py:3608 ../PLCOpenEditor.py:3612 ../PLCOpenEditor.py:3616
-#: ../PLCOpenEditor.py:3620 ../PLCOpenEditor.py:3675 ../PLCOpenEditor.py:3679
-#: ../PLCOpenEditor.py:3683 ../PLCOpenEditor.py:3687 ../PLCOpenEditor.py:3738
-#: ../PLCOpenEditor.py:3742 ../PLCOpenEditor.py:3746 ../PLCOpenEditor.py:3750
-#: ../PLCOpenEditor.py:4053 ../PLCOpenEditor.py:4356 ../PLCOpenEditor.py:4366
-#: ../Viewer.py:369 ../TextViewer.py:250 ../LDViewer.py:628 ../LDViewer.py:850
-#: ../LDViewer.py:854 ../VariablePanel.py:358 ../VariablePanel.py:709
-#: ../VariablePanel.py:714 ../VariablePanel.py:719 ../VariablePanel.py:724
-#: ../VariablePanel.py:1201 ../dialogs/ConnectionDialog.py:199
+#: ../PLCOpenEditor.py:881 ../PLCOpenEditor.py:1388 ../PLCOpenEditor.py:1425
+#: ../PLCOpenEditor.py:1430 ../PLCOpenEditor.py:1445 ../PLCOpenEditor.py:1450
+#: ../PLCOpenEditor.py:2300 ../PLCOpenEditor.py:2669 ../PLCOpenEditor.py:2674
+#: ../PLCOpenEditor.py:3090 ../PLCOpenEditor.py:3182 ../PLCOpenEditor.py:3186
+#: ../PLCOpenEditor.py:3190 ../PLCOpenEditor.py:3194 ../PLCOpenEditor.py:3335
+#: ../PLCOpenEditor.py:3339 ../PLCOpenEditor.py:3343 ../PLCOpenEditor.py:3347
+#: ../PLCOpenEditor.py:3498 ../PLCOpenEditor.py:3502 ../PLCOpenEditor.py:3506
+#: ../PLCOpenEditor.py:3510 ../PLCOpenEditor.py:3514 ../PLCOpenEditor.py:3642
+#: ../PLCOpenEditor.py:3646 ../PLCOpenEditor.py:3650 ../PLCOpenEditor.py:3654
+#: ../PLCOpenEditor.py:3658 ../PLCOpenEditor.py:3713 ../PLCOpenEditor.py:3717
+#: ../PLCOpenEditor.py:3721 ../PLCOpenEditor.py:3725 ../PLCOpenEditor.py:3776
+#: ../PLCOpenEditor.py:3780 ../PLCOpenEditor.py:3784 ../PLCOpenEditor.py:3788
+#: ../PLCOpenEditor.py:4091 ../PLCOpenEditor.py:4417 ../PLCOpenEditor.py:4427
+#: ../Viewer.py:334 ../TextViewer.py:281 ../LDViewer.py:665 ../LDViewer.py:881
+#: ../LDViewer.py:885 ../VariablePanel.py:374 ../VariablePanel.py:730
+#: ../VariablePanel.py:735 ../VariablePanel.py:740 ../VariablePanel.py:745
+#: ../VariablePanel.py:1239 ../dialogs/ConnectionDialog.py:199
#: ../dialogs/ConnectionDialog.py:203 ../dialogs/ConnectionDialog.py:207
#: ../dialogs/ConnectionDialog.py:211 ../dialogs/ConnectionDialog.py:215
#: ../dialogs/FBDBlockDialog.py:240 ../dialogs/FBDBlockDialog.py:244
#: ../dialogs/FBDBlockDialog.py:248 ../dialogs/FBDBlockDialog.py:252
#: ../dialogs/FBDBlockDialog.py:256 ../dialogs/FBDBlockDialog.py:260
#: ../dialogs/FBDVariableDialog.py:264 ../dialogs/FBDVariableDialog.py:268
-#: ../dialogs/ForceVariableDialog.py:92 ../dialogs/ForceVariableDialog.py:96
+#: ../dialogs/ForceVariableDialog.py:170 ../dialogs/ForceVariableDialog.py:174
#: ../dialogs/PouNameDialog.py:55 ../dialogs/PouNameDialog.py:59
#: ../dialogs/PouNameDialog.py:63 ../dialogs/PouNameDialog.py:67
#: ../dialogs/SFCStepDialog.py:175 ../dialogs/SFCStepDialog.py:179
@@ -935,7 +941,7 @@
msgid "Execution Order:"
msgstr ""
-#: ../plcopen/iec_std.csv:49
+#: ../plcopen/iec_std.csv:38
msgid "Exponent"
msgstr ""
@@ -947,43 +953,43 @@
msgid "Expression:"
msgstr ""
-#: ../VariablePanel.py:71
+#: ../VariablePanel.py:72
msgid "External"
msgstr ""
-#: ../PLCOpenEditor.py:2984 ../PLCOpenEditor.py:3179 ../PLCOpenEditor.py:3189
-#: ../PLCOpenEditor.py:3368 ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3022 ../PLCOpenEditor.py:3217 ../PLCOpenEditor.py:3227
+#: ../PLCOpenEditor.py:3406 ../PLCOpenEditor.py:3550
msgid "FBD"
msgstr ""
-#: ../Viewer.py:428 ../dialogs/LDElementDialog.py:155
+#: ../Viewer.py:393 ../dialogs/LDElementDialog.py:155
msgid "Falling Edge"
msgstr ""
-#: ../plcopen/structures.py:189
+#: ../plcopen/structures.py:188
msgid ""
"Falling edge detector\n"
"The output produces a single pulse when a falling edge is detected."
msgstr ""
-#: ../PLCOpenEditor.py:304
+#: ../PLCOpenEditor.py:309
msgid "File"
msgstr ""
-#: ../plcopen/iec_std.csv:79
+#: ../plcopen/iec_std.csv:90
msgid "Find position"
msgstr ""
-#: ../PLCOpenEditor.py:4184 ../Viewer.py:1130
+#: ../PLCOpenEditor.py:4232 ../Viewer.py:1095
msgid "Force value"
msgstr ""
-#: ../dialogs/ForceVariableDialog.py:77
+#: ../dialogs/ForceVariableDialog.py:155
msgid "Forcing Variable Value"
msgstr ""
-#: ../PLCOpenEditor.py:3052 ../PLCOpenEditor.py:3297 ../PLCOpenEditor.py:3460
-#: ../PLCOpenEditor.py:3604 ../dialogs/SFCTransitionDialog.py:209
+#: ../PLCOpenEditor.py:3090 ../PLCOpenEditor.py:3335 ../PLCOpenEditor.py:3498
+#: ../PLCOpenEditor.py:3642 ../dialogs/SFCTransitionDialog.py:209
#, python-format
msgid "Form isn't complete. %s must be filled!"
msgstr ""
@@ -996,15 +1002,15 @@
msgid "Form isn't complete. Valid block type must be selected!"
msgstr ""
-#: ../PLCOpenEditor.py:332
+#: ../PLCOpenEditor.py:337
msgid "Function"
msgstr ""
-#: ../PLCOpenEditor.py:334 ../PLCOpenEditor.py:1602
+#: ../PLCOpenEditor.py:339 ../PLCOpenEditor.py:1619
msgid "Function Block"
msgstr ""
-#: ../VariablePanel.py:786
+#: ../VariablePanel.py:810
msgid "Function Block Types"
msgstr ""
@@ -1020,7 +1026,7 @@
msgid "Function Blocks can't be used in Transitions!"
msgstr ""
-#: ../PLCControler.py:1719
+#: ../PLCControler.py:1801
#, python-format
msgid "FunctionBlock \"%s\" can't be pasted in a Function!!!"
msgstr ""
@@ -1029,64 +1035,72 @@
msgid "Functions"
msgstr ""
-#: ../PLCOpenEditor.py:2457
+#: ../PLCOpenEditor.py:2477
msgid "Generate Program\tCTRL+G"
msgstr ""
-#: ../VariablePanel.py:72
+#: ../VariablePanel.py:73
msgid "Global"
msgstr ""
-#: ../PLCOpenEditor.py:1834
+#: ../PLCOpenEditor.py:1851
msgid "Graphic Panel"
msgstr ""
-#: ../PLCOpenEditor.py:2989
+#: ../PLCOpenEditor.py:3027
msgid "Graphics"
msgstr ""
-#: ../plcopen/iec_std.csv:64
+#: ../plcopen/iec_std.csv:75
msgid "Greater than"
msgstr ""
-#: ../plcopen/iec_std.csv:65
+#: ../plcopen/iec_std.csv:76
msgid "Greater than or equal to"
msgstr ""
-#: ../PLCOpenEditor.py:2968
+#: ../PLCOpenEditor.py:3014
+msgid "Grid Resolution:"
+msgstr ""
+
+#: ../PLCOpenEditor.py:3006
msgid "Height:"
msgstr ""
-#: ../PLCOpenEditor.py:307
+#: ../PLCOpenEditor.py:312
msgid "Help"
msgstr ""
-#: ../plcopen/structures.py:251
+#: ../PLCOpenEditor.py:2741
+msgid "Horizontal:"
+msgstr ""
+
+#: ../plcopen/structures.py:250
msgid ""
"Hysteresis\n"
"The hysteresis function block provides a hysteresis boolean output driven by the difference of two floating point (REAL) inputs XIN1 and XIN2."
msgstr ""
-#: ../PLCOpenEditor.py:3179 ../PLCOpenEditor.py:3189 ../PLCOpenEditor.py:3368
-#: ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3217 ../PLCOpenEditor.py:3227 ../PLCOpenEditor.py:3406
+#: ../PLCOpenEditor.py:3550
msgid "IL"
msgstr ""
-#: ../VariablePanel.py:70 ../dialogs/FBDVariableDialog.py:42
+#: ../VariablePanel.py:71 ../dialogs/FBDVariableDialog.py:42
msgid "InOut"
msgstr ""
-#: ../VariablePanel.py:328
+#: ../VariablePanel.py:344
#, python-format
msgid "Incompatible data types between \"%s\" and \"%s\""
msgstr ""
-#: ../VariablePanel.py:339
+#: ../VariablePanel.py:355
#, python-format
msgid "Incompatible size of data between \"%s\" and \"%s\""
msgstr ""
-#: ../VariablePanel.py:335
+#: ../VariablePanel.py:351
#, python-format
msgid "Incompatible size of data between \"%s\" and \"BOOL\""
msgstr ""
@@ -1095,7 +1109,7 @@
msgid "Indicator"
msgstr ""
-#: ../VariablePanel.py:52 ../VariablePanel.py:53 ../DataTypeEditor.py:46
+#: ../VariablePanel.py:53 ../VariablePanel.py:54 ../DataTypeEditor.py:46
msgid "Initial Value"
msgstr ""
@@ -1109,7 +1123,7 @@
msgid "Inline"
msgstr ""
-#: ../VariablePanel.py:70 ../VariablePanel.py:1019
+#: ../VariablePanel.py:71 ../VariablePanel.py:1057
#: ../dialogs/FBDVariableDialog.py:41 ../dialogs/SFCStepDialog.py:122
msgid "Input"
msgstr ""
@@ -1118,16 +1132,16 @@
msgid "Inputs:"
msgstr ""
-#: ../plcopen/iec_std.csv:76
+#: ../plcopen/iec_std.csv:87
msgid "Insertion (into)"
msgstr ""
-#: ../plcopen/plcopen.py:1518
+#: ../plcopen/plcopen.py:1537
#, python-format
msgid "Instance with id %d doesn't exist!"
msgstr ""
-#: ../PLCOpenEditor.py:559
+#: ../PLCOpenEditor.py:564
msgid "Instances"
msgstr ""
@@ -1135,13 +1149,13 @@
msgid "Instances:"
msgstr ""
-#: ../plcopen/structures.py:231
+#: ../plcopen/structures.py:230
msgid ""
"Integral\n"
"The integral function block integrates the value of input XIN over time."
msgstr ""
-#: ../VariablePanel.py:69
+#: ../VariablePanel.py:70
msgid "Interface"
msgstr ""
@@ -1149,21 +1163,21 @@
msgid "Interval"
msgstr ""
-#: ../PLCControler.py:1696 ../PLCControler.py:1734
+#: ../PLCControler.py:1778 ../PLCControler.py:1816
msgid "Invalid plcopen element(s)!!!"
msgstr ""
-#: ../dialogs/ForceVariableDialog.py:96
+#: ../dialogs/ForceVariableDialog.py:174
#, python-format
msgid "Invalid value \"%s\" for \"%s\" variable!"
msgstr ""
-#: ../PLCOpenEditor.py:4042 ../PLCOpenEditor.py:4045
+#: ../PLCOpenEditor.py:4080 ../PLCOpenEditor.py:4083
#, python-format
msgid "Invalid value \"%s\" for debug variable"
msgstr ""
-#: ../VariablePanel.py:316 ../VariablePanel.py:319
+#: ../VariablePanel.py:332 ../VariablePanel.py:335
#, python-format
msgid "Invalid value \"%s\" for location"
msgstr ""
@@ -1173,29 +1187,29 @@
msgid "Invalid value \"%s\" for viewer block"
msgstr ""
-#: ../PLCOpenEditor.py:2984 ../PLCOpenEditor.py:3179 ../PLCOpenEditor.py:3189
-#: ../PLCOpenEditor.py:3368 ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3022 ../PLCOpenEditor.py:3217 ../PLCOpenEditor.py:3227
+#: ../PLCOpenEditor.py:3406 ../PLCOpenEditor.py:3550
msgid "LD"
msgstr ""
-#: ../LDViewer.py:213 ../LDViewer.py:228
+#: ../LDViewer.py:215 ../LDViewer.py:231
#, python-format
msgid "Ladder element with id %d is on more than one rung."
msgstr ""
-#: ../PLCOpenEditor.py:3287 ../PLCOpenEditor.py:3450 ../PLCOpenEditor.py:3594
+#: ../PLCOpenEditor.py:3325 ../PLCOpenEditor.py:3488 ../PLCOpenEditor.py:3632
msgid "Language"
msgstr ""
-#: ../PLCOpenEditor.py:2998
+#: ../PLCOpenEditor.py:3036
msgid "Language (optional):"
msgstr ""
-#: ../PLCOpenEditor.py:3255 ../PLCOpenEditor.py:3423 ../PLCOpenEditor.py:3567
+#: ../PLCOpenEditor.py:3293 ../PLCOpenEditor.py:3461 ../PLCOpenEditor.py:3605
msgid "Language:"
msgstr ""
-#: ../Viewer.py:392
+#: ../Viewer.py:357
msgid "Left"
msgstr ""
@@ -1203,35 +1217,35 @@
msgid "Left PowerRail"
msgstr ""
-#: ../plcopen/iec_std.csv:70
+#: ../plcopen/iec_std.csv:81
msgid "Length of string"
msgstr ""
-#: ../plcopen/iec_std.csv:67
+#: ../plcopen/iec_std.csv:78
msgid "Less than"
msgstr ""
-#: ../plcopen/iec_std.csv:68
+#: ../plcopen/iec_std.csv:79
msgid "Less than or equal to"
msgstr ""
-#: ../PLCOpenEditor.py:594
+#: ../PLCOpenEditor.py:599
msgid "Library"
msgstr ""
-#: ../plcopen/iec_std.csv:62
+#: ../plcopen/iec_std.csv:73
msgid "Limitation"
msgstr ""
-#: ../VariablePanel.py:71
+#: ../VariablePanel.py:72
msgid "Local"
msgstr ""
-#: ../VariablePanel.py:52
+#: ../VariablePanel.py:53
msgid "Location"
msgstr ""
-#: ../VariablePanel.py:1080
+#: ../VariablePanel.py:1118
msgid "Locations available:"
msgstr ""
@@ -1239,7 +1253,7 @@
msgid "Logarithm to base 10"
msgstr ""
-#: ../plcopen/iec_std.csv:60
+#: ../plcopen/iec_std.csv:71
msgid "Maximum"
msgstr ""
@@ -1247,15 +1261,15 @@
msgid "Maximum:"
msgstr ""
-#: ../VariablePanel.py:1021
+#: ../VariablePanel.py:1059
msgid "Memory"
msgstr ""
-#: ../Viewer.py:401
+#: ../Viewer.py:366
msgid "Middle"
msgstr ""
-#: ../plcopen/iec_std.csv:61
+#: ../plcopen/iec_std.csv:72
msgid "Minimum"
msgstr ""
@@ -1263,7 +1277,7 @@
msgid "Minimum:"
msgstr ""
-#: ../PLCOpenEditor.py:3013
+#: ../PLCOpenEditor.py:3051
msgid "Miscellaneous"
msgstr ""
@@ -1271,7 +1285,7 @@
msgid "Modifier:"
msgstr ""
-#: ../PLCGenerator.py:682 ../PLCGenerator.py:886
+#: ../PLCGenerator.py:724 ../PLCGenerator.py:948
#, python-format
msgid "More than one connector found corresponding to \"%s\" continuation in \"%s\" POU"
msgstr ""
@@ -1284,16 +1298,16 @@
msgid "Move up"
msgstr ""
-#: ../plcopen/iec_std.csv:63
+#: ../plcopen/iec_std.csv:74
msgid "Multiplexer (select 1 of N)"
msgstr ""
-#: ../plcopen/iec_std.csv:37
+#: ../plcopen/iec_std.csv:34
msgid "Multiplication"
msgstr ""
-#: ../RessourceEditor.py:82 ../RessourceEditor.py:86 ../VariablePanel.py:52
-#: ../VariablePanel.py:53 ../DataTypeEditor.py:46
+#: ../RessourceEditor.py:82 ../RessourceEditor.py:86 ../VariablePanel.py:53
+#: ../VariablePanel.py:54 ../DataTypeEditor.py:46
msgid "Name"
msgstr ""
@@ -1307,11 +1321,11 @@
msgid "Natural logarithm"
msgstr ""
-#: ../Viewer.py:424 ../dialogs/LDElementDialog.py:135
+#: ../Viewer.py:389 ../dialogs/LDElementDialog.py:135
msgid "Negated"
msgstr ""
-#: ../PLCOpenEditor.py:2444
+#: ../PLCOpenEditor.py:2464
msgid "New\tCTRL+N"
msgstr ""
@@ -1319,45 +1333,45 @@
msgid "New item"
msgstr ""
-#: ../Viewer.py:422
+#: ../Viewer.py:387
msgid "No Modifier"
msgstr ""
-#: ../PLCControler.py:2578
+#: ../PLCControler.py:2663
msgid "No PLC project found"
msgstr ""
-#: ../PLCGenerator.py:1267
+#: ../PLCGenerator.py:1331
#, python-format
msgid "No body defined in \"%s\" POU"
msgstr ""
-#: ../PLCGenerator.py:701 ../PLCGenerator.py:895
+#: ../PLCGenerator.py:743 ../PLCGenerator.py:957
#, python-format
msgid "No connector found corresponding to \"%s\" continuation in \"%s\" POU"
msgstr ""
-#: ../PLCOpenEditor.py:2391
+#: ../PLCOpenEditor.py:2411
msgid ""
"No documentation available.\n"
"Coming soon."
msgstr ""
-#: ../PLCGenerator.py:753
+#: ../PLCGenerator.py:765
#, python-format
msgid "No informations found for \"%s\" block"
msgstr ""
-#: ../plcopen/structures.py:139
+#: ../plcopen/structures.py:138
msgid "No output variable found"
msgstr ""
-#: ../PLCGenerator.py:1265
+#: ../PLCGenerator.py:1329
#, python-format
msgid "No variable defined in \"%s\" POU"
msgstr ""
-#: ../VariablePanel.py:63
+#: ../VariablePanel.py:64
msgid "Non-Retain"
msgstr ""
@@ -1365,7 +1379,7 @@
msgid "Normal"
msgstr ""
-#: ../plcopen/iec_std.csv:69
+#: ../plcopen/iec_std.csv:80
msgid "Not equal to"
msgstr ""
@@ -1377,87 +1391,87 @@
msgid "Numerical"
msgstr ""
-#: ../plcopen/structures.py:219
+#: ../plcopen/structures.py:218
msgid ""
"Off-delay timer\n"
"The off-delay timer can be used to delay setting an output false, for fixed period after input goes false."
msgstr ""
-#: ../plcopen/structures.py:214
+#: ../plcopen/structures.py:213
msgid ""
"On-delay timer\n"
"The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true."
msgstr ""
-#: ../PLCOpenEditor.py:2446
+#: ../PLCOpenEditor.py:2466
msgid "Open\tCTRL+O"
msgstr ""
-#: ../VariablePanel.py:52 ../VariablePanel.py:53
+#: ../VariablePanel.py:53 ../VariablePanel.py:54
msgid "Option"
msgstr ""
-#: ../PLCOpenEditor.py:2940
+#: ../PLCOpenEditor.py:2978
msgid "Organization (optional):"
msgstr ""
-#: ../VariablePanel.py:70 ../VariablePanel.py:1020
+#: ../VariablePanel.py:71 ../VariablePanel.py:1058
#: ../dialogs/FBDVariableDialog.py:43 ../dialogs/SFCStepDialog.py:127
msgid "Output"
msgstr ""
-#: ../plcopen/structures.py:241
+#: ../plcopen/structures.py:240
msgid ""
"PID\n"
"The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control."
msgstr ""
-#: ../PLCOpenEditor.py:2598 ../PLCOpenEditor.py:2657
+#: ../PLCOpenEditor.py:2630 ../PLCOpenEditor.py:2694
msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
msgstr ""
-#: ../PLCOpenEditor.py:2530
+#: ../PLCOpenEditor.py:2559
msgid "PLCOpenEditor"
msgstr ""
-#: ../PLCOpenEditor.py:2488
+#: ../PLCOpenEditor.py:2508
msgid "PLCOpenEditor\tF1"
msgstr ""
-#: ../PLCOpenEditor.py:3283
+#: ../PLCOpenEditor.py:3321
msgid "POU Name"
msgstr ""
-#: ../PLCOpenEditor.py:3238
+#: ../PLCOpenEditor.py:3276
msgid "POU Name:"
msgstr ""
-#: ../PLCOpenEditor.py:3285
+#: ../PLCOpenEditor.py:3323
msgid "POU Type"
msgstr ""
-#: ../PLCOpenEditor.py:3246
+#: ../PLCOpenEditor.py:3284
msgid "POU Type:"
msgstr ""
-#: ../PLCOpenEditor.py:2460
+#: ../PLCOpenEditor.py:2480
msgid "Page Setup"
msgstr ""
-#: ../PLCOpenEditor.py:2956
+#: ../PLCOpenEditor.py:2994
msgid "Page Size (optional):"
msgstr ""
-#: ../PLCOpenEditor.py:4301
+#: ../PLCOpenEditor.py:4362
#, python-format
msgid "Page: %d"
msgstr ""
-#: ../PLCOpenEditor.py:325
+#: ../PLCOpenEditor.py:330
msgid "Paste\tCTRL+V"
msgstr ""
-#: ../PLCOpenEditor.py:1646
+#: ../PLCOpenEditor.py:1663
msgid "Paste POU"
msgstr ""
@@ -1465,27 +1479,23 @@
msgid "Pin number:"
msgstr ""
-#: ../Viewer.py:2032 ../Viewer.py:2323 ../SFCViewer.py:698
+#: ../Viewer.py:2020 ../Viewer.py:2311 ../SFCViewer.py:698
msgid "Please choose a target"
msgstr ""
-#: ../PLCOpenEditor.py:2253
-msgid "Please enter POU name"
-msgstr ""
-
-#: ../Viewer.py:1857 ../Viewer.py:1859 ../Viewer.py:2358 ../Viewer.py:2360
+#: ../Viewer.py:1845 ../Viewer.py:1847 ../Viewer.py:2346 ../Viewer.py:2348
msgid "Please enter comment text"
msgstr ""
-#: ../PLCOpenEditor.py:2221 ../PLCOpenEditor.py:3658
+#: ../PLCOpenEditor.py:2246 ../PLCOpenEditor.py:3696
msgid "Please enter configuration name"
msgstr ""
-#: ../PLCOpenEditor.py:2177
+#: ../PLCOpenEditor.py:2194
msgid "Please enter data type name"
msgstr ""
-#: ../PLCOpenEditor.py:2232 ../PLCOpenEditor.py:3721
+#: ../PLCOpenEditor.py:2259 ../PLCOpenEditor.py:3759
msgid "Please enter resource name"
msgstr ""
@@ -1493,16 +1503,16 @@
msgid "Please enter step name"
msgstr ""
-#: ../PLCOpenEditor.py:3129
+#: ../PLCOpenEditor.py:3167
msgid "Please enter text"
msgstr ""
-#: ../dialogs/ForceVariableDialog.py:78
+#: ../dialogs/ForceVariableDialog.py:156
#, python-format
msgid "Please enter value for a \"%s\" variable:"
msgstr ""
-#: ../VariablePanel.py:1147
+#: ../VariablePanel.py:1185
msgid "Plugins"
msgstr ""
@@ -1514,7 +1524,7 @@
msgid "Power Rail Properties"
msgstr ""
-#: ../PLCOpenEditor.py:2462
+#: ../PLCOpenEditor.py:2482
msgid "Preview"
msgstr ""
@@ -1525,11 +1535,11 @@
msgid "Preview:"
msgstr ""
-#: ../PLCOpenEditor.py:2464
+#: ../PLCOpenEditor.py:2484
msgid "Print"
msgstr ""
-#: ../PLCOpenEditor.py:934
+#: ../PLCOpenEditor.py:950
msgid "Print preview"
msgstr ""
@@ -1541,23 +1551,23 @@
msgid "Priority:"
msgstr ""
-#: ../PLCOpenEditor.py:2884
+#: ../PLCOpenEditor.py:2922
msgid "Product Name (required):"
msgstr ""
-#: ../PLCOpenEditor.py:2900
+#: ../PLCOpenEditor.py:2938
msgid "Product Release (optional):"
msgstr ""
-#: ../PLCOpenEditor.py:2892
+#: ../PLCOpenEditor.py:2930
msgid "Product Version (required):"
msgstr ""
-#: ../PLCOpenEditor.py:336 ../PLCOpenEditor.py:1605
+#: ../PLCOpenEditor.py:341 ../PLCOpenEditor.py:1622
msgid "Program"
msgstr ""
-#: ../PLCOpenEditor.py:2635
+#: ../PLCOpenEditor.py:2671
msgid "Program was successfully generated!"
msgstr ""
@@ -1569,27 +1579,33 @@
msgid "Programs can't be used by other POUs!"
msgstr ""
-#: ../PLCOpenEditor.py:437 ../PLCOpenEditor.py:2907
+#: ../PLCOpenEditor.py:442 ../PLCOpenEditor.py:2945
msgid "Project"
msgstr ""
-#: ../PLCOpenEditor.py:2868
+#: ../PLCOpenEditor.py:2906
msgid "Project Name (required):"
msgstr ""
-#: ../PLCOpenEditor.py:2876
+#: ../PLCOpenEditor.py:2914
msgid "Project Version (optional):"
msgstr ""
-#: ../PLCOpenEditor.py:2854
+#: ../PLCControler.py:2650
+msgid ""
+"Project file syntax error:\n"
+"\n"
+msgstr ""
+
+#: ../PLCOpenEditor.py:2892
msgid "Project properties"
msgstr ""
-#: ../PLCOpenEditor.py:2467 ../PLCControler.py:91
+#: ../PLCOpenEditor.py:2487 ../PLCControler.py:91
msgid "Properties"
msgstr ""
-#: ../plcopen/structures.py:209
+#: ../plcopen/structures.py:208
msgid ""
"Pulse timer\n"
"The pulse timer can be used to generate output pulses of a given time duration."
@@ -1599,17 +1615,17 @@
msgid "Qualifier"
msgstr ""
-#: ../PLCOpenEditor.py:2470
+#: ../PLCOpenEditor.py:2490
msgid "Quit\tCTRL+Q"
msgstr ""
-#: ../plcopen/structures.py:174
+#: ../plcopen/structures.py:173
msgid ""
"RS bistable\n"
"The RS bistable is a latch where the Reset dominates."
msgstr ""
-#: ../plcopen/structures.py:246
+#: ../plcopen/structures.py:245
msgid ""
"Ramp\n"
"The RAMP function block is modelled on example given in the standard but with the addition of a 'Holdback' feature."
@@ -1619,7 +1635,7 @@
msgid "Range:"
msgstr ""
-#: ../PLCOpenEditor.py:316
+#: ../PLCOpenEditor.py:321
msgid "Redo\tCTRL+Y"
msgstr ""
@@ -1627,23 +1643,23 @@
msgid "Reference"
msgstr ""
-#: ../PLCOpenEditor.py:364
+#: ../PLCOpenEditor.py:369
msgid "Refresh\tF5"
msgstr ""
-#: ../PLCOpenEditor.py:4187 ../Viewer.py:1133
+#: ../PLCOpenEditor.py:4235 ../Viewer.py:1098
msgid "Release value"
msgstr ""
-#: ../plcopen/iec_std.csv:48
+#: ../plcopen/iec_std.csv:37
msgid "Remainder (modulo)"
msgstr ""
-#: ../PLCOpenEditor.py:1609
+#: ../PLCOpenEditor.py:1626
msgid "Rename"
msgstr ""
-#: ../plcopen/iec_std.csv:78
+#: ../plcopen/iec_std.csv:89
msgid "Replacement (within)"
msgstr ""
@@ -1651,7 +1667,7 @@
msgid "Reset"
msgstr ""
-#: ../Viewer.py:443
+#: ../Viewer.py:408
msgid "Reset Execution Order"
msgstr ""
@@ -1659,15 +1675,15 @@
msgid "Resources"
msgstr ""
-#: ../VariablePanel.py:61
+#: ../VariablePanel.py:62
msgid "Retain"
msgstr ""
-#: ../VariablePanel.py:466
+#: ../VariablePanel.py:482
msgid "Return Type:"
msgstr ""
-#: ../Viewer.py:396
+#: ../Viewer.py:361
msgid "Right"
msgstr ""
@@ -1675,21 +1691,21 @@
msgid "Right PowerRail"
msgstr ""
-#: ../Viewer.py:426 ../dialogs/LDElementDialog.py:150
+#: ../Viewer.py:391 ../dialogs/LDElementDialog.py:150
msgid "Rising Edge"
msgstr ""
-#: ../plcopen/structures.py:184
+#: ../plcopen/structures.py:183
msgid ""
"Rising edge detector\n"
"The output produces a single pulse when a rising edge is detected."
msgstr ""
-#: ../plcopen/iec_std.csv:54
+#: ../plcopen/iec_std.csv:65
msgid "Rotate left"
msgstr ""
-#: ../plcopen/iec_std.csv:53
+#: ../plcopen/iec_std.csv:64
msgid "Rotate right"
msgstr ""
@@ -1697,50 +1713,46 @@
msgid "Rounding up/down"
msgstr ""
-#: ../PLCOpenEditor.py:2984 ../PLCOpenEditor.py:3189
+#: ../PLCOpenEditor.py:3022 ../PLCOpenEditor.py:3227
msgid "SFC"
msgstr ""
-#: ../plcopen/structures.py:169
+#: ../plcopen/structures.py:168
msgid ""
"SR bistable\n"
"The SR bistable is a latch where the Set dominates."
msgstr ""
-#: ../PLCOpenEditor.py:3179 ../PLCOpenEditor.py:3189 ../PLCOpenEditor.py:3368
-#: ../PLCOpenEditor.py:3512
+#: ../PLCOpenEditor.py:3217 ../PLCOpenEditor.py:3227 ../PLCOpenEditor.py:3406
+#: ../PLCOpenEditor.py:3550
msgid "ST"
msgstr ""
-#: ../PLCOpenEditor.py:2622
+#: ../PLCOpenEditor.py:2658
msgid "ST files (*.st)|*.st|All files|*.*"
msgstr ""
-#: ../PLCOpenEditor.py:2453
+#: ../PLCOpenEditor.py:2473
msgid "Save\tCTRL+S"
msgstr ""
-#: ../PLCOpenEditor.py:2455
+#: ../PLCOpenEditor.py:2475
msgid "Save As...\tCTRL+SHIFT+S"
msgstr ""
-#: ../PLCOpenEditor.py:2976
-msgid "Scaling:"
-msgstr ""
-
-#: ../PLCOpenEditor.py:340
+#: ../PLCOpenEditor.py:345
msgid "Select All\tCTRL+A"
msgstr ""
-#: ../VariablePanel.py:341
+#: ../VariablePanel.py:357
msgid "Select a variable class:"
msgstr ""
-#: ../PLCOpenEditor.py:570 ../PLCOpenEditor.py:582
+#: ../PLCOpenEditor.py:575 ../PLCOpenEditor.py:587
msgid "Select an object"
msgstr ""
-#: ../plcopen/iec_std.csv:59
+#: ../plcopen/iec_std.csv:70
msgid "Selection"
msgstr ""
@@ -1752,7 +1764,7 @@
msgid "Selection Divergence"
msgstr ""
-#: ../plcopen/structures.py:179
+#: ../plcopen/structures.py:178
msgid ""
"Semaphore\n"
"The semaphore provides a mechanism to allow software elements mutually exclusive access to certain ressources."
@@ -1762,11 +1774,11 @@
msgid "Set"
msgstr ""
-#: ../plcopen/iec_std.csv:51
+#: ../plcopen/iec_std.csv:62
msgid "Shift left"
msgstr ""
-#: ../plcopen/iec_std.csv:52
+#: ../plcopen/iec_std.csv:63
msgid "Shift right"
msgstr ""
@@ -1790,7 +1802,7 @@
msgid "Square root (base 2)"
msgstr ""
-#: ../plcopen/structures.py:165
+#: ../plcopen/structures.py:164
msgid "Standard function blocks"
msgstr ""
@@ -1802,7 +1814,7 @@
msgid "Subrange"
msgstr ""
-#: ../plcopen/iec_std.csv:39
+#: ../plcopen/iec_std.csv:35
msgid "Subtraction"
msgstr ""
@@ -1818,30 +1830,30 @@
msgid "Tasks:"
msgstr ""
-#: ../VariablePanel.py:72
+#: ../VariablePanel.py:73
msgid "Temp"
msgstr ""
-#: ../LDViewer.py:850
+#: ../LDViewer.py:881
msgid "The group of block must be coherent!"
msgstr ""
-#: ../PLCOpenEditor.py:873
+#: ../PLCOpenEditor.py:889
msgid "There are changes, do you want to save?"
msgstr ""
-#: ../PLCOpenEditor.py:1407 ../PLCOpenEditor.py:1427
+#: ../PLCOpenEditor.py:1425 ../PLCOpenEditor.py:1445
#, python-format
msgid "There is a POU named \"%s\". This could cause a conflict. Do you wish to continue?"
msgstr ""
-#: ../PLCOpenEditor.py:953
+#: ../PLCOpenEditor.py:969
msgid ""
"There was a problem printing.\n"
"Perhaps your current printer is not set correctly?"
msgstr ""
-#: ../LDViewer.py:859
+#: ../LDViewer.py:890
msgid "This option isn't available yet!"
msgstr ""
@@ -1849,61 +1861,66 @@
msgid "Tick"
msgstr ""
-#: ../plcopen/iec_std.csv:34
+#: ../plcopen/iec_std.csv:40
+msgid "Time"
+msgstr ""
+
+#: ../plcopen/iec_std.csv:40 ../plcopen/iec_std.csv:41
msgid "Time addition"
msgstr ""
-#: ../plcopen/iec_std.csv:75
+#: ../plcopen/iec_std.csv:86
msgid "Time concatenation"
msgstr ""
-#: ../plcopen/iec_std.csv:47
+#: ../plcopen/iec_std.csv:60 ../plcopen/iec_std.csv:61
msgid "Time division"
msgstr ""
-#: ../plcopen/iec_std.csv:38
+#: ../plcopen/iec_std.csv:46 ../plcopen/iec_std.csv:47
msgid "Time multiplication"
msgstr ""
-#: ../plcopen/iec_std.csv:40
+#: ../plcopen/iec_std.csv:48 ../plcopen/iec_std.csv:49
msgid "Time subtraction"
msgstr ""
-#: ../plcopen/iec_std.csv:35
+#: ../plcopen/iec_std.csv:42 ../plcopen/iec_std.csv:43
msgid "Time-of-day addition"
msgstr ""
-#: ../plcopen/iec_std.csv:42 ../plcopen/iec_std.csv:43
+#: ../plcopen/iec_std.csv:52 ../plcopen/iec_std.csv:53
+#: ../plcopen/iec_std.csv:54 ../plcopen/iec_std.csv:55
msgid "Time-of-day subtraction"
msgstr ""
-#: ../PLCOpenEditor.py:574
+#: ../PLCOpenEditor.py:579
msgid "Toolbar"
msgstr ""
-#: ../Viewer.py:399
+#: ../Viewer.py:364
msgid "Top"
msgstr ""
-#: ../PLCOpenEditor.py:3448
+#: ../PLCOpenEditor.py:3486
msgid "Transition Name"
msgstr ""
-#: ../PLCOpenEditor.py:3415
+#: ../PLCOpenEditor.py:3453
msgid "Transition Name:"
msgstr ""
-#: ../PLCGenerator.py:1247
+#: ../PLCGenerator.py:1311
#, python-format
msgid "Transition with content \"%s\" not connected to a next step in \"%s\" POU"
msgstr ""
-#: ../PLCGenerator.py:1238
+#: ../PLCGenerator.py:1302
#, python-format
msgid "Transition with content \"%s\" not connected to a previous step in \"%s\" POU"
msgstr ""
-#: ../plcopen/plcopen.py:1175
+#: ../plcopen/plcopen.py:1194
#, python-format
msgid "Transition with name %s doesn't exist!"
msgstr ""
@@ -1912,7 +1929,7 @@
msgid "Transitions"
msgstr ""
-#: ../RessourceEditor.py:86 ../VariablePanel.py:52 ../VariablePanel.py:53
+#: ../RessourceEditor.py:86 ../VariablePanel.py:53 ../VariablePanel.py:54
#: ../dialogs/ActionBlockDialog.py:33 ../DataTypeEditor.py:46
msgid "Type"
msgstr ""
@@ -1931,7 +1948,7 @@
msgid "Type:"
msgstr ""
-#: ../PLCOpenEditor.py:540
+#: ../PLCOpenEditor.py:545
msgid "Types"
msgstr ""
@@ -1940,11 +1957,11 @@
msgid "Undefined pou type \"%s\""
msgstr ""
-#: ../PLCOpenEditor.py:314
+#: ../PLCOpenEditor.py:319
msgid "Undo\tCTRL+Z"
msgstr ""
-#: ../Viewer.py:320
+#: ../Viewer.py:304
#, python-format
msgid "Unknown variable \"%s\" for this POU!"
msgstr ""
@@ -1954,24 +1971,24 @@
msgid "Unnamed%d"
msgstr ""
-#: ../VariablePanel.py:337
+#: ../VariablePanel.py:353
#, python-format
msgid "Unrecognized data size \"%s\""
msgstr ""
-#: ../plcopen/structures.py:194
+#: ../plcopen/structures.py:193
msgid ""
"Up-counter\n"
"The up-counter can be used to signal when a count has reached a maximum value."
msgstr ""
-#: ../plcopen/structures.py:204
+#: ../plcopen/structures.py:203
msgid ""
"Up-down counter\n"
"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."
msgstr ""
-#: ../VariablePanel.py:770 ../DataTypeEditor.py:807
+#: ../VariablePanel.py:790 ../DataTypeEditor.py:807
msgid "User Data Types"
msgstr ""
@@ -1979,7 +1996,7 @@
msgid "User-defined POUs"
msgstr ""
-#: ../PLCOpenEditor.py:3857 ../dialogs/ActionBlockDialog.py:33
+#: ../PLCOpenEditor.py:3895 ../dialogs/ActionBlockDialog.py:33
msgid "Value"
msgstr ""
@@ -1991,7 +2008,7 @@
msgid "Values:"
msgstr ""
-#: ../PLCOpenEditor.py:3857 ../dialogs/ActionBlockDialog.py:37
+#: ../PLCOpenEditor.py:3895 ../dialogs/ActionBlockDialog.py:37
msgid "Variable"
msgstr ""
@@ -1999,99 +2016,95 @@
msgid "Variable Properties"
msgstr ""
-#: ../VariablePanel.py:341
+#: ../VariablePanel.py:357
msgid "Variable class"
msgstr ""
-#: ../Viewer.py:322 ../TextViewer.py:248
+#: ../Viewer.py:306 ../TextViewer.py:279
msgid "Variable don't belong to this POU!"
msgstr ""
-#: ../PLCOpenEditor.py:589 ../VariablePanel.py:71
+#: ../PLCOpenEditor.py:594 ../VariablePanel.py:72
msgid "Variables"
msgstr ""
-#: ../PLCOpenEditor.py:3313 ../PLCOpenEditor.py:3691 ../PLCOpenEditor.py:3754
-#: ../LDViewer.py:859
+#: ../PLCOpenEditor.py:2749
+msgid "Vertical:"
+msgstr ""
+
+#: ../PLCOpenEditor.py:3351 ../PLCOpenEditor.py:3729 ../PLCOpenEditor.py:3792
+#: ../LDViewer.py:890
msgid "Warning"
msgstr ""
-#: ../PLCOpenEditor.py:2960
+#: ../PLCOpenEditor.py:2998
msgid "Width:"
msgstr ""
-#: ../PLCOpenEditor.py:2703
-msgid "X Scale:"
-msgstr ""
-
-#: ../PLCOpenEditor.py:2711
-msgid "Y Scale:"
-msgstr ""
-
-#: ../LDViewer.py:854
+#: ../LDViewer.py:885
msgid "You must select the block or group of blocks around which a branch should be added!"
msgstr ""
-#: ../LDViewer.py:628
+#: ../LDViewer.py:665
msgid "You must select the wire where a contact should be added!"
msgstr ""
-#: ../PLCOpenEditor.py:3144 ../PLCOpenEditor.py:3675 ../PLCOpenEditor.py:3738
+#: ../PLCOpenEditor.py:3182 ../PLCOpenEditor.py:3713 ../PLCOpenEditor.py:3776
#: ../dialogs/PouNameDialog.py:55 ../dialogs/SFCStepDialog.py:175
#: ../dialogs/SFCStepNameDialog.py:57
msgid "You must type a name!"
msgstr ""
-#: ../dialogs/ForceVariableDialog.py:92
+#: ../dialogs/ForceVariableDialog.py:170
msgid "You must type a value!"
msgstr ""
-#: ../PLCOpenEditor.py:370
+#: ../PLCOpenEditor.py:375
msgid "Zoom"
msgstr ""
-#: ../PLCOpenEditor.py:2631
+#: ../PLCOpenEditor.py:2667
#, python-format
msgid "error: %s\n"
msgstr ""
-#: ../PLCOpenEditor.py:4333 ../PLCOpenEditor.py:4335
+#: ../PLCOpenEditor.py:4394 ../PLCOpenEditor.py:4396
msgid "file : "
msgstr ""
-#: ../PLCOpenEditor.py:3184
+#: ../PLCOpenEditor.py:3222
msgid "function"
msgstr ""
-#: ../PLCOpenEditor.py:4336
+#: ../PLCOpenEditor.py:4397
msgid "function : "
msgstr ""
-#: ../PLCOpenEditor.py:3184
+#: ../PLCOpenEditor.py:3222
msgid "functionBlock"
msgstr ""
-#: ../PLCOpenEditor.py:4336
+#: ../PLCOpenEditor.py:4397
msgid "line : "
msgstr ""
-#: ../PLCOpenEditor.py:3184
+#: ../PLCOpenEditor.py:3222
msgid "program"
msgstr ""
-#: ../plcopen/iec_std.csv:73
+#: ../plcopen/iec_std.csv:84
msgid "string from the middle"
msgstr ""
-#: ../plcopen/iec_std.csv:71
+#: ../plcopen/iec_std.csv:82
msgid "string left of"
msgstr ""
-#: ../plcopen/iec_std.csv:72
+#: ../plcopen/iec_std.csv:83
msgid "string right of"
msgstr ""
-#: ../PLCOpenEditor.py:2629
+#: ../PLCOpenEditor.py:2665
#, python-format
msgid "warning: %s\n"
msgstr ""
Binary file locale/fr_FR/LC_MESSAGES/PLCOpenEditor.mo has changed