Операции и функции

Содержание

1   ФУНКЦИИ

1.1   Математические

abs(x) абсолютное значение
annuity(x,y) = (1-(1+x)-y)/x
atan(x) арктангенс
average(x1,...,xn) среднее значение чисел
compound(x,y) = (1+x)y
cos(x) косинус
exp(x) экспонента, exp(x)
exp1(x) = exp(x)-1
exp2(x) 2 в степени x
ln(x) натуральный логарифм
ln1(x) = ln(1+x)
log2(x) логарифм по основанию 2
max(x1,...,xn) максимальное из списка
min(x1,...,xn) минимальное из списка
random(N) дает случайное число от 1 до N
round(x) округление до ближайшего целого
sin(x) синус
sqrt(x) квадратный корень
sum(x1,...,xn) сумма чисел списка
tan(x) тангенс
trunc(x) обрубание до целого

1.2   Преобразовательные и строковые

CharToNum(c) значение ASCII кода первого символа строки c
Length(c) длина строки;
NumToChar(a) дает символ по ASCII коду a;
offset(s1,s2) начало вхождения s1 в s2. Нет вхождения - 0
value(s) вычисляет строку s как выражение

1.3   Для работы с мышью и выделением

ClickChunk() дает ссылку на участок текста, где был щелчок
ClickH() гориз. координата щелчка мыши в окне
ClickV() верт. координата щелчка мыши в окне
ClickLine() дает ссылку на строку (поля), где был щелчок
ClickLoc() координаты щелчка мыши в окне
ClickText() дает текст, на котором произошел щелчок мыши;
mouse() состояние кнопки мыши: down /up нажата / нет
MouseClick() был ли щелчок мыши?
MouseH() горизонтальная координата курсора мыши;
MouseV() вертикальная координата курсора мыши;
MouseLoc() координаты курсора мыши;
SelectedChunk() возвращает ссылку на выделенный текст;
SelectedField() дает ссылку на поле с выделением текста
SelectedLine(obj) дает ссылку на выделенную в obj строку
SelectedLoc() координаты точки начала выделения текста;
SelectedText(obj) текст выделенной строки в obj

1.4   Прочие встроенные функции

1.4.1   Опрос состояния клавиатуры

CommandKey() дает состояние кнопки Command down / up -нажать / нет
ShiftKey() тоже для Shift;
OptionKey() тоже для Option;

1.4.2   Получение даты и времени

the date дата (в разных форматах)
the short date тоже
the abbr date тоже
the long date тоже
the time время (в разных форматах)
the short time тоже
the abbr time тоже
the long time тоже
ticks() кол-во тиков (1 тик = 1/60 с) от включения Макинтоша
seconds() кол-во секунд с 1 января 1904 года
secs() тоже, сокращенная запись

1.4.3   Системные функции

diskSpase() на диске;
heapSpase() в памяти
stackSpace() в стеке ОС Макинтош
systemVersion() возвращает версию операционной системы
the result возвращает результат обработки сообщения
screenRect() координаты окна с карточкой на экране компьютера
the sound дает название играемого звука или "done" (сыгран)
the tool дает имя текущего инструмента

1.4.4   Получение списков объектов

the menus список меню
the programs все процессы (запущенные программы) под ОС Мак
the windows список всех открытых окон
the stacks список открытых стеков

1.4.5   Результ работы команды find

FoundChunk() ссылка на найденный текст;
FoundField() ссылка на поле, в котором найден текст;
FoundLine() ссылка на строку, в которой найден текст;
FoundText() возвращает найденный текст;

1.4.6   Для работы с переданными в процедуру паметрами

param(Номер) значение параметра с данным Номером,
paramCount() количество параметров;
params() список параметров, переданных текущей процедуре;
the target ссылка на цель сообщения, обрабатываемого сейчас

1.4.7   Функция определения количества

number of [background] buttons число (фоновых) кнопок;
number of [card] fields число (карточных) полей;
number of backgrounds число фонов в стеке;
number of cards число карточек в стеке;
number of cards in bg ИмяФона число карточек на фоне;
number of parts число кнопок и полей;
number of marked cards число помеченных карточек в стеке;
number of menus число меню;
number of menuItems of menu ИмяМеню число пунктов в меню
number of windows число открытых окон;
number of chars in Выражение число знаков;
number of words in Выражение число слов;
number of items in Выражение число элементов
number of lines in Выражение число строк;

2   ОПЕРАЦИИ

+, -, *, / арифметические операции;
^ возведение в степень;
div целочисленное деление;
mod остаток от деления;
=, <, >, <=, >=, <> операции сравнения;
is тоже, что =;
is not тоже, что <> (неравенство);
and, or, not логические И, ИЛИ, НЕ;
& сцепление двух строк;
&& тоже, но через пробел;
contains содержит (одна строка другую)
is in (находится в) содержится ли одна строка в другой?
is not in тоже, что not( ... is in ...)

2.1   Более сложные проверки

is a проверяет тип выражения
is an тоже. То есть:
is a number число,
is an integer целое число,
is a point точка,
is a rect прямоугольник,
is a date дата,
is a logical логическое значение (true или false).
is not a тоже, что not( is a).
is not an тоже.
is within точка в прямоугольнике ?
there is a проверяет, существует ли объект
there is an тоже. То есть:
there is a [bg] button кнопка (фона)
there is a [card] fld поле (карточки)
there is a part поле или кнопка
there is a card карточка
there is a bg фон
there is a stack стек
there is a program программа
there is a window окно
there is a file файл
there is a menu меню
there is a menu item пункт меню
there is a cd picture рисунок на карточке
there is a bg picture рисунок на фоне
there is a folder папка
there is a document документ
there is not a тоже, что и not( there is a ... )
there is not an тоже, что и not( there is a ... )

2.2   Приоритет операций

1 ()
2 - (знак при числе) not there is, there is not within
3 ^
4 * / div mod
5 + -
6 & &&
7 is in, contains, is not in is a, is not a
8 =, is, <>, is not
9 and
10 or