Merge with 762497a95b7a0e2e500e428feb5008af98a6796c
authoredouard
Mon, 02 Nov 2009 18:11:53 +0100
changeset 456 dc379f8db18d
parent 455 d39f7fb16ec9 (diff)
parent 454 762497a95b7a (current diff)
child 457 91b28dd0c9c9
Merge with 762497a95b7a0e2e500e428feb5008af98a6796c
PLCOpenEditor.py
debian/README.Debian
debian/changelog
debian/control
debian/copyright
i18n/PLCOpenEditor_fr_FR.po
i18n/messages.pot
locale/fr_FR/LC_MESSAGES/PLCOpenEditor.mo
--- a/.hgignore	Mon Nov 02 11:59:15 2009 +0100
+++ b/.hgignore	Mon Nov 02 18:11:53 2009 +0100
@@ -1,1 +1,4 @@
 .project
+
+syntax: regexp
+\.pyc$
\ No newline at end of file
--- a/PLCControler.py	Mon Nov 02 11:59:15 2009 +0100
+++ b/PLCControler.py	Mon Nov 02 18:11:53 2009 +0100
@@ -2596,7 +2596,7 @@
                 xmlfile = open(filepath,"w")
             else:
                 xmlfile = open(self.FilePath,"w")
-            xmlfile.write(text)
+            xmlfile.write(text.encode("utf-8"))
             xmlfile.close()
             self.MarkProjectAsSaved()
             if filepath:
Binary file PLCOpenEditor.py has changed
--- a/VariablePanel.py	Mon Nov 02 11:59:15 2009 +0100
+++ b/VariablePanel.py	Mon Nov 02 18:11:53 2009 +0100
@@ -604,7 +604,7 @@
         self.Controler.SetPouInterfaceReturnType(words[1], self.ReturnType.GetStringSelection())
         self.Controler.BufferProject()
         self.ParentWindow.RefreshEditor(variablepanel = False)
-        self.ParentWindow._Refresh(TITLE, EDITMENU, INSTANCETREE, LIBRARYTREE)
+        self.ParentWindow._Refresh(TITLE, EDITMENU, INSTANCESTREE, LIBRARYTREE)
         event.Skip()
     
     def OnClassFilter(self, event):
@@ -707,7 +707,7 @@
                     self.Controler.UpdateEditedElementUsedVariable(self.TagName, old_value, value)
                 self.Controler.BufferProject()
                 self.ParentWindow.RefreshEditor(variablepanel = False)
-                self.ParentWindow._Refresh(TITLE, EDITMENU, INSTANCETREE, LIBRARYTREE)            
+                self.ParentWindow._Refresh(TITLE, EDITMENU, INSTANCESTREE, LIBRARYTREE)            
                 event.Skip()
         else:
             self.SaveValues()
--- a/debian/README.Debian	Mon Nov 02 11:59:15 2009 +0100
+++ b/debian/README.Debian	Mon Nov 02 18:11:53 2009 +0100
@@ -1,6 +1,3 @@
 plcopeneditor for Debian
 ------------------------
 
-<possible notes regarding this package - if none, delete this file>
-
- -- edouard <edouard.tisserant@gmail.com>  Tue, 13 Nov 2007 11:14:55 +0100
--- a/debian/changelog	Mon Nov 02 11:59:15 2009 +0100
+++ b/debian/changelog	Mon Nov 02 18:11:53 2009 +0100
@@ -1,6 +1,3 @@
 plcopeneditor (2009.0-%DATEVERSION%) unstable; urgency=low
 
