plcopen/iec_std.csv
author Andrey Skvortsov <andrej.skvortzov@gmail.com>
Fri, 25 May 2018 17:23:15 +0300
changeset 2166 5ce6d08ff2c7
parent 1390 0f4d32a033e0
child 2496 39049d615c0d
permissions -rw-r--r--
make clipboard open minimal time as wxPython documentation recommends

https://wxpython.org/Phoenix/docs/html/wx.Clipboard.html#wx.Clipboard.GetData

"Call wx.Clipboard.Open to get ownership of the clipboard. If this
operation returns True, you now own the clipboard. Call
wx.Clipboard.SetData to put data on the clipboard, or
wx.Clipboard.GetData to retrieve data from the clipboard. Call
wx.Clipboard.Close to close the clipboard and relinquish ownership.
You should keep the clipboard open only momentarily."

Maybe it makes situation with pretty annoying error 'clipboard already
open' a little bit better.

traceback:
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/BeremizIDE.py", line 955, in OnSaveProjectMenu
self.RefreshAfterSave()
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/BeremizIDE.py", line 946, in RefreshAfterSave
self._Refresh(TITLE, FILEMENU, EDITMENU, PAGETITLES)
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/IDEFrame.py", line 926, in _Refresh
self.RefreshFunctions[element]()
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/BeremizIDE.py", line 766, in RefreshEditMenu
IDEFrame.RefreshEditMenu(self)
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/IDEFrame.py", line 1185, in RefreshEditMenu
if self.GetCopyBuffer() is not None:
File "/home/developer/WorkData/PLC/beremiz/avangard-beremiz-ide/src/../../beremiz/IDEFrame.py", line 956, in GetCopyBuffer
if wx.TheClipboard.Open():
File "/usr/lib/python2.7/dist-packages/wx-3.0-gtk3/wx/_misc.py", line 5793, in Open
return _misc_.Clipboard_Open(*args, **kwargs)
<class 'wx._core.PyAssertionError'>: C++ assertion "!m_open" failed at ../src/gtk/clipbrd.cpp(598) in Open(): clipboard already open
Standard_functions_variables_types;name;type;comment;;;;
;N;ANY_INT;Number of bits to be shifted;;;;
;L;ANY_INT;Left position within character string;;;;
;P;ANY_INT;Position within character string;;;;
;G;BOOL;Selection out of 2 inputs (gate);;;;
;K;ANY_INT;Selection out of n inputs;;;;
;MN;ANY;Minimum value for limitation;;;;
;MX;ANY;Maximum value for limitation;;;;
;;;;;;;
;;;;;;;
;;;;;;;
;;;;;;;
;;;;;;;
;;;;;;;
Standard_functions_type;name;baseinputnumber;inputs;outputs;comment;extensible;filter
_("Type conversion");*_TO_**;1;(ANY);ANY;_("Data type conversion");no;ANY_TO_ANY
;TRUNC;1;(ANY_REAL);ANY_INT;_("Rounding up/down");no;
;BCD_TO_**;1;(ANY_BIT);ANY_INT;_("Conversion from BCD");no;BCD_TO_ANY
;*_TO_BCD;1;(ANY_INT);ANY_BIT;_("Conversion to BCD");no;ANY_TO_BCD
;DATE_AND_TIME_TO_TIME_OF_DAY;1;(DT);TOD;_("Conversion to time-of-day");no;
;DATE_AND_TIME_TO_DATE;1;(DT);DATE;_("Conversion to date");no;
_("Numerical");ABS;1;(ANY_NUM);ANY_NUM;_("Absolute number");no;
;SQRT;1;(ANY_REAL);ANY_REAL;_("Square root (base 2)");no;
;LN;1;(ANY_REAL);ANY_REAL;_("Natural logarithm");no;
;LOG;1;(ANY_REAL);ANY_REAL;_("Logarithm to base 10");no;
;EXP;1;(ANY_REAL);ANY_REAL;_("Exponentiation");no;
;SIN;1;(ANY_REAL);ANY_REAL;_("Sine");no;
;COS;1;(ANY_REAL);ANY_REAL;_("Cosine");no;
;TAN;1;(ANY_REAL);ANY_REAL;_("Tangent");no;
;ASIN;1;(ANY_REAL);ANY_REAL;_("Arc sine");no;
;ACOS;1;(ANY_REAL);ANY_REAL;_("Arc cosine");no;
;ATAN;1;(ANY_REAL);ANY_REAL;_("Arc tangent");no;
_("Arithmetic");ADD;1;(ANY_NUM, ANY_NUM);ANY_NUM;_("Addition");yes;
;MUL;1;(ANY_NUM, ANY_NUM);ANY_NUM;_("Multiplication");yes;
;SUB;1;(ANY_NUM, ANY_NUM);ANY_NUM;_("Subtraction");no;
;DIV;1;(ANY_NUM, ANY_NUM);ANY_NUM;_("Division");no;
;MOD;1;(ANY_INT, ANY_INT);ANY_INT;_("Remainder (modulo)");no;
;EXPT;1;(ANY_REAL, ANY_NUM);ANY_REAL;_("Exponent");no;
;MOVE;1;(ANY);ANY;_("Assignment");no;
_("Time");ADD;1;(TIME, TIME);TIME;_("Time addition");no;
;ADD_TIME;1;(TIME, TIME);TIME;_("Time addition");no;
;ADD;1;(TOD, TIME);TOD;_("Time-of-day addition")+" "+_("DEPRECATED");no;
;ADD_TOD_TIME;1;(TOD, TIME);TOD;_("Time-of-day addition");no;
;ADD;1;(DT, TIME);DT;_("Date addition")+" "+_("DEPRECATED");no;
;ADD_DT_TIME;1;(DT, TIME);DT;_("Date addition");no;
;MUL;1;(TIME, ANY_NUM);TIME;_("Time multiplication")+" "+_("DEPRECATED");no;
;MULTIME;1;(TIME, ANY_NUM);TIME;_("Time multiplication");no;
;SUB_TIME;1;(TIME, TIME);TIME;_("Time subtraction");no;
;SUB;1;(TIME, TIME);TIME;_("Time subtraction");no;
;SUB;1;(DATE, DATE);TIME;_("Date subtraction")+" "+_("DEPRECATED");no;
;SUB_DATE_DATE;1;(DATE, DATE);TIME;_("Date subtraction");no;
;SUB;1;(TOD, TIME);TOD;_("Time-of-day subtraction")+" "+_("DEPRECATED");no;
;SUB_TOD_TIME;1;(TOD, TIME);TOD;_("Time-of-day subtraction");no;
;SUB;1;(TOD, TOD);TIME;_("Time-of-day subtraction")+" "+_("DEPRECATED");no;
;SUB_TOD_TOD;1;(TOD, TOD);TIME;_("Time-of-day subtraction");no;
;SUB;1;(DT, TIME);DT;_("Date and time subtraction")+" "+_("DEPRECATED");no;
;SUB_DT_TIME;1;(DT, TIME);DT;_("Date and time subtraction");no;
;SUB;1;(DT, DT);TIME;_("Date and time subtraction")+" "+_("DEPRECATED");no;
;SUB_DT_TIME;1;(DT, DT);TIME;_("Date and time subtraction");no;
;DIV;1;(TIME, ANY_NUM);TIME;_("Time division")+" "+_("DEPRECATED");no;
;DIVTIME;1;(TIME, ANY_NUM);TIME;_("Time division");no;
_("Bit-shift");SHL;1;(ANY_BIT, N);ANY_BIT;_("Shift left");no;
;SHR;1;(ANY_BIT, N);ANY_BIT;_("Shift right");no;
;ROR;1;(ANY_NBIT, N);ANY_NBIT;_("Rotate right");no;
;ROL;1;(ANY_NBIT, N);ANY_NBIT;_("Rotate left");no;
_("Bitwise");AND;1;(ANY_BIT, ANY_BIT);ANY_BIT;_("Bitwise AND");yes;
;OR;1;(ANY_BIT, ANY_BIT);ANY_BIT;_("Bitwise OR");yes;
;XOR;1;(ANY_BIT, ANY_BIT);ANY_BIT;_("Bitwise XOR");yes;
;NOT;1;(ANY_BIT);ANY_BIT;_("Bitwise inverting");no;
_("Selection");SEL;0;(G, ANY, ANY);ANY;_("Binary selection (1 of 2)");no;
;MAX;1;(ANY, ANY);ANY;_("Maximum");yes;
;MIN;1;(ANY, ANY);ANY;_("Minimum");yes;
;LIMIT;1;(MN, ANY, MX);ANY;_("Limitation");no;
;MUX;0;(K, ANY, ANY);ANY;_("Multiplexer (select 1 of N)");yes;
_("Comparison");GT;1;(ANY, ANY);BOOL;_("Greater than");yes;
;GE;1;(ANY, ANY);BOOL;_("Greater than or equal to");yes;
;EQ;1;(ANY, ANY);BOOL;_("Equal to");yes;
;LT;1;(ANY, ANY);BOOL;_("Less than");yes;
;LE;1;(ANY, ANY);BOOL;_("Less than or equal to");yes;
;NE;1;(ANY, ANY);BOOL;_("Not equal to");no;
_("Character string");LEN;1;(STRING);INT;_("Length of string");no;
;LEFT;1;(STRING, L);STRING;_("string left of");no;
;RIGHT;1;(STRING, L);STRING;_("string right of");no;
;MID;1;(STRING, L, P);STRING;_("string from the middle");no;
;CONCAT;1;(STRING, STRING);STRING;_("Concatenation");yes;
;CONCAT_DAT_TOD;1;(DATE, TOD);DT;_("Time concatenation");no;
;INSERT;1;(STRING, STRING, P);STRING;_("Insertion (into)");no;
;DELETE;1;(STRING, L, P);STRING;_("Deletion (within)");no;
;REPLACE;1;(STRING, STRING, L, P);STRING;_("Replacement (within)");no;
;FIND;1;(STRING, STRING);INT;_("Find position");no;