-  * Initial release (Closes: #nnnn)  <nnnn is the bug number of your ITP>
-
- -- edouard <edouard.tisserant@gmail.com>  Tue, 13 Nov 2007 11:14:55 +0100
-
+  * Initial release
--- a/debian/control	Mon Nov 02 11:59:15 2009 +0100
+++ b/debian/control	Mon Nov 02 18:11:53 2009 +0100
@@ -1,7 +1,7 @@
 Source: plcopeneditor
 Section: devel
 Priority: standard
-Maintainer: edouard <edouard.tisserant@gmail.com>
+Maintainer: <edouard.tisserant@gmail.com>
 Build-Depends: debhelper (>= 5)
 Standards-Version: 3.7.2
 
--- a/debian/copyright	Mon Nov 02 11:59:15 2009 +0100
+++ b/debian/copyright	Mon Nov 02 18:11:53 2009 +0100
@@ -1,9 +1,6 @@
-This package was debianized by edouard <edouard.tisserant@gmail.com> on
-Tue, 13 Nov 2007 11:14:55 +0100.
+This package was debianized in 2009
 
-It was downloaded from <fill in http/ftp site>
-
-Upstream Author: <put author(s) name and email here>
+Upstream Author: Edouard TISSERANT <edouard.tisserant@gmail.com>
 
 Copyright: <put the year(s) of the copyright, and the names of the
             copyright holder(s) here>
@@ -27,7 +24,7 @@
 On Debian systems, the complete text of the GNU General
 Public License can be found in `/usr/share/common-licenses/GPL'.
 
-The Debian packaging is (C) 2007, edouard <edouard.tisserant@gmail.com> and
+The Debian packaging is (C) 2009, <edouard.tisserant@gmail.com> and
 is licensed under the GPL, see above.
 
 
--- a/examples/example.xml	Mon Nov 02 11:59:15 2009 +0100
+++ b/examples/example.xml	Mon Nov 02 18:11:53 2009 +0100
@@ -3,8 +3,8 @@
          xmlns="http://www.plcopen.org/xml/tc6.xsd"
          xmlns:xhtml="http://www.w3.org/1999/xhtml"
          xsi:schemaLocation="http://www.plcopen.org/xml/tc6.xsd">
-  <fileHeader companyName="Lolitech"
-              companyURL="www.lolitech.net"
+  <fileHeader companyName="Example"
+              companyURL="none"
               productName="PLCOpenEditorExample"
               productVersion="1.0"
               productRelease="rc1"
--- a/i18n/PLCOpenEditor_fr_FR.po	Mon Nov 02 11:59:15 2009 +0100
+++ b/i18n/PLCOpenEditor_fr_FR.po	Mon Nov 02 18:11:53 2009 +0100
@@ -7,8 +7,8 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-11-02 11:07+0100\n"
-"PO-Revision-Date: 2009-11-02 11:15+0100\n"
+"POT-Creation-Date: 2009-10-26 11:16+0100\n"
+"PO-Revision-Date: 2009-10-26 11:21+0100\n"
 "Last-Translator: \n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "MIME-Version: 1.0\n"
@@ -61,7 +61,7 @@
 msgid "   Temp"
 msgstr "  Temporaire"
 
-#: ../PLCOpenEditor.py:4282
+#: ../PLCOpenEditor.py:4284
 msgid " : "
 msgstr " : "
 
@@ -617,10 +617,11 @@
 msgid "Clear Execution Order"
 msgstr "Effacer l'ordre d'exécution"
 
-#: ../PLCOpenEditor.py:873
+#: ../PLCOpenEditor.py:2506
 msgid "Close Application"
 msgstr "Fermer l'application"
 
+#: ../PLCOpenEditor.py:871
 #: ../PLCOpenEditor.py:2434
 msgid "Close Project"
 msgstr "Fermer le projet"
@@ -1035,8 +1036,8 @@
 #: ../PLCOpenEditor.py:3725
 #: ../PLCOpenEditor.py:3729
 #: ../PLCOpenEditor.py:4017
-#: ../PLCOpenEditor.py:4283
-#: ../PLCOpenEditor.py:4293
+#: ../PLCOpenEditor.py:4285
+#: ../PLCOpenEditor.py:4295
 #: ../Viewer.py:369
 #: ../TextViewer.py:250
 #: ../LDViewer.py:628
--- a/i18n/PLCOpenEditor_zh_CN.po	Mon Nov 02 11:59:15 2009 +0100
+++ b/i18n/PLCOpenEditor_zh_CN.po	Mon Nov 02 18:11:53 2009 +0100
@@ -34,9 +34,7 @@
 "\n"
 "点击确定以保存一个错误报告。\n"
 "\n"
-"请用以下方式联系LOLITech:\n"
-"+33 (0)3 29 57 60 42\n"
-"bugs_PLCOpenEditor@lolitech.fr\n"
+"edouard.tisserant@gmail.com\n"
 "\n"
 "\n"
 "错误:\n"
--- a/i18n/messages.pot	Mon Nov 02 11:59:15 2009 +0100
+++ b/i18n/messages.pot	Mon Nov 02 18:11:53 2009 +0100
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-11-02 11:07+0100\n"
+"POT-Creation-Date: 2009-11-02 18:09+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,7 +16,7 @@
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../PLCOpenEditor.py:4272
+#: ../PLCOpenEditor.py:4273
 msgid ""
 "\n"
 "An error has occurred.\n"
@@ -53,11 +53,11 @@
 msgid "   Temp"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4282
+#: ../PLCOpenEditor.py:4283
 msgid " : "
 msgstr ""
 
-#: ../PLCOpenEditor.py:3273 ../PLCOpenEditor.py:3436 ../PLCOpenEditor.py:3580
+#: ../PLCOpenEditor.py:3274 ../PLCOpenEditor.py:3437 ../PLCOpenEditor.py:3581
 #: ../dialogs/SFCTransitionDialog.py:206
 #, python-format
 msgid " and %s"
@@ -93,7 +93,7 @@
 msgid "\"%s\" configuration already exists !!!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1359 ../PLCOpenEditor.py:3135
+#: ../PLCOpenEditor.py:1359 ../PLCOpenEditor.py:3136
 #, python-format
 msgid "\"%s\" data type already exists!"
 msgstr ""
@@ -103,7 +103,7 @@
 msgid "\"%s\" element can't be pasted here!!!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3455 ../PLCOpenEditor.py:3599 ../Viewer.py:250
+#: ../PLCOpenEditor.py:3456 ../PLCOpenEditor.py:3600 ../Viewer.py:250
 #: ../TextViewer.py:231 ../dialogs/ConnectionDialog.py:215
 #: ../dialogs/FBDBlockDialog.py:260
 #, python-format
@@ -115,9 +115,9 @@
 msgid "\"%s\" function cancelled in \"%s\" POU: No input connected"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1350 ../PLCOpenEditor.py:3131 ../PLCOpenEditor.py:3284
-#: ../PLCOpenEditor.py:3447 ../PLCOpenEditor.py:3591 ../PLCOpenEditor.py:3662
-#: ../PLCOpenEditor.py:3725 ../VariablePanel.py:689
+#: ../PLCOpenEditor.py:1350 ../PLCOpenEditor.py:3132 ../PLCOpenEditor.py:3285
+#: ../PLCOpenEditor.py:3448 ../PLCOpenEditor.py:3592 ../PLCOpenEditor.py:3663
+#: ../PLCOpenEditor.py:3726 ../VariablePanel.py:689
 #: ../dialogs/ConnectionDialog.py:207 ../dialogs/FBDBlockDialog.py:252
 #: ../dialogs/FBDVariableDialog.py:268 ../dialogs/PouNameDialog.py:63
 #: ../dialogs/SFCStepDialog.py:183 ../dialogs/SFCStepNameDialog.py:65
@@ -136,14 +136,14 @@
 msgid "\"%s\" is an invalid value!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2621 ../PLCOpenEditor.py:2649
+#: ../PLCOpenEditor.py:2622 ../PLCOpenEditor.py:2650
 #, python-format
 msgid "\"%s\" is not a valid folder!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1348 ../PLCOpenEditor.py:3127 ../PLCOpenEditor.py:3280
-#: ../PLCOpenEditor.py:3443 ../PLCOpenEditor.py:3587 ../PLCOpenEditor.py:3658
-#: ../PLCOpenEditor.py:3721 ../VariablePanel.py:684
+#: ../PLCOpenEditor.py:1348 ../PLCOpenEditor.py:3128 ../PLCOpenEditor.py:3281
+#: ../PLCOpenEditor.py:3444 ../PLCOpenEditor.py:3588 ../PLCOpenEditor.py:3659
+#: ../PLCOpenEditor.py:3722 ../VariablePanel.py:684
 #: ../dialogs/ConnectionDialog.py:203 ../dialogs/FBDBlockDialog.py:248
 #: ../dialogs/PouNameDialog.py:59 ../dialogs/SFCStepDialog.py:179
 #: ../dialogs/SFCStepNameDialog.py:61 ../DataTypeEditor.py:760
@@ -151,12 +151,12 @@
 msgid "\"%s\" is not a valid identifier!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:283 ../PLCOpenEditor.py:2286 ../PLCOpenEditor.py:2306
+#: ../PLCOpenEditor.py:283 ../PLCOpenEditor.py:2287 ../PLCOpenEditor.py:2307
 #, python-format
 msgid "\"%s\" is used by one or more POUs. It can't be removed!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1368 ../PLCOpenEditor.py:3288 ../Viewer.py:248
+#: ../PLCOpenEditor.py:1368 ../PLCOpenEditor.py:3289 ../Viewer.py:248
 #: ../Viewer.py:274 ../TextViewer.py:229 ../dialogs/ConnectionDialog.py:211
 #: ../dialogs/FBDBlockDialog.py:256
 #, python-format
@@ -217,28 +217,28 @@
 msgid "%s body don't have text!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4260 ../PLCOpenEditor.py:4262 ../PLCOpenEditor.py:4263
+#: ../PLCOpenEditor.py:4261 ../PLCOpenEditor.py:4263 ../PLCOpenEditor.py:4264
 msgid ",   "
 msgstr ""
 
-#: ../PLCOpenEditor.py:3275 ../PLCOpenEditor.py:3438 ../PLCOpenEditor.py:3582
+#: ../PLCOpenEditor.py:3276 ../PLCOpenEditor.py:3439 ../PLCOpenEditor.py:3583
 #: ../dialogs/SFCTransitionDialog.py:208
 #, python-format
 msgid ", %s"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4258
+#: ../PLCOpenEditor.py:4259
 msgid ". "
 msgstr ""
 
 #: ../PLCOpenEditor.py:1371 ../PLCOpenEditor.py:1413 ../PLCOpenEditor.py:1433
-#: ../PLCOpenEditor.py:3292 ../PLCOpenEditor.py:3670 ../PLCOpenEditor.py:3733
+#: ../PLCOpenEditor.py:3293 ../PLCOpenEditor.py:3671 ../PLCOpenEditor.py:3734
 #, python-format
 msgid "A POU has an element named \"%s\". This could cause a conflict. Do you wish to continue?"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1384 ../PLCOpenEditor.py:1395 ../PLCOpenEditor.py:3451
-#: ../PLCOpenEditor.py:3595 ../PLCOpenEditor.py:3666 ../PLCOpenEditor.py:3729
+#: ../PLCOpenEditor.py:1384 ../PLCOpenEditor.py:1395 ../PLCOpenEditor.py:3452
+#: ../PLCOpenEditor.py:3596 ../PLCOpenEditor.py:3667 ../PLCOpenEditor.py:3730
 #: ../VariablePanel.py:694 ../dialogs/PouNameDialog.py:67
 #: ../dialogs/SFCStepDialog.py:187 ../dialogs/SFCStepNameDialog.py:69
 #, python-format
@@ -255,11 +255,11 @@
 msgid "A variable with \"%s\" as name already exists in this pou!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2478
+#: ../PLCOpenEditor.py:2479
 msgid "About"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2381
+#: ../PLCOpenEditor.py:2382
 msgid "About PLCOpenEditor"
 msgstr ""
 
@@ -271,11 +271,11 @@
 msgid "Action"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3571
+#: ../PLCOpenEditor.py:3572
 msgid "Action Name"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3538
+#: ../PLCOpenEditor.py:3539
 msgid "Action Name:"
 msgstr ""
 
@@ -297,15 +297,15 @@
 msgid "Add"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1589 ../PLCOpenEditor.py:1672
+#: ../PLCOpenEditor.py:1590 ../PLCOpenEditor.py:1673
 msgid "Add Action"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1655
+#: ../PLCOpenEditor.py:1656
 msgid "Add Configuration"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1635
+#: ../PLCOpenEditor.py:1636
 msgid "Add DataType"
 msgstr ""
 
@@ -321,11 +321,11 @@
 msgid "Add Instance"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1642
+#: ../PLCOpenEditor.py:1643
 msgid "Add POU"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1618 ../PLCOpenEditor.py:1683
+#: ../PLCOpenEditor.py:1619 ../PLCOpenEditor.py:1684
 msgid "Add Resource"
 msgstr ""
 
@@ -333,7 +333,7 @@
 msgid "Add Task"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1586 ../PLCOpenEditor.py:1661
+#: ../PLCOpenEditor.py:1587 ../PLCOpenEditor.py:1662
 msgid "Add Transition"
 msgstr ""
 
@@ -341,7 +341,7 @@
 msgid "Add Wire Segment"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2161
+#: ../PLCOpenEditor.py:2162
 msgid "Add a new data type"
 msgstr ""
 
@@ -357,11 +357,11 @@
 msgid "Add a new step"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2205
+#: ../PLCOpenEditor.py:2206
 msgid "Add new configuration"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2216
+#: ../PLCOpenEditor.py:2217
 msgid "Add new resource"
 msgstr ""
 
@@ -414,11 +414,11 @@
 msgid "At least a variable or an expression must be selected!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2931
+#: ../PLCOpenEditor.py:2932
 msgid "Author"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2916
+#: ../PLCOpenEditor.py:2917
 msgid "Author Name (optional):"
 msgstr ""
 
@@ -462,7 +462,7 @@
 msgid "Block Properties"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1880 ../dialogs/FBDBlockDialog.py:268
+#: ../PLCOpenEditor.py:1881 ../dialogs/FBDBlockDialog.py:268
 msgid "Block Types"
 msgstr ""
 
@@ -474,7 +474,7 @@
 msgid "Browse Locations"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1835
+#: ../PLCOpenEditor.py:1836
 msgid "CSV Log"
 msgstr ""
 
@@ -487,7 +487,7 @@
 msgid "Can only give a location to local or global variables"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2616
+#: ../PLCOpenEditor.py:2617
 #, python-format
 msgid "Can't generate program to file %s!"
 msgstr ""
@@ -496,7 +496,7 @@
 msgid "Can't give a location to a function block instance"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2647
+#: ../PLCOpenEditor.py:2648
 #, python-format
 msgid "Can't save project to file %s!"
 msgstr ""
@@ -505,7 +505,7 @@
 msgid "Center"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1607
+#: ../PLCOpenEditor.py:1608
 msgid "Change POU Type To"
 msgstr ""
 
@@ -513,7 +513,7 @@
 msgid "Character string"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2582 ../PLCOpenEditor.py:2606 ../PLCOpenEditor.py:2641
+#: ../PLCOpenEditor.py:2583 ../PLCOpenEditor.py:2607 ../PLCOpenEditor.py:2642
 msgid "Choose a file"
 msgstr ""
 
@@ -537,15 +537,15 @@
 msgid "Clear Execution Order"
 msgstr ""
 
-#: ../PLCOpenEditor.py:873
+#: ../PLCOpenEditor.py:2507
 msgid "Close Application"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2434
+#: ../PLCOpenEditor.py:871 ../PLCOpenEditor.py:2435
 msgid "Close Project"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2432
+#: ../PLCOpenEditor.py:2433
 msgid "Close Tab\tCTRL+W"
 msgstr ""
 
@@ -553,11 +553,11 @@
 msgid "Comment"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2900
+#: ../PLCOpenEditor.py:2901
 msgid "Company Name (required):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2908
+#: ../PLCOpenEditor.py:2909
 msgid "Company URL (optional):"
 msgstr ""
 
@@ -597,7 +597,7 @@
 msgid "Constant"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2990
+#: ../PLCOpenEditor.py:2991
 msgid "Content Description (optional):"
 msgstr ""
 
@@ -625,7 +625,7 @@
 msgid "Copy\tCTRL+C"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1594
+#: ../PLCOpenEditor.py:1595
 msgid "Copy POU"
 msgstr ""
 
@@ -637,15 +637,15 @@
 msgid "Couldn't paste non-POU object."
 msgstr ""
 
-#: ../PLCOpenEditor.py:3213
+#: ../PLCOpenEditor.py:3214
 msgid "Create a new POU"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2237
+#: ../PLCOpenEditor.py:2238
 msgid "Create a new POU from"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3534
+#: ../PLCOpenEditor.py:3535
 msgid "Create a new action"
 msgstr ""
 
@@ -705,7 +705,7 @@
 msgid "Create a new step"
 msgstr ""
 
-#: ../PLCOpenEditor.py:212 ../PLCOpenEditor.py:3390
+#: ../PLCOpenEditor.py:212 ../PLCOpenEditor.py:3391
 msgid "Create a new transition"
 msgstr ""
 
@@ -750,8 +750,8 @@
 msgid "Debugger"
 msgstr ""
 
-#: ../PLCOpenEditor.py:342 ../PLCOpenEditor.py:1612 ../PLCOpenEditor.py:1621
-#: ../PLCOpenEditor.py:1627 ../PLCOpenEditor.py:4084 ../Viewer.py:450
+#: ../PLCOpenEditor.py:342 ../PLCOpenEditor.py:1613 ../PLCOpenEditor.py:1622
+#: ../PLCOpenEditor.py:1628 ../PLCOpenEditor.py:4085 ../Viewer.py:450
 #: ../VariablePanel.py:461 ../dialogs/ActionBlockDialog.py:279
 #: ../DataTypeEditor.py:544
 msgid "Delete"
@@ -815,7 +815,7 @@
 msgid "Documentation"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2610
+#: ../PLCOpenEditor.py:2611
 msgid "Done"
 msgstr ""
 
@@ -891,17 +891,17 @@
 
 #: ../PLCOpenEditor.py:865 ../PLCOpenEditor.py:1371 ../PLCOpenEditor.py:1408
 #: ../PLCOpenEditor.py:1413 ../PLCOpenEditor.py:1428 ../PLCOpenEditor.py:1433
-#: ../PLCOpenEditor.py:2264 ../PLCOpenEditor.py:2617 ../PLCOpenEditor.py:2622
-#: ../PLCOpenEditor.py:3031 ../PLCOpenEditor.py:3123 ../PLCOpenEditor.py:3127
-#: ../PLCOpenEditor.py:3131 ../PLCOpenEditor.py:3135 ../PLCOpenEditor.py:3276
-#: ../PLCOpenEditor.py:3280 ../PLCOpenEditor.py:3284 ../PLCOpenEditor.py:3288
-#: ../PLCOpenEditor.py:3439 ../PLCOpenEditor.py:3443 ../PLCOpenEditor.py:3447
-#: ../PLCOpenEditor.py:3451 ../PLCOpenEditor.py:3455 ../PLCOpenEditor.py:3583
-#: ../PLCOpenEditor.py:3587 ../PLCOpenEditor.py:3591 ../PLCOpenEditor.py:3595
-#: ../PLCOpenEditor.py:3599 ../PLCOpenEditor.py:3654 ../PLCOpenEditor.py:3658
-#: ../PLCOpenEditor.py:3662 ../PLCOpenEditor.py:3666 ../PLCOpenEditor.py:3717
-#: ../PLCOpenEditor.py:3721 ../PLCOpenEditor.py:3725 ../PLCOpenEditor.py:3729
-#: ../PLCOpenEditor.py:4017 ../PLCOpenEditor.py:4283 ../PLCOpenEditor.py:4293
+#: ../PLCOpenEditor.py:2265 ../PLCOpenEditor.py:2618 ../PLCOpenEditor.py:2623
+#: ../PLCOpenEditor.py:3032 ../PLCOpenEditor.py:3124 ../PLCOpenEditor.py:3128
+#: ../PLCOpenEditor.py:3132 ../PLCOpenEditor.py:3136 ../PLCOpenEditor.py:3277
+#: ../PLCOpenEditor.py:3281 ../PLCOpenEditor.py:3285 ../PLCOpenEditor.py:3289
+#: ../PLCOpenEditor.py:3440 ../PLCOpenEditor.py:3444 ../PLCOpenEditor.py:3448
+#: ../PLCOpenEditor.py:3452 ../PLCOpenEditor.py:3456 ../PLCOpenEditor.py:3584
+#: ../PLCOpenEditor.py:3588 ../PLCOpenEditor.py:3592 ../PLCOpenEditor.py:3596
+#: ../PLCOpenEditor.py:3600 ../PLCOpenEditor.py:3655 ../PLCOpenEditor.py:3659
+#: ../PLCOpenEditor.py:3663 ../PLCOpenEditor.py:3667 ../PLCOpenEditor.py:3718
+#: ../PLCOpenEditor.py:3722 ../PLCOpenEditor.py:3726 ../PLCOpenEditor.py:3730
+#: ../PLCOpenEditor.py:4018 ../PLCOpenEditor.py:4284 ../PLCOpenEditor.py:4294
 #: ../Viewer.py:369 ../TextViewer.py:250 ../LDViewer.py:628 ../LDViewer.py:850
 #: ../LDViewer.py:854 ../VariablePanel.py:331 ../VariablePanel.py:684
 #: ../VariablePanel.py:689 ../VariablePanel.py:694 ../VariablePanel.py:699
@@ -950,8 +950,8 @@
 msgid "External"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2968 ../PLCOpenEditor.py:3158 ../PLCOpenEditor.py:3168
-#: ../PLCOpenEditor.py:3347 ../PLCOpenEditor.py:3491
+#: ../PLCOpenEditor.py:2969 ../PLCOpenEditor.py:3159 ../PLCOpenEditor.py:3169
+#: ../PLCOpenEditor.py:3348 ../PLCOpenEditor.py:3492
 msgid "FBD"
 msgstr ""
 
@@ -973,8 +973,8 @@
 msgid "Find position"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3031 ../PLCOpenEditor.py:3276 ../PLCOpenEditor.py:3439
-#: ../PLCOpenEditor.py:3583 ../dialogs/SFCTransitionDialog.py:209
+#: ../PLCOpenEditor.py:3032 ../PLCOpenEditor.py:3277 ../PLCOpenEditor.py:3440
+#: ../PLCOpenEditor.py:3584 ../dialogs/SFCTransitionDialog.py:209
 #, python-format
 msgid "Form isn't complete. %s must be filled!"
 msgstr ""
@@ -991,7 +991,7 @@
 msgid "Function"
 msgstr ""
 
-#: ../PLCOpenEditor.py:334 ../PLCOpenEditor.py:1602
+#: ../PLCOpenEditor.py:334 ../PLCOpenEditor.py:1603
 msgid "Function Block"
 msgstr ""
 
@@ -1020,7 +1020,7 @@
 msgid "Functions"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2441
+#: ../PLCOpenEditor.py:2442
 msgid "Generate Program\tCTRL+G"
 msgstr ""
 
@@ -1028,11 +1028,11 @@
 msgid "Global"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1832
+#: ../PLCOpenEditor.py:1833
 msgid "Graphic Panel"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2973
+#: ../PLCOpenEditor.py:2974
 msgid "Graphics"
 msgstr ""
 
@@ -1044,7 +1044,7 @@
 msgid "Greater than or equal to"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2952
+#: ../PLCOpenEditor.py:2953
 msgid "Height:"
 msgstr ""
 
@@ -1058,8 +1058,8 @@
 "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:3158 ../PLCOpenEditor.py:3168 ../PLCOpenEditor.py:3347
-#: ../PLCOpenEditor.py:3491
+#: ../PLCOpenEditor.py:3159 ../PLCOpenEditor.py:3169 ../PLCOpenEditor.py:3348
+#: ../PLCOpenEditor.py:3492
 msgid "IL"
 msgstr ""
 
@@ -1144,7 +1144,7 @@
 msgid "Invalid plcopen element(s)!!!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4006 ../PLCOpenEditor.py:4009
+#: ../PLCOpenEditor.py:4007 ../PLCOpenEditor.py:4010
 #, python-format
 msgid "Invalid value \"%s\" for debug variable"
 msgstr ""
@@ -1159,8 +1159,8 @@
 msgid "Invalid value \"%s\" for viewer block"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2968 ../PLCOpenEditor.py:3158 ../PLCOpenEditor.py:3168
-#: ../PLCOpenEditor.py:3347 ../PLCOpenEditor.py:3491
+#: ../PLCOpenEditor.py:2969 ../PLCOpenEditor.py:3159 ../PLCOpenEditor.py:3169
+#: ../PLCOpenEditor.py:3348 ../PLCOpenEditor.py:3492
 msgid "LD"
 msgstr ""
 
@@ -1169,15 +1169,15 @@
 msgid "Ladder element with id %d is on more than one rung."
 msgstr ""
 
-#: ../PLCOpenEditor.py:3266 ../PLCOpenEditor.py:3429 ../PLCOpenEditor.py:3573
+#: ../PLCOpenEditor.py:3267 ../PLCOpenEditor.py:3430 ../PLCOpenEditor.py:3574
 msgid "Language"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2982
+#: ../PLCOpenEditor.py:2983
 msgid "Language (optional):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3234 ../PLCOpenEditor.py:3402 ../PLCOpenEditor.py:3546
+#: ../PLCOpenEditor.py:3235 ../PLCOpenEditor.py:3403 ../PLCOpenEditor.py:3547
 msgid "Language:"
 msgstr ""
 
@@ -1249,7 +1249,7 @@
 msgid "Minimum:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2997
+#: ../PLCOpenEditor.py:2998
 msgid "Miscellaneous"
 msgstr ""
 
@@ -1297,7 +1297,7 @@
 msgid "Negated"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2428
+#: ../PLCOpenEditor.py:2429
 msgid "New\tCTRL+N"
 msgstr ""
 
@@ -1327,7 +1327,7 @@
 msgid "No connector found corresponding to \"%s\" continuation in \"%s\" POU"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2375
+#: ../PLCOpenEditor.py:2376
 msgid ""
 "No documentation available.\n"
 "Coming soon."
@@ -1375,11 +1375,11 @@
 "The on-delay timer can be used to delay setting an output true, for fixed period after an input becomes true."
 msgstr ""
 
-#: ../PLCOpenEditor.py:2430
+#: ../PLCOpenEditor.py:2431
 msgid "Open\tCTRL+O"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2924
+#: ../PLCOpenEditor.py:2925
 msgid "Organization (optional):"
 msgstr ""
 
@@ -1394,43 +1394,43 @@
 "The PID (proportional, Integral, Derivative) function block provides the classical three term controller for closed loop control."
 msgstr ""
 
-#: ../PLCOpenEditor.py:2582 ../PLCOpenEditor.py:2641
+#: ../PLCOpenEditor.py:2583 ../PLCOpenEditor.py:2642
 msgid "PLCOpen files (*.xml)|*.xml|All files|*.*"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2514
+#: ../PLCOpenEditor.py:2515
 msgid "PLCOpenEditor"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2472
+#: ../PLCOpenEditor.py:2473
 msgid "PLCOpenEditor\tF1"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3262
+#: ../PLCOpenEditor.py:3263
 msgid "POU Name"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3217
+#: ../PLCOpenEditor.py:3218
 msgid "POU Name:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3264
+#: ../PLCOpenEditor.py:3265
 msgid "POU Type"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3225
+#: ../PLCOpenEditor.py:3226
 msgid "POU Type:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2444
+#: ../PLCOpenEditor.py:2445
 msgid "Page Setup"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2940
+#: ../PLCOpenEditor.py:2941
 msgid "Page Size (optional):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4228
+#: ../PLCOpenEditor.py:4229
 #, python-format
 msgid "Page: %d"
 msgstr ""
@@ -1439,7 +1439,7 @@
 msgid "Paste\tCTRL+V"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1646
+#: ../PLCOpenEditor.py:1647
 msgid "Paste POU"
 msgstr ""
 
@@ -1451,7 +1451,7 @@
 msgid "Please choose a target"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2237
+#: ../PLCOpenEditor.py:2238
 msgid "Please enter POU name"
 msgstr ""
 
@@ -1459,15 +1459,15 @@
 msgid "Please enter comment text"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2205 ../PLCOpenEditor.py:3637
+#: ../PLCOpenEditor.py:2206 ../PLCOpenEditor.py:3638
 msgid "Please enter configuration name"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2161
+#: ../PLCOpenEditor.py:2162
 msgid "Please enter data type name"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2216 ../PLCOpenEditor.py:3700
+#: ../PLCOpenEditor.py:2217 ../PLCOpenEditor.py:3701
 msgid "Please enter resource name"
 msgstr ""
 
@@ -1475,7 +1475,7 @@
 msgid "Please enter step name"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3108
+#: ../PLCOpenEditor.py:3109
 msgid "Please enter text"
 msgstr ""
 
@@ -1491,7 +1491,7 @@
 msgid "Power Rail Properties"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2446
+#: ../PLCOpenEditor.py:2447
 msgid "Preview"
 msgstr ""
 
@@ -1502,7 +1502,7 @@
 msgid "Preview:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2448
+#: ../PLCOpenEditor.py:2449
 msgid "Print"
 msgstr ""
 
@@ -1518,23 +1518,23 @@
 msgid "Priority:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2868
+#: ../PLCOpenEditor.py:2869
 msgid "Product Name (required):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2884
+#: ../PLCOpenEditor.py:2885
 msgid "Product Release (optional):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2876
+#: ../PLCOpenEditor.py:2877
 msgid "Product Version (required):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:336 ../PLCOpenEditor.py:1605
+#: ../PLCOpenEditor.py:336 ../PLCOpenEditor.py:1606
 msgid "Program"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2619
+#: ../PLCOpenEditor.py:2620
 msgid "Program was successfully generated!"
 msgstr ""
 
@@ -1546,23 +1546,23 @@
 msgid "Programs can't be used by other POUs!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:437 ../PLCOpenEditor.py:2891
+#: ../PLCOpenEditor.py:437 ../PLCOpenEditor.py:2892
 msgid "Project"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2852
+#: ../PLCOpenEditor.py:2853
 msgid "Project Name (required):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2860
+#: ../PLCOpenEditor.py:2861
 msgid "Project Version (optional):"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2838
+#: ../PLCOpenEditor.py:2839
 msgid "Project properties"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2451 ../PLCControler.py:91
+#: ../PLCOpenEditor.py:2452 ../PLCControler.py:91
 msgid "Properties"
 msgstr ""
 
@@ -1576,7 +1576,7 @@
 msgid "Qualifier"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2454
+#: ../PLCOpenEditor.py:2455
 msgid "Quit\tCTRL+Q"
 msgstr ""
 
@@ -1612,7 +1612,7 @@
 msgid "Remainder (modulo)"
 msgstr ""
 
-#: ../PLCOpenEditor.py:1609
+#: ../PLCOpenEditor.py:1610
 msgid "Rename"
 msgstr ""
 
@@ -1670,7 +1670,7 @@
 msgid "Rounding up/down"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2968 ../PLCOpenEditor.py:3168
+#: ../PLCOpenEditor.py:2969 ../PLCOpenEditor.py:3169
 msgid "SFC"
 msgstr ""
 
@@ -1680,24 +1680,24 @@
 "The SR bistable is a latch where the Set dominates."
 msgstr ""
 
-#: ../PLCOpenEditor.py:3158 ../PLCOpenEditor.py:3168 ../PLCOpenEditor.py:3347
-#: ../PLCOpenEditor.py:3491
+#: ../PLCOpenEditor.py:3159 ../PLCOpenEditor.py:3169 ../PLCOpenEditor.py:3348
+#: ../PLCOpenEditor.py:3492
 msgid "ST"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2606
+#: ../PLCOpenEditor.py:2607
 msgid "ST files (*.st)|*.st|All files|*.*"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2437
+#: ../PLCOpenEditor.py:2438
 msgid "Save\tCTRL+S"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2439
+#: ../PLCOpenEditor.py:2440
 msgid "Save As...\tCTRL+SHIFT+S"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2960
+#: ../PLCOpenEditor.py:2961
 msgid "Scaling:"
 msgstr ""
 
@@ -1858,11 +1858,11 @@
 msgid "Top"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3427
+#: ../PLCOpenEditor.py:3428
 msgid "Transition Name"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3394
+#: ../PLCOpenEditor.py:3395
 msgid "Transition Name:"
 msgstr ""
 
@@ -1952,7 +1952,7 @@
 msgid "User-defined POUs"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3836 ../dialogs/ActionBlockDialog.py:33
+#: ../PLCOpenEditor.py:3837 ../dialogs/ActionBlockDialog.py:33
 msgid "Value"
 msgstr ""
 
@@ -1964,7 +1964,7 @@
 msgid "Values:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3836 ../dialogs/ActionBlockDialog.py:37
+#: ../PLCOpenEditor.py:3837 ../dialogs/ActionBlockDialog.py:37
 msgid "Variable"
 msgstr ""
 
@@ -1984,20 +1984,20 @@
 msgid "Variables"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3292 ../PLCOpenEditor.py:3670 ../PLCOpenEditor.py:3733
+#: ../PLCOpenEditor.py:3293 ../PLCOpenEditor.py:3671 ../PLCOpenEditor.py:3734
 #: ../LDViewer.py:859
 msgid "Warning"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2944
+#: ../PLCOpenEditor.py:2945
 msgid "Width:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2687
+#: ../PLCOpenEditor.py:2688
 msgid "X Scale:"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2695
+#: ../PLCOpenEditor.py:2696
 msgid "Y Scale:"
 msgstr ""
 
@@ -2013,7 +2013,7 @@
 msgid "You must select the wire where a contact should be added!"
 msgstr ""
 
-#: ../PLCOpenEditor.py:3123 ../PLCOpenEditor.py:3654 ../PLCOpenEditor.py:3717
+#: ../PLCOpenEditor.py:3124 ../PLCOpenEditor.py:3655 ../PLCOpenEditor.py:3718
 #: ../dialogs/PouNameDialog.py:55 ../dialogs/SFCStepDialog.py:175
 #: ../dialogs/SFCStepNameDialog.py:57
 msgid "You must type a name!"
@@ -2023,32 +2023,32 @@
 msgid "Zoom"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2615
+#: ../PLCOpenEditor.py:2616
 #, python-format
 msgid "error: %s\n"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4260 ../PLCOpenEditor.py:4262
+#: ../PLCOpenEditor.py:4261 ../PLCOpenEditor.py:4263
 msgid "file : "
 msgstr ""
 
-#: ../PLCOpenEditor.py:3163
+#: ../PLCOpenEditor.py:3164
 msgid "function"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4263
+#: ../PLCOpenEditor.py:4264
 msgid "function : "
 msgstr ""
 
-#: ../PLCOpenEditor.py:3163
+#: ../PLCOpenEditor.py:3164
 msgid "functionBlock"
 msgstr ""
 
-#: ../PLCOpenEditor.py:4263
+#: ../PLCOpenEditor.py:4264
 msgid "line : "
 msgstr ""
 
-#: ../PLCOpenEditor.py:3163
+#: ../PLCOpenEditor.py:3164
 msgid "program"
 msgstr ""
 
@@ -2064,7 +2064,7 @@
 msgid "string right of"
 msgstr ""
 
-#: ../PLCOpenEditor.py:2613
+#: ../PLCOpenEditor.py:2614
 #, python-format
 msgid "warning: %s\n"
 msgstr ""
Binary file locale/fr_FR/LC_MESSAGES/PLCOpenEditor.mo has changed
Binary file locale/zh_CN/LC_MESSAGES/PLCOpenEditor.mo has changed
Binary file snapshots/PLCOpenEditor_CreateBlockPopup.jpg has changed
Binary file snapshots/PLCOpenEditor_FBDexample.jpg has changed
Binary file snapshots/PLCOpenEditor_ILexample.jpg has changed
Binary file snapshots/PLCOpenEditor_InterfacePopup.jpg has changed
Binary file snapshots/PLCOpenEditor_LDexample.jpg has changed
Binary file snapshots/PLCOpenEditor_PropertiesPopup.jpg has changed
Binary file snapshots/PLCOpenEditor_SFCexample.jpg has changed
Binary file snapshots/PLCOpenEditor_STexample.jpg has changed